执行model.to(torch.device("cuda"))报错Torch未编译CUDA支持求助
PyTorch 无法识别CUDA环境排查方案
问题核心原因
你遇到的AssertionError: Torch not compiled with CUDA enabled错误,本质是当前运行代码的Python环境中安装的PyTorch是CPU编译版本,或者CUDA环境和PyTorch版本不匹配,和本地是否安装CUDA、是否有支持CUDA的显卡没有直接关联。
分步排查步骤
- 第一步:验证当前PyTorch是否支持CUDA
在你运行代码的VSCode对应虚拟环境终端中执行以下代码:
如果返回import torch print(torch.cuda.is_available())False,可直接确认是当前环境的PyTorch不支持CUDA。 - 第二步:确认CUDA版本匹配性
本地安装的CUDA大版本必须和PyTorch适配的CUDA版本保持一致,比如本地装的是CUDA 11.7,就不能安装适配CUDA 12.x或者CUDA 10.2的PyTorch版本,版本不兼容会直接导致识别失败。
你可以在终端执行nvcc -V查看当前系统生效的CUDA版本,若命令执行失败说明CUDA环境变量未配置正确,需要手动把CUDA安装路径下的bin、libnvvp等目录添加到系统环境变量中。 - 第三步:确认Python环境一致性
检查VSCode右下角选择的Python解释器,是否和你安装CUDA版PyTorch的虚拟环境一致,多环境共存时很容易出现选错解释器的问题,导致实际运行代码的环境里只有CPU版PyTorch。
修复方案
- 先卸载当前环境中已安装的PyTorch相关包:
pip uninstall torch torchvision torchaudio - 查找适配你本地CUDA版本的PyTorch官方安装命令,在对应虚拟环境中执行安装,不要直接使用默认的CPU版本安装命令。
- 安装完成后重新执行
torch.cuda.is_available(),返回True即配置完成,再运行项目代码即可解决报错。
内容的提问来源于stack exchange,提问作者notBianca
相关产品推荐
相关产品推荐

