语音转文字快 4 倍:faster-whisper 上手笔记
【免费下载链接】faster-whisperFaster Whisper transcription with CTranslate2项目地址: https://gitcode.com/GitHub_Trending/fa/faster-whisper
上周三开了三小时的会,录音还躺在硬盘里,手动整理纪要要耗掉整个下午——而这件事每周都要重来一遍。faster-whisper 就是冲着这类场景去的:它是基于 CTranslate2 推理引擎对 OpenAI Whisper 的重实现,核心功能就是语音转文字,而且速度足够快,普通笔记本也能跑得动。
🚀 三步跑通
pip install faster-whisper第二步,八行代码转出第一段文字:
from faster_whisper import WhisperModel # 加载 base 模型(首次运行自动下载) model = WhisperModel("base", device="cpu", compute_type="int8") segments, info = model.transcribe("meeting.mp3") for seg in segments: print(f"[{seg.start:.2f}s -> {seg.end:.2f}s] {seg.text}")注意segments是个生成器,真正开始转写是在你遍历它的时候。有 NVIDIA 显卡的话改两个参数就行:device="cuda", compute_type="float16",运行前先装依赖pip install nvidia-cublas-cu12 nvidia-cudnn-cu12==9.*。
🎯 它解决什么问题
- 带时间戳的转写:剪视频字幕、回看会议录音时,你得知道每句话出现在第几秒。每个 segment 自带 start/end 时间戳,不用再手工对齐。
- 词级时间戳:做卡拉 OK 字幕、歌词对齐这种精细活时,开启
word_timestamps=True就能精确到每个词。 - 静音过滤:长音频里可能一半是沉默。打开
vad_filter,它内置的 Silero VAD 会自动跳过非语音片段,算力不浪费在背景音上。 - 多语言识别与翻译:外語讲座、跨国访谈不用先确认语言,它会自动检测;设置
task="translate"还能把语音内容直接翻成英文文本。
⚡ 性能到底快多少
官方基准里,同一张 GPU 转写 13 分钟音频:原始 openai/whisper 要 2 分 23 秒,faster-whisper 1 分 03 秒,最快可达约 4 倍速度;再开 8-bit 量化加批处理,能压到 16 秒左右,显存占用也省了一大块。
🔧 进阶与生态
- GPU 环境:新版 ctranslate2 只支持 CUDA 12 + cuDNN 9;CUDA 11 用户可降级
ctranslate2==3.24.0,CUDA 12 配 cuDNN 8 用4.4.0 - 批处理推理:
BatchedInferencePipeline可直接替换WhisperModel.transcribe,batch_size=16下速度再上一个台阶 - 模型转换:
ct2-transformers-converter命令可以把任意 Transformers 兼容的 Whisper 模型(含自微调模型)转成 CTranslate2 格式 - 源码入口:转写主逻辑在 faster_whisper/transcribe.py,VAD 默认参数在 faster_whisper/vad.py
- 贡献:本地装
pip install -e .[dev],跑pytest tests/验证后再提 PR - 许可证:MIT
✅ 今晚就试一段
拿回开头那段三小时的会议录音,跑一次 base 模型的转写——CPU 上几分钟,GPU 上更短,纪要连时间戳一起就出来了。如果打算把它接进自己的服务,从transcribe()的参数表读起,那里就是全部能力的入口。
【免费下载链接】faster-whisperFaster Whisper transcription with CTranslate2项目地址: https://gitcode.com/GitHub_Trending/fa/faster-whisper
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考