Small AI projects rebuilt from real production systems, each one measured and runnable in about 15 minutes. The labs belong to the Applied AI Engineering for Software Engineers course, and this repo's Discussions hold the show-and-tell and Q&A for every lab.
Each lab folder stands on its own. Its README is the walkthrough: every command, and what it prints. You need uv and a key for any OpenAI-compatible endpoint.
make check tests the whole repo with no key. make proof LAB=01-structured-output copies a lab to a
scratch folder, replays its README against a real model and stops at the first step that does not
print what the README promises.
| # | Lab | Built on | Status |
|---|---|---|---|
| 1 | Extract Structured Data with LLMs | Ramp matches uploaded receipts to card transactions | ready |
| 2 | Test LLM Features with a Golden Dataset | LinkedIn: the last 15% took four more months | ready |
| 3 | Process a Million Prompts with Batch APIs | Instacart Maple batch LLM platform | ready |
| 4 | Build a PDF RAG Pipeline with Citations | Uber Genie on-call copilot | ready |
| 5 | Measure RAG Accuracy with Recall@k | Uber's golden set over policy PDFs | ready |
| 6 | Stop RAG Hallucinations with an LLM Judge | DoorDash Dasher support guardrail and judge | ready |
| 7 | Build Agentic RAG with LangGraph | Uber enhanced agentic RAG | ready |
| 8 | Build an AI Workflow with Mastra | Shopify Magic writes product descriptions from merchant details | ready |
| 9 | Route Requests with LLM Classification | Zendesk intelligent triage | ready |
| 10 | Build Durable AI Workflows with Temporal | Temporal case studies: Coinbase and Netflix | ready |
| 11 | Build an AI Agent Loop with Tool Calling | Klarna's assistant handled two thirds of support chats | ready |
| 12 | Design Tools for AI Agents with MCP | Shopify Sidekick tool design | ready |
| 13 | Cut Agent Token Costs with Context Engineering | Manus KV-cache hit rate | ready |
| 14 | Add Long-Term Memory to AI Agents with Mem0 | ChatGPT memory and its controls | ready |
| 15 | Build a Deep Research Agent with Subagents | Anthropic's multi-agent research system | ready |
| 16 | Build a Voice AI Agent with Pipecat | SoundHound takes restaurant phone orders | ready |
| 17 | Build a Phone AI Agent with LiveKit | LiveKit behind ChatGPT voice | ready |
| 18 | Read Images with Vision LLMs | Tractable damage appraisal | ready |
| 19 | Score Risk with a Decision Model | Stripe Radar score, thresholds and review | ready |
| 20 | Ship a Remote MCP Server with OAuth | Remote MCP servers from Linear, Sentry and Atlassian | ready |
| 21 | Enforce Document Permissions in RAG with OpenFGA | Glean permission-aware search | ready |
| 22 | Authorize AI Agent Actions with RBAC and ABAC | Block's Goose: read-only and destructive tools | ready |
| 23 | Block Prompt Injection with Guardrails | Zillow Fair Housing Classifier | ready |
| 24 | Redact PII and PHI with Presidio | Clinical scribe products under HIPAA | ready |
| 25 | Control AI Agent Tool Access with an MCP Gateway | Block's curated list of approved MCP servers | ready |
| 26 | Route LLM Calls with an LLM Gateway | RouteLLM and Instacart's AI gateway | ready |
| 27 | Track Prompt Versions with Langfuse | Langfuse and PromptLayer prompt registries | ready |
| 28 | Trace AI Agents with OpenTelemetry | OpenTelemetry GenAI conventions | ready |
| 29 | Gate AI Releases with Evals in CI | Shopify Sidekick evals before release | ready |
| 30 | Govern AI Systems with an Inventory and Audit Log | EU AI Act transparency duties from Aug 2026 | ready |
| 31 | Ship a Streaming AI Agent API with an API Gateway | The chat endpoint behind every in-app assistant | ready |
| 32 | Run Background Coding Agents with Cloud Sandboxes | Ramp Inspect, run on Modal sandboxes | ready |
| 33 | Run AI Agents on Serverless with Durable Functions | AWS Lambda durable functions and Bedrock AgentCore | ready |
| 34 | Fine-Tune a Small LLM with Reviewed Data | Checkr replaced a large model with a tuned small one; Ramp fine-tunes on Modal | ready |
| 35 | Serve Open LLMs with Serverless vLLM | Ramp on Modal | ready |
Open Show and tell and
start the title with the lab's slug in brackets, for example [mcp-gateway] Gateway in front of our Jira server. Include:
- What you built, in one sentence.
- A link to the code, or a screenshot if the code is private.
- One thing that broke and how you fixed it.
- One question you want a reviewer to answer.
Leaders: a playbook, metric charter or upskilling plan counts as a build. Remove company names first.
Ask in Q&A with the lab slug in the title. Mark the reply that solved it as the answer, so the next person finds it.
Use the four points above as the review checklist: answer the question the builder asked, and name one change you would make. Members who review well are invited to be lab captains.
Read CODE_OF_CONDUCT.md. Short version: critique the code, not the person; no recruiting or selling; never post secrets or anything your employer has not cleared.