Unit 0. Welcome to the course
Runtime lanes
The course has one required execution contract and two optional comparison lanes.
| Lane | Required | Credentials | Contract |
|---|---|---|---|
| Offline deterministic | Yes | No | Every scored notebook and test must pass with FakeLLM or a controlled test double. |
| Hosted model | No | Usually | The model adapter reports tool, schema, timeout and provider behaviour. |
| Local Ollama | No | No | Run locally or through a Colab local runtime. Hosted Colab's localhost is the temporary VM, not your laptop. |
A model change must not change tool permissions, grading rules, trace redaction,
retry budgets, or failure behaviour. Set BOOTCAMP_PROVIDER=ollama or
BOOTCAMP_PROVIDER=anthropic to switch; leave it unset for the required lane.
Running it in Colab
Every notebook carries an Open in Colab badge at the top. Click it and run the first cell: it fetches the course into the Colab machine and installs it, which takes about twenty seconds. Nothing to install on your own computer, and the required lane works immediately.
Thirteen of the fifteen sessions work there. Two do not, and it is worth knowing which before Monday.
Sessions 1 and 10 are assistant-driven: you configure a coding assistant to
read this repository's policy before it edits, then hold it to that boundary
while it changes tools.py and its test. Session 10 has you author a skill and
compare the runs before and after.
Colab's built-in assistant writes and explains cells. It has no notion of
project instructions, cannot read AGENTS.md before acting, and cannot refuse
an edit outside the files you allowed — which is the whole exercise. So those
two sessions need a workspace where an assistant edits files: Claude Code,
Cursor, or another, on your own machine.
If you have no machine to run one on, GitHub Codespaces gives you the same thing in a browser — a real filesystem, a terminal, and an assistant that edits files. Everything else in the course, Colab covers.
If you want a real model without paying for one, Colab can run the same local
lane this course ships — qwen2.5:7b-instruct — on a free GPU. Set the runtime
to T4 GPU first, then in a cell of your own:
!curl -fsSL https://ollama.com/install.sh | sh
import subprocess, time
subprocess.Popen(["ollama", "serve"])
time.sleep(5)
!ollama pull qwen2.5:7b-instruct
%env BOOTCAMP_PROVIDER=ollama
Then re-run the preflight cell. The pull is about 4.7 GB and Colab throws the machine away when the session ends, so expect to do it again next time — which is the trade for not owning a GPU.
Why localhost works here and not in the other direction. Inside Colab,
localhost is that temporary machine, so an Ollama you started in the same
notebook is reachable. An Ollama running on your own laptop is not — Colab
cannot see your machine. For that, use a Colab local runtime, which points
the browser at a Jupyter server you run yourself.