Projekt Jupyter - Project Jupyter

Projekt Jupyter
Logo Jupyter.svg
Zkratka Jupyter
Formace Únor 2015 ; před 6 lety ( 2015-02 )
Typ nezisková organizace
Účel Podporovat interaktivní datovou vědu a vědecké výpočty ve všech programovacích jazycích.
Region obsluhován
Celosvětově
Úřední jazyk
Angličtina
webová stránka jupyter .org

Projekt Jupyter ( / Ü p ɪ t ər / ( naslouchat )O tomto zvuku ) je projekt a komunita, jehož cílem je „vytvořit open-source software , s otevřenými standardy a služby pro interaktivní práci na počítači přes desítky programovacích jazyků“. V roce 2014 jej oddělili od společnosti IPython Fernando Pérez a Brian Granger. Název projektu Jupyter je odkaz na třech hlavních programovacích jazyků podporovaných Jupyter, které jsou Julii , Python a R , a zároveň pocta pro Galileo notebooky s zaznamenávající objev měsíců Jupitera . Projekt Jupyter vyvinul a podporoval interaktivní výpočetní produkty Jupyter Notebook, JupyterHub a JupyterLab.

Dějiny

Image
Rukopis Galilea Galileiho z roku 1610 s pozorováním Jupitera (⊛) a čtyř jeho měsíců (✱), jejichž vyobrazení pomohlo inspirovat logo Jupytera

V roce 2014 oznámil Fernando Pérez spin-off projekt od IPythonu s názvem Project Jupyter. IPython nadále existuje jako shell Pythonu a jádro pro Jupyter, zatímco notebook a další jazykově agnostické části IPythonu se přesunuly pod název Jupyter. Jupyter je agnostický jazyk a podporuje prováděcí prostředí (aka jádra) v několika desítkách jazyků, mezi něž patří Julia, R, Haskell , Ruby a samozřejmě Python (prostřednictvím jádra IPython).

V roce 2015 GitHub a projekt Jupyter oznámily nativní vykreslování formátu souboru notebooků Jupyter (soubory .ipynb) na platformě GitHub.

Filozofie

Filozofií provozu projektu Jupyter je podpora interaktivní datové vědy a vědeckých výpočtů ve všech programovacích jazycích prostřednictvím vývoje softwaru s otevřeným zdrojovým kódem . Podle webové stránky Project Jupyter „Jupyter bude vždy 100% open-source software, zdarma k použití pro všechny a vydaný za liberálních podmínek upravené licence BSD“.

Notebook Jupyter

Image
Rozhraní Jupyter Notebook

Jupyter Notebook (dříve IPython Notebooks) je webové interaktivní výpočetní prostředí pro vytváření poznámkových bloků .

Dokument Jupyter Notebook je REPL založený na prohlížeči, který obsahuje uspořádaný seznam vstupních/výstupních buněk, které mohou obsahovat kód, text (pomocí Markdown ), matematiku, grafy a rich media . Notebook je pod rozhraním dokument JSON , který odpovídá schématu s verzemi a obvykle končí příponou „.ipynb“.

Notebooky Jupyter jsou postaveny na řadě populárních open-source knihoven:

Jupyter Notebook se může připojit k mnoha jádrům , což umožňuje programování v různých jazycích. Jupyter jádro je program zodpovědný za zpracování různých typů žádostí ( spuštění kódu , kód dokončených , inspekce), a poskytnout odpověď. Jádra hovoří s ostatními komponentami Jupyteru pomocí ZeroMQ , a proto mohou být na stejných nebo vzdálených počítačích . Na rozdíl od mnoha jiných rozhraní podobných Notebookům si v Jupyteru jádra neuvědomují, že jsou připojena ke konkrétnímu dokumentu a lze je připojit k mnoha klientům najednou. Jádra obvykle umožňují spuštění pouze jednoho jazyka, ale existuje několik výjimek. Ve výchozím nastavení je Jupyter Notebook dodáván s jádrem IPython. Od verze 2.3 (říjen 2014) existuje 49 jader kompatibilních s Jupyterem pro mnoho programovacích jazyků, včetně Pythonu, R, Julie a Haskellu.

