资讯详情

资讯详情

faster-whisper 完整语音转写指南:4 倍提速,8 行代码拿到带时间戳逐字稿

faster-whisper 完整语音转写指南4 倍提速8 行代码拿到带时间戳逐字稿【免费下载链接】faster-whisperFaster Whisper transcription with CTranslate2项目地址: https://gitcode.com/GitHub_Trending/fa/faster-whisper晚上 6 点你手里有一段 40 分钟的会议录音想在晚饭前拿到一份带时间戳的逐字稿。把音频丢进faster-whisper——OpenAI Whisper 用 CTranslate2 重写的推理版——几十秒后就能逐句打出「[00:03.2s → 00:07.8s] 我们先把排期定下来」。CTranslate2 ≈ 给模型换一台更省油的推理引擎同等精度下最高 4 倍速、更省内存CPU 和 N 卡都能离线跑。动手前先看硬件与模型决策表 你的条件怎么选为什么有 NVIDIA 显卡devicecudacompute_typefloat16速度最快显存紧张时改int8_float16纯 CPU 环境devicecpucompute_typeint8int8 量化省约 1/3 内存CPU 上最快短音频、要低延迟模型选tiny/base含.en英文版模型越小出结果越快正式交付、要精度模型选large-v3/turbo精度最高13 分钟音频 fp16 约 1 分 03 秒老显卡 / 老环境ctranslate2锁定版本新版只支持 CUDA 12 cuDNN 9CUDA 11 退回3.24.0CUDA 12 cuDNN 8 退回4.4.0环境只需Python 3.9不需要系统装 FFmpeg音频解码靠 PyAV它把 FFmpeg 库打进了自己的 wheel 里。一键安装命令最短跑通路径第 1 步装 NVIDIA 运行库用 N 卡才需要。ctranslate2 推理时要调 cuBLAS 和 cuDNN缺了模型起不来pip install nvidia-cublas-cu12 nvidia-cudnn-cu129.*Linux 上需把库目录加进LD_LIBRARY_PATH再启动 Python不想折腾就直接用官方 Docker 镜像nvidia/cuda:12.3.2-cudnn9-runtime-ubuntu22.04仓库里 docker/Dockerfile 和 docker/infer.py 就是这个路子。第 2 步装本体。一行带齐ctranslate2、avPyAV、onnxruntime、tokenizers等依赖版本要求见 requirements.txtpip install faster-whisper如果这一步触发本地编译而不是装 wheel说明 pip 拉到了源码包改用官方预编译包PyAV、ctranslate2 都有现成 wheel别在 Windows 上硬编译。最小转写示例8 行拿到时间戳逐字稿⚡ 模型名写large-v3会自动从 Hugging Face 下载对应的 CTranslate2 权重首次运行稍慢之后走缓存from faster_whisper import WhisperModel model WhisperModel(large-v3, devicecuda, compute_typefloat16) segments, info model.transcribe(meeting.mp3, beam_size5, vad_filterTrue) print(f语言: {info.language}置信度 {info.language_probability:.2f}) for seg in segments: print(f[{seg.start:.2f}s - {seg.end:.2f}s] {seg.text})两个最容易踩的坑segments是生成器真正跑转写发生在你遍历它的那一刻想立刻跑完就segments list(segments)。vad_filterTrue会先用内置的 Silero VAD 剪掉长静音再送进模型VAD ≈ 先把没声音的段落剪掉模型不用白算长音频建议保留。faster-whisper 参数速查表典型场景取值代价GPU 省显存compute_typeint8_float16显存约省 1/3large-v2 int8 仅 2926MBGPU 日常compute_typefloat16large-v3 约需 10GB 显存解码精度beam_size5默认值调大更准但更慢与别家对比时务必对齐该参数词级时间戳word_timestampsTrue稍慢但每个seg.words里有逐词起止时刻长音频提效BatchedInferencePipelinebatch_size8显存/内存换速度13 分钟音频 fp16 从 1 分 03 秒压到 17 秒指定语言languagezh等跳过前 30 秒的自动检测避免短音频检测错常见报错自查 如果加载模型时报cuDNN not found或 CUDA 相关错误说明cuBLAS/cuDNN 9 库不在环境里或版本对不上 CUDA 12就核对LD_LIBRARY_PATHLinux/PATHWindows或改用官方 Docker 镜像跑。如果import faster_whisper报 ctranslate2 版本冲突说明机器上已有旧版 ctranslate2就用pip install --force-reinstall ctranslate24.4.0CUDA 12 cuDNN 8或ctranslate23.24.0CUDA 11锁版本。如果脚本跑完了却没输出任何文本说明你只拿到生成器、没触发解码就把结果包进list(segments)再处理。如果加载时报Invalid model size说明模型名不在内置列表就用available_models()核对可选tiny/base/small/medium/large-v1~v3/distil-*/turbo等名单在 faster_whisper/utils.py。往深里走 做字幕要词级时间戳加word_timestampsTrue遍历seg.words拿逐词起止实现见 faster_whisper/transcribe.py。说话占比低、想省算力通过vad_parametersdict(min_silence_duration_ms500)收紧静音切分默认min_silence_duration_ms2000、speech_pad_ms400完整定义见 faster_whisper/vad.py。多段音频批量转写BatchedInferencePipeline(modelmodel)是WhisperModel.transcribe的直替VAD 默认开启batch_size越大越快实测数据见 README.md 的 Benchmark 一节可复现脚本在 benchmark/。加载自己微调的模型pip install transformers[torch]4.23见 requirements.conversion.txt后运行ct2-transformers-converter转换权重再用WhisperModel(本地目录)加载步骤见 README.md 的 Model conversion 一节。【免费下载链接】faster-whisperFaster Whisper transcription with CTranslate2项目地址: https://gitcode.com/GitHub_Trending/fa/faster-whisper创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
觉得有用,分享给同行:

为您的企业打造数字门面

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

立即咨询 →