我有一个实例,有各种环境,并且一些笔记本电脑适用于不同的环境,例如notebook1适用于MXNet,notebook2适用于Tensorflow。
当我从notebook1切换到notebook2时,我该如何跳转到新的环境?我尝试过这样做,但是在Jupyter笔记本电脑上并不完全有效。有什么建议吗?
所以我需要从conda环境中进行设置,但似乎jupyter笔记本UI不遵守(调用正确的激活函数)来设置路径。
我有一个实例,有各种环境,并且一些笔记本电脑适用于不同的环境,例如notebook1适用于MXNet,notebook2适用于Tensorflow。
当我从notebook1切换到notebook2时,我该如何跳转到新的环境?我尝试过这样做,但是在Jupyter笔记本电脑上并不完全有效。有什么建议吗?
所以我需要从conda环境中进行设置,但似乎jupyter笔记本UI不遵守(调用正确的激活函数)来设置路径。
conda install -c conda-forge nb_conda_kernels
conda-forge
频道使用非常旧的软件包。使用此频道,您可能还需要降级 Python 版本。为了安全起见,请使用默认的 Anaconda 频道,即使用 -c defaults
。 - Shailen~/.jupyter/jupyter_notebook_config.py
并设置:c.NotebookApp.kernel_spec_manager_class = 'nb_conda_kernels.CondaKernelSpecManager'
。 - Shailen按照用户@jcb91的建议,安装nb_conda_kernels
包对我有用。 我不得不在我的根(基本)环境和我想要使用它的虚拟环境中都安装它。 要做到这一点,请在Anaconda提示符中(在您的基本环境中)运行以下命令:
conda install nb_conda_kernels
然后,激活你的虚拟环境(在下面的代码中命名为'myenv'),并在其中安装nb_conda_kernels
包。你可以在Anaconda提示符中运行以下命令来完成此操作:
conda activate myenv
conda install nb_conda_kernels
现在,您应该能够使用以下方式切换到不同的环境:
Kernel -> Change Kernel
source activate MXNET
jupyter notebook
然后在第二个终端中执行:
source activate Tensorflow
jupyter notebook
kernel.json
指向其各自环境中不同的Python路径。但是,!which python
始终使用在启动jupyter笔记本的当前激活环境中的那个Python。 - Shailenenv_without_lgb
下的data_cleaning.ipynb
中清理了我的数据。然而,我在env_lightgbm
下安装了lightgbm
。所以,我想要从env_without_lgb
切换内核/环境(kernel/env)到env_lightgbm
,我们可以使用Kernel -> Change Kernel
:
Pure Python 3 kernel
和一个R kernel
,然后我在env_lightgbm
下创建了一个内核。最后,在编辑代码时,我们可以切换内核。然而,我仍然无法弄清内核和环境之间的关系。随着这个软件包,我认为还需要更改 ~/.jupyter/jupyter_notebook_config.py 文件的以下配置
c.NotebookApp.kernel_spec_manager_class = 'environment_kernels.EnvironmentKernelSpecManager'
activate pytf
然后执行jupyter notebook
。这样你就可以在正确的环境中打开笔记本了。 - jss367