admin 管理员组

文章数量: 887021

前景提要:距离上次安装深度学习有关的文章(d2l)已经一段时间了,安装了各种包

最近又兴起了sovits,实践:音色克隆 - 飞书云文档 (feishu)

寻思着再开一个环境吧,于是遇到下列问题:

1.如何在源文件夹下建立一个虚拟环境?
在当前文件夹的路径输入cmd,然后conda create -n(--name) my_env python=3.8

py(thon) -3.8 -m venv myvenv

(具体参考python和conda的虚拟环境安装的区别,其中要注意啊,python创建的虚拟环境就在就在这里了,要激活得要在当前文件夹打开终端用(.\)my_env\Scripts\activate,而conda还是会在miniconda3\envs下建立。那么如要利用一些程序呢?就在当前文件夹下打开终端,然后激活环境就可以了!

但是conda create --prefix=D:/tt python=3.9,报错了,说明不能在没有conda环境下来指定安装,除非加上conda环境,比如bin,lib,Scripts,include,condameta(condabin)等等,这个时候,举个例子,D:\test就会有一个conda环境,然后在当前文件夹打开终端,activate,不过笔者没有继续深究这个conda环境和已有的conda环境的区别,比如说在D:\test下的conda环境如何建立一个新的虚拟环境而并非放在原有的环境下,还是留给别人吧

win10 将Anaconda3 从C盘移动到D盘_anaconda3可以放在d盘吗-CSDN博客这篇文章直接将anaconda重新迁移到了D盘,相当于重新安装)

然后我想到是不是可以迁移一下呢?于是就有

2.conda env export > environment.yml,将当前的虚拟环境安装的包导出到

在新的文件夹下conda env create -f environment.yml -n my_env,但是我就纳闷了,为什么要加上env?哦,可能得要用到.yml这个文件。

然后就是在某个C:\Users\Lenovo找到这个.yml文件并且复制到对应文件夹下然后conda env create -f environment.yml -n my_venv.

.yml里的包可以修改的!

最后的prefix指定了路径!此时conda env create A.yml是可以的

详见:

Anaconda 中使用 conda 配置虚拟环境与管理安装包 - 知乎 (zhihu)

万字长文:深度全面了解Conda的各种骚操作,强烈建议收藏 - 知乎 (zhihu)

就可以了.

但是,我安装了太多的其它包了,而这个文件只需要一个torch,而删除哪些包又不知道,不敢乱删,于是就重新建一个吧?

3.conda config --show,conda info --envs,conda remove -n my_venv.等等基操了(Anaconda-用conda创建python虚拟环境 - 知乎 (zhihu)).但要注意了,如果快没空间的话,新学到的:conda clean --all,可以少几个G吧(笔者就曾经遇到了ERROR208).如果环境坏掉了,就是好几个conda install操作然后CorruptedEnvironmentError: The target environment has been corrupted..remove命令又用不了,就直接删除吧!改名也是直接在\envs里直接改的。

4.然后就是令人抓狂的安装了.因为我是系统重装过后的,所以更加麻烦一点

首先是路径问题,找到Path加上\minidconda3\Scripts,\bin什么的()('conda' 不是内部或外部命令,也不是可运行的程序 或批处理文件)。(这里有一个系统python和miniconda里python的问题。

但是同样如果输入pip list,发现也是这样的问题,它也是取决于Python版本的优先级。

若要知道系统的python,完美解决Python与anaconda之间的冲突问题,你值得拥有_anaconda 没有python.exe-CSDN博客

)还有解决nvcc -V的问题。因为下载的cuda又缓存路径和保存路径。一个是——(F:\NVIDIA),一个是E:\ProgramData\NVIDIA,我将后者的bin啊,lib啊,include全部复制到前者的文件夹下,然后加入path。终于可以了。

换源:anaconda | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

*号指的是当前虚拟环境

如果 conda 有的 package,推荐用 conda 安装。conda 没有的,再用 pip 安装。虽然在某个虚拟环境中conda 和pip的用途是一样的

 CondaError: Run 'conda init' before 'conda activate',不知道为什么就解决了,好像记得是不能使用conda activate而是直接使用activate

一些包安装的时候记得关闭梯子

下载cuda:记录一下安装Pytorch和cuda的踩坑经历 - 知乎 (zhihu)

torch.cuda.is_available()返回False

当时根据官方(Previous PyTorch Versions | PyTorch) 

pip install torch==2.1.0 torchvision==0.16.0 torchaudio==2.1.0 --index-url https://download.pytorch/whl/cu118

但是太慢,会直接报错。导致下载失败,(raise ReadTimeoutError(self._pool, None, "Read timed out."))根据资料

