情况1,真的没有安装pytorch
虚拟环境里面真的是没有torch,这种情况就easy job了,点击此链接直接安装与CUDA对应的pytorch版本,CTRL+F直接搜索对应CUDA版本即可查找到对应的命令.按图索骥按部就班安装即可!
情况2(安装了与CUDA不对应的pytorch版本导致无法识别出torch)
安装了与CUDA不对应的pytorch版本导致无法识别出torch
我这里首先通过
pip list | grep torch
指令搜索出pip安装包仲含有torch字样的安装包,我这里显然通过pip安装了pytoch,都是cuda 11.1版本的
但是运行py程序依然显示没有找到模块torch,我十分不解
接着我查找到了服务器的cuda版本
使用
cat ~/.bashrc
#或者使用
#nvcc -V
#也是可以的!
指令查看安装的CUDA版本,在末尾几行查找到cuda安装的版本为11.3
到这里发现安装的cuda 11.1的pytorch版本与本机安装的11.3版本cuda不对应,因此重新安装了虚拟环境的pytorch!
最后成功导入torch不报错!
情况3(虚拟环境中的cuda工具包和nvcc -V的不对应)
具体报错如下
pip安装的torch
nvcc -V
pip虚拟环境中的cuda工具包
显然,这里pip虚拟环境里面安装的cuda工具包有cu12的,也就是对应cuda12版本的,也有cu11对应 11.7.09的,显然与cuda 11.3的不对应,因此挨个pip uninsta 这几个工具包,之后由于我的电脑上是cuda 11.3版本,到pytorch官网找到与Linux版对应且与cuda11.3版本对应的指令,安装指定版本的torch之后完美解决!
conda install pytorch==1.12.0 torchvision==0.13.0 torchaudio==0.12.0 cudatoolkit=11.3 -c pytorch