资讯详情

资讯详情

faster-whisper 语音转写安装教程:从0到跑通的完整指南

faster-whisper 语音转写安装教程从0到跑通的完整指南【免费下载链接】faster-whisperFaster Whisper transcription with CTranslate2项目地址: https://gitcode.com/GitHub_Trending/fa/faster-whisperfaster-whisper 是基于 CTranslate2 推理引擎的 Whisper 语音转写实现相同准确率下最快可达原版 4 倍速度配合 8-bit 量化还能进一步降低内存占用。本文带你完成安装、配置与首次转写直接上手可用。 项目定位faster-whisper 是什么一句话定义faster-whisper 用 CTranslate2 重写 OpenAI Whisper 模型专注把语音转文字的推理速度提上去同时保持同等准确率。它解决的核心痛点速度慢相比 openai/whisper同等精度下最快快 4 倍且内存占用更低省资源CPU 和 GPU 均支持 8-bit 量化显存可从约 4.5GB 降到约 2.9GBlarge-v2GPU fp16→int8 实测免装 FFmpeg音频解码由内置的 PyAV 完成无需在系统上单独安装 FFmpeg开箱即用一条 pip 命令安装模型按名称自动下载tiny到large-v3可选能力完整多语言检测、词级时间戳、Silero VAD 静音过滤、批量转写一应俱全 环境准备faster-whisper 最低系统要求项目必须推荐Python3.9 及以上3.10 / 3.11硬件CPU 即可运行支持 CUDA 12 的 NVIDIA GPUGPU 依赖—cuBLASCUDA 12 cuDNN 9FFmpeg不需要不需要注意新版ctranslate2仅支持 CUDA 12 cuDNN 9。如果你处于 CUDA 11 / cuDNN 8 环境需将ctranslate2降级到3.24.0CUDA 12 cuDNN 8 则降级到4.4.0。 30秒上手安装 faster-whisper 并跑通第一条转写第一步安装pip install faster-whisper这条命令会同时装好ctranslate2、onnxruntime、av等全部依赖。第二步用仓库里自带的测试音频tests/data/jfk.flac跑一次转写from faster_whisper import WhisperModel model WhisperModel(tiny, devicecuda, compute_typefloat16) segments, info model.transcribe(tests/data/jfk.flac, beam_size5) for seg in segments: print(f[{seg.start:.2f}s - {seg.end:.2f}s] {seg.text})这段代码做了三件事加载 tiny 模型到 GPU首次运行会自动下载权重、调用transcribe转写音频、遍历结果打印带时间戳的文本段。注意segments是生成器真正开始转写是在for循环遍历它的那一刻如果想立刻跑完先list(segments)即可。️ 核心能力演示时间戳、VAD 与批量转写词级时间戳——定位每个单词的起止时间是做字幕对齐的基础。开启方式是在transcribe里加word_timestampsTruesegments, _ model.transcribe(audio.mp3, word_timestampsTrue) for seg in segments: for w in seg.words: print(f[{w.start:.2f}s - {w.end:.2f}s] {w.word})VAD 静音过滤——内置 Silero VAD 模型自动裁剪无语音片段以节省算力长音频尤其受益。加vad_filterTrue即可启用可用vad_parametersdict(min_silence_duration_ms500)调整裁剪阈值默认只剔除超过 2 秒的静音。批量转写——BatchedInferencePipeline是WhisperModel.transcribe的即插即用替代通过batch_size提升吞吐。README 基准显示large-v2 在 GPU 上batch_size8时 13 分钟音频仅需 17 秒fp16而逐段处理要 1 分 03 秒。⚙️ 调优与进阶模型、量化与参数怎么选模型规模tiny最快适合实时场景small速度与精度均衡large-v3精度最高。仓库同时支持distil-large-v3蒸馏模型它专为 faster-whisper 的转写算法设计且建议显式指定languageen、关闭condition_on_previous_text。计算类型compute_type参数场景推荐配置GPU 高显存devicecuda, compute_typefloat16GPU 显存紧张devicecuda, compute_typeint8_float16CPU 部署devicecpu, compute_typeint8解码参数默认beam_size5注意 openai/whisper 默认是 1对比测试时务必保持一致专有名词识别不准时可用initial_prompt或hotwords提供上下文提示长音频可配合clip_timestamps只处理指定区间。所有参数的完整定义在 faster_whisper/transcribe.py 的transcribe方法里值得通读一遍。 典型落地场景四个真实用法会议记录自动化上传录音文件转写结果带段落级时间戳可直接整理成纪要长会中 VAD 过滤还能显著缩短耗时。视频字幕生成用word_timestampsTrue输出词级时间戳直接导出为字幕文件配合initial_prompt传入节目常用词可提升专有名词准确率。播客内容索引批量转写整期节目生成文字副本便于全文检索和引用定位CPU int8 模式下 small 模型转录 13 分钟音频约 1 分 42 秒。语音笔记整理tiny或base模型 CPU int8低配置环境也能把语音备忘录快速变成可搜索文本。️ 避坑指南五个高频问题1. GPU 报错找不到 cuDNN / cuBLAS现象初始化模型时报 CUDA 或 cuDNN 相关错误。原因新版ctranslate2只认 CUDA 12 cuDNN 9旧环境缺库。解法按 NVIDIA 官方文档安装 cuBLAS 和 cuDNN 9或临时降级pip install --force-reinstall ctranslate23.24.0CUDA 11 cuDNN 8 环境。2. 调用 transcribe 后程序卡住不出结果现象拿到segments后没有任何输出。原因它是生成器不遍历就不执行。解法用for循环遍历或segments list(segments)一次性跑完。3. 跑出的速度比别人慢很多现象与 README 基准差距明显。原因解码参数不一致或 CPU 线程数不同。解法对比时保持相同beam_sizeCPU 场景用OMP_NUM_THREADS4 python3 my_script.py固定线程数。4. 大模型显存不足OOM现象加载 large-v3 时显存爆掉。原因fp16 精度占用更高。解法换int8_float16量化或改用distil-large-v3、更小规模的模型。5. 长静音段出现幻觉文本现象纯静音处转出无关内容。原因模型在无语音区域自由发挥。解法开启vad_filterTrue或启用hallucination_silence_threshold跳过可疑静音段。 延伸与下一步想深入转写主流程读 faster_whisper/transcribe.pyVAD 可调参数在 faster_whisper/vad.py。想复现基准数据benchmark/ 下有完整的速度与 WER 评测脚本。想容器化部署docker/Dockerfile 基于官方 CUDA 12.3.2 cuDNN 9 镜像一条命令即可启动推理示例。想用自己的微调模型用ct2-transformers-converter把 Transformers 格式的 Whisper 权重转成 CTranslate2 格式再用WhisperModel(本地目录或用户名/模型名)加载。进阶方向hotwords自定义词表、BatchedInferencePipeline批量吞吐、社区集成方案说话人分离、流式转写等。装好即跑把一条真实音频丢进去你会比读十篇文档更快理解这个项目的价值。【免费下载链接】faster-whisperFaster Whisper transcription with CTranslate2项目地址: https://gitcode.com/GitHub_Trending/fa/faster-whisper创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
觉得有用,分享给同行:

为您的企业打造数字门面

稳重轻奢商务风格,端正雅致视觉,长效耐看不易过时。

立即咨询 →