Проект Jupyter


Из Википедии, бесплатной энциклопедии
  (Перенаправлено с JupyterHub )
Перейти к навигации Перейти к поиску

Проект Jupyter ( / ˙U р ɪ т ər / ( слушать )Об этом звуке ) это проект и сообщество, целью которого является «разработка с открытым исходным кодом программного обеспечения , открытых стандартов и услуг для интерактивных вычислений в десятках языков программирования». [2] Он был выделен из IPython в 2014 году Фернандо Пересом . Название Project Jupyter - это ссылка на три основных языка программирования, поддерживаемых Jupyter, а именно Julia , Python и R , а также дань уважения.к записным книжкам Галилея , записывающим открытие спутников Юпитера . Project Jupyter разработал и поддержал интерактивные вычислительные продукты Jupyter Notebook, JupyterHub и JupyterLab.

История

Рукопись Галилео Галилея 1610 года с наблюдениями Юпитера (⊛) и четырех его спутников (✱), изображение которых помогло создать логотип Jupyter.

В 2014 году Фернандо Перес объявил о дополнительном проекте IPython под названием Project Jupyter. [3] IPython продолжает существовать как оболочка Python и ядро ​​для Jupyter, в то время как блокнот и другие независимые от языка части IPython перемещаются под именем Jupyter. [4] [5] Jupyter не зависит от языка и поддерживает среды выполнения (также известные как ядра) на нескольких десятках языков, среди которых Julia, R, Haskell , Ruby и, конечно же, Python (через ядро ​​IPython). [6]

В 2015 году GitHub и Jupyter Project объявили о нативном рендеринге файлов формата записных книжек Jupyter (файлы .ipynb) на платформе GitHub. [7] [8]

Философия

Философия работы Project Jupyter заключается в поддержке интерактивного анализа данных и научных вычислений на всех языках программирования посредством разработки программного обеспечения с открытым исходным кодом . Согласно веб-сайту Project Jupyter, «Jupyter всегда будет на 100% программным обеспечением с открытым исходным кодом, бесплатным для всех и выпущенным в соответствии с либеральными условиями модифицированной лицензии BSD». [1]

Блокнот Jupyter

Интерфейс Jupyter Notebook

Jupyter Notebook (ранее IPython Notebooks) - это интерактивная вычислительная среда на базе Интернета для создания документов записных книжек .

Документ Jupyter Notebook - это основанный на браузере REPL, содержащий упорядоченный список ячеек ввода / вывода, который может содержать код, текст (с использованием Markdown ), математические данные, графики и мультимедийные данные . Под интерфейсом записная книжка представляет собой документ JSON с версией схемы, обычно заканчивающейся расширением «.ipynb».

Блокноты Jupyter созданы на основе ряда популярных библиотек с открытым исходным кодом:

  • IPython
  • ZeroMQ
  • Торнадо
  • jQuery
  • Bootstrap (интерфейсный фреймворк)
  • MathJax

Jupyter Notebook может подключаться ко многим ядрам, что позволяет программировать на разных языках. Jupyter ядро является программой , которая отвечает за обработку различных типов запросов ( выполнение кода , кода доработки , осмотр), и предоставление ответа. Ядра говорить с другими компонентами Jupyter с помощью ZeroMQ , и , таким образом , могут быть на один и те же или удаленные машины . В отличие от многих других интерфейсов, подобных Notebook, в Jupyter ядра не знают, что они прикреплены к определенному документу, и могут быть подключены сразу ко многим клиентам. Обычно ядра позволяют выполнять только один язык, но есть несколько исключений. [ необходима цитата ]По умолчанию Jupyter Notebook поставляется с ядром IPython. Начиная с версии 2.3 [9] [10] (октябрь 2014 г.) существует 49 Jupyter-совместимых ядер для многих языков программирования, включая Python, R, Julia и Haskell. [11]

Блокнот Jupyter можно преобразовать в несколько открытых стандартных форматов вывода ( HTML , слайды презентации , LaTeX , PDF , ReStructuredText , Markdown , Python) с помощью функции «Загрузить как» в веб-интерфейсе через библиотеку nbconvert [12] или «jupyter». nbconvert "интерфейс командной строки в оболочке. Чтобы упростить визуализацию документов записной книжки Jupyter в Интернете, библиотека nbconvert [13] предоставляется в виде службы через NbViewer [14], которая может принимать URL-адрес любого общедоступного документа записной книжки, на лету конвертировать его в HTML и отображать в Пользователь.

Интерфейс ноутбука был добавлен в IPython в версии 0.12 [15] (декабрь 2011 г.), переименован в Jupyter notebook в 2015 г. (IPython 4.0 - это Jupyter 1.0). Jupyter Notebook похож на интерфейс записной книжки других программ, таких как Maple , Mathematica и SageMath , стиль вычислительного интерфейса, появившийся в системе Mathematica в 1980-х годах. [16] Интерес к Jupyter превзошел популярность интерфейса ноутбука Mathematica в начале 2018 года. [16]

