Conda常用命令
-
创建一个新环境
conda create --name my_new_env
- 新环境将包括与基础环境(
base
环境)相同的Python版本,并且只会包括基础环境中的“必要”包。这些“必要”包通常是conda本身和一些基本工具和库,以便新环境能够正常工作。
-
激活环境
conda activate my_new_env
-
创建指定python版本/包的环境
conda create --name my_env python=3.8
conda create --name my_env python=3.8 numpy scipy matplotlib
-
从文件创建环境
conda env create -f environment.yml
environment.yml
文件通常包含环境的名称,但您可以在创建环境时使用不同的名称。如果不指定名称,conda将默认使用environment.yml
文件中指定的环境名称。- 要在创建环境时指定不同的名称,可以使用
-n
或--name
选项,如下所示:conda env create -f environment.yml -n new_env_name
- 要在创建环境时指定不同的名称,可以使用
conda env create -f environment.yml
命令会尽力安装environment.yml
文件中列出的conda包,并忽略conda无法识别的包。您可以在环境创建后手动处理缺失的包,包括pip安装的包。
-
导出一个环境
conda env export > environment.yml
-
仅导出环境包列表
conda list --explicit > environment.txt
- 使用
conda list --explicit > environment.txt
在新环境中安装这些包
- 使用
-
克隆一个环境
conda create --name my_new_env --clone [old_env]
- 如果某些第三方库不在默认的conda存储库中或指定的通道中可用,那么克隆的新环境将不会包括这些库,因为conda无法找到它们。
- 这通常发生在以下情况下:
- 基础环境
base
中的某些库是通过pip或其他方式安装的,而不是通过conda。这些库将不会被自动复制到新环境中。 - 某些第三方库可能需要从特定的conda通道或自定义通道中安装,而不是从默认的conda存储库中。如果您的新环境不包括这些通道,那么这些库也不会被复制。
- 基础环境
- 如果您想确保所有第三方库都被复制到新环境中,您可以采取以下步骤:
- 在克隆之前,使用
conda list --export
命令将基础环境的包列表导出到一个文件中,例如base_packages.txt
:conda list --export > base_packages.txt
- 使用
conda create
命令创建新环境并通过-n
指定环境名称:conda create -n my_new_env python=3.8
- 激活新环境:
conda activate my_new_env
- 使用
conda install
命令从导出的包列表文件中安装所有包:`conda install --file base_packages.txt``
- 在克隆之前,使用
- ``conda install`命令只能从conda存储库中安装包
-
运行以下命令删除环境:
conda env remove --name <环境名称>
-
安装指定版本号的pytorch
只有明确指定cudatookit时才会下载gpu版本的torch
- CPU
conda install pytorch=1.9.0 torchvision=0.10.0 torchaudio=0.9.0 -c pytorch
- 安装
torchvision
和torchaudio
是可选的,-c pytorch
选项指定了要使用的conda通道
- GPU
conda install pytorch torchvision torchaudio cudatoolkit=11.1 -c pytorch -c conda-forge
- cudatookit version < CUDA version (使用
nvcc --version
查看系统CUDA版本)
- CPU
-
增加conda通道
conda config --add channels conda-forge
- 然后,您可以使用
conda install
命令来安装conda-forge
中的软件包。例如:conda install package_name
conda-forge
是一个社区驱动的conda通道,旨在提供各种开源软件包的conda构建和发布。这个通道包含了许多不在官方conda存储库中的软件包,以及社区维护的软件包的构建。conda-forge
的目标是为conda用户提供更广泛的软件包选择,以便满足各种需求。- 或者,直接
conda install -c conda-forge package_name