Skip to main content
Course notebooks execute inside Docker containers using papermill for reproducible runs. A central registry (notebook-database.yml) tracks which notebooks exist, their execution environments, and run history.

Execute a single notebook

From the eng-ai-agents repository root:
This will:
  1. Look up the notebook’s environment in notebook-database.yml
  2. Start the appropriate Docker container via docker compose
  3. Install notebook dependencies (make install-notebooks)
  4. Execute the notebook with papermill, extracting plots and artifacts
  5. Log results to W&B (if WANDB_API_KEY is set in .env)
  6. Update the registry with execution date and duration

Execute all notebooks

Run every registered notebook in sequence:
This iterates over all entries in notebook-database.yml, executing each in its registered Docker environment. Notebooks marked as colab are skipped with a printed Colab URL instead.

Make targets

Notebook registry

The notebook-database.yml file is the source of truth for all course notebooks. Each entry specifies:

Colab notebooks

Some notebooks require Google Colab (e.g., for Colab-specific APIs or free GPU access). When you run make execute-notebook on a Colab notebook, the pipeline prints the Colab URL instead of executing locally:

Output artifacts

After execution, notebooks produce:
  • Executed notebook, <stem>-executed.ipynb with all cell outputs populated
  • PNG images, plots extracted from cell outputs into an output/images/ directory
  • Plotly HTML, interactive charts saved as HTML files
  • W&B logs, metrics and images uploaded to the experiment dashboard