于是改成torch==2.1.0+cu117 ,并且把最后的链接去掉,因为笔者也是默认地将镜像源改成了清华源

但是问一下你自己是不是在清华镜像加速下载的!

因为清华源使用的是cpu版本!报错显示ERROR: Could not find a version that satisfies the requirement torch==2.0.1+cu117 (from versions: 1.7.1, 1.8.0, 1.8.1, 1.9.0, 1.9.1, 1.10.0, 1.10.1, 1.10.2, 1.11.0, 1.12.0, 1.12.1, 1.13.0, 1.13.1, 2.0.0, 2.0.1, 2.1.0, 2.1.1, 2.1.2, 2.2.0, 2.2.1)
ERROR: No matching distribution found for torch==2.0.1+cu117。亲测有效解决torch.cuda.is_available()返回False的问题(分析+多种方案),点进不亏-CSDN博客

如果直接pip install torch torchaudio torchvision并没有安装cuda版本,是cpu版本

根据官网conda下载:

conda install pytorch==2.0.1 torchvision==0.15.2 torchaudio==2.0.2 pytorch-cuda=11.7 -c pytorch -c nvidia

 conda list 输出:pytorch     2.0.1    py3.8_cuda11.7_cudnn8_0    pytorch

而pip list 则是没有cuda版本的torch 2.0.1

(笔者并不知道这个pytorch后的cuda11.7和要求的torch+cu117的区别,希望有人可以解释一下pytorch的cuda是不是也可以。)
所以 ,最终回到原点:

pip install torch==2.0.1 torchvision==0.15.2 torchaudio==2.0.2 --index-url https://download.pytorch/whl/cu118 (必须有cu118,不然还是cpu版本)

已解决,+–default-timeout=1000。

((15 封私信 / 12 条消息) 安装pytorch时用wheel和用conda安装有什么区别? - 知乎 (zhihu)这里对于两种方式有更加详细介绍。但是好像一开始不知道为什么出错,最后又可以了

不过官方直接有.yml文件了!

这里注意一下,官方下的是 .ymal文件,笔者试了好多次才发现。然后就是根据官方的.yaml文件,发现Ignored the following versions that require a different python version: 0.0.1 Requires-Python >=3.9,以为要把python升到3.9,但随后而来是pip,wheel,等等都要变化,最后Pip subprocess error:
ERROR: Ignored the following versions that require a different python version: 0.52.0 Requires-Python >=3.6,<3.9; 0.52.0rc3 Requires-Python >=3.6,<3.9(这个可能是python版本不匹配,但是不想去改了,索性放弃了。)

一些不知道怎么的就解决的问题:
PackagesNotFoundError: The following packages are not available from current channels:

To search for alternate channels that may provide the conda package you're
looking for, navigate to

    https://anaconda意思就是说去官网上找对应缺失的包。

(conda install pytorch torchvision torchaudio cudatoolkit=11.1)(不知道是什么用的,希望有人告知一下)

Cannot link a source that does not exist. C:\Anaconda3\Scripts\conda.exe:

 conda.core.link:_execute_actions(337)

 conda.core.link:_execute(945)

Warning: 2 possible package resolutions (only showing differing packages):

CondaHTTPError: HTTP 000 CONNECTION FAILED

Conda安装卡在solving environment100%

conda install Collecting package metadata (current_repodata.json): failed An HTTP error occurred(conda config --set ssl_verfiy false?)

 
pip._vendor.urllib3.exceptions.ReadTimeoutError: HTTPSConnectionPool(host='download.pytorch', port=443): Read timed out.

pip install av2 ERROR: Ignored the following versions that require a different python version: 0.1.0.0 Requires-Python >=3.8; 0.2.0 Requires-Python >=3.8; 0.2.1 Requires-Python >=3.8 ERROR: Could not find a version that satisfies the requirement av2 (from versions: none) ERROR: No matching distribution found for av2

可能改成清华源(只有cpu版本,切记),可能是重新安装了包,反正不知道为什么就解决了,如果有人能提供解释的话就更好了

还有就是jupyter notebook的默认空间和内核

更改修改jupyter notebook的默认主页(默认工作空间)_jupyter初始界面版本-CSDN博客

Jupyter Notebook切换conda虚拟环境_jupyterhub conda选项-CSDN博客

还有就是pycharm连到之前的conda环境。记得安装包时把conda标志点掉,不然就是no packages to show。

Pycharm 安装(含四种虚拟环境的介绍 【Conda 是重点】)_pycharm安装虚拟环境-CSDN博客

本文标签: Torch