ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

faster-whisper 安装配置指南:在 GPU 上跑通 Whisper 语音转文字

faster-whisper 安装配置指南:在 GPU 上跑通 Whisper 语音转文字 faster-whisper 安装配置指南:在 GPU 上跑通 Whisper 语音转文字【免费下载链接】faster-whisperFaster Whisper transcription with CTranslate2项目地址: https://gitcode.com/GitHub_Trending/fa/faster-whisperfaster-whisper 是 OpenAI Whisper 语音识别模型基于 CTranslate2 推理引擎的重实现,目标是比原始 Whisper 更快、更省内存。这篇文章面向准备本地部署它的读者:先判断它是否适合你的场景,再核对环境条件,然后用最短路径完成安装,最后用一段最小代码确认 GPU 转录确实可用。先判断:你是否需要 faster-whisper在动手装环境之前,你可以用三条收益标准判断它的价值:速度收益:在相同精度下,官方基准显示它比 openai/whisper 最快可达 4 倍,显存和内存占用更低。量化收益:8-bit 量化(int8)在 GPU 和 CPU 上都能进一步提速并压缩占用,例如 large-v2 在 GPU 上 int8 模式显存约 2926MB,低于 fp16 的 4525MB。依赖收益:不需要在系统里安装 FFmpeg,音频解码由 PyAV 库自带的 FFmpeg 库完成,少一类环境麻烦。适合的场景:批量转录长音频、对延迟敏感的服务、显存紧张的单机部署、没有 GPU 想用 int8 跑 CPU 的环境。不太适合的场景:需要做 Whisper 训练或微调流程的场景(faster-whisper 只负责推理);依赖原 openai/whisper 脚本生态、无法替换调用方式的项目。安装前检查:环境是否满足要求建议先对照下表核对,再开始安装。CPU 部署只需满足 Python 一条即可。检查项条件不满足时的结果Python3.9 或更高导入时直接报版本错误NVIDIA 库cuBLAS for CUDA 12 cuDNN 9 for CUDA 12GPU 推理初始化失败,提示找不到库CUDA 大版本最新 ctranslate2 仅支持 CUDA 12CUDA 11 或 cuDNN 8 需要降级 ctranslate2磁盘空间预留所选模型权重的下载空间模型下载中断网络可访问 Hugging Face Hub按名字加载模型时无法自动下载最短安装路径:一条 pip 命令稳定做法是从 PyPI 安装,不需要源码:pip install faster-whisper如果权限不足,可以改用pip install --user faster-whisper。GPU 环境:如何补齐 cuBLAS 与 cuDNN装完主包后,devicecuda能否用取决于 NVIDIA 运行时库是否就位:推荐方式:按 NVIDIA 官方文档安装 CUDA 12 对应的 cuBLAS 与 cuDNN 9。Linux 快捷方式:用 pip 装运行时库,启动 Python 前把库目录加入LD_LIBRARY_PATH:pip install nvidia-cublas-cu12 nvidia-cudnn-cu129.*Docker 方式:使用官方镜像nvidia/cuda:12.3.2-cudnn9-runtime-ubuntu22.04,库已内置。仓库里的 docker/ 目录给出了一个最小推理示例。Windows 替代方式:Purfview 的 whisper-standalone-win 发布包提供 Windows 与 Linux 的 NVIDIA 库合集,解压后放入PATH可见的目录即可。可选的源码安装:如果你需要测试未发布的 master 分支功能,可以克隆仓库(git clone https://gitcode.com/GitHub_Trending/fa/faster-whisper)后在本地执行源码安装。日常部署建议只用上面的 PyPI 方式。验证安装:怎样确认 faster-whisper 已经可用跑一段最小转录代码,比任何版本打印都更能说明问题:from faster_whisper import WhisperModel model WhisperModel(tiny, devicecuda, compute_typefloat16) segments, info model.transcribe(example.mp3) # 换成你的音频 print(info.language, info.language_probability) for segment in list(segments): print(segment.start, segment.end, segment.text)出现以下信息就说明链路完整:打印出检测到的语言与概率(如en 0.98),随后逐条输出带时间戳的文本。没有 CUDA 时把device改为cpu、compute_type改为int8再验证 CPU 链路。注意一个容易忽略的点:segments是生成器,转录在你迭代它的那一刻才真正开始执行,list(segments)才是实际跑转录的位置。常见问题:最容易卡住的四个位置GPU 初始化报找不到 cuBLAS/cuDNN:九成是版本不匹配。最新版 ctranslate2 只支持 CUDA 12 cuDNN 9;若是 CUDA 11 cuDNN 8,可执行pip install --force-reinstall ctranslate23.24.0;CUDA 12 cuDNN 8 则用pip install --force-reinstall ctranslate24.4.0。Linux 下 pip 装了 nvidia 库但仍报错:环境变量LD_LIBRARY_PATH必须在启动 Python 之前导出,在 Python 进程内部设置是来不及的。首次加载模型很慢:按名字(如large-v3)加载时,对应 CTranslate2 模型会从 Hugging Face Hub 自动下载,首次运行慢属正常;网络受限时可先手动下载模型,再用本地目录路径传给WhisperModel。批量转录需求:GPU 上多段音频排队慢时,可以换BatchedInferencePipeline(配合batch_size),它是transcribe的替代入口,官方基准里 fp16 批量模式提速明显。下一步:可以继续查看的资料模型与转录的完整参数:见 faster_whisper/transcribe.py 中WhisperModel类的实现。VAD 静音过滤及其默认值:faster_whisper/vad.py。带 GPU 的容器化运行示例:docker/infer.py。与其他实现的对比基准脚本:benchmark/。如果验证环节遇到问题,优先检查两件事:ctranslate2 版本与 CUDA/cuDNN 版本的对应关系,以及LD_LIBRARY_PATH是否在 Python 启动前生效。【免费下载链接】faster-whisperFaster Whisper transcription with CTranslate2项目地址: https://gitcode.com/GitHub_Trending/fa/faster-whisper创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进