Chunking bepaalt wat afzonderlijk gevonden kan worden

Documenten worden opgesplitst in logische passages zodat retrieval niet telkens volledige bestanden hoeft op te halen. De chunkgrenzen moeten genoeg context bewaren zonder onnodige ruis mee te nemen.

Chunking bepaalt welke stukken informatie afzonderlijk teruggevonden kunnen worden. Te kleine chunks missen context; te grote chunks bevatten veel ruis en verdringen andere relevante passages uit het contextvenster. De juiste grootte hangt af van het documenttype: een procedure, tabel, contractclausule en producthandleiding hebben niet noodzakelijk dezelfde logische grenzen.

Embeddings maken semantische zoekopdrachten mogelijk

Embeddings representeren tekst numeriek zodat inhoudelijk vergelijkbare passages gevonden kunnen worden, ook wanneer de exacte woorden van de vraag niet in het document staan.

Embeddings zetten tekst om in numerieke representaties waarmee inhoudelijk vergelijkbare passages dicht bij elkaar kunnen liggen. Een vector database of vectorindex kan vervolgens passages zoeken die semantisch op de vraag lijken. Dat is nuttig voor natuurlijke taal, maar exacte identifiers en metadatafilters blijven belangrijk voor precisie en toegangscontrole.

Vector search is maar één deel van retrieval

Metadatafilters, exacte zoektermen, hybride search en reranking kunnen nodig zijn om de meest relevante en toegestane passages uiteindelijk aan het model te geven.

Na retrieval volgt meestal reranking of een andere selectiestap om de beste passages bovenaan te zetten. Daarna krijgt het model alleen de geselecteerde context plus duidelijke instructies over brongebruik en onzekerheid. De kwaliteit van RAG ontstaat dus uit een keten van keuzes; “we gebruiken een vector database” is op zichzelf nog geen kwaliteitsgarantie.

Hoe vertaal je dit naar de praktijk?

In productie wordt vaak hybride retrieval gebruikt. Semantische vector search is goed in betekenis, terwijl keyword search sterk blijft voor exacte termen, nummers en namen. Een query kan bovendien eerst metadatafilters toepassen, bijvoorbeeld alleen documenten van een bepaald product, land, afdeling of versie. Kandidaten uit verschillende zoekmethodes kunnen daarna door een reranker opnieuw worden gesorteerd. Ook de antwoordlaag heeft een duidelijk contract nodig: het model krijgt instructies om broncontext te gebruiken, onzekerheid te melden en waar mogelijk passages te citeren. Kritieke feiten kunnen na generatie opnieuw deterministisch worden gecontroleerd. Daardoor wordt RAG een keten van afzonderlijk testbare componenten: ingest, chunking, index, retrieval, filtering, ranking, contextopbouw, generatie en evaluatie. Een fout kan dan gericht naar de juiste laag worden teruggebracht in plaats van alles als een vaag “AI-probleem” te behandelen.