跳到主要内容

用 Conda 进行依赖管理

信息

这里介绍的用 Conda 依赖管理是完完全全创建一个独立的环境,通常意味着你需要一个与系统自带的 Python 不同版本的环境。如果没有这个需求也就不用创建一个独立的环境了。通过 pip install --user 的方式完全可以做到,可以参考文档 在默认的-python-版本下安装额外的依赖

OpenBayes 中的 Python 是通过 Conda 进行管理的,默认的安装环境路径可以通过以下命令获取:

$ conda env list

# conda environments:
#
base * /usr/local

可以看到默认的环境在 /usr/local 中,每个环境中的依赖可以通过 conda list 获取,在文档左侧「运行时环境」下也提供了完整的安装依赖列表。

使用 Conda 创建新的环境

1. 在 /openbayes/home 下创建一个新的环境

conda create -p open-mmlab python=3.9 -y

安装完成后通过 conda activate /openbayes/home/open-mmlab 激活新的环境。

备注

能够保存环境的关键在于将新的环境的保存路径存放在 /openbayes/home 下,通过「继续执行」可以将这部分内容再次绑定到一个新的执行之中。

2. 按照文档安装其他依赖

conda install pytorch torchvision -c pytorch

git clone https://github.com/open-mmlab/mmdetection.git
cd mmdetection

# 按照官方文档继续安装
pip install mmcv
pip install -r requirements/build.txt
pip install "git+https://github.com/cocodataset/cocoapi.git#subdirectory=PythonAPI"
pip install -v -e . # or "python setup.py develop"

完成安装后,mmdetection 相关的依赖被安装到了 /openbayes/home/open-mmlab(也就是 /output/open-mmlab 下。

3. 通过继续执行打开原有的执行

通过「继续执行」的方式将上一次准备的 mmdetection 的环境绑定到新的执行里运行,通过命令 conda activate /openbayes/home/open-mmlab/ 可以再次激活上一次配置好的环境继续使用了。

将新创建的 Conda 与 Jupyter 工作空间集成

Jupyter 工作空间可以与 Conda 集成以允许同一个 notebook 指定不同的 Conda 环境。按照以下步骤可以将一个自定义的 Conda 环境添加到 Jupyter 工作空间中。

conda activate /openbayes/home/open-mmlab/
(/openbayes/home/open-mmlab/)$ conda install ipykernel
(/openbayes/home/open-mmlab/)$ ipython kernel install --name=open-mmlab

重新打开 Jupyter 工作空间页面后可以看到有了额外的一个选项: