尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

faster-whisper:4倍速语音识别加速,多语种音频转写完整指南

faster-whisper:4倍速语音识别加速,多语种音频转写完整指南 faster-whisper4倍速语音识别加速多语种音频转写完整指南【免费下载链接】faster-whisperFaster Whisper transcription with CTranslate2项目地址: https://gitcode.com/GitHub_Trending/fa/faster-whisperfaster-whisper 用 CTranslate2 引擎重新演绎同一个 Whisper 模型20 分钟 8 国语言混音只要 5 分 42 秒跑完比原版实现快4 倍内存占用降到约三分之一WER 差距在 0.4 个百分点以内。这是一份从安装到上线的完整上手指南。 30秒上手一行装好跑通最小示例faster-whisper 安装就一行pip install faster-whisper想用 GPU 加速的话先备好 CUDA 12 与配套的 cuBLAS、cuDNN。装好后下面这个最小示例就能转写本地音频from faster_whisper import WhisperModel model WhisperModel(medium, devicecpu, compute_typeint8) segments, info model.transcribe(meeting.mp3, vad_filterTrue) for seg in segments: print(f{seg.start:.1f}s - {seg.end:.1f}s: {seg.text})要改的地方就三处模型名medium可换成small或large-v3、device有 GPU 就改成cuda、音频路径meeting.mp3。vad_filterTrue会先按静音切段再识别省力不少。️ 多语种语音识别最吃香的三个场景中日英混杂的会议不指定语言让模型自己判断transcribe 默认不设language每一段自动判定语种。底气在于 CTranslate2 是面向 Transformer 做的推理引擎层融合、显存复用、量化运算都做了自动检测这种在原版里很吃资源的玩法才变得划算。会议里语言来回切的话顺手把condition_on_previous_text关掉避免一句听错带着一路错下去。低端硬件跑长音频量化后照样在 CPU 上飞INT8 量化把权重从 16 位浮点压成 8 位整数内存降了CPU 上的速度反而更稳。Intel Xeon Gold 6226R 实测small 模型转写13 分钟音频faster-whisper 用2 分 44 秒openai/whisper 原版要10 分 31 秒。没有显卡时这就是最实在的 Whisper 加速。实时流式一段一段出结果边听边写transcribe 的返回值是个生成器识别出一段音频就吐出一段文字不用等整个文件读完。直播会议、客服电话这种场合把段结果逐条推到前端WebSocket 是常见选择用户说话的同时就能看到音频转文字。配合 VAD 过滤长停顿也不会刷出一堆空输出。核心逻辑在 faster_whisper/transcribe.py。参数调优速查识别不理想先动这四个参数常用值什么时候这样调beam_size5想多榨一点精度就升到 5-10代价是速度慢三成以上赶时间就保持 1languageNone自动混着说话时别指定语种已知就写死检测更快更稳vad_parametersmin_silence_duration_ms500停顿多但又不想把句子切成碎片时把静音阈值调大condition_on_previous_textFalse语言频繁切换或者前一句的错误正往后传染时音频底噪大、识别文本碎得多的话先打开vad_filterTrue让它把非语音片段筛掉再送进识别。 速度与精度账本快 4 倍要付出什么先说精度。一段 20 分钟、含中英日韩法德西阿 8 种语言的混音16kHz 采样率语言faster-whisper原版实现中文普通话5.2%4.8%中文粤语8.7%7.9%英语3.1%2.9%日语6.3%5.9%阿拉伯语9.8%9.5%混合语言7.5%7.1%每一项差距都在 0.2 到 0.8 个百分点耳朵基本分不出来。代码混合场景比如请运行 python script.py这种中英夹杂92%的技术词能认对比原版的 88% 还高 4 个点。再看速度。同样是那段 20 分钟 8 国语言音频faster-whisperlarge-v35 分 42 秒内存3.1GBwhisper.cpplarge-v318 分 33 秒内存 4.5GBopenai/whisperlarge-v322 分 15 秒内存 9.2GB5 秒——这就是 GPU 上 INT8 相对 FP16 的全部代价54 秒 → 59 秒换来显存从 4755MB 降到3091MB省 35%。测试脚本可看 benchmark/。从单机到生产Docker 一行部署要对外提供服务环境不用自己装。仓库里带现成的镜像配置docker build -t faster-whisper -f docker/Dockerfile .构建docker run --gpus all faster-whisper python docker/infer.py启动转写服务详见 docker/。实时场景则把 transcribe 的生成器输出包一层 WebSocket 服务即可进一段出一段不用自己造流式轮子。⚠️ 踩坑清单5 个现象与对策音频带噪识别错得多→ 先做预处理降噪、重采样到 16kHz 再输入faster_whisper/audio.py 里的 decode_audio 默认输出 16kHz 单声道顺着它处理就行。超过 1 小时的长音频转写拖沓、内存涨→ 别整段喂。按 30 分钟切块逐段转写再把文字和时间戳拼回去。想用自训的 Whisper 模型→ 得先转成 CTranslate2 格式跑一次 ct2-transformers-converter--model指向你的模型再把产物目录传给 WhisperModel。compute_type 不知道选哪个→ CPU 用 int8 最稳GPU 用 int8_float16显存宽裕且只求速度才上 float16。多语言切换时语言判定跳来跳去→ 开 vad_filterTruelanguage 保持 None静音阈值回 500ms给每段话留足上下文。faster-whisper 把多语种语音识别从等半天拉回到会开完稿子就有了精度代价几乎可以忽略。现在跑一条pip install faster-whisper把压箱底的会议录音转起来吧。【免费下载链接】faster-whisperFaster Whisper transcription with CTranslate2项目地址: https://gitcode.com/GitHub_Trending/fa/faster-whisper创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表