当前位置: 首页 > 知识库问答 >
问题:

jupyter不加载环境内核[复制]

惠野
2023-03-14

我正在尝试从conda环境加载内核,尝试执行此操作时出现以下错误:

`[I 22:10:35.989 NotebookApp] KernelRestarter: restarting kernel (5/5), new random ports
Traceback (most recent call last):
  File "C:\ProgramData\Anaconda3\envs\ImageAI\lib\runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "C:\ProgramData\Anaconda3\envs\ImageAI\lib\runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "C:\ProgramData\Anaconda3\envs\ImageAI\lib\site-packages\ipykernel_launcher.py", line 15, in <module>
    from ipykernel import kernelapp as app
  File "C:\ProgramData\Anaconda3\envs\ImageAI\lib\site-packages\ipykernel\__init__.py", line 2, in <module>
    from .connect import *
  File "C:\ProgramData\Anaconda3\envs\ImageAI\lib\site-packages\ipykernel\connect.py", line 18, in <module>
    import jupyter_client
  File "C:\ProgramData\Anaconda3\envs\ImageAI\lib\site-packages\jupyter_client\__init__.py", line 4, in <module>
    from .connect import *
  File "C:\ProgramData\Anaconda3\envs\ImageAI\lib\site-packages\jupyter_client\connect.py", line 21, in <module>
    import zmq
  File "C:\ProgramData\Anaconda3\envs\ImageAI\lib\site-packages\zmq\__init__.py", line 50, in <module>
    from zmq import backend
  File "C:\ProgramData\Anaconda3\envs\ImageAI\lib\site-packages\zmq\backend\__init__.py", line 40, in <module>
    reraise(*exc_info)
  File "C:\ProgramData\Anaconda3\envs\ImageAI\lib\site-packages\zmq\utils\sixcerpt.py", line 34, in reraise
    raise value
  File "C:\ProgramData\Anaconda3\envs\ImageAI\lib\site-packages\zmq\backend\__init__.py", line 27, in <module>
    _ns = select_backend(first)
  File "C:\ProgramData\Anaconda3\envs\ImageAI\lib\site-packages\zmq\backend\select.py", line 28, in select_backend
    mod = __import__(name, fromlist=public_api)
  File "C:\ProgramData\Anaconda3\envs\ImageAI\lib\site-packages\zmq\backend\cython\__init__.py", line 6, in <module>
    from . import (constants, error, message, context,
ImportError: DLL load failed: Не найден указанный модуль.
[W 22:10:39.032 NotebookApp] KernelRestarter: restart failed
[W 22:10:39.032 NotebookApp] Kernel 7695680a-c4cf-4408-a228-a36587c6acee died, removing from map.
[W 22:11:20.915 NotebookApp] Timeout waiting for kernel_info reply from 7695680a-c4cf-4408-a228-a36587c6acee
[E 22:11:20.917 NotebookApp] Error opening stream: HTTP 404: Not Found (Kernel does not exist: 7695680a-c4cf-4408-a228-a36587c6acee)
[W 22:11:21.949 NotebookApp] 404 GET /api/kernels/7695680a-c4cf-4408-a228-a36587c6acee/channels?session_id=a461c65a632c4842918b17939d5595f1 (::1): Kernel does not exist: 7695680a-c4cf-4408-a228-a36587c6acee
[W 22:11:21.963 NotebookApp] 404 GET /api/kernels/7695680a-c4cf-4408-a228-a36587c6acee/channels?session_id=a461c65a632c4842918b17939d5595f1 (::1) 16.000000ms referer=None
[W 22:11:23.987 NotebookApp] Replacing stale connection: 7695680a-c4cf-4408-a228-a36587c6acee:a461c65a632c4842918b17939d5595f1`

错误是导入错误:DLL加载失败:找不到特定模块我尝试重新安装environment和jupyter,还尝试使用pip uninstall pyzmqpip install pyzmq重新安装pyzmq。我运行默认内核没有问题。

