A clean, isolated Linux machine for running the labs — built on your Windows PC, so nothing touches your work setup and everything matches what the labs expect.
Why a virtual machine? It gives you a throwaway Linux computer running inside a window on Windows. The labs assume Linux, your experiments stay sandboxed away from your real machine, and if anything breaks you just delete it and start over. Nothing here costs money.
git clone https://github.com/hlerias/leapfrog.git
cd leapfrog
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
python labs/08_trace.pyYour PC can almost certainly run VMs, but the feature is sometimes switched off. Check it: press Ctrl + Shift + Esc to open Task Manager → Performance tab → CPU. Look for Virtualization: Enabled near the bottom.
F2, F10, Del, or Esc as it boots — the screen tells you which). Find the setting called Intel VT-x, AMD-V, SVM, or just Virtualization, set it to Enabled, save, and exit. Your PC maker's support page has exact steps if you get stuck.VirtualBox is the free program that runs the virtual machine.
Ubuntu is the Linux system your VM will run. Download the current long-term-support release (26.04 LTS "Resolute Raccoon").
.iso file (about 6.5 GB). Save it somewhere you'll remember, like your Downloads folder.Open VirtualBox and click New. VirtualBox 7 can install Ubuntu for you automatically — fill in these details:
Leapfrog (typing "Ubuntu" anywhere auto-detects the type).iso you just downloadedClick Finish, then Start. Ubuntu will install itself — this takes 10–20 minutes. Let it finish even if the progress bar looks frozen near the end; that's normal.
Log in with the username and password you chose. Open the Terminal (press the Windows/Super key, type terminal, hit Enter — or use Ctrl + Alt + T). Paste this to bring the system up to date (enter your password when asked — it won't show as you type):
sudo apt update && sudo apt upgrade -yInstall Python, its package tools, and git — everything the labs need:
sudo apt install -y python3 python3-pip python3-venv gitClone the repository, create an isolated Python environment, and install everything the labs need in one go:
git clone https://github.com/hlerias/leapfrog.git
cd leapfrog
python3 -m venv .venv
source .venv/bin/activate
pip install --upgrade pip
pip install -r requirements.txtsource .venv/bin/activate line switches you into the isolated environment — your prompt will start showing (.venv). Run it again whenever you open a new terminal to come back to your workspace.Several labs call a language model — but you don't need a paid API key. The easy, free default is to run a small model right on your VM with Ollama — perfect if your company won't hand out keys. Install it:
curl -fsSL https://ollama.com/install.sh | sh
ollama pull llama3.2Point the labs at your local model. This saves the setting for every future terminal, so you only do it once:
echo 'export LLM_BASE_URL=http://localhost:11434/v1' >> ~/.bashrc
echo 'export LLM_API_KEY=ollama' >> ~/.bashrc
echo 'export LLM_MODEL=llama3.2' >> ~/.bashrc
source ~/.bashrcollama pull llama3.2:1b, then set export LLM_MODEL=llama3.2:1b.They’re already here — the nine labs live in the labs/ folder you just cloned. Run one that needs no API key:
python labs/08_trace.py
python labs/03_eval_gate.pyStart with "Trace one request" or "Watch naive RAG fail" — both run with no API key at all. Then, now that Ollama is set up, try a model lab: python labs/01_first_call.py. You now have a real lab bench. Go break something.
cd demos/invoice-workflow
./run_local.shIf you'd rather edit files in a proper editor than in the terminal, install VS Code inside the VM:
sudo snap install code --classicpip or a model download fails: check the VM has internet (open a website in Firefox), then re-run the command.