JupyterLab - это новый пользовательский интерфейс для Project Jupyter. Он предлагает стандартные блоки классического Jupyter Notebook (блокнот, терминал, текстовый редактор, файловый браузер, расширенные возможности вывода и т. Д.) В гибком пользовательском интерфейсе. О первом стабильном выпуске было объявлено 20 февраля 2018 г. [17]

Другие продукты

  • JupyterHub [18] - многопользовательский сервер для Jupyter Notebooks. Он разработан для поддержки многих пользователей, создавая, управляя и проксируя множество отдельных серверов Jupyter Notebook. [ необходима цитата ] В то время как JupyterHub требует управления серверами, сторонние сервисы, такие как Jupyo [19], предоставляют альтернативу JupyterHub, размещая и управляя многопользовательскими записными книжками Jupyter в облаке.
  • Jupyter Book - это проект с открытым исходным кодом для создания книг и документов из вычислительного материала. [20] Это позволяет пользователю создавать контент в смеси Markdown , расширенной версии Markdown под названием MyST, [21] Maths & Equations с использованием MathJax , Jupyter Notebooks, reStructuredText , результатов выполнения Jupyter Notebooks во время сборки. Может быть создано несколько выходных форматов (в настоящее время отдельные файлы, многостраничные веб-страницы HTML и файлы PDF ).
  • nbgrader - это инструмент для создания и оценки (маркировки) заданий в записных книжках Jupyter. [22] Это позволяет инструктору создавать задания, которые включают упражнения по кодированию на Python или любом другом поддерживаемом ядре и текстовые ответы. Отправленные задания могут быть автоматически отмечены, выставлены вручную или и то, и другое.

Принятие в отрасли

Jupyter Notebook стал популярным пользовательским интерфейсом для облачных вычислений , и основные поставщики облачных услуг приняли Jupyter Notebook или производные инструменты в качестве внешнего интерфейса для пользователей облака. Примеры включают SageMaker Notebooks от Amazon , [23] Google Colaboratory [24] и Microsoft Azure Notebook. [25]

Google Colaboratory (также известный как Colab ) - это бесплатная среда для ноутбуков Jupyter, которая работает в облаке и хранит свои записные книжки на Google Диске . Colab изначально был внутренним проектом Google; была предпринята попытка [26] открыть исходный код всего кода и работать напрямую с ним, что привело к разработке расширения Google Chrome «Open in Colab» [27], но это в конечном итоге закончилось, и разработка Colab продолжилась внутри компании. По состоянию на октябрь 2019 года пользовательский интерфейс Colaboratory позволяет создавать записные книжки только с ядрами Python 2 и Python 3; тем не менее, существующий ноутбук со спецификацией ядра IR или Swift также будет работать, поскольку и R, и Swiftустанавливаются в контейнер. Язык Julia также может работать на Colab (например, с Python и графическими процессорами; блоки тензорной обработки Google также работают с Julia на Colab [28] ). [29] [30]

Освещение в СМИ

  • 11 февраля 2016 года коллаборация LIGO объявила о первом наблюдении гравитационных волн . Сотрудничество выпустило необработанные научные данные вместе с Jupyter Notebooks, содержащими код Python для обработки данных и воспроизведения цифр из статьи об открытии. [31]
  • 5 апреля 2018 года The Atlantic опубликовала статью под названием The Scientific Paper Is Obsolete , в которой обсуждалась роль Jupyter Notebook и Mathematica Notebook в будущем научных публикаций. [16] Эта статья вызвала отклики видных ученых и академиков, в том числе экономиста Пола Ромера . [32]

Гранты и награды

  • В 2012 году Фернандо Перес получил премию Фонда свободного программного обеспечения за продвижение свободного программного обеспечения за свою работу над IPython , предшественником проекта Jupyter.
  • В 2013 году команда IPython получила грант в размере 1,15 миллиона долларов от Фонда Альфреда П. Слоана [33] [34], который профинансировал ранние работы, приведшие к созданию проекта Jupyter. [35]
  • В 2015 году проект был награжден Jupyter совместный грант на $ 6 млн от The Леоны М. и Гарри Б. Хелмсли Благотворительный фонд , Гордон и Бетти Мур Фонд и Альфреда П. Слоуна , который финансировал работу , которая привела к расширенным возможностям основные инструменты Jupyter, а также создание JupyterLab. [36]
  • 2 мая 2018 года руководящий комитет Project Jupyter был награжден премией ACM Software System Award 2017 , ежегодной наградой, присуждаемой людям или организациям «за разработку системы программного обеспечения, которая оказала долгосрочное влияние, отраженное в вкладе в концепции, в коммерческое принятие или и то, и другое ". [37]

Смотрите также

  • Binder Project
  • GNU Octave
  • RStudio
  • Scilab
  • Spyder (программное обеспечение)

