# Contextvenster optimaal benutten [[TOC]] ## Wat is het contextvenster? Het contextvenster (context window) is de maximale hoeveelheid tekst die een taalmodel tegelijk kan verwerken, uitgedrukt in tokens. Alles buiten dit venster is onzichtbaar voor het model. Een token is ruwweg 0,75 woord in het Nederlands. Een contextvenster van 128.000 tokens kan dus ruwweg 96.000 woorden bevatten, wat overeenkomt met een boek van gemiddelde lengte. Moderne frontier-modellen hebben grote contextvensters. Een stand van zaken begin 2026: | Model | Contextvenster | | --- | --- | | Gemini 2.5 Pro | 1.048.576 tokens (met 2 miljoen aangekondigd) | | Claude Opus 4.7 / Sonnet 4.6 | 1.000.000 tokens | | GPT-5.5 | 1.000.000 tokens (in de API) | Modelnamen en limieten veranderen snel. Controleer altijd de actuele documentatie van je provider, want bovenstaande cijfers verschuiven per release. Grotere vensters zijn niet per se beter. De kwaliteit van verwerking kan afnemen naarmate het venster voller raakt. ## Het "lost in the middle" probleem Onderzoek heeft aangetoond dat taalmodellen informatie die in het midden van een lang contextvenster staat, slechter verwerken dan informatie aan het begin en het einde. Dit wordt het "lost in the middle" effect genoemd. In experimenten waarbij modellen een antwoord moesten vinden in een lange reeks documenten, presteerden ze het best als het relevante document aan het begin of het einde stond, en het slechtst als het in het midden stond. Recente modellen zijn hierin verbeterd. Sommige geven een hoge recall op zeer lange context, maar de basisregel blijft staan: vertrouw niet blind op perfecte verwerking van het midden van een vol venster. :::info title="Praktische implicatie" Zet je meest kritieke instructies aan het begin van je prompt (de system-instructie) en herhaal de kern aan het einde van je gebruikersbericht. Verberg nooit cruciale informatie in het midden van een lange context. ::: ## Strategisch gebruik van het contextvenster **Principe 1: meest relevante informatie eerst.** Zet de taakbeschrijving, de system-instructie en de meest kritieke context aan het begin. Dit is de veiligste positie. **Principe 2: laatste instructie vlak voor de output.** De instructie vlak voor het antwoord heeft de meeste directe invloed. Eindig je prompt met een scherpe, duidelijke opdracht. **Principe 3: comprimeer onnodige context.** Lange context is niet altijd beter. Samenvattingen van eerdere gesprekken kosten minder tokens dan het volledige transcript en werken vaak even goed. **Principe 4: selecteer relevante informatie.** Bij RAG-systemen (retrieval-augmented generation) geef je niet alle gevonden documenten mee, maar alleen de meest relevante. Te veel ruis in de context verlaagt de kwaliteit. :::howto title="Zo benut je het contextvenster effectief" 1. **Reken je tokengebruik uit.** Gebruik een tokenizer om te schatten hoeveel tokens je prompt kost. 2. **Prioriteer de plaatsing.** Begin en einde zijn de sterkste posities. Gebruik die voor kritieke informatie. 3. **Comprimeer oude context.** Samenvatten van eerdere berichten bespaart tokens en vermindert ruis. 4. **Test met kortere context.** Soms werkt een scherpere, kortere prompt beter dan alles erin gooien. 5. **Gebruik chunking bij lange documenten.** Verwerk lange documenten in stukken van beheersbare grootte. ::: ## Context beheren in lange gesprekken Bij lange chatgesprekken groeit de context snel. Na tientallen berichten is je contextvenster voor het grootste deel gevuld met gesprekshistorie. Veelgebruikte strategieën: - **Rolling window:** verwijder de oudste berichten als de context vol raakt. Simpel, maar je verliest vroege context. - **Samenvatting:** laat het model periodiek de besproken punten samenvatten en vervang de uitgebreide geschiedenis door die samenvatting. - **Selectief bijhouden:** bewaar alleen de meest relevante berichten, niet alles. - **Memory-systemen:** moderne agent-frameworks bewaren kerninformatie in een extern geheugen dat per query wordt opgehaald. Dit schaalt beter dan alles in de context stoppen. ## Token-economie Elk token kost geld bij API-gebruik en vertraagt de respons. Efficiënt tokengebruik is zowel een kwaliteits- als een kostenvraagstuk. Tokens besparen aan de invoerkant: - Verwijder onnodige herhaling in prompts. - Gebruik kortere formuleringen waar dat kan. - Schrap overbodige beleefdheid, zoals "Als je zo vriendelijk zou willen zijn om...". - Gebruik vaste afkortingen voor termen die je vaak herhaalt. Outputtokens beheersen: - Geef een maximale lengte op, bijvoorbeeld "Antwoord in maximaal 100 woorden." - Vraag om beknopte antwoorden, bijvoorbeeld "Geef een directe, beknopte reactie." - Gebruik gestructureerde output om verbose uitleg te vermijden. :::warning title="Grote context kost geld" Erg grote contextvensters zijn duur. Een aanroep van bijna een miljoen tokens kost veel meer dan een aanroep met 10.000 tokens, en duurt langer. Gebruik grote context alleen als de taak dat echt vereist. ::: ## Contextvenster en nauwkeurigheid Een vollere context verhoogt niet alleen de kosten, maar kan ook de kwaliteit verlagen. Het model moet meer informatie verwerken, wat de kans op irrelevante of inconsistente output vergroot. Testen laat vaak zien dat een scherpere, kortere prompt met alleen de meest relevante informatie betere resultaten geeft dan een prompt die alles bevat "voor het geval dat". :::tip title="Begin klein en bouw op" Start met de kleinste prompt die de taak kan oplossen en voeg pas context toe als de output dat nodig heeft. Zo houd je kwaliteit, kosten en snelheid onder controle. ::: :::faq ### Hoe meet ik hoeveel tokens mijn prompt gebruikt? Gebruik de tokenizer van je provider. OpenAI biedt een online tokenizer en de `tiktoken`-bibliotheek voor code. Anthropic biedt een count-tokens API-endpoint, en bij Gemini kun je `countTokens` aanroepen voordat je de prompt verstuurt. ### Wat gebeurt er als ik de contextlimiet overschrijd? De API geeft een fout of kapt de input af, afhankelijk van de provider. Zorg altijd voor validatie en foutafhandeling in je context-gerelateerde code. ### Is meer context altijd beter? Nee. Meer context kost meer tokens, vertraagt de respons en kan de kwaliteit verlagen door het "lost in the middle" effect. Gebruik de hoeveelheid context die de taak daadwerkelijk vereist. ### Hoe werkt context bij multi-turn gesprekken? De volledige gesprekshistorie wordt bij elke beurt opnieuw naar het model gestuurd. Het model heeft geen intern geheugen; alles wordt elke keer opnieuw in de context gezet. Daarom is context-management voor lange gesprekken essentieel. ### Heb ik bij een venster van een miljoen tokens nog wel compressie nodig? Ja. Een groot venster betekent niet dat je het moet vullen. Onnodig lange context verhoogt de kosten, vertraagt de respons en kan de nauwkeurigheid verlagen. Comprimeer en selecteer ook bij ruime vensters. ::: Het contextvenster is je werkgeheugen met een vaste capaciteit. Gebruik het strategisch: prioriteer kritieke informatie, comprimeer onnodige context en besef dat de plaatsing van informatie de verwerking beïnvloedt.