快速结论:当你在虚拟环境中用 Faster Whisper 调用 GPU(device=”cuda”)但系统找不到 cuBLAS/cuDNN 时,可能出现 RuntimeError: CUDA failed with error unknown error 或 cuDNN DLL 加载失败。优先确认 GPU 执行所需的 CUDA/cuDNN 运行库是否已正确暴露给 Python 进程。
适用环境:Issue 中确认了 Linux 下可通过 pip 安装 nvidia-cublas-cu11、nvidia-cudnn-cu11 并手动设置 LD_LIBRARY_PATH;Windows 用户报告了 CUDA 11.8、cuDNN 11.x 环境下仍无法加载 cudnn_cnn_infer64_8.dll。未确认的 Python、显卡型号和完整依赖版本在此不补写。
最快修复方案:Linux 下已在 Issue 中验证:先 pip install nvidia-cublas-cu11 nvidia-cudnn-cu11,再在启动 Python 之前设置 LD_LIBRARY_PATH 指向这两个包的 lib 目录。Windows 暂无确认的一步修复方案,Issue 仅建议检查 PATH,或参考第三方 standalone 可执行文件方案。
注意事项:该 pip 方案仅适用于 Linux,因为 PyPI 上的 nvidia-cudnn-cu11 只提供 Linux 二进制;Windows 不能直接套用。另外 LD_LIBRARY_PATH 必须在 Python 进程启动前设置,运行时在 Python 代码里修改可能无效。
问题场景
用户在虚拟环境(venv)中运行 Faster Whisper,并希望像原版 Whisper 一样仅通过 pip 自动拉取 CUDA 相关库,而不修改系统 CUDA 版本。触发问题的是在 GPU 上执行推理,即设置 device="cuda" 时,系统无法找到 cuBLAS/cuDNN 运行库。Windows 用户还报告了在干净安装 Windows、安装 CUDA 11.8 与 cuDNN 11.x 后,即使非虚拟环境也出现 DLL 加载失败。
报错原文
RuntimeError: CUDA failed with error unknown error
Could not load library cudnn_cnn_infer64_8.dll. Error code 126
Please make sure cudnn_cnn_infer64_8.dll is in your library path!
原因分析
GPU 执行需要 cuBLAS 和 cuDNN 这些运行库,Faster Whisper/CTranslate2 在找不到对应库时会报错。Linux 上可以通过 pip 安装 NVIDIA 提供的 wheel 包,但这些库不会被自动加入动态链接器的搜索路径,因此需要在启动 Python 前手动设置 LD_LIBRARY_PATH。Windows 上 nvidia-cudnn-cu11 的 PyPI 包只提供 Linux 二进制,所以同样的 pip + 环境变量方案不适用;如果已经手动安装 CUDA/cuDNN,则可能是 PATH 设置不正确,导致 cudnn_cnn_infer64_8.dll 无法被加载。
环境排查
- 确认操作系统:该 pip 方案仅支持 Linux;Windows 需另外处理。
- 确认 Python 进程是否在虚拟环境中,以及实际使用的 Python 解释器。
- 确认是否已安装
nvidia-cublas-cu11与nvidia-cudnn-cu11(Linux 场景)。 - 确认 CUDA 版本与 cuDNN 版本是否匹配,例如 Windows 用户提到 CUDA 11.8、cuDNN 11.x。
- 确认 cuDNN 动态库(如
cudnn_cnn_infer64_8.dll)所在目录是否已加入系统 PATH。 - 确认
LD_LIBRARY_PATH是在启动 Python 之前设置的,而不是在 Python 代码运行中修改。
解决步骤
- Linux:安装 pip 提供的 CUDA 库:
pip install nvidia-cublas-cu11 nvidia-cudnn-cu11 - Linux:在启动 Python 之前设置
LD_LIBRARY_PATH,指向两个包的 lib 目录:export LD_LIBRARY_PATH=`python3 -c 'import os; import nvidia.cublas.lib; import nvidia.cudnn.lib; print(os.path.dirname(nvidia.cublas.lib.__file__) + ":" + os.path.dirname(nvidia.cudnn.lib.__file__))'` - 在同一 shell 中运行 Faster Whisper,确保环境变量已生效。
- Windows:不能使用上述 pip cuDNN 方案。可优先尝试仔细核对系统 PATH,确保 CUDA 与 cuDNN 的 bin 目录(包含
cudnn_cnn_infer64_8.dll)已正确加入;Issue 中提到可参考第三方 standalone 方案 whisper-standalone-win,将 NVIDIA 库与可执行文件放在同一目录。注意这属于 Issue 中的建议方向,非官方确认的一步修复。 - 不要试图通过安装 PyTorch 来解决该问题;Issue 中明确说明安装 PyTorch 在此场景下没有帮助。
验证方法
在设置好 LD_LIBRARY_PATH(Linux)或修正 PATH(Windows)后重新启动 Python,用 device="cuda" 运行 Faster Whisper。如果不再出现 RuntimeError: CUDA failed with error unknown error,也不再提示 Could not load library cudnn_cnn_infer64_8.dll,且推理能正常使用 GPU,即说明运行库已被正确加载。
参考来源
AI 工具推荐
想把多个 AI 模型放在一个入口?
GamsGo AI 集成 ChatGPT、DeepSeek、Gemini、Claude、Midjourney、Veo 等常用模型,适合写作、绘图、视频和日常 AI 工作流。
推广链接:通过此链接购买,我可能获得佣金,不影响你的价格。
这个方案解决了吗?
可以继续搜索完整报错,或查看同一工具的其他排查指南。


