【问题标题】:Repeated "Kernel died, restarting" forever永远重复“内核死亡,重新启动”
【发布时间】:2017-01-31 20:27:12
【问题描述】:

当我尝试跑步时

$ jupyter qtconsole

控制台出现,并显示消息

Kernel died, restarting
________________________
Kernel died, restarting
________________________
Kernel died, restarting
________________________
Kernel died, restarting
________________________
Kernel died, restarting
________________________

继续。

尝试$ jupyter qtconsole --debug 没有打印任何其他内容,也没有添加

c.Application.log_level = 0
c.Session.debug = True

转入$USERHOME/.jupyter/jupyter_qtconsole_config.py

另外,我在 $USERHOME/.ipython/profile_default/log/ 和附近的其他目录中什么也没找到。

自上次启动 jupyter-qtconsole 以来,我的配置没有任何变化。

我怎样才能至少找出内核出了什么问题?在 Jupyter 中肯定有一些选项可以获取内核的 STDERR 输出,看看是什么异常让它不高兴?

【问题讨论】:

标签: python jupyter qtconsole jupyter-console


【解决方案1】:

运行这个-

conda remove ipykernel ipython jupyter_client jupyter_core traitlets ipython_genutils

conda clean -tipsy

conda install ipykernel ipython jupyter_client jupyter_core traitlets ipython_genutils

jupyter notebook

【讨论】:

    【解决方案2】:

    我跑

    spyder --show-console
    

    当我在 spyder 中接收时

    内核死机,正在重新启动

    我在控制台中看到消息

    英特尔 MKL 致命错误:无法加载 libmkl_p4m.so 或 libmkl_p4.so。

    对我很有帮助

    conda install nomkl numpy scipy scikit-learn numexpr
    conda remove mkl mkl-service
    

    【讨论】:

      【解决方案3】:

      检查日志。我遇到了同样的问题,我的日志显示no module named ipykernel_launcher。所以,我只是pip install ipykernel 解决了这个问题。

      【讨论】:

      • 如何查看日志?
      • 在您启动 jupyter notebook 的终端中
      【解决方案4】:

      我尝试了几种解决方案,最后我找到了一个真正有效的解决方案。 您只需为您的防病毒和/或防火墙添加例外。 我目前使用 Avast,所以添加一个关于我安装 Anaconda 的文件夹和虚拟环境的异常解决了这个问题,现在 Spyder 可以作为一个魅力。

      【讨论】:

        【解决方案5】:

        在尝试使用pandas到read data in clipboard时遇到这个问题,在Anaconda3的Spyder编辑器中尝试了很多次。我也尝试通过更新 Spyder 和其他 Anaconda3 包来解决问题,但未能解决。

        最后,不使用 Anaconda3,在另一台 PC 上安装 python 3.5.3,然后 pip install pandas,错误解除。

        【讨论】:

          【解决方案6】:

          鉴于内核是另一个进程,我能够使用 Process Explorer 捕获它启动时使用的命令行。命令行是

          $ pythonw -m ipykernel -f "$USERHOME/AppData/Roaming/jupyter/runtime/kernel-2744.json"
          

          然后,我刚刚启动python 并尝试导入ipykernel,得到了这个:

          $ python
          Python 2.7.12 [...] on win32
          Type "help", "copyright", "credits" or "license" for more information.
          >>> import ipykernel
          Traceback (most recent call last):
            File "<stdin>", line 1, in <module>
            File "C:\Programs\Python2712\lib\site-packages\ipykernel\__init__.py", line 2,
           in <module>
              from .connect import *
            File "C:\Programs\Python2712\lib\site-packages\ipykernel\connect.py", line 13,
           in <module>
              from IPython.core.profiledir import ProfileDir
            File "C:\Programs\Python2712\lib\site-packages\IPython\__init__.py", line 48,
          in <module>
              from .core.application import Application
            File "C:\Programs\Python2712\lib\site-packages\IPython\core\application.py", l
          ine 25, in <module>
              from IPython.core import release, crashhandler
            File "C:\Programs\Python2712\lib\site-packages\IPython\core\crashhandler.py",
          line 28, in <module>
              from IPython.core import ultratb
            File "C:\Programs\Python2712\lib\site-packages\IPython\core\ultratb.py", line
          119, in <module>
              from IPython.core import debugger
            File "C:\Programs\Python2712\lib\site-packages\IPython\core\debugger.py", line
           36, in <module>
              from IPython.utils import PyColorize, ulinecache
            File "C:\Programs\Python2712\lib\site-packages\IPython\utils\PyColorize.py", l
          ine 55, in <module>
              from IPython.utils.py3compat import PY3
            File "C:\Programs\Python2712\lib\site-packages\IPython\utils\py3compat.py", li
          ne 296, in <module>
              PYPY = platform.python_implementation() == "PyPy"
          AttributeError: 'module' object has no attribute 'python_implementation'
          >>> exit()
          

          这很快导致了问题,正如this answer 中所述,我试图在其中启动jupyter qtconsole 的目录有一个名为platform 的子目录,它与模块的名称冲突。

          虽然这修复了“内核死亡,重新启动”的特定实例,但一般问题仍然存在:如何确保堆栈跟踪(如上面的那个)报告给 Jupyter 控制台的用户,而不是内核死亡默默地?

          【讨论】:

            【解决方案7】:

            如果启动jupyter qtconsole的工作目录中包含一些特殊字符,则可能会反复出现“Kernel dead, restarting”错误。

            对我来说,我从一个工作目录中启动了jupyter qtconsole,该目录的路径包含空格和与号 (&)。当我将目录更改为根驱动器(在我的情况下为 D:/)时,问题就消失了。

            【讨论】:

              【解决方案8】:

              我在运行import Tensorflow as tf 时遇到了类似的问题。 降级到Tensorflow 1.5版本后,问题得到解决。

              尝试卸载 TensorFlow:

              pip uninstall tensorflow

              然后重新安装1.5:

              pip install tensorflow==1.5

              【讨论】:

                【解决方案9】:

                Jupyter_client 和 jupyter_core 版本已发布(并包含此问题的修复程序),您是否介意尝试以下操作:

                1. pip install jupyter_client --upgrade - 这应该将修改后的 jupyter_client 包替换为 5.3.4 版本并安装更新版本的 jupyter_core (4.6.0)

                2。如果您发现 jupyter_core 不是 4.6.0 - 请尝试 pip install jupyter_core --upgrade。

                在此处查看主题:https://github.com/jupyter/notebook/issues/4907

                【讨论】:

                  【解决方案10】:

                  我遇到了同样的问题。我删除了 C:\Users\youruser\AppData\Roaming\jupyter\runtime 的内容,然后再次运行 jupyter notebook。这对我很有帮助。

                  【讨论】:

                    【解决方案11】:

                    最小化你的 batch_size 它对我有用

                    我尝试更新 ipykernel 并且我更新了我的 numpy 似乎没有任何用处。只是最小化了我的批次它正在工作

                    【讨论】:

                    • 请添加更多解释为什么它有效,否则答案可能会被折叠。
                    【解决方案12】:

                    就我而言,更新 Numpy、重新安装 jupyter、重新安装 anaconda、使用 conda 安装模块都不适用于我......

                    我只是删除了 CUDNN 文件夹,仅此而已...

                    【讨论】: