我正在编写使用 Whisper 的代码,我需要带有 CUDA 的 PyTorch 来提高模型执行速度,我安装了 CUDA(使用
nvidia-smi
命令进行验证,显示我有 CUDA 12.6)并且我安装了 PyTorch使用命令
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121
,但是当我尝试在Python中导入torch(
import torch
)时,出现错误:
OSError: [WinError 126] 找不到指定的模块。加载“C:\Users\Windows10\AppData\Local\Programs\Python\Python311\Lib\site-packages\torch\lib\fbgemm.dll”或其依赖项之一时出错。
我尝试完全卸载 PyTorch 并重新安装几次但没有成功,显然安装成功但由于某种原因Python无法访问它,我有Python 3.11.3。任何帮助表示赞赏
你遇到的错误信息 "OSError: [WinError 126] 找不到指定的模块" 通常表示你的 Python 解释器无法找到或加载所需的 DLL 文件。在你的情况下,问题出在
fbgemm.dll
,它是 PyTorch 的 Facebook GEMM 库的一部分,用于 GPU 加速。
以下是一些可能的解决方案以及如何解决此问题:
-
检查 CUDA 和 PyTorch 版本兼容性:
-
确保你安装的 PyTorch 版本与你安装的 CUDA 版本兼容。尽管你有 CUDA 12.6,但你使用的安装命令 (
cu121
) 适用于 CUDA 12.1。 - 访问 https://pytorch.org/ 并选择你的操作系统、软件包管理器、Python 版本以及你确切的 CUDA 版本(在本例中为 12.6),以获取正确的安装命令。
-
例如,命令可能类似于:
bash pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu126
-
更新 Visual Studio C++ Redistributable:
-
PyTorch 需要 Visual Studio C++ Redistributable 才能运行。访问 https://support.microsoft.com/en-us/help/2977003/the-latest-supported-visual-c-downloads 下载并安装最新版本的 Visual C++ Redistributable for Visual Studio 2015、2017 和 2019。
-
将 PyTorch 添加到系统路径:
-
如果问题仍然存在,请尝试将 PyTorch 安装目录添加到你的系统路径中:
- 在 Windows 搜索栏中搜索 "环境变量" 并打开 "编辑系统环境变量"。
- 点击 "环境变量" 按钮。
- 在 "系统变量" 下,选择 "路径" 并点击 "编辑"。
-
点击 "新建" 并添加 PyTorch 安装目录的路径(例如,
C:\Users\YourUsername\AppData\Local\Programs\Python\Python311\Lib\site-packages\torch
)。 - 点击 "确定" 保存更改。
-
重新安装 PyTorch(干净安装):
-
卸载现有的 PyTorch 安装:
bash pip uninstall torch torchvision torchaudio
-
删除任何剩余的 PyTorch 目录(例如,在
C:\Users\YourUsername\AppData\Local\Programs\Python\Python311\Lib\site-packages
中)。 - 使用从 PyTorch 网站复制的正确命令重新安装 PyTorch,确保它与你的 CUDA 版本兼容。
-
卸载现有的 PyTorch 安装:
-
检查 GPU 驱动程序:
- 确保你拥有最新的 NVIDIA GPU 驱动程序。你可以从 NVIDIA 网站下载并安装它们。
如果在尝试上述步骤后问题仍然存在,请提供以下附加信息,以便我进一步帮助你:
- 你正在运行的确切 PyTorch 安装命令。
-
pip list
的输出,显示你环境中安装的所有软件包。 - 尝试运行你的代码时出现的完整错误消息。