Poetry虚拟环境安装PyTorch+Cuda12.1遇授权错误求助
解决Poetry环境下安装CUDA版PyTorch的问题
问题原因
你配置的PyTorch源被Poetry用于查找所有依赖包,但pefile、macholib等第三方包并不在PyTorch官方源中,导致授权错误;同时未正确指定从PyTorch源安装CUDA版本的torch,最终安装了CPU版本。
解决方案
1. 修正PyTorch源配置
修改pyproject.toml中的源配置,设置为显式优先级,仅让PyTorch相关包从该源拉取:
[[tool.poetry.source]] name = "pytorch" url = "https://download.pytorch.org/whl/cu121" priority = "explicit"
同时移除[tool.poetry.dependencies]中的logging(Python标准库,无需额外安装)。
2. 卸载现有CPU版PyTorch
执行命令卸载已安装的CPU版本:
poetry remove torch torchvision torchaudio
3. 安装CUDA 12.1版本的PyTorch
执行以下命令,明确指定从PyTorch源安装对应版本的包:
poetry add torch==2.1.0+cu121 torchvision==0.16.0+cu121 torchaudio==2.1.0+cu121 --source pytorch
注:版本号需匹配,你也可以根据PyTorch官方兼容规则调整,确保三者版本一致。
4. 验证安装结果
进入Poetry虚拟环境验证:
poetry run python
在Python交互环境中执行:
import torch print(torch.__version__) print(torch.cuda.is_available())
若输出包含cu121且torch.cuda.is_available()返回True,说明CUDA版本安装成功。
额外注意事项
- 确保本地已安装CUDA 12.1驱动及工具包,否则即使安装了CUDA版PyTorch也无法调用GPU。
- 确认你的Python版本(3.11)在PyTorch CUDA版本的支持范围内(PyTorch 2.1.0+cu121支持Python 3.8-3.11)。
内容的提问来源于stack exchange,提问作者Kevin Yang
相关产品推荐
相关产品推荐

