17 projects
Build it to understand it
Reading teaches you the words; building teaches you the job. Each project comes with a brief, an architecture diagram, a milestone checklist that saves your progress, and a clear definition of done.
Building with LLMs
Module 04Working with the OpenAI APIShip crumbkit, a tested Python package and CLI on the OpenAI API for summarisation, translation, tone control, ticket routing and code help, with shared config, retries with backoff and offline tests. Module 04Customer support agentBuild a Crumb support agent that classifies messages, looks up orders in code, retrieves help articles with BM25, drafts cited replies, and escalates to a human whenever it is out of its depth.
Retrieval and RAG
Module 07Exploring embeddingsShip one embedding layer that powers semantic search, recommendations and ticket classification for a bakery, with a measured score for each and a findings report on the vector space behind them. Module 08RAG chatbot over YouTube transcriptsShip a Pinecone-backed chatbot that answers questions about YouTube videos using only what was said, with clickable citations that open each video at the right second. Module 09Enterprise advanced RAGShip a guarded RAG service over a 200-page operations handbook and HR policies, with hybrid search, reranking, cited answers, PII protection and a RAGAS report that proves it works.
Agents
Module 14A Claude Code-like coding agentShip a LangGraph coding agent that explores a repo, makes exact-match edits, runs allowlisted commands in a Docker sandbox, stops only when tests pass, asks before risky actions and compacts its context for long sessions. Module 17Voice-based AI agentYou ship a streaming chained voice agent that holds natural, interruptible conversations in about a second per turn, takes bakery orders through tools with read-back confirmation, and switches toolkits to work as a hands-free voice coding assistant. Module 18AI code reviewer like CodeRabbitShip a GitHub Action that reviews every pull request with RAG over your style guide, structured findings from Claude, validated and deduplicated inline comments, and a cost budget.
Production
Deep learning foundations
Module 27a neural network in TensorFlowBuild the late-delivery classifier three ways in TensorFlow (raw variables with GradientTape, Keras model.fit, and a custom Keras loop), evaluate them honestly and ship a .keras file. Module 27MNIST autoencoderTrain a PyTorch autoencoder on MNIST without labels, visualise its latent space, generate digits from it and use reconstruction error to flag smudged handwriting. Module 29multi-input models for OCRBuild a multi-input PyTorch OCR model that fuses invoice-field images with supplier and device metadata, reads text with a CTC head, adds an auxiliary field-type head, and proves each design choice with ablations.
Portfolio and career
FinaleChatGPT-style chatbot platformBuild and ship a ChatGPT-style assistant with a streaming Streamlit UI, saved conversations, rolling summaries, a ChromaDB knowledge base, web search and long-term memory of each user. FinaleChat with any documentBuild a ChatPDF-style app where every answer cites its page, every quote is verified against the source by code, tables and scans carry honest caveats, and the app says "not in this document" instead of guessing. FinaleAI search engine like PerplexityBuild a conversational search engine that plans its own searches, reads real pages, ranks passages with hybrid search and a reranker, streams answers with inline citations and measures its own faithfulness. FinaleAI web app builder like LovableBuild a prompt-to-app system where planner, coder and reviewer agents ship a working React app, with an offline Docker sandbox, a safe file-system layer, automatic error feedback and a live preview you refine by chatting. FinaleAI interviewer like MercorBuild a voice-based structured interviewer with consent first, rubric scoring in Pydantic backed by verified quotes, consistency checks, counterfactual bias tests and a hiring report where a human always makes the decision.