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

资讯详情

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

whisper.cpp CUDA 快速上手:从编译到跑通只需 3 条命令

whisper.cpp CUDA 快速上手:从编译到跑通只需 3 条命令 whisper.cpp CUDA 快速上手从编译到跑通只需 3 条命令【免费下载链接】whisper.cppPort of OpenAIs Whisper model in C/C项目地址: https://gitcode.com/GitHub_Trending/wh/whisper.cppwhisper.cpp 是 OpenAI Whisper 语音识别模型的 C/C 移植版CPU 推理能用但慢得明显仓库基准里base 模型在 Ryzen 9 5950X 上编码一个 11 秒音频要 425 毫秒同样的活交给一张普通的 RTX 2060 只要 24 毫秒。要批量转会议录音、播客或者做直播字幕这个差距会直接决定任务能不能跑完。下面是从装环境到跑通第一条转录命令再到显存不够时的降级手段。装好 CUDA 工具链并用 cmake 打开 GPU 编译先确认机器上有 NVIDIA 驱动和 CUDA ToolkitNVIDIA 的 GPU 编译工具集nvidia-smi nvcc --version两条命令都有正常输出再继续。然后克隆仓库、启用 CUDA 编译GGML_CUDA是控制 CUDA 后端编译的 CMake 开关、下载模型一共就 3 条命令git clone https://gitcode.com/GitHub_Trending/wh/whisper.cpp cd whisper.cpp cmake -B build -DGGML_CUDA1 cmake --build build -j sh ./models/download-ggml-model.sh base.en构建结束后仓库自带的jfk.wav样例就能直接转./build/bin/whisper-cli -m models/ggml-base.en.bin -f samples/jfk.wav注意whisper-cli目前只认 16-bit 单声道 WAV手里的 mp3 先转一下ffmpeg -i input.mp3 -ar 16000 -ac 1 -c:a pcm_s16le out.wav。显存吃紧或速度不够时按顺序试这三招第一招是量化。仓库的quantize工具能把模型转成更小的整数格式省显存也通常更快./build/bin/quantize models/ggml-base.en.bin models/ggml-base-q5_0.bin q5_0如果不想自己量化直接下现成的large-v3全精度要 2.9 GiBlarge-v3-q5_0只有 1.1 GiBmodels/README.md 有完整清单下载脚本一条命令的事。第二招是开启 flash attention。仓库基准显示同样在 RTX 2060 上加-fa后 medium 模型编码从 200.7 毫秒降到 115.5 毫秒音频越长收益越大./build/bin/whisper-cli -m models/ggml-medium.bin -f samples/jfk.wav -fa第三招是分段。长音频先用-d只处理指定毫秒数确认没问题再全量跑CPU 对比时用-ng强制关 GPU 即可。显存爆掉或编译报 CUDA 错误时的速查步骤症状编译期提示找不到 CUDA 或nvcc报错。原因CMake 没找到 CUDA Toolkit。解决nvcc --version echo $PATH确认工具链在 PATH 里或者在 cmake 配置时显式指定工具链路径后重新构建。症状运行时 CUDA out of memory进程被杀。原因模型加中间结果超出显存medium 以上模型在 6GB 显存卡上很容易碰到。解决换 q5_0 量化版或更小的模型同时用nvidia-smi盯着显存占用确认空间。症状二进制能跑但 GPU 利用率始终为 0实际在跑 CPU。原因驱动太旧或卡不在编译时的架构列表里仓库默认覆盖 52/61/70/75即 Maxwell 到 Turing。解决用nvidia-smi右上角的 CUDA 版本核对驱动是否足够新老卡考虑加GGML_NATIVE让构建针对本机卡编译。从本地跑通到长期部署的四个要点确认编译开关生效构建日志里应能看到 ggml-cuda 后端被编译没有它的二进制只会跑 CPU。多卡机器用CUDA_VISIBLE_DEVICES0 ./build/bin/whisper-cli ...固定用哪张卡。换硬件后跑一遍./build/bin/bench -m models/ggml-base.en.bin用你自己的数字做容量规划。长任务加-pp看进度条输出用21 | tee run.log留档。跑通之后如果还想再抠性能直接看 ggml 的 CUDA 内核或者用 scripts/bench-all.sh 在自己机器上复测一遍仓库基准数据都在 scripts/bench-all-gg.txt 里。【免费下载链接】whisper.cppPort of OpenAIs Whisper model in C/C项目地址: https://gitcode.com/GitHub_Trending/wh/whisper.cpp创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表