ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

Faster-Whisper 4 倍速语音转文字教程:从安装到 GPU 部署完整指南

Faster-Whisper 4 倍速语音转文字教程:从安装到 GPU 部署完整指南 Faster-Whisper 4 倍速语音转文字教程从安装到 GPU 部署完整指南【免费下载链接】faster-whisperFaster Whisper transcription with CTranslate2项目地址: https://gitcode.com/GitHub_Trending/fa/faster-whisper如果你等过一份 1 小时会议录音的转录结果应该体会过单个文件要跑很久的麻烦。faster-whisper 用 CTranslate2 推理引擎重写了 OpenAI Whisper在同样精度下速度最高提升 4 倍且免费开源。项目定位用 CTranslate2 重实现 Whisper 模型转录质量与原版保持一致推理时间显著缩短支持 CPU 和 GPU 上的 8 位int8量化显存与内存占用可再降约一半音频解码由 PyAV 库完成其自带 FFmpeg 库系统无需另装 FFmpeg内置 Silero VAD 语音活动检测自动跳过无语音段落减少空转输出段落级与单词级时间戳支持多语言自动检测动手前检查开始之前确认四件事Python 版本 3.9 或更高用 GPU 的话机器上有 NVIDIA 卡并安装了 cuBLAS 与 cuDNN 9对应 CUDA 12当前 ctranslate24.0只支持 CUDA 12环境是 CUDA 11 时需把 ctranslate2 降到 3.24.0纯 CPU 场景无额外依赖线程数可用环境变量OMP_NUM_THREADS控制安装完成后跑一条命令验证python -c import faster_whisper, ctranslate2; print(faster_whisper.__version__, ctranslate2.get_cuda_device_count())输出分两部分前者是包版本号当前为 1.2.1后者是可用的 CUDA 设备数。若你明明有 NVIDIA 卡却打印 0说明 CUDA 运行库没配置好。安装官方推荐方式一条命令pip install faster-whisper # CUDA 11 环境装完后再固定 ctranslate2 版本 pip install --force-reinstall ctranslate23.24.0核心依赖包括ctranslate24.0,5、onnxruntimeVAD 用、av、tokenizers、huggingface_hub、tqdm。用尺寸名如 large-v3加载模型时对应的 CTranslate2 权重会自动从 Hugging Face 下载并缓存到本地。第一个可运行示例最小路径加载模型、调用 transcribe、迭代输出。from faster_whisper import WhisperModel model WhisperModel(large-v3, devicecuda, compute_typefloat16) segments, info model.transcribe(audio.mp3, beam_size5, word_timestampsTrue) print(info.language, info.language_probability) for seg in segments: print(f[{seg.start:.2f}s - {seg.end:.2f}s] {seg.text}) for w in seg.words: print(f [{w.start:.2f}s] {w.word})输出逐句解读info.language是自动检测出的语言info.language_probability是其置信度。语言确定时可传languageen跳过检测segments是生成器转录在你真正迭代它之前不会开始。想立即跑完执行segments list(segments)每个seg含start、end、text三个核心字段另有无声概率等属性完整定义见 faster_whisper/transcribe.py典型场景会议长录音用 VAD 过滤静音目标转写两小时会议跳过长段静音与背景噪音。关键参数transcribe的vad_filter默认已开启默认只去除超过 2 秒的静默调整阈值用vad_parameterssegments, _ model.transcribe( audio.mp3, vad_filterTrue, vad_parametersdict(min_silence_duration_ms500), )注意点min_silence_duration_ms越小切分越激进对话密集的录音建议保持默认。全部参数与默认值在 faster_whisper/vad.py 中列出。字幕生成单词级时间戳目标拿到每个词的时间区间用于字幕编辑或逐词高亮。关键参数transcribe 时加word_timestampsTrue上一节示例已带然后迭代seg.words每个词有start、end、word字段。注意点Whisper 的词级时间戳由时间戳 token 推算存在一定漂移精度低于专门的对齐工具需要高精度对齐可看后文的 WhisperX。批量转写吃满 GPU目标一次转写大批音频时尽量利用 GPU。关键参数用BatchedInferencePipeline包装模型作为WhisperModel.transcribe的替代入口from faster_whisper import WhisperModel, BatchedInferencePipeline model WhisperModel(large-v3, devicecuda, compute_typefloat16) pipeline BatchedInferencePipeline(model) segments, _ pipeline.transcribe(audio.mp3, batch_size8)注意点批越大显存越高。官方基准中 large-v2 fp16 用batch_size8时13 分钟音频 17 秒完成但显存占用升到约 6.1GB小显存显卡先压小 batch 再试。性能与选型两个关键数字官方基准同一段 13 分钟测试音频large-v2 模型GPUNVIDIA RTX 3070 Ti 8GBCUDA 12.4openai/whisper fp16 耗时 2 分 23 秒faster-whisper fp16 耗时 1 分 03 秒int8 量化 59 秒显存从约 4.7GB 降到约 2.9GBCPUIntel Core i7-12700K8 线程small 模型openai/whisper fp32 耗时 6 分 58 秒faster-whisper int8 耗时 1 分 42 秒内存约 1.5GB模型选择参考tiny / base精度最低适合实时预览、快速验证small速度与精度平衡CPU 场景首选large-v3精度最高多语言通用distil-large-v3蒸馏版速度更快且 WER 与完整版接近官方建议配合languageen与condition_on_previous_textFalse使用以上数据来自仓库 README 中 v1.1.0 的基准章节当前包版本为 1.2.1。做横向对比前先统一 beam_size 与线程数否则数字不可比。常见问题现象调用 transcribe 后长时间无输出CPU、GPU 占用为 0。原因segments是生成器迭代前不会真正执行。解法list(segments)或 for 循环包一层。现象GPU 运行时 ctranslate2 报 CUDA 或 cuBLAS 加载失败。原因最新 ctranslate2 只支持 CUDA 12 加 cuDNN 9与系统版本不匹配。解法CUDA 11 环境执行pip install --force-reinstall ctranslate23.24.0CUDA 12 但 cuDNN 8 则固定 4.4.0。现象自己实测的速度与公开数据差距很大。原因beam_size、线程数、转录长度WER都直接影响速度openai/whisper 默认 beam_size 为 1本项目默认 5。解法对比前固定OMP_NUM_THREADS与全部转录参数并核对两边 WER 是否接近。现象转写出乱码或重复内容。原因低信噪比段落噪音、纯音乐触发模型幻觉。解法开启 vad_filter调高no_speech_threshold或设置prompt_reset_on_temperature抑制错误在段落间传播。生态与扩展speaches 把 faster-whisper 包成 OpenAI 兼容的 API 服务支持流式与实时转写WhisperX 提供说话人分离与词级对齐基于 faster-whisper 加 wav2vec2whisper-ctranslate2 提供与 openai/whisper 原版客户端兼容的命令行入口方便存量流程迁移更多参数与模型选项见 WhisperModel 类 源码或到仓库 issue 区查看最新进展。【免费下载链接】faster-whisperFaster Whisper transcription with CTranslate2项目地址: https://gitcode.com/GitHub_Trending/fa/faster-whisper创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表