Archiefkasten vol gekleurde ordners en mappen, het soort documentenverzameling dat een RAG-systeem doorzoekt.
Uitgelegd10 juli · 12:067 min leestijd

Wat is RAG? Antwoorden uit je eigen documenten

Je hoeft geen model te hertrainen om een AI je documenten te laten kennen. RAG zoekt bij je vraag de juiste stukken op en geeft ze mee. Zie hoe grounding werkt, en waar het alsnog misgaat.

Wat je leert

Je kunt uitleggen wat RAG is en in drie stappen navertellen hoe het een antwoord grondt in je eigen documenten zonder het model te hertrainen, en je weet wanneer je RAG kiest boven fine-tunen en waar het alsnog misgaat.

Verdieping ~7 minRetrieval & RAG

Handig vooraf: Embeddings, Context

Volg de interactieve lesDoe het zelf, stap voor stap, met een kennischeck om te zien of het zit.

Je denkt waarschijnlijk dat je een AI opnieuw moet trainen om hem jouw documenten te laten kennen. Of net het omgekeerde: dat de bot bij elke vraag je hele kennisbank van voor naar achter doorleest. Geen van beide klopt. Wat er echt gebeurt is simpeler en veel bruikbaarder: het systeem zoekt vlak voor je vraag de paar relevante bladzijden op, legt die naast je vraag, en het model antwoordt daaruit. De gewichten van het model veranderen niet, en het leest nooit alles.

Neem een concreet geval. Je vraagt de bedrijfsbot: "Wat is ons beleid voor ouderschapsverlof?" Het onderliggende model, GPT of Claude, kent jouw interne HR-map niet. Zonder hulp weet het het niet, of het verzint een plausibel klinkend antwoord. Nu met de opzoek-stap erbij: het systeem pakt uit je HR-documenten de paar stukken die het dichtst bij je vraag liggen, vindt de verlof-paragraaf, plakt die in de prompt, en het model antwoordt uit je echte beleidstekst, met een verwijzing naar het bronbestand. Zelfde model, nu gegrond in jouw kennis.

Voor je hier een naam op plakt: kies zelf. Je wilt dat die bot betrouwbaar antwoordt uit je actuele HR-documenten, en morgen uit de bijgewerkte versie. Welke aanpak werkt?

Je bot moet antwoorden uit je actuele documenten. Wat kies je?

Je wilt dat de bot betrouwbaar antwoordt uit je HR-documenten, en morgen uit de bijgewerkte versie. Welke aanpak werkt?

De middelste optie, opzoeken en meegeven, is de enige die met "actueel" en "morgen bijgewerkt" overweg kan. Dat is RAG. Kijk wat er stap voor stap gebeurt zodra je vraag binnenkomt.

RAG staat voor Retrieval-Augmented Generation. Het is een techniek waarbij een taalmodel zijn antwoord baseert op tekst die er vlak voor je vraag bij wordt gezocht. Bij je vraag haalt het systeem de meest relevante stukken uit een externe bron, jouw documenten, en plakt die in de prompt; het model genereert het antwoord uit die aangereikte tekst. De gewichten van het model veranderen niet. De naam en het idee komen uit een paper van Lewis en collega's uit 2020, die een taalmodel koppelden aan een doorzoekbare index.

De pijplijn heeft drie stappen, en je ziet ze terug in het diagram. Retrieve: je vraag wordt omgezet in een vector en het systeem zoekt de dichtstbijzijnde stukken. Augment: die stukken worden in de prompt geplakt als extra context. Generate: het model voorspelt daaruit zijn antwoord.

Kies je diepte

Stel je een open-boek-tentamen voor. Je leert niet het hele boek uit je hoofd, dat zou trainen zijn. Je slaat bij elke vraag razendsnel de juiste bladzijde op en schrijft je antwoord daaruit over. RAG doet dat voor een AI: niet alles onthouden, maar op het juiste moment de juiste pagina erbij pakken.

Waarom knipt zo'n systeem je documenten eerst in stukjes?

