资讯动态

faster-whisper:语音转写提速至多 4 倍

发布时间:2026/9/5 17:26:51 来源:尧图企业网站定制
faster-whisper语音转写提速至多 4 倍【免费下载链接】faster-whisperFaster Whisper transcription with CTranslate2项目地址: https://gitcode.com/GitHub_Trending/fa/faster-whisper把几小时的音频一口气转写成文字时原版 OpenAI Whisper 实现的速度常常是瓶颈。faster-whisper 是一个语音识别加速库用 CTranslate2 重新实现了同样的 Whisper 模型在准确率不变的前提下至多提速 4 倍峰值内存还能下降约三分之一。适合需要批量部署语音转写的开发者。它解决什么问题faster-whisper 把 OpenAI 的 Whisper 模型搬到 CTranslate2 这个专为 Transformer 优化的推理引擎上。模型权重、识别结果和接口风格都与原版保持一致区别只在推理层支持 fp16、int8 和混合精度计算。因此从 openai/whisper 迁移过来基本是替换式的不需要重写业务逻辑。它的价值集中在两点同样的转写任务耗时更短峰值内存占用更低让大模型能在资源有限的机器上跑起来。适合谁正在用原版 whisper 包、或准备把转写服务投入生产的团队。实测快多少13 分钟音频基准下表来自项目 README 的基准测试GPU 环境为 NVIDIA RTX 3070 Ti 8GBCUDA 12.4CPU 环境为 Intel Core i7-12700K8 线程对比对象包括 openai/whisper、whisper.cpp 和 transformers 等实现。large-v2 模型GPUbeam_size5实现精度耗时显存openai/whisperfp162m23s4708MBfaster-whisperfp161m03s4525MBfaster-whisperbatch_size8fp1617s6090MBfaster-whisperint859s2926MBfaster-whisperbatch_size8int816s4500MBsmall 模型CPUbeam_size5实现精度耗时内存openai/whisperfp326m58s2335MBfaster-whisperfp322m37s2257MBfaster-whisperint81m42s1477MBfaster-whisperbatch_size8int851s3608MB读法不开批次的 int8 配置下large-v2 显存从 4708MB 降到 2926MB降幅约四成耗时与 fp16 基本持平CPU 上 small 模型 int8 约为原版 fp32 的 4 倍速1m42s 对 6m58s。批量推理还能再快一个数量级代价是内存占用上升。数字基于单条样例和特定硬件实际比例会随音频内容与机器浮动。什么时候用给批量任务做容量规划前先拿这张表乘以你的音频总量来估算资源。安装与首次转录要求 Python 3.9 及以上。系统不需要预装 FFmpeg包内的 PyAV 已经捆绑了音频解码库这是它比原版省的一步部署工作。pip install faster-whisper下面的例子在 GPU 上转录一个 mp3 文件打印语言检测结果和带时间戳的片段from faster_whisper import WhisperModel model WhisperModel(large-v3, devicecuda, compute_typefloat16) segments, info model.transcribe(audio.mp3, beam_size5) print(fDetected language: {info.language} ({info.language_probability:.2f})) for segment in segments: print(f[{segment.start:.2f}s - {segment.end:.2f}s] {segment.text})注意segments是生成器迭代它之前转写实际没有开始想一次拿到全部结果先list(segments)。按模型名加载时对应的 CTranslate2 权重会自动从 Hugging Face 下载首次运行无需手动准备模型文件。适合谁有一块可用 GPU 的话十行代码就能跑通完整流程。核心能力词级时间戳transcribe传入word_timestampsTrue每个片段会返回逐词的开始、结束时间和概率。字幕对齐、关键词定位直接基于这份数据。VAD 静音过滤库内置 Silero VAD 模型vad_filterTrue可跳过纯静音区间再做识别。默认策略保守只过滤超过 2 秒的静音长录音里空白多的时候提速明显批量推理模式下默认开启。批量推理BatchedInferencePipeline是WhisperModel.transcribe的直接替代品把多个片段合并成一批送进模型。基准里 GPU 上 large-v2 因此从 59 秒降到 16 秒int8显存则从 2926MB 升到 4500MB。语言检测与多语言支持不指定语言时模型自动检测并给出置信度支持的语言集合与 Whisper 多语言模型一致可用model.supported_languages()查询。纯英文音频改用.en系列模型还能更快。微调模型转换官方提供ct2-transformers-converter命令把 OpenAI 原版或自己微调过的模型转成 CTranslate2 格式之后从本地目录直接加载。五项能力里时间戳和 VAD 是日常最常用到的两项批量推理只在大批量处理时才需要动。不同硬件怎么选模型和参数显存充足的 GPUdevicecuda, compute_typefloat16精度损失最小。显存紧张的 GPU换compute_typeint8_float16速度基本保住显存降约三分之一。纯 CPU用compute_typeint8长音频建议换 small 或 baseCPU 线程数可用环境变量OMP_NUM_THREADS控制做对比测试时先固定它。批量高吞吐套上BatchedInferencePipeline并调大batch_size内存随批次线性增长动手前先确认余量。模型选择多语言场景选large-v3只要英文large-v3-turbo或.en系列更快精度和速度折中可看distil-large-v3资源很紧张就用small、base。对比测试注意本库默认beam_size为 5原版 whisper 默认 1先对齐参数再比速度否则结果不可信。这几组搭配覆盖绝大多数部署场景拿不准时从 GPU float16、CPU int8 两个默认起点开始。适合用与不适合用适合离线批量转写、字幕生成、会议录音归档、多语言音频处理。不适合实时流式转写。库的定位是离线模型实时场景要配合 Whisper-Streaming、WhisperLive 这类社区项目。GPU 依赖不为零需要安装 cuBLAS 与 cuDNN 9CUDA 12老 CUDA 11 环境得降级到ctranslate23.24.0。准确率不高于原版它的价值在速度和内存识别效果与同型号原版 Whisper 一致解决不了 Whisper 自身在长静音处的重复幻觉问题。说话人分离等能力需要额外组件社区有 whisper-diarize 等现成方案。一句话离线批量加资源受限放心用实时交互场景先去看流式实现。结语如果你手上正好有转写任务要优化先把现有脚本的compute_type改成 int8 就能看到差距。完整的参数说明、VAD 默认值和基准脚本都在仓库里README.md 与 benchmark/。【免费下载链接】faster-whisperFaster Whisper transcription with CTranslate2项目地址: https://gitcode.com/GitHub_Trending/fa/faster-whisper创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价