Notebook Jupyter lze převést na řadu otevřených standardních výstupních formátů ( HTML , prezentační snímky , LaTeX , PDF , ReStructuredText , Markdown , Python) prostřednictvím „Stáhnout jako“ ve webovém rozhraní, prostřednictvím knihovny nbconvert nebo příkazu „jupyter nbconvert“ rozhraní linky v shellu. Pro zjednodušení vizualizace dokumentů Jupyter na webu je knihovna nbconvert poskytována jako služba prostřednictvím NbViewer, která může převzít URL libovolného veřejně dostupného dokumentu notebooku, převést jej za běhu do HTML a zobrazit jej uživateli.

Rozhraní notebooku bylo do IPythonu přidáno ve verzi 0.12 (prosinec 2011), v roce 2015 přejmenované na notebook Jupyter (IPython 4.0 je Jupyter 1.0). Jupyter Notebook je podobný rozhraní notebooku jiných programů, jako jsou Maple , Mathematica a SageMath , styl výpočetního rozhraní, který vznikl s Mathematicou v 80. letech minulého století. Zájem Jupytera předběhl popularitu rozhraní notebooku Mathematica na začátku roku 2018.

JupyterLab je novější uživatelské rozhraní pro Project Jupyter. Nabízí stavební kameny klasického Jupyter Notebooku (notebook, terminál, textový editor, prohlížeč souborů, bohaté výstupy atd.) V flexibilním uživatelském rozhraní. První stabilní vydání bylo oznámeno 20. února 2018.

Ostatní produkty

  • JupyterHub je server pro více uživatelů pro Jupyter Notebooks. Je navržen tak, aby podporoval mnoho uživatelů vytvořením, správou a proxy serverem mnoha singulárních serverů Jupyter Notebook. Zatímco JupyterHub vyžaduje správu serverů, služby třetích stran, jako je Jupyo, poskytují alternativu k JupyterHub hostováním a správou víceuživatelských notebooků Jupyter v cloudu.
  • Jupyter Book je open source projekt pro vytváření knih a dokumentů z výpočetního materiálu. Umožňuje uživateli konstruovat obsah ve směsi Markdown , rozšířené verze Markdown s názvem MyST, Maths & Equations pomocí MathJax , Jupyter Notebooks, reStructuredText , výstupu běžících Jupyter Notebooks v době sestavení. Lze vytvářet více výstupních formátů (aktuálně jednotlivé soubory, vícestránkové webové stránky HTML a soubory PDF ).
  • nbgrader je nástroj pro vytváření a hodnocení (označování) úkolů v noteboocích Jupyter. Umožňuje instruktorovi vytvářet úkoly, které zahrnují cvičení s kódováním v Pythonu nebo jiném podporovaném jádře a textové odpovědi. Odeslané úkoly lze automaticky označit, ručně bodovat nebo je kombinovat obojí.

Přijetí průmyslu

Notebook Jupyter se stal populárním uživatelským rozhraním pro cloud computing a hlavní poskytovatelé cloudu přijali Jupyter Notebook nebo odvozené nástroje jako rozhraní frontend pro uživatele cloudu. Mezi příklady patří Amazon SageMaker Notebooks, Google's Colaboratory a Microsoft Azure Notebook.

Google Colaboratory (také známý jako Colab ) je bezplatné prostředí notebooku Jupyter, které běží v cloudu a ukládá své notebooky na Disk Google . Colab byl původně interní projekt Google; byl učiněn pokus otevřít zdrojový kód a pracovat více přímo proti proudu, což vedlo k vývoji rozšíření Google Chrome „Open in Colab“ , ale to nakonec skončilo a vývoj Colab pokračoval interně. Od října 2019 umožňuje Colaboratory UI pouze vytváření notebooků s jádry Python 2 a Python 3; stávající notebook, jehož kernelspec je IR nebo Swift, však bude také fungovat, protože R i Swift jsou nainstalovány v kontejneru. Jazyk Julia může také fungovat na Colabu (např. S ​​Pythonem a GPU; jednotky zpracování tenzoru Google také pracují s Julií na Colabu).

Mediální pokrytí

  • 11. února 2016 spolupráce LIGO oznámila první pozorování gravitačních vln . Spolupráce uvolnila nezpracovaná vědecká data spolu s notebooky Jupyter Notebooks obsahujícími kód Pythonu pro zpracování dat a reprodukci čísel z objevného papíru.
  • 5. dubna 2018 publikoval The Atlantic článek s názvem The Scientific Paper Is Zastarete, který pojednával o roli Jupyter Notebook a Mathematica notebook v budoucnosti vědeckého publikování. Tento článek vedl k odpovědím předních vědců a akademiků, včetně ekonoma Paula Romera .

Granty a ocenění

Viz také

Reference

externí odkazy