Een model kan niet je hele archief in één prompt proppen, en dat zou het ook niet moeten willen. Daarom worden je documenten vooraf in stukken geknipt, chunks, en wordt elk stuk apart omgezet in een vector die betekenis vastlegt als een plek in een ruimte. Die vectoren gaan in een vector-database. Bij je vraag wordt alleen jouw vraag geëmbed, en het systeem zoekt de dichtstbijzijnde buren: nearest-neighbor-zoeken over al die opgeslagen stukken. Niet je hele kennisbank doorlezen dus, maar razendsnel de paar dichtstbijzijnde stukken vinden.

Die gevonden stukken zijn daarna gewoon tekst die in het contextvenster van het model meegaat, als tokens vóór je vraag. Hoe je knipt doet er wel toe. Knip je te grof, dan sleep je ruis en overbodige tokens mee; knip je te fijn, dan mist een stuk de context om te snappen waar het over gaat. Dat afstellen is het echte werk als je zoiets zelf bouwt, en het is precies waar de praktische keuzes bij een RAG-chatbot op je eigen data over gaan.

Dit is ook meteen waarom RAG vaak het juiste gereedschap is en fine-tunen niet. Fine-tunen stuurt vooral hoe een model klinkt en zich gedraagt, terwijl RAG externe data in de werkstroom van het model brengt. Voor stijl, toon en vorm past fine-tunen; voor feiten die veranderen en die je wilt kunnen bijwerken en onderbouwen, past RAG. Geen absolute wet, en serieuze systemen combineren de twee gerust, maar dat is de kern van het onderscheid.

Waarom zit een bot met RAG er soms alsnog naast?

Omdat grounding hallucinaties terugdringt, niet wegneemt. Door het model de echte brontekst te geven kan het citeren in plaats van gokken, en je kunt de bron tonen zodat de lezer controleert. In een test op het genereren van workflows liep het aandeel verzonnen stappen en tabellen op tot 21 procent zonder retrieval, en zakte het met RAG naar onder de 7,5 procent voor stappen. Fors minder, maar niet nul: die rest blijft staan.

Want het model heeft geen onafhankelijke lijn naar de waarheid; het werkt met wat je meegeeft. Haalt de retrieval het verkeerde stuk op, of staat het antwoord simpelweg niet in je documenten, dan kan het model alsnog een plausibele fout produceren, precies het mechanisme achter een hallucinatie. En zelfs als het juiste stuk wél is opgehaald, is het nog niet gered: taalmodellen gebruiken informatie in het midden van een lange prompt aantoonbaar slechter dan aan het begin of het eind. Slechte of ontbrekende bronnen geven slechte antwoorden; goede retrieval over schone documenten geeft goede.

Aandeel verzonnen onderdelen (stappen en tabellen) zonder en met RAG in een test op workflow-generatie (bron: Bechard en Marquez Ayala, ServiceNow, 2024)

Haal het even terug voor je verder gaat.

Snap je RAG? Drie checks.

Verandert RAG de gewichten van het taalmodel?

Dat is de hele truc: je maakt het model niet slimmer en je stopt er niet je halve bedrijf in. Je zet er een goede opzoek-stap voor, zodat het op het moment van de vraag de juiste bladzijde in handen heeft. Zodra je RAG zo bekijkt, snap je meteen waarom zo'n bot soms feilloos jouw beleid citeert met bron erbij, en soms zelfverzekerd het verkeerde stuk navertelt.

Veelgestelde vragen

Alisina Nawabi
Geschreven doorAlisina Nawabi

AI Product Engineer & Solutions Architect

Antwoord uit je eigen archief?

Stel je eigen documenten een vraag en krijg antwoord met bron: die retrieval- en RAG-laag denk ik met je uit, ontwerp ik en bouw ik end-to-end op je eigen data.

Meer informatie

Dit artikel is geproduceerd samen met het Agent Team. Meer over de redactie.

Jouw leerpad

Elke les staat op zichzelf, maar samen vormen ze een pad. Dit is waar deze les in dat pad zit.

