Colabmill is a tool for parameterizing, executing, and analyzing Colab-flavored Jupyter Notebooks.
Colabmill lets you do what Papermill does, but optimized for Colab-flavored Jupyter Notebooks:
- parameterize notebooks, following Colab Form syntax
- execute notebooks online/offline
From the command line:
pip install "colabmill @ git+https://github.com/CourierKyn/colabmill"
For all optional io dependencies, you can specify individual bundles
like s3
, or azure
-- or use all
pip install "colabmill[all] @ git+https://github.com/CourierKyn/colabmill"
This library currently supports Python 3.6+ versions. As minor Python versions are officially sunset by the Python org Colabmill will similarly drop support in the future.
To parameterize your notebook designate a cell with the comment #@param [...]
.
Colabmill looks for the #@param
cell and treats this cell as defaults for the parameters passed in at execution
time. Colabmill will add a new cell containing #@title Parameters injected
with input parameters in order to
overwrite the values with #@param
. If no cell contains #@param
the injected cell will be inserted at the top of
the notebook.
Additionally, if you rerun notebooks through Colabmill and it will reuse the #@title Parameters injected
cell from
the prior run. In this case Colabmill will replace the old #@title Parameters injected
cell with the new run's
inputs.
The two ways to execute the notebook with parameters are: (1) through the Python API and (2) through the command line interface.
See Papermill.
Read CONTRIBUTING.md for guidelines on how to setup a local development environment and make code changes back to Colabmill.
For development guidelines look in the DEVELOPMENT_GUIDE.md file. This should inform you on how to make particular additions to the code base.
See the Papermill documentation on ReadTheDocs.