Je typt een vraag in. Een halve seconde later rolt er een vloeiend, coherent antwoord uit. Hoe doet een AI-model dat? Wat gebeurt er intern terwijl jij wacht?
Het antwoord ligt in één van de meest invloedrijke architecturen uit de geschiedenis van de informatica: de decoder-only transformer. Dit is de blauwdruk achter GPT-4, Claude, Llama, Gemini en de meeste andere grote taalmodellen die je vandaag de dag tegenkomt.
Op deze pagina leggen we stap voor stap uit hoe deze architectuur werkt — zonder formules, maar wel met precisie.
Nikki Bieleveldt
Meer over Modelarchitecturen: de motor achter moderne AI?
Bekijk de complete gids en alle gerelateerde artikelen.
Bekijk gidsIn 2017 publiceerden onderzoekers van Google een artikel met de inmiddels legendarische titel: Attention Is All You Need. Daarin introduceerden ze de transformer — een architectuur die radicaal afweek van wat er tot dan toe bestond.
Eerdere modellen voor taalverwerking — zoals recurrente netwerken — lazen tekst woord voor woord, in volgorde. Dat werkte, maar had een groot nadeel: het model vergat vroege informatie naarmate de tekst langer werd. Bovendien konden ze niet parallel worden getraind, wat training traag maakte.
De transformer loste dit op met één kernmechanisme: aandacht (attention). In plaats van tekst stap voor stap te verwerken, kan een transformer alle woorden tegelijk bekijken en berekenen welke woorden voor elkaar relevant zijn. Dat maakt het model veel beter in het begrijpen van context — ook over lange afstanden in een tekst.
De originele transformer bestond uit twee delen: een encoder (die invoer begrijpt) en een decoder (die uitvoer genereert). De decoder-only variant laat de encoder weg en houdt alleen de decoder over — sterk vereenvoudigd, maar bijzonder krachtig voor tekstgeneratie.
Een decoder-only model genereert tekst door steeds het volgende woord te voorspellen. Dat klinkt simpel, maar er zit een elegant mechanisme achter.
Stel dat je het model de zin geeft: “De kat zat op de”. Het model kijkt naar al die woorden tegelijk, berekent welk woord het meest waarschijnlijk volgt, en voorspelt — in dit geval waarschijnlijk — “mat” of “bank”. Vervolgens voegt het dat woord toe aan de invoer en herhaalt het proces: nu staat er “De kat zat op de mat”, en het model voorspelt wat daarna komt.
Dit heet autoregressive generatie: het model genereert woord voor woord, waarbij elke nieuwe voorspelling de invoer voor de volgende stap wordt. Een antwoord van honderd woorden vereist honderd van deze stappen.
De kracht zit in de combinatie van twee dingen: het model heeft tijdens training enorme hoeveelheden tekst gezien, en het beschikt over het aandachtsmechanisme om te begrijpen hoe woorden zich tot elkaar verhouden.
Het hart van de transformer is self-attention. Dit is het mechanisme waarmee het model berekent hoe relevant elk woord is voor elk ander woord in de reeks.
Neem de zin: “De bankier die de advocaten vertegenwoordigde, verloor zijn zaak.” Wie verloor zijn zaak? De bankier — niet de advocaten. Voor een mens is dit duidelijk uit de zinsstructuur. Voor een model dat woorden stap voor stap verwerkt, was dit vroeger moeilijk. Self-attention lost dit op: het model berekent voor het woord “zijn” hoe sterk het samenhangt met elk ander woord in de zin, en ontdekt zo dat “zijn” verwijst naar “bankier”.
Bij een decoder-only model werkt aandacht echter anders dan bij een volledige transformer. Er geldt een belangrijke beperking: het model mag alleen kijken naar woorden die eerder in de reeks staan, niet naar woorden die nog komen. Dit heet causale aandacht (causal attention of masked attention).
Die beperking is geen tekortkoming — het is een ontwerpkeuze die generatie mogelijk maakt. Als je het volgende woord wilt voorspellen, mag je de “juiste antwoorden” die nog komen niet alvast zien. Causale aandacht dwingt het model om uitsluitend te redeneren op basis van wat er al staat.
Een transformer bestaat niet uit één aandachtslaag, maar uit tientallen of zelfs honderden lagen gestapeld op elkaar. Elke laag verwerkt de representatie van de tekst en geeft een rijkere, abstractere versie door aan de volgende laag.
Je kunt dit vergelijken met hoe mensen een tekst begrijpen. De eerste keer dat je een zin leest, herken je de losse woorden. Dan begin je de grammaticale structuur te zien. Dan de betekenis van de zin. Dan de toon, de nuance, de implicaties. Elke laag van een transformer doet iets vergelijkbaars: van oppervlakkige patronen naar diepe betekenis.
Grotere modellen hebben meer lagen, meer aandachtshoofden per laag en meer parameters — de interne waarden die bepalen hoe het model informatie verwerkt. GPT-3 heeft 96 lagen en 175 miljard parameters. Dat zijn 175 miljard kleine afstelknoppen, elk afgesteld tijdens training op basis van miljarden woorden tekst.
Een transformer werkt niet met woorden, maar met tokens. Een token is een stukje tekst — soms een heel woord, soms een deel van een woord, soms een leesteken.
Het woord “ongelofelijk” kan worden opgesplitst in meerdere tokens: “on”, “geloof”, “elijk”. Dit is efficiënter dan werken met een woordenboek van alle mogelijke woorden in alle talen, en het stelt het model in staat om ook woorden te verwerken die het nooit eerder heeft gezien — door de betekenis op te bouwen uit de bekende stukjes.
Elk token krijgt een numerieke representatie — een vector — voordat het het netwerk in gaat. Die vectoren bevatten aanvankelijk alleen informatie over het token zelf. Naarmate ze door de lagen van de transformer reizen, worden ze verrijkt met contextuele informatie: het model “weet” nu niet alleen dat het woord “bank” bestaat, maar ook of het hier de financiële instelling of het meubel betreft.
Omdat de transformer alle tokens tegelijk verwerkt in plaats van stap voor stap, heeft het geen ingebakken gevoel voor volgorde. “De hond bijt de man” en “de man bijt de hond” bevatten dezelfde woorden — maar de betekenis is heel anders.
Om volgorde te coderen, voegt een transformer positie-informatie toe aan elke token-representatie. Zo weet het model dat het eerste woord van de zin anders gewogen moet worden dan het vijfde. Vroege modellen gebruikten vaste wiskundige formules voor dit doel; nieuwere modellen leren positie-informatie deels zelf aan tijdens training.
Een decoder-only transformer wordt getraind met een enkelvoudige taak die “next token prediction” heet. Het model krijgt een stuk tekst en moet telkens het volgende token voorspellen. Elke keer dat het fout zit, worden de interne parameters iets bijgesteld — dit proces heet backpropagation.
Dit klinkt simpel, maar de schaal is overweldigend. Grote modellen worden getraind op honderden miljarden tot biljoenen tokens — boeken, websites, wetenschappelijke artikelen, code, gesprekken. Door te leren welk woord waarschijnlijk volgt in alle mogelijke contexten, ontwikkelt het model impliciet begrip van grammatica, feiten, redeneerpatronen en stijl.
Na deze initiële training — ook wel pretraining genoemd — worden modellen vaak verder verfijnd voor specifieke toepassingen. Dit kan via instruction tuning, waarbij het model leert om opdrachten op te volgen, of via reinforcement learning from human feedback (RLHF), waarbij menselijke beoordelaars aangeven welke antwoorden beter zijn.
Een decoder-only model kan niet onbeperkt veel tekst tegelijk verwerken. De hoeveelheid tekst die het model in één keer kan zien, heet het contextvenster (context window). Vroege modellen hadden een contextvenster van een paar duizend tokens — genoeg voor een kort gesprek. Moderne modellen hebben contextvensters van honderdduizenden tokens, waarmee ze lange documenten, boeken of uitgebreide gespreksgeschiedenissen in één keer kunnen verwerken.
Wat er buiten het contextvenster valt, “weet” het model niet — niet omdat de informatie verdwenen is, maar omdat het architectureel buiten bereik is. Dit is een van de redenen waarom lange gesprekken soms inconsistentie tonen: vroege berichten vallen buiten het venster en zijn niet meer zichtbaar voor het model.
De decoder-only architectuur heeft een opmerkelijke eigenschap: het is een architectuur die met één taak — voorspel het volgende token — een enorm breed scala aan taken leert beheersen. Vertalen, samenvatten, redeneren, coderen, vragen beantwoorden — al deze vaardigheden komen voort uit de zelfde basistraining.
Dit maakt de architectuur bijzonder schaalbaar. Meer data, meer parameters, meer rekenkracht — en de prestaties blijven verbeteren. Die observatie, bekend als scaling laws, heeft de afgelopen jaren geleid tot een race naar steeds grotere en capabelere modellen.
De enkelvoud van de architectuur is tegelijk een zwakte. Decoder-only modellen zijn sterk in generatie, maar minder geoptimaliseerd voor taken waarbij je een stuk tekst wilt begrijpen zonder iets te genereren — zoals het snel zoeken in grote documentcollecties. Daarvoor worden encoder-only modellen nog steeds breed ingezet.
De decoder-only transformer is de architectuur achter vrijwel alle grote taalmodellen van vandaag. Hij werkt door tekst token voor token te genereren, waarbij hij via causale aandacht gebruikmaakt van alle voorafgaande tokens. Diepe lagen van aandachtsberekeningen en feedforward-netwerken zorgen ervoor dat het model rijke, contextuele representaties opbouwt. Training op enorme hoeveelheden tekst — met als enige taak het voorspellen van het volgende token — levert modellen op die een verrassend breed spectrum aan vaardigheden beheersen.
Begrijpen hoe dit werkt helpt je om realistischer te zijn over wat deze modellen kunnen en waar ze tekortschieten. Want ook de meest capabele decoder-only modellen zijn uiteindelijk statistische patroonherkenners — briljant, maar niet onfeilbaar.