RAG Chunking-strategieën: Splits documenten voor betere retrieval
De meeste RAG-fouten ontstaan door de manier waarop je documenten splitst.
Als je retrieval slecht is, pas dan niet eerst je prompt of je LLM aan. Kijk naar je chunks. Als de juiste informatie wel in je database staat, maar het systeem deze niet kan vinden, dan is je chunking-strategie waarschijnlijk het probleem.
Slechte chunking veroorzaakt drie belangrijke problemen:
• Boundary truncation (Afkapping bij grenzen): Een zin met het antwoord wordt in twee stukken gesplitst. Geen van beide stukken bevat genoeg informatie om een zoekopdracht te matchen. • Contextverwatering (Context dilution): Een grote chunk bevat één relevante zin en tien nutteloze zinnen. De extra tekst verzwakt het semantische signaal. • Ontbrekende metadata: Chunks missen informatie over hun bron of datum, waardoor gefilterd zoeken onmogelijk wordt.
Gebruik deze vier strategieën om je pipeline te verbeteren:
Fixed-size chunking Het beste voor lange, doorlopende teksten zoals rapporten of artikelen. • Gebruik 256 tot 512 tokens. • Stel een overlap van 10% tot 15% in om gesplitste zinnen te voorkomen.
Semantic chunking Het beste voor tekst met een hoge dichtheid, zoals FAQ's of ondersteuningsdocumenten. • Het splitst tekst op basis van onderwerpverschuivingen in plaats van token-aantallen. • Dit houdt volledige ideeën bij elkaar.
Structural chunking Het beste voor technische documentatie, Markdown of HTML. • Het splitst tekst op basis van koppen (H1, H2, H3). • Dit voegt metadata toe, zodat je de retrieval kunt filteren per sectie.
Hierarchical (Parent-Child) chunking Het beste voor productiesystemen die zowel precisie als context nodig hebben. • Maak kleine child chunks (64-128 tokens) voor nauwkeurige vector search. • Koppel deze aan grote parent chunks (512-1024 tokens) voor de LLM om te lezen. • Dit geeft je het beste van beide werelden.
Hoe je de grootte kiest:
• 128–256 tokens: Goed voor het opzoeken van feiten en technische documentatie. • 256–512 tokens: Een goed startpunt voor algemeen gebruik. • 512–1024 tokens: Gebruik voor uitgebreide analytische vragen.
De gouden regel: Test je strategie altijd voordat je live gaat.
Maak een set van 30 tot 50 echte queries. Label de juiste antwoorden. Meet je recall@3. Verander je embedding model pas als je recall boven de 80% ligt.
Optionele leercommunity: https://t.me/GyaanSetuAi
