faster-whisper 快速上手:3 步装好语音转文字,再学会两个进阶用法

📅 发布时间:2026/9/5 16:39:48
faster-whisper 快速上手:3 步装好语音转文字,再学会两个进阶用法
faster-whisper 快速上手3 步装好语音转文字再学会两个进阶用法【免费下载链接】faster-whisperFaster Whisper transcription with CTranslate2项目地址: https://gitcode.com/GitHub_Trending/fa/faster-whisper拿到一段一小时的会议录音等原版 Whisper 把它转成文字得泡上一杯咖啡的时间。faster-whisper 用 CTranslate2一个针对 Transformer 模型优化的推理引擎重写了 Whisper同样的识别精度速度最高提升 4 倍内存占用更低。这篇文章带你 3 步装好并跑通第一次语音转文字再学会词级时间戳和静音过滤两个进阶用法。它能帮你干什么读完这一节你能确认 faster-whisper 是否匹配你的场景。会议、访谈录音转文字输入一个音频文件输出每句带起止秒数的文本直接就是会议纪要的骨架。播客、网课变可搜索文本支持指定语言如languagezh或自动检测一行 for 循环就能批量处理整个文件夹的音频。长录音只转人声部分录音里有大段静音时开 VAD语音活动检测自动剪掉无声片段不浪费算力。省 GPU/CPU 资源仓库 README 的官方基准里转写 13 分钟音频large-v2 模型NVIDIA RTX 3070 TiCUDA 12.4openai/whisper fp16 耗时 2 分 23 秒、显存 4708MBfaster-whisper int8 耗时 59 秒、显存 2926MBCPU 侧Intel i7-12700K8 线程small 模型6 分 58 秒 vs 1 分 42 秒。三步跑起来按下面 3 步走你可以在本机完成第一次语音转文字。第 1 步装好需要 Python 3.9 及以上。音频解码走 PyAV 库自带 FFmpeg 解码能力所以系统里不需要另装 FFmpeg。python --version # 确认 Python 3.9 pip install faster-whisper # 从 PyPI 安装 要用 GPU 加速的话先装好 NVIDIA cuBLAS 和 cuDNN 9CUDA 12两个库安装方法见 README 的 GPU 一节。第 2 步跑通最小示例from faster_whisper import WhisperModel model WhisperModel(base, devicecpu, compute_typeint8) segments, info model.transcribe(audio.mp3) # 换成你自己的音频文件 for segment in segments: # 必须迭代转录才会真正开始 print(f[{segment.start:.2f}s - {segment.end:.2f}s] {segment.text})首次运行会从 Hugging Face Hub 自动下载 base 模型并缓存到本地之后直接走缓存。第 3 步看懂输出每行输出是「起始秒 - 结束秒 文本」。info里还有info.language检测到的语言和info.language_probability置信度不想自动检测时在 transcribe 里直接传languageen即可。模型尺寸可选 tiny / base / small / medium / large-v3 / turbo越大越准CPU 上建议配 int8 量化。进阶最值得学的一个用法这一节深入讲两个拿来即用的功能词级时间戳和 VAD 静音过滤。词级时间戳解决「字幕、关键词定位要知道每个字几点几分出现」VAD 过滤解决「长录音里静音占大头转录时间被白白浪费」。# 词级时间戳 跳过静音部分 segments, _ model.transcribe( audio.mp3, word_timestampsTrue, # 开启词级时间戳 vad_filterTrue, # 开启 VAD 过滤静音 vad_parametersdict(min_silence_duration_ms500), # 超过 500ms 的静音被剪掉 ) for segment in segments: for word in segment.words: print(f[{word.start:.2f}s - {word.end:.2f}s] {word.word})VAD 默认只剪掉超过 2 秒的静音用min_silence_duration_ms可以调得更激进。其余能力一句话带过完整参数看 WhisperModel 源码BatchedInferencePipeline批量转录README 基准里batch_size8把 GPU 耗时从 1 分 03 秒压到 17 秒distil-large-v3蒸馏模型天生为这套转录流程设计initial_prompt提供上下文文本、hotwords提升专有词识别cpu_threads控制 CPU 线程数默认 4。这几个坑先避开下面 3 个是新手最常撞的遇到先对号入座。⚠️ 调了 transcribe()半天没输出现象执行完segments, info model.transcribe(...)后等了半天什么都没打印。 原因segments是个生成器惰性的、迭代时才产出结果的迭代器不迭代转录就不会开始。 解决套for循环打印或直接segments list(segments)。⚠️ 指定 devicecuda 报 cuBLAS/cuDNN 相关错误现象GPU 运行时报缺 NVIDIA 库、CUDA 版本不匹配。 原因最新 ctranslate2 只支持 CUDA 12 cuDNN 9而这两个库默认不在系统里。 解决Linux 上pip install nvidia-cublas-cu12 nvidia-cudnn-cu129.*并按 README 设置好LD_LIBRARY_PATH再启动实在只能留在 CUDA 11 环境就pip install --force-reinstall ctranslate23.24.0降级。⚠️ 第一次运行特别慢像卡死了现象第一次构造WhisperModel(base)时耗时长得反常。 原因首次加载会从 Hugging Face Hub 自动下载对应的 CTranslate2 模型文件。 解决等这一次把模型缓存下来或提前把模型放到本地目录用WhisperModel(/path/to/model)指定加载。faster-whisper 把「音频转成带时间戳的文字」做成了几行 Python 的事精度与原版相当速度最高 4 倍且 CPU/GPU 都能跑。完整文档与基准数据README.md转录参数细节faster_whisper/transcribe.py基准测试脚本benchmark/【免费下载链接】faster-whisperFaster Whisper transcription with CTranslate2项目地址: https://gitcode.com/GitHub_Trending/fa/faster-whisper创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考