Project-based, portfolio-first learning
An 8-week, project-based, portfolio-first program on operationalizing Large Language Models (LLMOps). Build a real LLM application, ship it publicly, and walk away with a portfolio piece, not a grade. Add to your calendar and start building
Table of Contents
- How this program works
- Prerequisites
- Week 1: Generative AI Concepts + Dev Environment Setup
- Week 2: Interacting with Large Language Models
- Week 3: Local Large Language Models
- Week 4: Applied Solutions + Extensibility
- Week 5: Retrieval Augmented Generation
- Week 6: Python Web Frameworks for APIs
- Week 7: DevOps Principles + Deploying ML APIs
- Week 8: LLM Platforms + Ship & Finalize
- The Project
- Community
- PROJECT.md — full project guidance
The Project · Self-Assessment Checklist
There's no grading, no enrollment gate, and no required login. Everything you need to complete the program is in this repository.
There are two ways to run through it:
- Rolling (self-paced): Start whenever you want. No meetings, no cohort — you work through the 8 weeks on your own schedule and self-assess your project against the checklist.
- Cohort: Runs alongside a shared start date with a dedicated Discord channel and an end-of-run call where participants demo their projects to each other (peer feedback, not grading).
Each week lists a plain-language objective, supporting resources, and a demo video prompt. The video prompt is worth doing even outside a cohort — it's the habit that turns a week of work into a LinkedIn post and a portfolio entry.
Important
You are not required to watch or read every resource listed. Nothing here is graded. Use the content as support for your project, not as a checklist to complete for its own sake.
Note
Diversity Statement: We share a commitment to diversity and equity, removing barriers to learning so that everyone can participate fully. This program is meant to be useful to people with a wide range of backgrounds, identities, and learning styles, whether you found it through a cohort or on your own on GitHub.
Basic Linux and programming skills. You can complete all project work in either Python or Rust — you don't need both.
Linux
If you need to shore up basic Linux skills: Linux and Bash for Data Engineering · Coursera
Python
- Python Essentials for MLOps – Week 1: Introduction to Python · Coursera
- Python Essentials for MLOps – Week 2: Python Functions and Classes · Coursera
Rust
- LLMOps with Azure · Coursera
- Cloud Machine Learning Engineering and MLOps
- Rust Data Engineering · Coursera
- Cloud Computing Foundations
- Python Essentials for MLOps · Coursera
- Choose the problem your project will solve, and who it's for (see PROJECT.md)
- Choose your programming stack — Python or Rust
- Set up your dev environment and initialize the project repository
- Introduction to Generative AI · Coursera
- Public Speaking
- Developing Effective Technical Communication
- Exploring Cloud Onboarding
- Python Development Environments
- Pytest Master Class · Coursera
- Python Essentials for MLOps – Week 5: Applied Python for MLOps · Coursera
- Rust: Setting up your Rust Development environment · Coursera
Weekly demo video prompt: Discuss your plan for your individual project — what you're building and how you'll pace it over the next 8 weeks — and describe your programming language choice, including its advantages and potential pitfalls. Use the Public Speaking guidelines to deliver a great demo.
- Decide how you'll interact with the SLM/LLM (direct API calls, an SDK, a local server's HTTP endpoint, etc.)
- Experiment with prompts against a model and note the failure modes your application will need to handle (bad output, timeouts, hallucination)
- Sketch the input/output contract your application expects from the model
- Interacting with models · Coursera
- Building robust Generative AI systems · Coursera
- Introduction to MLOps Walkthrough
- MLOps Foundations: Chapter 2 Walkthrough of Practical MLOps
- Practical MLOps, Chapter 1: Introduction to MLOps
- Practical MLOps, Chapter 2: MLOps Foundations
Weekly demo video prompt: Explain some challenges your application will face working with LLM output, and what you'll do to mitigate them.
- Evaluate the local LLMs/SLMs available to you (Llamafile, Ollama, llama.cpp, etc.) against your problem
- Choose the model and serving tool for your project
- Get it running locally and confirm you can call it programmatically from your application's stack
- Beginning Llamafile for Local Large Language Models (LLMs) · Coursera
- Getting Started with Open Source Ecosystem · Coursera
- Foundations of Local Large Language Models · Coursera
Weekly demo video prompt: Describe your evaluation of the local LLMs/SLMs available with Llamafile and which one fits your project best.
- Build the core application logic around the model — input handling, prompt construction, output parsing, error handling
- Identify what plugins or functions would extend your application, and pick one to prototype
- Sketch an architectural overview of your application
- Local LLMOps · Coursera
- AI Pair Programming from CodeWhisperer to Prompt Engineering
- Using Local LLMs from Llamafile to Whisper.cpp · Coursera
- Open Source Platforms for MLOps – Week 2: Introduction to Hugging Face · Coursera
- Open Source Platforms for MLOps – Week 3: Deploying Hugging Face · Coursera
- Open Source Platforms for MLOps – Week 4: Applied Hugging Face · Coursera
- Extending with Functions and Plugins · Coursera
- Applications of LLMs · Coursera
- MLOps Platforms: Amazon SageMaker and Azure ML – Week 1 · Coursera
Weekly demo video prompt: Walk through the architectural overview of your application and its challenges, and explain what plugins or functions would extend it — and what would make that harder in a production environment.
- Decide whether RAG fits your project — not every project needs it
- If it does, implement a basic retrieval pipeline over your document set
- If it doesn't, document why, so the decision shows up in your project's history and demo
Weekly demo video prompt: How would adding RAG to your application change the experience for an end user? Why would you (or wouldn't you) use RAG here?
- Choose a web framework (FastAPI, Flask, or a Rust equivalent) if your interface needs one — skip this if your interface is a CLI
- Wire the framework into your existing application logic
- Expose your application's endpoints and confirm they work end to end
- Introduction to FastAPI Framework · Coursera
- Introduction to Flask Framework · Coursera
- Applied Python for MLOps · Coursera
- Cloud Virtualization, Containers and APIs
Weekly demo video prompt: What are the benefits of the framework you chose, and how will you wire it into your application?
- Containerize the application, without baking the model into the image
- Set up GitHub Actions CI to build the container image on push
- Apply and document basic DevOps and responsible-AI practices for your project
- Responsible Generative AI · Coursera
- Applying DevOps Principles
- MLOps Platforms: Amazon SageMaker and Azure ML – Week 2 · Coursera
- MLOps Platforms: Amazon SageMaker and Azure ML – Week 3 · Coursera
- Introduction to GitHub Actions · Coursera
- Building an End-to-End LLM application in Azure · Coursera
- Operations
Weekly demo video prompt: How are you applying DevOps and responsible AI principles — and automation — to your application? What difficulties came up building the automation, and how will it benefit the project going forward?
- Evaluate what a cloud LLM platform would change about your application, as a point of comparison to your local/self-deployed setup
- Run your project against the self-assessment checklist
- Publish the repository publicly and write a short portfolio/LinkedIn post linking to it
- Introduction to LLMOps with Azure · Coursera
- mlflow-project-best-practices
- MLOps Platforms From Zero: Databricks, MLFlow/MLRun/SKLearn
- Azure Databricks, Pandas, and Opendatasets · Coursera
- MLOps Platforms: Amazon SageMaker and Azure ML – Week 4 · Coursera
- MLOps Platforms: Amazon SageMaker and Azure ML – Week 5 · Coursera
Weekly demo video prompt: How would adding a cloud LLM platform change what your application can do, and what's a drawback of relying on one? Wrap with a short demo of the finished project.
Finish the project: publish the repository, run it against the self-assessment checklist, and write a short portfolio/LinkedIn post pointing at the repo. Rolling learners get a closing email when they hit this week; cohort learners present on the end-of-run call instead of (or in addition to) posting.
The whole program is built around a single project you start in Week 1 and ship in Week 8: an application that solves a real problem using a local or self-deployed LLM/SLM. See PROJECT.md for what that means and how to scope it, and the self-assessment checklist for what "done" looks like.
Important
Do not build a model yourself. Reuse an existing LLM or SLM. Use Mozilla Llamafile as a reference for running one locally, or another local serving tool (Ollama, llama.cpp, etc.) — details in PROJECT.md.
The primary two resources for building an LLM solution on a local API:
- Beginning Llamafile for Local Large Language Models (LLMs) · Coursera
- Getting Started with Open Source Ecosystem · Coursera
- Python MLOps Cookbook
- databricks-zero-to-mlops
- Python Fire · Coursera
- Refactoring a Python script into a library called by Python Click CLI · Coursera
- Container Continuous Delivery
- Functions to Containerized Microservice Continuous Delivery to AWS App Runner with Fast API · Coursera
- mlflow-project-best-practices
- databricks-zero-to-mlops
- Python MLOps Cookbook
- Edge Computer Vision
- GitHub Codespaces
- AWS Academy
- Azure for Students
- Google Qwiklabs
- Practical MLOps
- Pragmatic AI
Optional supplementary readings & media
- AWS Bootcamp
- Python for DevOps · Coursera
- Practical MLOps
- Cloud Computing for Data Analysis
- Pragmatic AI: An Introduction to Cloud-Based Machine Learning
- AWS Training & Certification
- AWS Educate
- AWS Academy
- Google Qwiklabs – Hands-On Cloud Training
- Microsoft Learn
- Applied Computer Vision with Python Lectures
- Learn Python in One Hour · Coursera
- Cloud Computing with Python
- Python for Data Science with Colab and Pandas in One Hour · Coursera
- GCP Cloud Functions
- Azure AutoML
AWS
- AWS Certified Cloud Practitioner Video Course
- Cloud Computing for Data
- AWS in One
- AWS Certified Machine Learning – Specialty video course · Coursera
- AWS Machine Learning · Coursera
- AWS Solutions Architect
GCP
Python
- Data Science, Pandas, and Colab · Coursera
- Python and DevOps · Coursera
- Python Command-line Tools · Coursera
Linux and Systems Engineering
Join the shared PAIML Discord to ask questions, share progress, and post your weekly demos. If you're in a cohort, you'll also get invited to a dedicated channel for your run, alongside the shared server.
