十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

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

faster-whisper 语音转文字教程:如何把 Whisper 提速 4 倍

faster-whisper 语音转文字教程:如何把 Whisper 提速 4 倍 faster-whisper 语音转文字教程如何把 Whisper 提速 4 倍【免费下载链接】faster-whisperFaster Whisper transcription with CTranslate2项目地址: https://gitcode.com/GitHub_Trending/fa/faster-whisper如果你用 openai/whisper 转过长音频大概对耗时有印象13 分钟的录音在 GPU 上要跑 2 分 23 秒CPU 上超过 7 分钟。faster-whisper 基于 CTranslate2 推理引擎重写 Whisper 的推理流程在官方基准中相同精度下速度最高可达原来的 4 倍显存和内存占用更低。它通过 pip 一条命令即可安装音频解码由 PyAV 库内置完成无需在系统里单独配置 FFmpeg适合会议记录批量转写、播客字幕生成等场景。为什么比原版 Whisper 快 4 倍模型权重与 OpenAI Whisper 完全一致差异全在推理引擎。CTranslate2 对 Transformer 做了量化和批处理优化官方用 13 分钟音频测得的对比数据场景原版实现faster-whisperlarge-v2 / GPU / fp162 分 23 秒4708MB1 分 03 秒4525MBlarge-v2 / GPU / int8—59 秒2926MBsmall / CPUi7-12700K 8 线程6 分 58 秒2335MBint8 批处理 51 秒3608MB另外distil-large-v3 模型在 GPU 上的转写时间为 25 分 50 秒同期 transformers 方案为 46 分 12 秒且词错误率WER更低13.5 对 14.8。环境要求很低Python 3.9 以上即可。安装与 3 行代码转写pip install faster-whisper最小可运行示例from faster_whisper import WhisperModel model WhisperModel(large-v3, 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})一个容易踩的坑segments是生成器迭代之前转写并不会真正开始。需要结果落盘或统计时长时先用list(segments)消费掉。批处理推理与 VAD 过滤两个立竿见影的参数批处理推理接口是transcribe的直接替换品把多段音频并行送入模型。官方数据里GPU 上 large-v2 的转写从 1 分 03 秒压到 17 秒from faster_whisper import WhisperModel, BatchedInferencePipeline model WhisperModel(turbo, devicecuda, compute_typefloat16) batched_model BatchedInferencePipeline(modelmodel) segments, info batched_model.transcribe(audio.mp3, batch_size16)VAD语音活动检测集成自 Silero可以跳过纯静音片段默认策略较保守只剔除超过 2 秒的静音segments, _ model.transcribe( audio.mp3, vad_filterTrue, vad_parametersdict(min_silence_duration_ms500), )如果需要逐词时间戳做卡拉 OK 字幕或精细对齐加word_timestampsTrue后遍历segment.words即可。faster-whisper GPU 加速怎么开devicecuda之外系统侧需要 CUDA 12 对应的 cuBLAS 和 cuDNN 9。目前 ctranslate2 的最新版本只支持这个组合Linux 下可以这样装pip install nvidia-cublas-cu12 nvidia-cudnn-cu129.* export LD_LIBRARY_PATHpython3 -c import os; import nvidia.cublas.lib; import nvidia.cudnn.lib; print(os.path.dirname(nvidia.cublas.lib.__file__) : os.path.dirname(nvidia.cudnn.lib.__file__))注意LD_LIBRARY_PATH必须在启动 Python 之前设置好。如果你的环境是 CUDA 11 cuDNN 8需要把 ctranslate2 降到 3.24.0CUDA 12 cuDNN 8 则降到 4.4.0。也可以直接使用 NVIDIA 官方的 CUDA 12.3.2-cudnn9 运行时 Docker 镜像省去手工配置。CPU、GPU、int8 怎么选只有 CPUcompute_typeint8是性价比最高的组合small 模型下内存从 2335MB 降到 1477MB再配batch_size可进一步压时间。有 GPU优先float16显存吃紧时换int8_float16追求极限速度就上BatchedInferencePipeline代价是显存上升batch_size8 的 int8 需约 4.5GB。与他人做性能对比时记得统一 beam size——faster-whisper 默认是 5而 openai/whisper 默认是 1CPU 场景还要固定线程数可用OMP_NUM_THREADS4 python3 my_script.py。项目以 MIT 协议开源当前版本 1.2.1按名称加载的模型权重会自动从 Hugging Face 的 Systran 官方账号下载。如果你有微调过的 Whisper 模型可以用仓库自带的ct2-transformers-converter脚本转换成 CTranslate2 格式后直接加载。【免费下载链接】faster-whisperFaster Whisper transcription with CTranslate2项目地址: https://gitcode.com/GitHub_Trending/fa/faster-whisper创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表