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

Lesson 5: Duplicates, versions and the record every chunk inherits

24 min read·13 Oct 2026
Module 2 · Lesson 5 · About 50 minutes · Needs: Lessons 1 to 4 of this module (content hashes, tombstones, loaders, the rejection list, normalise), basic Python sets and classes

The situation

On 24 September an agent asked the prototype "repair turnaround time". Two of the three results were the same answer: faq-warranty-claim and faq-warranty-claim-copy, copied by hand in a help-centre migration. The third was pol-repairs. The agent got one answer twice, and nothing about the repair centre move, with its 2 extra days, made the list.

Kwame asks for three things before anything is chunked: find copies, keep only the current version of each document, and give every document one typed shape that says where it came from. Hannah adds a fourth: anything left out must be listed, with a reason.

PROTOTYPE TOP 3: "REPAIR TURNAROUND TIME" 1. pol-repairs 2. faq-warranty-claim-copy 3. faq-warranty-claim same text twice centre move notice not in the top 3 its 2 extra days unseen
Two of the prototype's three places (red: failure) held the same answer, so the repair-centre notice (grey) never reached the agent.

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.