本文的起因是 import torch 报错: ModuleNotFoundError: No module named ‘torch’
于是在cmd用conda 安装pytorch 至新的虚拟环境,顺便进行了关于conda environment的一些学习,
直至能够将 PyCharm / Spyder 切换至该环境 使用pytorch。
如有错误,希望大家指正。感谢!
打开cmd命令提示符,在指定目录下创建环境:
cd/d "D:\Download\Anaconda3\envs"
conda create --name EnvOne_pytorch
激活进入该环境:
conda activate EnvOne_pytorch
列出当前所有环境:
conda env list
接下来在上述 EnvOne_pytorch环境下,安装pytorch。
由于 pytorch官方渠道 下载 pytorch、cudatoolkit 两个包时,进度始终为零,这里我用 清华镜像源 来安装,速度很不错。
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
另外,也可以多输入几条作为备用,比如:
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
打开Pycharm,找到 File | Settings | Project: envs | Project Interpreter
点击 “+” 号,出现Available Packages窗口,点击左下角的 Manage Repositories,即可逐条输入和编辑:
(我查到这时可以在Available Packages窗口下搜索pytorch包进行安装,这应该也是一种安装方法,虽然我没有成功。。。)
conda activate EnvOne_pytorch
conda install pytorch torchvision cudatoolkit=10.0
注意去掉官网命令中的 -c,这样才是用的清华源加速
输入 y 确认安装。(由于速度太快 我甚至没来得及截图??)
安装成功!
进入 PyCharm 菜单中的 File | Settings | Project: envs | Project Interpreter
点击Project Interpreter的下拉箭头,选择 “Show All”,
然后点击窗口右侧“+”号添加python解释器:在Conda Environment中,选择Exsiting environment,添加新环境目录下的 python.exe ,并选择它作为解释器,即可。
由于Spyder 默认的python解释器在 base 环境下,需进行如下操作以进入新环境。
::conda activate EnvOne_pytorch
conda install spyder
这个步骤似乎不可以省去,否则(至少)会影响kernel的使用:
启动Spyder,则进入新环境,但是未改变其默认设置,所以仅限本次有效。若之后再次打开Spyder,将仍然进入默认的base环境。
同上述Pycharm一样,在Spyder设置中更改python解释器以进入新环境:
选择新环境目录下的 python.exe 作为解释器,而不采用默认。
设置好之后,界面右下角 conda: base 变为 conda: EnvOne_pytorch。
(注:首次更改设置后,需要 restart kernel 重启内核,刷新之后即进入新环境,否则Console仍为初始的环境)
BINGO!
参见视频 P2. Python编辑器的选择、安装及配置 后半部分的讲解,第10分钟开始。
归纳视频中的命令为:
conda activate EnvOne_pytorch
conda install nb_conda
jupyter notebook
但此时我发现打开进入新环境之后,不能输出结果,提示“Kernel error”,且炸弹符号提示“服务挂掉”。
因此执行安装命令:
conda install ipykernel
BINGO!