引言
最近本人在学习李沐老师的《动手做深度学习》,需要安装pytorch框架进行模型的训练。如果直接利用 pip torch命令进行安装的话只能得到cpu版本造成模型训练时间过长。为此,本人尝试了一下午时间重新进行pytorch的安装。期间遇到了大量的错误。特此记录,希望能够帮助到大家。
参考
最后的解决方案借鉴了以下两位大佬的文章,由衷感谢:
用whl安装pytorch踩坑实录(whl is not a supported wheel on this platform.)_离线安装pytorch的whl文件失败-CSDN博客
环境
系统:Windows 11
容器:anaconda3(本文章默认各位已经学会安装anaconda3, cuda, cudnn等必要环境)
方法:离线下载(有线下载本人电脑因为魔法上网等问题一直连不上,暂时还没有探索到好的解决方案)
步骤
首先我们登录到pytorch官网,下拉页面,找到pytorch下载的地方。
可以看到在pip后面的地址处有一个网页链接。复制该网页链接并去掉最后的cu*,跳转到下载地点。具体网址为
https://download.pytorch.org/whl/
进入网址后可以看到许多的包,选择自己需要的进行下载。迎合本人的需求,最后自己选择的是torch, torchvision, torchaudio。
上面文件的命名原则为:cu是你需要的cuda版本(注意选择安装的cu版本要比你本机的cuda版本低),torch后跟的是自己的版本号,cp代表python版本(可以使用python --version命令进行查看),最后是系统类型。
使用如下命令可以查看自己电脑的cuda版本
nvidia-smi
访问网站和下载的过程中可能会遇到打不开和下载速度过慢的问题,这就需要大家自己探索科学上网的方法了。
下载好之后,可以放在自己anaconda下载文件夹中的pkgs子文件夹中准备使用(先别管为什么和网站中的文件名不一样的问题,后面会讲到)。
接着就是最重要的一步,相信大家已经给自己的pip换过源了。本人之前一直使用的就是清华的源。但是在上述配置之后会报http的错误,意味着清华源有可能没有你需要下载的依赖。所以我们最好将pip源更换为阿里的,本人实测对于torch2.3版本安装有效。当然大家也可以根据自己的实际情况多尝试几个源。
换源方法如下:
pip config set global.index-url 原地址
当然,也可以在下包时选择临时使用自定义源,方法如下:
pip install 包名 -i 源地址
下面给出常见的一些国内源
清华大学镜像源:
https://pypi.tuna.tsinghua.edu.cn/simple/
阿里云镜像源:https://mirrors.aliyun.com/pypi/simple/
华为云镜像源:https://developer.huaweicloud.com/mirror/#/pypi_simple
豆瓣镜像源:https://pypi.douban.com/simple/
中国科技大学镜像源:https://pypi.mirrors.ustc.edu.cn/simple/
北京外国语大学镜像源:https://pypi.mirrors.bfu.edu.cn/simple/
更换好源后,我们就可以执行命令进行安装了
pip install (刚刚下载的文件地址)
单纯的这样错可能还会遇到报错,此时就需要按照第二个参考文章中的换名操作进行修改(总结起来就是修改文件名中的第二个cp*的名字,比如cp39->abi3,具体修改为abi几需要调用命令查看)
命令为:
pip debug --verbose
修改好后再次执行安装命令就可以顺利安装了。
安装好后在python中查看是否安装成功。
import torch
print(torch.__version__)
print(torch.version.cuda)
print(torch.cuda.is_available())
安装流程结束。欢迎大家批评指正。