CourseRetrieval-Augmented Generation: The Complete Course · Module 5: Vector Stores and Indexing · part 40 of 95
Part 40 · Module 5: Vector Stores and Indexing

Lab: A filtered, swappable store kept in sync

43 min read·13 Oct 2026
Module 5 · Lab · About 75 minutes · Needs: lessons 1 to 4 of this module, and the Module 4 lab (or the cells in Step 1)

What you are building

HOLLIN/STORES/, END TO END source docs + batch sync.py rows, hashes green index Chroma or FAISS gate 4 checks pointer -> green Retriever base.py interface filters.py access_filter, fail closed Lucy: her own £42, never SB-114
The lab's piece: sync builds a green index from the source (blue, the system), a gate (amber) checks it before the pointer moves (green), and every search goes through filters that fail closed.

On Friday 9 October Lucy Hart at Brook Street Repairs asks "how much does Hollin pay for an hour of warranty labour" and "k50 wont pair". The first must find her own agreement, never Calder Fix's; the second must not return SB-114, withdrawn the day before. hollin/stores/ makes both true: one interface over Chroma and FAISS, filters built on the server that refuse when they cannot be built, and a sync job that builds the 8 October state into a green index, gates it and moves one pointer. Tests and a recall check prove it. No language model is called.

The rest of this course is yours to keep

This course is bought on its own, once, and stays readable afterwards, including the parts added to it later.