Repolode
nteract

nteract/papermill

Herramienta de Python para parametrizar, ejecutar y analizar notebooks de Jupyter desde la línea de comandos o mediante una API de Python.

Estrellas
6,498
Forks
465
Issues abiertos
198
Último commit
el mes pasado

¿Qué es?

Papermill ejecuta notebooks de Jupyter con los parámetros que indiques al ejecutarlos. Para definir valores predeterminados, etiqueta una celda con `parameters`. Papermill inserta una celda nueva con los valores que le pases, así que el mismo notebook puede generar distintos resultados según las entradas, por ejemplo, un informe mensual con fechas diferentes.

Puedes ejecutar notebooks mediante la API de Python con `execute_notebook` o desde la línea de comandos con `papermill`, que ofrece opciones para pasar parámetros como cadenas, valores tipados, archivos YAML o YAML codificado en base64. Las rutas de entrada y salida pueden apuntar a archivos locales, URL HTTP(S), AWS S3, Azure Data Lake o Blob Storage, o Google Cloud Storage.

Como la ejecución se puede automatizar mediante scripts, papermill encaja en pipelines de datos donde los resultados de un notebook determinan cuál se ejecuta después. Los extras opcionales, como `s3` o `azure`, instalan las dependencias de almacenamiento; el extra `black` da formato a los parámetros insertados.

Funciones clave

  • 01Inserta parámetros en una celda etiquetada para que un notebook pueda ejecutarse con distintas entradas.
  • 02Ejecuta notebooks mediante la API de Python o desde la línea de comandos con papermill.
  • 03Acepta parámetros como valores tipados, cadenas sin procesar, archivos YAML o cadenas YAML.
  • 04Lee y escribe notebooks en disco local, HTTP(S), S3, Azure y Google Cloud Storage.
  • 05Permite dar formato a los parámetros insertados con Black, de forma opcional.

Casos de uso

  • Ejecutar el mismo informe financiero o analítico con fechas o configuraciones diferentes.
  • Encadenar notebooks en un pipeline de datos donde la salida de uno determina el siguiente paso.
  • Ejecutar por lotes notebooks almacenados en almacenamiento de objetos en la nube como parte de trabajos programados.

Inicio rápido

  1. 1

    Instala papermill desde PyPI

    pip install papermill
  2. 2

    Añade la etiqueta «parameters» a una celda del notebook y ejecútalo con un parámetro desde la CLI

    papermill local/input.ipynb local/output.ipynb -p alpha 0.6 -p l1_ratio 0.1

Antes de usarlo

  • Solo admite Python 3.10 y versiones posteriores.

Temas

#jupyter#notebook#data-pipeline#parameters#python#automation#julia#notebook-generator#notebooks#nteract

Preguntas frecuentes

¿Qué es papermill?
Herramienta de Python para parametrizar, ejecutar y analizar notebooks de Jupyter desde la línea de comandos o mediante una API de Python. Papermill ejecuta notebooks de Jupyter con los parámetros que indiques al ejecutarlos. Para definir valores predeterminados, etiqueta una celda con `parameters`. Papermill inserta una celda nueva con los valores que le pases, así que el mismo notebook puede generar distintos resultados según las entradas, por ejemplo, un informe mensual con fechas diferentes.
¿papermill es gratuito? ¿Qué licencia tiene?
papermill es open source bajo la licencia BSD-3-Clause. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿papermill sigue mantenido?
Actualizado en los últimos 6 meses. El último commit de papermill fue el 5 oct 2026.
¿Para qué puedo usar papermill?
Ejecutar el mismo informe financiero o analítico con fechas o configuraciones diferentes. Encadenar notebooks en un pipeline de datos donde la salida de uno determina el siguiente paso. Ejecutar por lotes notebooks almacenados en almacenamiento de objetos en la nube como parte de trabajos programados.
¿Cómo se instala papermill?
Instala papermill desde PyPI: pip install papermill Añade la etiqueta «parameters» a una celda del notebook y ejecútalo con un parámetro desde la CLI: papermill local/input.ipynb local/output.ipynb -p alpha 0.6 -p l1_ratio 0.1
¿Dónde consigo papermill?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/nteract/papermill

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados