如何给jupyter lab添加conda环境

How to add conda environment to jupyter lab

我正在使用 Jupyter Lab,但在添加 conda 环境时遇到问题。我的想法是从我的基础环境启动 Jupyter Lab,然后能够选择我的其他 conda 环境作为内核。

我安装了包 nb_conda_kernels,它应该可以做到这一点,但它并没有像我想要的那样工作。事实上,假设我创建了一个新的 Conda 环境,然后我从基础启动 jupyter lab,我看不到新环境作为可用内核。

我找到了一个 "fix",它每次都能用,但一点也不方便。如果我在我的新环境中安装 Jupyter Notebook,然后从这个新环境启动一个 jupyter notebook,关闭它,返回基础环境,然后从基础环境启动 Jupyter Lab,我的新环境在 Jupyter Lab 中作为内核可用。

如果你知道如何在没有这个的情况下使它工作"fix",我将不胜感激。

假设您的 conda-env 被命名为 cenv,它很简单:

$ conda activate cenv           # . ./cenv/bin/activate in case of virtualenv
(cenv)$ conda install ipykernel
(cenv)$ ipython kernel install --user --name=<any_name_for_kernel>
(cenv)$ conda deactivate

如果您重新启动 jupyter notebook/lab,您将能够看到可用的新内核。对于较新版本的 jupyter 内核,将在不重新启动实例的情况下出现。只需按 F5 刷新即可。

PS: 如果您使用的是 virtualenv 等,上述步骤适用。

使用 nb_conda_kernels 的解决方案。首先,将其安装在您的基础环境中:

(base)$ conda install -c conda-forge nb_conda_kernels

然后为了得到内核 conda_env cenv :

$ conda activate cenv
(cenv)$ conda install ipykernel
(cenv)$ conda deactivate

您将在 jupyter lab / jupyter notebook

的下一个 运行 中获得一个名为 Python [conda env:cenv] 的新内核

注意: 如果您已经安装 nb_conda_kernels,并且想要创建一个新的 conda 环境并立即访问它,那么

conda create -n new_env_name ipykernel

会完成任务的。

我尝试了上述两种解决方案,但它们都不适合我。然后我遇到了这篇解决它的中篇文章:https://medium.com/@jeremy.from.earth/multiple-python-kernels-for-jupyter-lab-with-conda-c67e50de3aa3

本质上,在你的cenv环境中运行宁conda install ipykernel之后,cenvpython -m ipykernel install --user --name cenv也很好cenv ] 环境 - 这样,我们确保在 jupyter 环境中使用的 python 版本是 cenv 中的版本。干杯!

以下对我有用

pip install nb_conda

https://github.com/Anaconda-Platform/nb_conda