whisper.cpp CUDA加速实战指南:4条命令让NVIDIA GPU跑起本地语音转文字

whisper.cpp CUDA加速实战指南:4条命令让NVIDIA GPU跑起本地语音转文字 whisper.cpp CUDA加速实战指南4条命令让NVIDIA GPU跑起本地语音转文字【免费下载链接】whisper.cppPort of OpenAIs Whisper model in C/C项目地址: https://gitcode.com/GitHub_Trending/wh/whisper.cppwhisper.cpp 是 OpenAI Whisper 语音识别模型的 C/C 实现这篇文章讲怎么在 NVIDIA GPU 上用 CUDA 加速编译它、挑对模型档位、修掉常见报错。写给会用命令行、但第一次接触这个项目的你。 先对号入座这台机器能不能跑开始之前先花一分钟自查避免编到一半卡在环境上自查项门槛验证命令NVIDIA 显卡默认编译覆盖 compute 5.2~7.5Maxwell 到 Turing即 GTX 9/10/16 系nvidia-smi能看到显卡显卡驱动与你的 CUDA Toolkit 匹配能正常显示nvidia-smi不报 driver 错误CUDA Toolkit已安装并加入 PATHnvcc --version有版本号输出CMake3.18 及以上ggml CUDA 模块的最低要求cmake --version显存tiny 模型最低档1GB 起步建议先按 4GB 规划看nvidia-smi的 Total一个容易踩的点RTX 30/40 系Ampere/Ada不在默认架构列表里编译时要额外加-DGGML_NATIVE1需要 CUDA 11.6让 CMake 自动探测本机架构。跑完nvcc --version和nvidia-smi两条命令都有正常输出再往下看。 最小可跑路径4条命令从克隆到第一次出字每步一条命令跟着做就行。git clone https://gitcode.com/GitHub_Trending/wh/whisper.cpp cd whisper.cpp预期现象本地多出一个whisper.cpp目录。sh ./models/download-ggml-model.sh base.en预期现象models/下出现ggml-base.en.bin约 142MiB。cmake -B build -DGGML_CUDA1 cmake --build build -j --config Release预期现象配置阶段打印CUDA Toolkit found构建完成后build/bin/下有whisper-cli。./build/bin/whisper-cli -m models/ggml-base.en.bin -f samples/jfk.wav预期现象终端按时间戳逐行打出 And so my fellow Americans, ask not what your country can do for you...。注意whisper-cli目前只收 16-bit WAVmp3 要先转一下ffmpeg -i in.mp3 -ar 16000 -ac 1 -c:a pcm_s16le out.wav。 按显存挑模型5个档位怎么对号README 里给的模型体积和运行内存CPU 侧数据GPU 显存需求约为文件大小加运行开销以你机器实测为准模型ggml 文件体积运行内存README 实测适合谁tiny75 MiB约 273 MB显存 2GB 内先跑通流程base142 MiB约 388 MB显存 2~4GB速度与质量的起点small466 MiB约 852 MB显存 4~6GB质量明显更好medium1.5 GiB约 2.1 GB显存 8GB 左右专业场景large2.9 GiB约 3.9 GB显存 8GB追求上限下载命令统一是sh ./models/download-ggml-model.sh 模型名比如small.en。拿不准就先下base.en跑完再决定要不要升档——反正一条命令的事。⚙️ 拧性能的几个旋钮量化、线程、Flash Attention量化把模型压到 Q5_0 再上 GPU文件和显存都变小日常英语转录几乎听不出差别./build/bin/quantize models/ggml-base.en.bin models/ggml-base.en-q5_0.bin q5_0线程数-t控制计算线程默认最多 4 个。CPU 侧瓶颈时往上加GPU 侧收益有限加到nproc的一半试一次即可./build/bin/whisper-cli -m models/ggml-base.en.bin -f samples/jfk.wav -t 8Flash Attention-fa开启后注意力计算更快配合 CUDA 构建收益最明显./build/bin/whisper-cli -m models/ggml-base.en.bin -f samples/jfk.wav -faF16 混合精度编译期加-DGGML_CUDA_F161部分计算改用半精度显存更省要求架构 60即 Pascal 及以后。验证加速真的生效用-ng强制走 CPU 做 A/B同一条音频跑两遍对比耗时再开着nvidia-smi观察显存是否被占住。两条命令差多少就是加速差多少。️ 报错速查按关键字找一条命令解决Could NOT find CUDAToolkitCMake 配置阶段→which nvcc查 nvcc 是否在 PATH 里没有就装 CUDA Toolkit 后重跑 cmake 配置。30/40 系显卡编译成功但速度不涨→ 默认架构没覆盖你的卡重建一次cmake -B build -DGGML_CUDA1 -DGGML_NATIVE1 cmake --build build -j --config ReleaseCUDA out of memory→ 换量化版模型./build/bin/whisper-cli -m models/ggml-base.en-q5_0.bin -f samples/jfk.wav还不行就降一档模型。音频加载失败 / 格式报错→ 不是 16-bit WAV转一下ffmpeg -i in.mp3 -ar 16000 -ac 1 -c:a pcm_s16le out.wav不知道某个参数是不是存在→./build/bin/whisper-cli -h查官方用法别抄网上的参数名很多旧文章的开关已经改了。✅ 上生产前过一遍容器、多卡、监控部署成服务前把这六项逐条勾掉镜像内固定 CUDA 构建cmake -B build -DGGML_CUDA1 cmake --build build -j --config Release模型随镜像带sh ./models/download-ggml-model.sh base.en避免运行时现下载多卡指定设备CUDA_VISIBLE_DEVICES0 ./build/bin/whisper-cli -m models/ggml-base.en.bin -f audio.wav字幕产物按需输出-ovtt出 VTT、-osrt出 SRT、-oj出 JSON实时麦克风场景用 stream 工具./build/bin/stream -m models/ggml-base.en.bin -t 8 --step 500 --length 5000监控 GPU 占用nvidia-smi -l 1配合./build/bin/whisper-bench -m models/ggml-base.en.bin留下基线数字想留一张性能底账的话跑一次 bench 把输出存下来以后再换模型或量化级别对比这一份就够。行动建议与延伸阅读接下来三步跑nvcc --version和nvidia-smi确认环境达标按上面的四步用 tiny 或 base.en 跑通第一次转录用whisper-bench和-ng各跑一遍记下 GPU 与 CPU 的耗时差延伸阅读均为仓库内相对路径CUDA 内核实现ggml-cuda 内核目录全部 CUDA 相关 CMake 选项ggml/CMakeLists.txt官方基准数据scripts/bench-all-gg.txt例如 M1 Pro Metal 下 base 模型 Encoder 约 70.76ms/段仅作风向参考CUDA 机型以你机器实测为准各种应用示例examples 目录更深入的配置问题参考项目内 F.A.Q. 讨论README 顶部有入口讨论编号 #126【免费下载链接】whisper.cppPort of OpenAIs Whisper model in C/C项目地址: https://gitcode.com/GitHub_Trending/wh/whisper.cpp创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考