Watch retrieval think — every chunk gets a score
This is the whole corpus: the 8-fact internal wiki of a fictional company, Northwind Robotics. Type any question and the retriever scores every chunk against it, live — matched terms light up gold, and the best chunk gets the gold border. This scoring step happens before the model writes a single word.
Scoring here is honest keyword overlap (with light stemming), normalized by chunk length — the classic BM25 family in miniature. Production systems usually score with embeddings instead; EP 03 shows why.
Answers with receipts — and the courage to say “I don't know”
Now the full pipeline: retrieve the best chunk, answer from it, cite it. Ask about the founding — clean, cited answer. Then ask about the stock price, which is in no document. With the confidence gate off, the pipeline grabs the least-bad chunk and “answers” anyway. Toggle the gate and watch it learn honesty.
Confidence = fraction of your question's content words found in the retrieved chunk. Real systems use a reranker score, but the failure mode is identical.
The paraphrase miss — same question, zero matches
The wiki says “Marta Voss has been the CEO…”. Ask “Who is the CEO?” and retrieval nails it. Ask the same thing as “Who is in charge of the company?” and keyword retrieval finds… the battery chunk — because “charge” matches “charges in 40 minutes”. Flip on semantic expansion to fix it.
Semantic expansion here is a hand-built synonym table (charge→ceo, firm→northwind…). In real systems, embedding vectors play this role — matching by meaning instead of spelling. That's why EP 01's honest keyword scorer is rarely used alone.
Garbage in, gospel out — poison one fact and ask again
RAG makes the model trust the documents more than itself — that's the feature. So what happens when a document is wrong? Ask about revenue on the clean wiki. Then press the poison button (revenue quietly becomes 100× bigger), ask again, and compare the confidence readouts.
The top-k dial — starve it or drown it
How many chunks should you hand the model? The question below needs two facts (battery and price). Drag k: at 1 the answer is missing half; at 2–3 it's complete and lean; at 8 you're paying for support-ticket trivia the model must wade through. The coverage checklist and token bill update live.