首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >“`jupyter记事本”和“`jupyter”有什么区别?

“`jupyter记事本”和“`jupyter”有什么区别?
EN

Stack Overflow用户
提问于 2021-06-01 23:27:38
回答 1查看 5.3K关注 0票数 14

运行jupyter notebookjupyter server给出了非常相似的结果,而且描述也非常相似。

代码语言:javascript
复制
❯ jupyter notebook -h
The Jupyter HTML Notebook.

This launches a Tornado based HTML Notebook Server that serves up an
HTML5/Javascript Notebook client.

❯ jupyter server -h
The Jupyter Server.

This launches a Tornado-based Jupyter Server.

有一些不同,比如server没有加载nbextensions,但是我不明白为什么有两个命令有如此多的重叠。

供参考,这是各种模块的版本。

代码语言:javascript
复制
❯ jupyter --version
jupyter core     : 4.7.1
jupyter-notebook : 6.3.0
qtconsole        : 5.0.3
ipython          : 7.22.0
ipykernel        : 5.3.4
jupyter client   : 6.1.12
jupyter lab      : 3.0.11
nbconvert        : 6.0.7
ipywidgets       : 7.6.3
nbformat         : 5.1.3
traitlets        : 5.0.5
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-06-02 12:02:49

木星笔记本(notebook模块)包含两种内容:

  • 笔记本服务器(承载笔记本内容的web应用程序的后端,与内核的代理交互,以及通过在开始时打开internet浏览器与操作系统进行交互;这部分通常是用Python编写的)
  • 客户机( web应用程序的前端,例如HTML代码、javascript和服务器上的一些额外REST点)。

但是,由于现在有多个客户端(前端)为笔记本提供不同的web应用程序:

  • Jupyter笔记本
  • JupyterLab
  • RetroLab
  • 特蕾特
  • 在项目木星之外开发的多个专有客户

将所有这些都使用的服务器组件拆分是有意义的,这样JupyterLab就不必依赖笔记本。这也意味着,如果需要对服务器组件进行修复,它可以迅速发布,而不依赖于朱庇特笔记本发布周期(并且所有前端的用户都可以立即受益)。

因此,为了使分手变得干净,旧的朱庇特笔记本被分成两部分:

这意味着用户和开发人员的更改,其中一些已经在“从笔记本迁移”文档中描述过了:

  • 特定于服务器而不是笔记本的选项从c.NotebookApp重命名为c.ServerApp (特定于笔记本的选项保持为c.NotebookApp)
  • 服务器特定的配置现在存储在jupyter_server_config.py而不是jupyter_notebook_config.py ( .json版本相同)中。
  • 用户现在应该使用jupyter server extension而不是jupyter serverextension (注意额外的空间!)要列出、启用或禁用扩展,请执行以下操作
  • 服务器扩展名需要将它们的文件放在一个新的位置:etc/jupyter/jupyter_server_config.d而不是etc/jupyter/jupyter_notebook_config.d (在实践中,大多数为支持jupyter服务器而更新的扩展名现在都将文件放置在这两个位置上,以便与笔记本向后兼容,但这将在将来发生变化)

需要注意的是,根据启动jupyter笔记本的方式,您将看到不同的服务器正在使用:

  • jupyter nbclassic将使用新的jupyter-server
  • jupyter notebook将使用旧的notebook服务器
  • jupyter lab将使用新的jupyter-server,从JupyterLab 3.0开始,除非运行在可能仍然使用旧notebook服务器的木星集线器/绑定上,这取决于配置

这也意味着在运行jupyter notebookjupyter nbclassic时可能会看到不同的扩展(取决于他们的开发人员是否更新了位置,以及他们是否决定支持遗留notebook服务器)。

创建nbclassic替换而不是从现有的notebook包中删除服务器代码是为了确保向后兼容性,这就是为什么您仍然有两个龙卷风服务器副本(一个由jupyter notebook提供,一个由jupyter server提供)。为了简化这种情况,您可以删除notebook并安装nblcassic,但考虑到转换正在进行,您可能需要手动调整一些内容。但是,这只是暂时的情况,因为计划从v7.0开始迁移笔记本以使用jupyter server

这在目前看来可能不太方便,但这一步确保了将来核心木星基础设施的更好的可维护性,并将在以后使用户和系统管理员受益匪浅。

票数 31
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67797152

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档