использованная литература

  1. ^ a b «О нас» . Проект Jupyter. 2018-04-20 . Проверено 3 мая 2018 .
  2. ^ "Проект Jupyter" . www.jupyter.org . Проверено 13 ноября 2020 .
  3. ^ "Проект Jupyter // Колонка" .
  4. ^ «Блокнот, консоль Qt и ряд других частей теперь являются частью Jupyter» . 29 мая 2021 г.
  5. ^ "Большой раскол ™" . 28 августа 2017.
  6. ^ "Проект Jupyter | Главная" .
  7. ^ Сшироков (07.05.2015). «GitHub + Jupyter Notebooks = <3» . Блог GitHub . Проверено 10 апреля 2018 .
  8. ^ «Рендеринг блокнотов на GitHub» . Блог Jupyter . 2015-05-07 . Проверено 10 апреля 2018 .
  9. ^ «Что нового в IPython> Проблемы, закрытые в цикле разработки 2.x» .
  10. ^ «Что нового в IPython> 2.0 Series» .
  11. ^ "Ядра Jupyter> Список (некоторых) ядер, совместимых с IPython" .
  12. ^ «nbconvert: конвертировать записные книжки в другие форматы» . Документация по nbconvert 6.0.8.dev0 . Проверено 13 ноября 2020 .
  13. ^ jupyter / nbconvert , Project Jupyter, 12 апреля 2021 г. , получено 13 апреля 2021 г.
  14. ^ "nbviewer" . nbviewer.jupyter.org . Проверено 13 ноября 2020 .
  15. ^ "Объявление ноутбука - примечание к выпуску 0.12" .
  16. ^ a b c Сомерс, Джеймс. «Научная статья устарела» . Атлантика . Проверено 10 апреля 2018 .
  17. ^ «JupyterLab готов для пользователей» . Блог Jupyter . 2018-02-20 . Проверено 4 мая 2018 .
  18. ^ "Проект Jupyter" .
  19. ^ "Jupyo | Блокноты Jupyter для Python, R, Julia в облаке" . jupyo.com . Архивировано из оригинала на 2019-01-03 . Проверено 2 января 2019 .
  20. ^ "Книги с Юпитером" . jupyterbook.org . Проверено 13 ноября 2020 .
  21. ^ "Руководство по синтаксису MyST" . myst-parser.readthedocs.io . Проверено 13 ноября 2020 .
  22. ^ "Документация по nbgrader 0.6.1" . nbgrader.readthedocs.io . Проверено 13 ноября 2020 .
  23. ^ «Amazon SageMaker на AWS» . Amazon Web Services, Inc . Проверено 9 мая 2018 .
  24. ^ «Добро пожаловать в Colaboratory» . research.google.com . Проверено 9 мая 2018 .
  25. ^ "Интернет-блокноты Jupyter" . notebooks.azure.com . Проверено 9 мая 2018 .
  26. ^ «Ботаны радуются: Google только что выпустил свой внутренний инструмент для совместной работы над ИИ» . Кварц . Проверено 6 сентября 2018 .
  27. ^ "Открыть в репозитории Colab GitHub" . GitHub . Проверено 6 сентября 2018 .
  28. ^ Юлия на TPU, JuliaTPU , 03.12.2019 , получено 03.12.2019
  29. ^ "Google Colaboratory" . colab.research.google.com . Проверено 6 декабря 2019 .
  30. ^ "gpu - Юля в Google Colab" . Переполнение стека . Проверено 6 декабря 2019 .
  31. ^ "Открытый научный центр LIGO" . losc.ligo.org . Проверено 4 мая 2018 .
  32. ^ Ромер, Пол. «Jupyter, Mathematica и будущее исследовательской работы» . paulromer.net . Проверено 15 апреля 2018 .
  33. ^ "Грант Фонда Слоуна" . ipython.org . Проверено 3 мая 2018 .
  34. ^ «Платформа с открытым исходным кодом для интерактивных, совместных и воспроизводимых научных вычислений и образования. Инструменты с открытым исходным кодом для интерактивных, совместных и воспроизводимых вычислений» . ipython.org . Проверено 3 мая 2018 .
  35. Перес, Фернандо (28 декабря 2015 г.). «Итоговый отчет IPython 2015 - Фонд Слоуна» (PDF) . ipython.org . Проверено 3 мая 2018 года .
  36. ^ "Калифорнийский университет в Беркли и Калифорнийский политехнический университет расширяют и улучшают программное обеспечение с открытым исходным кодом для научных вычислений и обработки данных | Благотворительный фонд Хелмсли" . helmsleytrust.org . Архивировано из оригинала на 2020-01-03 . Проверено 3 мая 2018 .
  37. ^ "Премия системы программного обеспечения" . ACM Awards . Ассоциация вычислительной техники . Проверено 28 апреля 2016 года .

внешние ссылки

  • Официальный веб-сайт
  • Ядра Jupyter
Источник « https://en.wikipedia.org/w/index.php?title=Project_Jupyter&oldid=1040583280#JupyterHub »