CourseRetrieval-Augmented Generation: The Complete Course · Module 2: Document Ingestion and Parsing · part 19 of 95
Part 19 · Module 2: Document Ingestion and Parsing

Lab: Build Hollin's ingestion pipeline end to end

26 min read·13 Oct 2026
Module 2 · Lab · About 75 minutes · Needs: lessons 1 to 5 of this module

What you are building

HOLLIN/INGEST: ONE RUN ON THE 2 OCTOBER SNAPSHOT raw exports 8 systems 20 items access names to groups parse cheapest tier normalise and dedupe 17 records 16 to chunk rejection report: 4 stage, reason, action
The pipeline (blue: your system) turns 20 raw items into 17 typed records (green), and everything it cannot use lands on a rejection report with a reason (red).

Kwame's prototype read whatever it could reach and indexed it whole. In this lab you replace that with hollin/ingest/, the package the rest of the course reads from. It takes the raw exports of Hollin's eight document systems, as they were on 2 October 2026, and does five things in order: capture each item's permissions, parse it with the cheapest parser tier that passes its checks, normalise the text, find copies, and emit one typed DocumentRecord per document with its provenance. Anything it cannot use goes on a rejection report with a stage, a reason and an action. The lessons built each piece in a notebook; here they become four files and a command, python -m hollin.ingest, with tests. No 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.