
_START_ARTICLE_
Jupyter项目
_START_SECTION_
历史
_START_PARAGRAPH_
2014年，Fernando Pérez宣布从IPython中衍生出一个名为Jupyter的项目。IPython继续以Python shell和Jupyter内核的形式存在，而IPython Notebook和其他与语言无关的部分移到了Jupyter名下。Jupyter是语言无关的，它的名称是对Jupyter支持的核心编程语言的引用，这些语言是Julia、Python和R， 它支持几十种语言的执行环境（也就是内核），这些语言包括Julia、R、Haskell、Ruby，当然还有Python（通过IPython内核）。_NEWLINE_2015年，GitHub和Jupyter项目宣布Jupyter Notebook文件格式（.ipynb文件）在GitHub平台上可以原生渲染。
_START_SECTION_
哲学
_START_PARAGRAPH_
Jupyter项目的经营理念是通过开发开源软件，支持所有编程语言之间的交互式数据科学和科学计算。根据Jupyter项目网站所言，“Jupyter将永远是100%的开源软件，所有人都可以免费使用，并在修改后的BSD许可的自由条款下发布。”
_START_SECTION_
Jupyter Kernels
_START_PARAGRAPH_
Jupyter Kernel是一个负责处理各种类型的请求（代码执行、代码补全、检查）和提供回复的程序。内核通过网络使用ØMQ与Jupyter的其他组件通信，因此可以在相同的或远程的机器上。与许多其他类似于Notebook的接口不同，在Jupyter中，内核并不知道它们被附加到特定的文档，并且可以同时从多个客户机连接到它们。通常，内核是实现的，允许执行一种语言，但有几个例外。_NEWLINE_默认情况下，Jupyter附带IPython作为默认内核，并通过ipykernel包装器提供引用实现。许多语言都有各种质量和特性的内核。
_START_SECTION_
JupyterHub
_START_PARAGRAPH_
JupyterHub是一个用于Jupyter Notebook的多用户服务器。它通过生成、管理和代理许多单一的Jupyter Notebook服务器来支持许多用户。
_START_SECTION_
JupyterLab
_START_PARAGRAPH_
JupyterLab是Jupyter项目的下一代用户界面。它在一个灵活且强大的用户界面中提供了经典的Jupyter Notebook（笔记本、终端、文本编辑器、文件浏览器、丰富输出等）所有熟悉的构建模块。第一个稳定版本于2018年2月20日发布。
_START_SECTION_
行业应用
_START_PARAGRAPH_
Jupyter Notebook已经成为云计算的一个流行的用户界面，主要的云提供商已经采用了Jupyter Notebook或其衍生工具作为云用户的前端界面。例如亚马逊的SageMaker Notebook、谷歌的Colaboratory以及微软的Azure Notebooks
_START_SECTION_
Colaboratory
_START_PARAGRAPH_
Colaboratory（也称为Colab）是一个免费的Jupyter Notebook环境，它在云中运行，并将笔记本存储在Google云端硬盘上。Colaboratory最初是Jupyter项目的一部分，但最终被谷歌接管。截止到2018年9月，Colaboratory只支持Python 2和Python 3内核，不支持其他Jupyter内核，比如Julia和R。