Eerst dit

  • Tekst wordt een punt in een ruimte, en afstand is betekenis. Zo zoekt een machine op bedoeling in plaats van op trefwoord.

    Start de les
  • Het model onthoudt je gesprek niet. Elke beurt stuurt de hele geschiedenis opnieuw mee, en dat bepaalt je kosten, je snelheid en wat het model vergeet.

    Start de les
  • Hallucinatiesterk verwant

    Een model weet niet dat het iets niet weet. Het maakt altijd een plausibel vervolg, en precies daarom verzint het soms dingen.

    Start de les

Hierna

  • Gewone RAG vindt losse pagina’s die op je vraag lijken. Een kennisgraaf kent ook de verbanden, zodat het model redeneert over hoe dingen samenhangen, niet alleen wat erop lijkt.

    Start de les
  • Je hoeft een model bijna nooit te trainen op je eigen kennis. Meestal geef je het de juiste context (RAG), soms fine-tune je de stijl. Weten welke wanneer scheelt maanden en veel geld.

    Start de les
  • De grootste beveiligingsval van AI: als de tekst die je model leest zelf verstopte instructies bevat, en het model ze opvolgt.

    Start de les
  • Werkt je AI echt?sterk verwant

    Hoe weet je of je AI goed genoeg is om live te gaan? Door het te meten met een vaste testset, in plaats van te gokken.

    Start de les

Gerelateerde artikelen

AI-kennisbank bouwen: zonder bron-eigenaar is je kennisbank slechts een snellere gedeelde map
Gids
Uitgebreide gids17 min

13 sep 09:00

AI-kennisbank bouwen: zonder bron-eigenaar is je kennisbank slechts een snellere gedeelde map

Een AI-kennisbank zonder bron-eigenaar is slechts een snellere gedeelde map. Leer hoe je twintig echte vragen koppelt aan vrijgegeven bronnen, eigenaars, rechtenfilters, uitzonderingen en een meetbare vrijgavepoort.

Sierra maakt agentbouw meetbaar met Hyper-τ-Bench
Nieuws
4 min

9 sep 04:30

Sierra maakt agentbouw meetbaar met Hyper-τ-Bench

Sierra maakt met Hyper-τ-Bench zichtbaar of coding-agents echt klantagenten kunnen bouwen. De beste configuratie haalt 23,9 procent, tegenover 82,2 procent voor een expertreferentie op dezelfde evaluaties.

Vals spelen verspreidt zich in 27 minuten door DeepMinds zwerm van 100 AI-agents
Nieuws
6 min

5 sep 16:09

Vals spelen verspreidt zich in 27 minuten door DeepMinds zwerm van 100 AI-agents

Een exploit in de nakijkmachine verspreidde zich in 27 minuten door een zwerm van 100 AI-agents van Google DeepMind. Negen procent ging vals spelen, 24 procent sloeg alarm en 62 procent had niets door.

De enige AI-klus met een einddatum is de kennis die met pensioen meegaat
Inzicht
8 min

31 aug 09:00

De enige AI-klus met een einddatum is de kennis die met pensioen meegaat

Negen van de tien banen die tot 2030 vrijkomen, komen vrij omdat er iemand vertrekt. Toch kiest bijna elk bedrijf zijn eerste AI-project op tijdwinst. Waarom onvervangbaarheid het betere criterium is.

SpaceX rondt overname van Cursor af voor 389 miljoen eigen aandelen
Nieuws
5 min

15 aug 20:08

SpaceX rondt overname van Cursor af voor 389 miljoen eigen aandelen

SpaceX rondde op 14 augustus de overname van Cursor-maker Anysphere af, goed voor 389,3 miljoen eigen aandelen. Wat dat betekent voor de prijs, het modelaanbod en de roadmap van je code-editor.

Onuitgebracht Claude-model verhoogt bewezen ondergrens voor zeta-nulpunten naar 67,2 procent
Nieuws
5 min

12 aug 06:08

Onuitgebracht Claude-model verhoogt bewezen ondergrens voor zeta-nulpunten naar 67,2 procent

Een onuitgebracht Claude-model tilde de bewezen ondergrens voor zeta-nulpunten op de kritieke lijn van 41,6 naar 67,2 procent, volledig nagerekend in Lean. Wat die controleerbare vorm zegt over AI-werk dat je kunt uitbesteden.