当前位置:AIGC资讯 > AIGC > 正文

Faster Whisper 使用教程

Faster Whisper 使用教程

faster-whisper项目地址:https://gitcode.com/gh_mirrors/fas/faster-whisper

项目介绍

Faster Whisper 是一个基于 CTranslate2 的 OpenAI Whisper 模型的重新实现。它是一个快速推理引擎,用于 Transformer 模型,相比 OpenAI 的 Whisper 模型,速度提升了 4 倍。该项目支持 Windows、Linux 和 macOS 平台,并且提供了多种优化选项,如 FP16 和 INT8 计算类型,以适应不同的硬件环境。

项目快速启动

安装

首先,确保你已经安装了 Python 和 pip。然后,使用以下命令安装 Faster Whisper:

pip install faster-whisper

基本使用

以下是一个简单的示例,展示如何在 GPU 上使用 FP16 计算类型运行 Faster Whisper:

from faster_whisper import WhisperModel

model_size = "large-v3"
model = WhisperModel(model_size, device="cuda", compute_type="float16")

segments, info = model.transcribe("audio.mp3", beam_size=5)

print("Detected language '%s' with probability %f" % (info.language, info.language_probability))
for segment in segments:
    print("[% 2fs -> % 2fs] %s" % (segment.start, segment.end, segment.text))

应用案例和最佳实践

案例一:实时语音转写

Faster Whisper 可以用于实时语音转写,适用于会议记录、直播字幕等场景。以下是一个示例代码:

from faster_whisper import WhisperModel
import sounddevice as sd
import numpy as np

model = WhisperModel("large-v3", device="cuda", compute_type="float16")

def callback(indata, frames, time, status):
    audio = np.squeeze(indata)
    segments, info = model.transcribe(audio, beam_size=5)
    for segment in segments:
        print("[% 2fs -> % 2fs] %s" % (segment.start, segment.end, segment.text))

with sd.InputStream(callback=callback, channels=1, samplerate=16000):
    print("Listening...")
    while True:
        pass

最佳实践

选择合适的模型大小:根据你的硬件性能选择合适的模型大小,以平衡速度和准确性。 使用批处理:在处理大量音频数据时,使用批处理可以显著提高推理速度。

典型生态项目

Open-Lyrics

Open-Lyrics 是一个使用 Faster Whisper 进行语音文件转写的 Python 库,并将结果翻译和优化为 LRC 文件。它利用 OpenAI-GPT 进行翻译,适用于音乐字幕生成等场景。

wscribe

wscribe 是一个灵活的转录生成工具,支持 Faster Whisper。它可以导出单词级别的转录,并使用 wscribe-editor 进行编辑。

aTrain

aTrain 是一个图形用户界面实现的 Faster Whisper,由 BANDAS-Center 在格拉茨大学开发,支持 Windows 和 Linux 平台,适用于转录和分段。

通过这些生态项目,Faster Whisper 的应用场景得到了进一步的扩展和优化,为用户提供了更多的选择和便利。

faster-whisper项目地址:https://gitcode.com/gh_mirrors/fas/faster-whisper

总结

### Faster Whisper 使用教程总结
#### 快速概览
Faster Whisper 是基于 CTranslate2 的 OpenAI Whisper 模型的重新实现,专注于提升速度,相比原版模型快4倍。支持跨平台部署(Windows、Linux、macOS)并提供FP16和INT8计算型优化以适应不同硬件环境。
#### 安装与快速上手
1. **安装**
- 确保Python及pip已安装,通过pip命令`pip install faster-whisper`快速安装Faster Whisper。
2. **基本使用**
- 在Python脚本中导入`WhisperModel`类,选择适合的模型大小(如`large-v3`),并通过GPU加速(`device="cuda"`)与FP16计算(`compute_type="float16"`)来进行音频文件转写。
- 转写结果包括检测的语言及其概率以及文本分段信息。
#### 应用与最佳实践
1. **实时语音转写**
- 适用于会议记录、直播字幕等场景,可通过声音设备(如麦克风)实时捕获音频并进行转写。
- 示例代码利用`sounddevice`库捕获音频数据,通过回调函数进行实时处理并输出结果。
2. **最佳实践**
- **模型选择**:根据硬件性能选择合适的模型大小以确保速度与准确性的平衡。
- **批处理**:面对大量音频数据时,利用批处理技术可以显著提高推理速度。
#### 生态项目
- **Open-Lyrics**:专为音乐字幕生成设计的项目,利用Faster Whisper进行语音转写并结合OpenAI-GPT实现翻译。
- **wscribe**:灵活的转录生成工具,支持Faster Whisper并允许导出单词级别的转录,同时提供了编辑器进行后续编辑。
- **aTrain**:基于Faster Whisper实现的图形界面工具,由BANDAS-Center开发,支持转录和分段功能,适用于Windows和Linux平台。
#### 总结
Faster Whisper通过提升速度和跨平台兼容性为应用开发者提供了强大的语音识别能力。搭配多种优化选项和丰富的生态项目,使其能够应对多种语音识别需求,为用户提供更高效、更灵活的解决方案。欲了解更多详情,可访问项目地址:[https://gitcode.com/gh_mirrors/fas/faster-whisper](https://gitcode.com/gh_mirrors/fas/faster-whisper)。

更新时间 2024-09-13