stringtranslate.com

Proyecto Jupyter

Proyecto Jupyter ( / ˈ p ɪ t ər / ) es un proyecto para desarrollarsoftware de código abierto,estándares abiertosy servicios parala computación interactivaen múltipleslenguajes de programación.

Fue creado a partir de IPython en 2014 por Fernando Pérez y Brian Granger. El nombre del proyecto Jupyter es una referencia a los tres lenguajes de programación principales que soporta Jupyter, que son Julia , Python y R. Su nombre y logotipo son un homenaje al descubrimiento de las lunas de Júpiter por parte de Galileo , como se documenta en los cuadernos atribuidos a Galileo.

Jupyter está patrocinado financieramente por NumFOCUS. [1]

Historia

Un manuscrito (incorrectamente) atribuido a las observaciones de Júpiter (⊛) y cuatro de sus lunas (✱) de Galileo Galilei , que inspiraron el logotipo de Jupyter.

La primera versión de Notebooks para IPython fue lanzada en 2011 por un equipo que incluía a Fernando Pérez, Brian Granger y Min Ragan-Kelley. [2] En 2014, Pérez anunció un proyecto derivado de IPython llamado Proyecto Jupyter. [3] IPython continúa existiendo como un shell de Python y un núcleo para Jupyter, mientras que el notebook y otras partes independientes del lenguaje de IPython se movieron bajo el nombre de Jupyter. [4] [5] Jupyter admite entornos de ejecución (llamados "kernels") en varias docenas de lenguajes, incluidos Julia, R, Haskell , Ruby y Python (a través del núcleo de IPython).

En 2015, había disponibles en GitHub unos 200.000 cuadernos de Jupyter . En 2018, había disponibles unos 2,5 millones. [6] En enero de 2021, había disponibles casi 10 millones, incluidos cuadernos sobre la primera observación de ondas gravitacionales [7] y sobre el descubrimiento en 2019 de un agujero negro supermasivo . [8]

Los principales proveedores de computación en la nube han adoptado Jupyter Notebook o herramientas derivadas como interfaz de usuario para los usuarios de la nube. Algunos ejemplos son Amazon SageMaker Notebooks, [9] Google Colab, [10] [11] y Microsoft Azure Notebook. [12]

Visual Studio Code admite el desarrollo local de cuadernos Jupyter. A julio de 2022, la extensión Jupyter para VS Code se ha descargado más de 40 millones de veces, lo que la convierte en la segunda extensión más popular en el Marketplace de VS Code. [13]

El comité directivo del Proyecto Jupyter recibió el Premio ACM Software System Award 2017 , un premio anual que honra a personas u organizaciones "por desarrollar un sistema de software que ha tenido una influencia duradera, reflejada en contribuciones a conceptos, en aceptación comercial o en ambos". [14]

En 2018, The Atlantic publicó un artículo titulado "El artículo científico está obsoleto", en el que se analiza el papel de Jupyter Notebook y el cuaderno de Mathematica en el futuro de las publicaciones científicas. [15] El economista Paul Romer , en respuesta, publicó una entrada de blog en la que reflexionó sobre sus experiencias con el uso de Mathematica y Jupyter para la investigación, y concluyó en parte que Jupyter "hace un mejor trabajo al ofrecer lo que Theodore Gray tenía en mente cuando diseñó el cuaderno de Mathematica". [16]

En 2021, Nature nombró a Jupyter como uno de los diez proyectos informáticos que transformaron la ciencia. [8]

Cuaderno Jupyter

Jupyter Notebook puede referirse coloquialmente a dos conceptos diferentes: la aplicación orientada al usuario para editar código y texto, o el formato de archivo subyacente que es interoperable en muchas implementaciones.

Interfaz de Jupyter Notebook

Aplicaciones

Jupyter Notebook (anteriormente IPython Notebook) es un entorno computacional interactivo basado en la web para crear documentos de cuaderno . Jupyter Notebook se crea utilizando varias bibliotecas de código abierto , incluidas IPython , ZeroMQ , Tornado , jQuery , Bootstrap y MathJax . Una aplicación Jupyter Notebook es un REPL basado en navegador que contiene una lista ordenada de celdas de entrada/salida que pueden contener código, texto (usando Github Flavored Markdown ), matemáticas, gráficos y multimedia .

Jupyter Notebook es similar a la interfaz de cuaderno de otros programas como Maple , Mathematica y SageMath , un estilo de interfaz computacional que se originó con Mathematica en la década de 1980. El interés por Jupyter superó la popularidad de la interfaz de cuaderno de Mathematica a principios de 2018. [15]

JupyterLab es una nueva interfaz de usuario para el Proyecto Jupyter, que ofrece una interfaz de usuario flexible y más funciones que la interfaz de usuario clásica de la notebook. La primera versión estable se anunció el 20 de febrero de 2018. [17] [18] En 2015, una subvención conjunta de 6 millones de dólares de The Leona M. and Harry B. Helmsley Charitable Trust , The Gordon and Betty Moore Foundation y The Alfred P. Sloan Foundation financió el trabajo que condujo a la ampliación de las capacidades de las herramientas centrales de Jupyter, así como a la creación de JupyterLab. [19]

GitHub anunció en noviembre de 2022 que JupyterLab estaría disponible en su plataforma de codificación en línea llamada Codespace. [20]

En agosto de 2023 se lanzó Jupyter AI, una extensión de Jupyter. Esta extensión incorpora inteligencia artificial generativa en los cuadernos de Jupyter, lo que permite a los usuarios explicar y generar código, corregir errores, resumir contenido, consultar sus archivos locales y generar cuadernos completos basados ​​en indicaciones de lenguaje natural. [21]

