无法更改 Azure ML 笔记本中的虚拟环境

问题描述 投票:0回答:2

由于某种原因,我的虚拟机上的 jupyter 笔记本处于错误的环境中(即陷入

(base)
)。此外,我可以更改终端中的环境,但不能更改笔记本中的环境。这是当我在笔记本中尝试
!conda activate desired_env
时发生的情况:

CommandNotFoundError: Your shell has not been properly configured to use 'conda activate'.
To initialize your shell, run

    $ conda init <SHELL_NAME>

Currently supported shells are:
  - bash
  - fish
  - tcsh
  - xonsh
  - zsh
  - powershell

See 'conda init --help' for more information and options.

IMPORTANT: You may need to close and restart your shell after running 'conda init'.


# conda environments:
#
base                  *  /anaconda
azureml_py36             /anaconda/envs/azureml_py36
azureml_py38             /anaconda/envs/azureml_py38
azureml_py38_pytorch     /anaconda/envs/azureml_py38_pytorch
azureml_py38_tensorflow     /anaconda/envs/azureml_py38_tensorflow

我尝试了答案here(例如,第一次运行

!source /anaconda/etc/profile.d/conda.sh
)。

我还尝试使用

source
而不是“conda activate”来激活环境:
!source /anaconda/envs/desired_env/bin/activate
。当我在
conda env list

中看到当前环境时,它会运行,但实际上并没有执行任何操作

编辑:还补充说,如果我在终端的

(base)
环境中安装包,我仍然无法在jupyter笔记本中访问它。

azure jupyter-notebook virtual-machine conda azure-machine-learning-service
2个回答
7
投票

我是发布 AzureML Notebooks 的 PM,您无法从单元激活 Conda env,您必须为 Conda Env 创建一个新内核。以下是说明:https://learn.microsoft.com/en-us/azure/machine-learning/how-to-access-terminal#add-new-kernels


0
投票

另外根据官方文件,需要注意的一件重要事情是:

管理包裹

由于您的计算实例有多个内核,因此 确保使用 %pip 或 %conda 魔法函数,将包安装到 当前运行的内核。

不要使用 !pip 或 !conda,它们指的是 到所有包(包括当前运行的包之外的包) 内核)。

https://learn.microsoft.com/en-us/azure/machine-learning/how-to-run-jupyter-notebooks?view=azureml-api-2

© www.soinside.com 2019 - 2024. All rights reserved.