作为一个萌新小白,前天因为实验室需求,需要安装pytorch跑深度神经网络。再历经两天的折磨之后终于成功,现分享给其他像我一样深受折磨的同道中人,万一这种方法就能解决你的问题呢。

ps:本文所有命令行是通过pycharm的终端实现。关于下载anacoda,以及如何使用pycharm更换解释器来调用anacoda,本文就不多加赘述,直接csdn查找即可.并且在解释器更换好之后,你可以直接利用pycharm的终端(terminal)来写下文的一些命令行。

一.pytorch版本选择

我们直接百度搜索,进入pytorch官网,获取新版本pytorch的安装口令

pytorch镜像太大 pytorch清华镜像源_镜像源

该步骤问题:

1.首先你需要选择正确的版本。我们一般使用稳定版,并且清华镜像网站上指出并没有实时更新nightly版本。

2.确保电脑安装了对应的cuda版本。首先cuda不是电脑中自带的软件,你需要先查看你的电脑配置适应的cuda版本,然后再下载。具体的选择和安装步骤直接csdn搜索

3.在使用镜像源时,口令中的 -c pytorch(应该代表从国外默认源下载)和-c conda-forge(应该表示从conda-forge库中下载)必须要删除,只留下图中灰色部分

二.anacoda换源

网上的资料显示,在使用anacoda默认源时 ,因为是从国外下载,所以导致各种各样的问题,比如网络问题下载太慢,比如经常404。所以在使用anacoda时,我们常利用国内的镜像源来加速我们的下载过程。常用的是清华的镜像源。清华镜像源官网上帮助网站

https://mirrors.tuna.tsinghua.edu.cn/help/anaconda/
 

pytorch镜像太大 pytorch清华镜像源_python_02

清华镜像网帮助网站

根据网站上的指引,我们可以根据步骤创建出.condarc文件,并且通过更改文件内容来更换anacoda的源。但是最大的问题就是出在这代码上。

当直接利用清华官网的代码改写.condarc文件时,利用命令行自检报错。在网上查阅资料后,方法分为两种。一种是删除开头的channels: - defaults命令,一种是将代码中的https改成http。这是网上反馈比较好的两种解决方法。看到这里,如果你的问题还没解决,就继续往下看

博主尝试步骤:

1.首先尝试直接用清华官网的代码改写.condarc文件,使用清华镜像网上的conda create -n myenv numpy命令自检失败

2.将官网代码中的https改成http,写入.condarc文件,自检通过(无论是否删除开头的channels: - defaults代码行均能自检通过),但是使用conda config --show channels命令后没有出现channels信息,仍然是只有defaults。

3.将.condarc文件直接全换成以下代码,自检通过,并且能够利用pytorch官网的命令的镜像版conda install pytorch torchvision torchaudio cudatoolkit=11.6成功安装

show_channel_urls: true
channels:
  - http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
  - http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
  - http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
  - http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
ssl_verify: true

最后使用上一步命令行安装即可

三.问题综合

1.没有安装cuda或者cuda版本错误。

--下载就行

2.在直接使用镜像官网代码或者略作修改后的代码后,用下载命令报错。用show channels命令后发现镜像源channels没有成功导入。

--官网代码有误,导致channels没有成功导入。直接把.condarc文件中的所有文字替换成上文代码。

3.在已经更改了.condarc文件,用show channels命令后无法显示路径的情况下,用conda config --add channels添加新路径同样会报错

--原因不详,建议直接修改.condarc文件

4.没有添加需要的channels.在这种情况下,用命令行能显示出channels信息,但是没有包含你所需要的路径(报错时也会提醒你路径中没有包含所需的模块)。在官网给出的代码中其实分为两个部分,default channels和custom channels。在经历过实验发现,起作用的只有default channels里面的路径,而custom channels需要你自行再添加,并没有随着你代码的复制而直接加入到源路径当中。换句话说,如果你想下载pytorch,你的目的就是用命令conda config --show channels能显示出镜像网站中的包含pytorch包的网站路径,例如清华源的http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud

pytorch镜像太大 pytorch清华镜像源_pytorch镜像太大_03

图中第一次命令.condarc文件中是在清华源官网代码,第二次是文中所给代码

希望我的经验能够帮到你们