Vectordatabases: Pinecone, Weaviate en pgvector · Les

Chunkingstrategieën voor RAG

Leer documenten op te splitsen in effectieve chunks voor embedding, zodat uw RAG-systeem precieze en relevante context ophaalt.

Les 4 van 413 stappen

Chunkingstrategieën voor RAG is een gratis Vectordatabases: Pinecone, Weaviate en pgvector-les op CoddyKit. Dit is les 4 van 4. Je kunt 3 lessen uit dit leerpad gratis volledig lezen — daarna ontgrendelt CoddyKit PRO alle lessen, plus praktische oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject Vectordatabases: Pinecone, Weaviate en pgvector. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus Vectordatabases: Pinecone, Weaviate en pgvector bevat in totaal 4 lessen.

Waarom opdelen belangrijk is

Voordat documenten worden ingebed, worden ze opgesplitst in tekstfragmenten. De kwaliteit van die fragmenten bepaalt rechtstreeks de kwaliteit van het ophalen — te grote fragmenten verdunnen de relevantie en te kleine fragmenten verliezen context.

Opdelen in vaste groottes

Bij de eenvoudigste methode wordt tekst elke N tekens of tokens gesplitst. Dit is snel, maar kan zinnen midden in een gedachte afbreken.

def fixed_chunks(text, size=500):
    return [text[i:i+size] for i in range(0, len(text), size)]

Overlappende vensters

Voeg overlap tussen fragmenten toe, zodat context die over een grens heen loopt niet verloren gaat. Een overlap van 10-20% is gebruikelijk.

def overlap_chunks(text, size=500, overlap=100):
    step = size - overlap
    return [text[i:i+size] for i in range(0, len(text), step)]

Splitsen met aandacht voor zinnen

Splits op zinsgrenzen, zodat elk fragment grammaticaal volledig blijft. Dit verbetert de kwaliteit van embeddings meestal ten opzichte van splitsen op willekeurige tekenposities.

import re
sentences = re.split(r'(?<=[.!?])\s+', document_text)

Recursief opdelen

Bij recursief splitsen worden eerst grote scheidingstekens geprobeerd (alinea's) en daarna kleinere (zinnen en woorden), totdat de fragmenten binnen de maximale grootte vallen. Deze methode houdt rekening met de natuurlijke structuur.

Semantisch opdelen

Bij semantisch opdelen worden zinnen gegroepeerd op basis van overeenkomst in betekenis en wordt een nieuw fragment gestart wanneer het onderwerp verandert. Dit is duurder, maar zeer nauwkeurig.

Fragmentgrootte versus model

Stem de fragmentgrootte af op het contextvenster van je embeddingmodel en het promptbudget van je LLM.

  • Kleine fragmenten: nauwkeurig maar versnipperd
  • Grote fragmenten: rijk aan informatie maar ruisgevoelig

Metadata behouden

Sla de bron, pagina en positie op als metadata bij elk fragment, zodat je later bronnen kunt citeren en de context kunt reconstrueren.

chunk = {
  'text': part,
  'source': 'guide.pdf',
  'page': 4,
  'position': idx
}

Bovenliggende en onderliggende fragmenten

Embed kleine onderliggende fragmenten voor nauwkeurige overeenkomsten, maar geef het grotere bovenliggende fragment door aan de LLM voor volledige context. Zo combineer je het beste van beide werelden.

Opdelen evalueren

Test verschillende configuraties voor het opdelen met dezelfde zoekopdrachten en meet het percentage geslaagde resultaten. Er bestaat geen universeel beste methode — meet wat voor jouw gegevens werkt.

Praktische standaardinstellingen

Een goed uitgangspunt:

  • Recursief splitsen
  • Ongeveer 500 tokens per fragment
  • Ongeveer 50-100 tokens overlap
  • Bronmetadata toevoegen

Korte controle

Test je kennis van het opdelen.

Samenvatting

Je hebt geleerd hoe je tekst opdeelt in vaste, overlappende, zinsbewuste, recursieve en semantische fragmenten, en hebt kennisgemaakt met ophalen via bovenliggende en onderliggende fragmenten en met metadata. Goed opdelen vormt de basis voor nauwkeurig ophalen met RAG.

Gratis beginnen

Leer Vectordatabases: Pinecone, Weaviate en pgvector met een AI-tutor — gratis

Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.

Cursussen
12
Lessen
48

Veelgestelde vragen

Is de les “Chunkingstrategieën voor RAG” gratis?

Ja — je kunt hier op het web alle 3 lessen van het leerpad Vectordatabases: Pinecone, Weaviate en pgvector, waaronder “Chunkingstrategieën voor RAG”, gratis volledig lezen. Daarna ontgrendelt CoddyKit PRO alle lessen, plus interactieve oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. De cursus Vectordatabases: Pinecone, Weaviate en pgvector bevat in totaal 4 lessen.

Wat leer ik in “Chunkingstrategieën voor RAG”?

Leer documenten op te splitsen in effectieve chunks voor embedding, zodat uw RAG-systeem precieze en relevante context ophaalt. Je oefent met Vectordatabases: Pinecone, Weaviate en pgvector door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.

Heb ik ervaring nodig om met Vectordatabases: Pinecone, Weaviate en pgvector te beginnen?

Ervaring vooraf is niet nodig. Vectordatabases: Pinecone, Weaviate en pgvector op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 4 van 4.

Hoe lang duurt de les “Chunkingstrategieën voor RAG”?

De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.

Kan ik code schrijven en uitvoeren in deze les over Vectordatabases: Pinecone, Weaviate en pgvector?

Ja. Elke les over Vectordatabases: Pinecone, Weaviate en pgvector bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.

Alle lessen in deze cursus

  1. Overzicht van de RAG-systeemarchitectuur
  2. Integratie met LLM-frameworks
  3. Contextuele informatieretrieval
  4. Chunkingstrategieën voor RAG
← Terug naar Vectordatabases: Pinecone, Weaviate en pgvector