共有2个答案

宋勇
2023-03-14

简短回答

你可能只需要:

python -m ipykernel install --user --name=my_env_name

长答案

您可以运行jupyter kernelspec list来查看可用的内核。

根据您的操作系统和如何安装Jupiter(用户与系统),您应该能够在以下目录中找到您的内核定义:

  • /usr/share/jupyter/内核(Linux /Mac)
  • /usr/local/share/jupyter/内核(Linux /Mac)
  • {sys.prefix}/share/jupyter/内核(Linux /Mac)
  • 本地/共享/jupyter/内核(Linux用户)
  • ~/库/Jupyter/内核(Mac用户)
  • %APPDATA%\jupyter\kernels(Windows)
  • %PROGRAMDATA%\jupyter\kernels(Windows)

定义如下:

{
 "argv": ["python3", "-m", "IPython.kernel",
          "-f", "{connection_file}"],
 "display_name": "Python 3",
 "language": "python"
}

你的实际定义可能看起来不同,所以只要复制你在那里的任何东西,改变主arg,这样它就指向你想要使用的特定python实例,并给它一些“display_name”,这样你就可以在Jupyter中识别它。

在Jupyter中,每当你创建一个新笔记本时,你可以选择其中一个内核(你也可以在现有笔记本中切换)。

因此,请检查您正在使用的内核,在您的规范中定义了哪些内核,在必要时添加您真正想要使用的内核,并确保在Jupyter UI中选择正确的内核。应该是这样——祝你好运。

这大概就是ipy内核安装应该做的。

谷越
2023-03-14

解决方案是在正确选择并加载内核后,运行jupyter notebook whithin激活的conda环境。

 类似资料:
  • 问题内容: 我陷入了某种可怕的virtualenv混乱之中。救命?! 我使用管理环境。直到最近,我还只有一个python2 jupyter笔记本内核,但是我决定将自己的脚步拖入21世纪,并安装了python3内核。我忘记了我是怎么做到的。 我的主要(anaconda)python默认为2.7。 因此,在这里,我很乐意尝试从闪亮的新python3内核中使用漂亮的汤,而且在能够找到其封装的任何环境下,

  • 我为不同的Python项目使用不同的conda环境,并且习惯于在Jupyter笔记本中愉快地使用nb_conda_kernels来访问这些环境的内核。它们将在“新”下拉列表中提供,名称类似于“Python[conda env: project]。经过一些更新后,这些内核都没有出现在Jupyter中,当我试图打开一个使用这些内核之一的笔记本时,我得到内核未找到-找不到匹配Python[conda e

  • 我花了几天时间来解决conda的python虚拟环境无法识别它们周围构建的内核的问题。这个问题表现为Spyder和Jupyter笔记本都无法从有效的内核开始。下面是一个为内核3.8.10构建的conda环境的例子,该环境专门运行pymc3(每个pymc3环境要求),以及它是如何在jupyter-笔记本中失败的,jupyter-笔记本也专门选择并安装在该环境中。 我唯一确定的是:错误信息完全是误导。

  • 主要内容:initramfe虚拟文件系统GRUB 加载了内核之后,内核首先会再进行二次系统的自检,而不一定使用 BIOS 检测的硬件信息。这时内核终于开始替代 BIOS 接管 Linux 的启动过程了。 内核完成再次系统自检之后,开始采用动态的方式加载每个硬件的模块,这个动态模块大家可以想象成硬件的驱动(默认 Linux 硬件的驱动是不需要手工安装的,如果是重要的功能,则会直接编译到内核当中;如果是非重要的功能,比如硬件驱动会编译为模块

  • 我想改变Jupyter内核的路径,将其设置为我在机器中使用的路径。 以下是安装在jupyter中的原始内核: 可用内核: python3/home/n/。local/share/jupyter/kernels/python3 python2/usr/local/share/jupyter/kernels/python2 然后我在我的机器中检查了python3的路径,如下所示: /usr/bin/p