JupyterHub es un servidor multiusuario para Jupyter Notebooks. Está diseñado para admitir a muchos usuarios mediante la generación, la gestión y el proxy de varios servidores Jupyter Notebook singulares. [22]

Documentos

Un documento de Jupyter Notebook es un archivo JSON , que sigue un esquema versionado y que normalmente termina con la extensión ".ipynb". Las partes principales de los Jupyter Notebooks son: Metadatos, formato del Notebook y lista de celdas. Los metadatos son un diccionario de datos de definiciones para configurar y mostrar el notebook. El formato del Notebook es un número de versión del software. La lista de celdas son diferentes tipos de celdas para Markdown (visualización), código (para ejecutar) y salida de las celdas de tipo código. [23]

Si bien JSON es el formato más común, es posible prescindir de algunas funciones (como almacenar imágenes y metadatos) y guardar cuadernos como documentos de rebajas utilizando extensiones como Jupytext. [24] Jupytext se utiliza a menudo junto con el control de versiones para simplificar la comparación y la fusión de cuadernos.

Véase también

Referencias

  1. ^ "Proyectos patrocinados por NumFOCUS". NumFOCUS . Consultado el 25 de octubre de 2021 .
  2. ^ Vu, Linda (14 de junio de 2021). "Proyecto Jupyter: un código informático que transformó la ciencia". Berkeley Lab Computing Sciences . Consultado el 15 de agosto de 2022 .
  3. ^ "Proyecto Jupyter // Speaker Deck".
  4. ^ "El Notebook, la consola Qt y varias otras piezas ahora son parte de Jupyter". GitHub . 29 de mayo de 2021.
  5. ^ "La gran división™". 28 de agosto de 2017.
  6. ^ Perkel, Jeffrey M. (30 de octubre de 2018). "Por qué Jupyter es el cuaderno computacional de elección de los científicos de datos". Nature . 563 (7729): 145–146. Bibcode :2018Natur.563..145P. doi :10.1038/d41586-018-07196-1. PMID  30375502. S2CID  256770398 . Consultado el 15 de agosto de 2022 .
  7. ^ Colaboración científica LIGO (2016). «LIGO Open Science Center». losc.ligo.org . doi :10.7935/K5MW2F23 . Consultado el 4 de mayo de 2018 .
  8. ^ ab Perkel, Jeffrey M. (20 de enero de 2021). «Diez códigos informáticos que transformaron la ciencia». Nature . 589 (7842): 344–348. Bibcode :2021Natur.589..344P. doi :10.1038/d41586-021-00075-2. PMID  33473232. S2CID  231663425 . Consultado el 15 de agosto de 2022 .
  9. ^ Gallagher, Sean (15 de agosto de 2022). "Aprendizaje automático, conclusión: ¿superaron las herramientas "sin código" al análisis manual?". Ars Technica . Consultado el 15 de agosto de 2022 .
  10. ^ Sherrer, Kara (25 de mayo de 2022). "Google Colab vs Jupyter Notebook: Comparación de software de ciencia de datos". TechRepublic . Consultado el 15 de agosto de 2022 .
  11. ^ "Los nerds se regocijan: Google acaba de lanzar su herramienta interna para colaborar en IA". Quartz . Consultado el 6 de septiembre de 2018 .
  12. ^ Wayner, Peter (5 de mayo de 2022). "Herramientas de ciencia de datos esenciales para mejorar sus operaciones de análisis". CIO . Consultado el 15 de agosto de 2022 .
  13. ^ Ramel, David (12 de julio de 2022). "VS Code y Python: una combinación natural para la ciencia de datos". Revista Visual Studio . Consultado el 15 de agosto de 2022 .
  14. ^ "Software System Award". Premios ACM . Association for Computing Machinery . Archivado desde el original el 2016-05-05 . Consultado el 28 de abril de 2016 .
  15. ^ ab Somers, James. "El artículo científico está obsoleto". The Atlantic . Consultado el 10 de abril de 2018 .
  16. ^ Romer, Paul. "Jupyter, Mathematica y el futuro de los artículos de investigación". paulromer.net . Consultado el 15 de abril de 2018 .
  17. ^ "JupyterLab está listo para los usuarios". Blog de Jupyter . 20 de febrero de 2018. Consultado el 4 de mayo de 2018 .
  18. ^ Brust, Andrew (24 de febrero de 2018). "Los cuadernos de ciencia de datos se vuelven reales: JupyterLab se lanza a los usuarios". ZDNet . Consultado el 15 de agosto de 2022 .
  19. ^ "UC Berkeley y Cal Poly expandirán y mejorarán el software de código abierto para computación científica y ciencia de datos | Helmsley Charitable Trust". helmsleytrust.org . Archivado desde el original el 2020-01-03 . Consultado el 2018-05-03 .
  20. ^ "Uso de Codespaces con JupyterLab (versión beta pública) | Registro de cambios de GitHub". El blog de GitHub . Consultado el 11 de noviembre de 2022 .
  21. ^ Weill, Jason. «IA generativa en Jupyter». Jupyter . Archivado desde el original el 14 de agosto de 2023. Consultado el 19 de agosto de 2023 .
  22. ^ Lahoti, Sugandha (6 de mayo de 2019). "JupyterHub 1.0 se lanza con servidores con nombre, compatibilidad con cifrado TLS y más". Packt Hub . Consultado el 15 de agosto de 2022 .
  23. ^ Toomey, Dan (2016). Aprendiendo Jupyter (1.ª ed.). Birmingham - Mumbai: Packt. pág. 21. ISBN 978-1-78588-487-0.
  24. ^ Wouts, Marc (11 de noviembre de 2022), mwouts/jupytext , consultado el 11 de noviembre de 2022

Enlaces externos