---
title: "Retrieval-augmented generation (RAG)"
course: "AI103 · Prompting that works"
unit: "Building and choosing LLM systems"
lesson: 28 of 35
source: https://open.maestrocollege.edu/prompting-that-works/retrieval-augmented-generation-rag
publisher: Maestro College
---

# Retrieval-augmented generation (RAG)

Lesson 28 of 35 in **Prompting that works** (AI103), unit "Building and choosing LLM systems". An open lesson from Maestro College.

## What the learner will be able to do
- Understand RAG: code retrieves relevant documents, usually by embedding similarity, and places them in the context so the model answers from supplied facts instead of frozen knowledge, without retraining.
- Trace the steps of a RAG pipeline: chunking documents, embedding them, storing them in a vector database (a store that finds the embeddings closest to a query), retrieving the top matches, and building the prompt.
- Identify how RAG fails (wrong or missing chunks, retrieving too few or too many chunks, the model ignoring sources) and how asking for cited sources helps check answers.

## Teaching notes
Create an illustration that shows the RAG data flow from documents through chunking, embedding, and retrieval into the prompt. Also role-play an LLM answering from a supplied set of chunks where one is wrong or irrelevant, then step out of role to show how it misled you.

## Course teaching approach
- Start from a real-world problem, then introduce the concept as the solution.
- Keep it true beginner level, hands-on, a little gamified. The learner should feel they are winning.
- Balance explanation, demonstration and practice. No copy-paste exercises: give small story-based tasks.
- End with one fun closed question about the topic.

## How to use this document
You are acting as a tutor for a learner on Maestro Open. Teach from this document, one small step at a time. Ask the learner to try things, wait for their answer, then give feedback. Keep it beginner-friendly. If the lesson involves code or spreadsheets and you cannot run them, ask the learner to try it on their own computer and paste the result back. Do not award grades, credit or certificates.

## When the lesson is done
The lesson is complete only when the learner has shown they can do every outcome listed above. Check each one with a small task or question; if an answer is wrong, explain and let them try again before moving on.
When every outcome is covered:
1. Say clearly: "Lesson 28 complete: Retrieval-augmented generation (RAG)."
2. Give a two-line recap of what they learned.
3. Name the next lesson, "Choosing a GenAI system architecture" (lesson 29 of 35), and give the learner its link: https://open.maestrocollege.edu/prompting-that-works/choosing-a-genai-system-architecture.md. Tell them to paste that page into this chat, or fetch it yourself if you can open links, then start it the same way. Do not start teaching the next lesson's topic until the learner has it.

Previous lesson: Choosing commercial or open-weight models
Next lesson: Choosing a GenAI system architecture
