【问题标题】:Jupyter notebook kernel different from conda environmentJupyter notebook 内核与 conda 环境不同
【发布时间】:2020-12-01 11:44:50
【问题描述】:

我在尝试在 jupyter notebook 内核中重现 conda 环境时遇到问题。 我已经创建了一个 conda 环境,mlflow,通过激活它,我可以导入 mlflow,如下所示:

[ 12:36:18 ] ~ base ❯ conda activate mlflow
[ 12:36:21 ] ~ mlflow ❯ python
Python 3.7.0 (default, Jun 28 2018, 08:04:48) [MSC v.1912 64 bit (AMD64)] :: Anaconda, Inc. on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import mlflow
>>>

然后我继续在jupyter中安装内核,如下:

python -m ipykernel install --name mlflow

但是,一旦在 jupyter 的 mlflow 内核中,我无法导入相同的模块 mlflow。为什么会这样?它怀疑问题是C:\Users\userx\AppData\Roaming\jupyter\kernels\mlflow\kernel.json 指向错误的python:

{
 "argv": [
  "C:\\Users\\userx\\Anaconda3\\python.exe",
  "-m",
  "ipykernel_launcher",
  "-f",
  "{connection_file}"
 ],
 "display_name": "mlflow",
 "language": "python"
}

而它应该指向mlflow 环境中的python。但是,我尝试更改它并导致笔记本在启动时失败。

更多细节:

[ 12:39:27 ] ~ base ❯ jupyter --path
config:
    C:\Users\userx\.jupyter
    C:\Users\userx\Anaconda3\etc\jupyter
    C:\ProgramData\jupyter
data:
    C:\Users\userx\AppData\Roaming\jupyter
    C:\Users\userx\Anaconda3\share\jupyter
    C:\ProgramData\jupyter
runtime:
    C:\Users\userx\AppData\Roaming\jupyter\runtime

编辑

如果我在环境中安装 jupyter 并从环境中启动笔记本,它似乎可以工作。但是,如果知道如何使用 base 中的 jupyter 来做同样的事情,还是很高兴的。

【问题讨论】:

  • 如果 Jupyter 是通过 Conda 安装的,例如,在您的 base 中,那么我发现更简洁的工作流程不是手动注册 env,而是在环境中安装 nb_conda_kernels使用jupyter,它将自动发现安装了适当内核包的任何环境(例如,ipykernelr-irkernel)。见this related answer

标签: python anaconda jupyter conda


【解决方案1】:

尝试给出完整的 conda python 路径,看看是否能解决它:

C:\Users\<username>\anaconda\envs\<environment-name>\bin\python -m ipykernel install --name mlflow

没有找到ipykernel的原因是没有安装在正确的python环境中。使用“python -m”可能会引用 conda 外部的本机 python,或者可能是基础环境中的 python。指定完整路径只是确保它安装在正确的环境中。

【讨论】:

  • 这似乎确实有效!那么你能补充更多细节吗?所以问题是内核被定义为启动错误的python?
  • 我已编辑答案以提供更多信息。如果这解决了问题,请“标记为答案”。谢谢。
  • 谢谢,很有用!
猜你喜欢
  • 2016-09-22
  • 2020-03-22
  • 2020-07-04
  • 2016-10-19
  • 2021-05-27
  • 2021-01-24
  • 2020-04-03
  • 1970-01-01
  • 2017-01-28
相关资源
最近更新 更多