Definitie
Techniek waarbij een taalmodel eerst relevante documenten ophaalt uit een externe bron en die meeneemt in zijn antwoord. Vermindert hallucinaties en houdt het model actueel zonder hertrainen.
Techniek waarbij een taalmodel eerst relevante documenten ophaalt uit een externe bron en die meeneemt in zijn antwoord. Vermindert hallucinaties en houdt het model actueel zonder hertrainen.
RAG werd populair in 2023 als oplossing voor twee fundamentele problemen van taalmodellen. Een LLM weet alleen wat in zijn trainingsdata stond (vaak een tot twee jaar oud), en het verzint graag dingen als het het antwoord niet zeker weet. RAG pakt beide problemen tegelijk aan.
Het idee is eenvoudig. Voordat het model antwoord geeft, doorzoek je een externe verzameling documenten (bijvoorbeeld de productdocumentatie, een wetboek of de mailbox van een gebruiker) op stukken die relevant lijken. Die stukken plak je in de prompt, samen met de instructie aan het model om antwoord te geven op basis daarvan. Het model heeft daardoor verse, specifieke en verifieerbare context bij elke vraag.
De architectuur is inmiddels de standaard voor zakelijke AI-assistenten. Microsoft Copilot voor SharePoint, Notion AI en vrijwel elke chatbot op een bedrijfswebsite werken zo. De grote uitdagingen zijn de kwaliteit van het zoekproces, het beheer van de bron-collectie (welke documenten worden opgenomen, hoe vaak ververst) en de privacy (welke informatie mag het model wel of niet zien per gebruiker).
RAG voegt kennis toe op het moment van de vraag door documenten op te halen. Fine-tuning past het model zelf aan door het verder te trainen. RAG is sneller, goedkoper en transparanter (je kunt naar de bron verwijzen), fine-tuning is beter als je een specifieke stijl of taal wilt aanleren die niet uit losse documenten te halen is.
In de praktijk ja, omdat het model zijn antwoord baseert op concrete tekst die je hebt aangeleverd. Volledig weg krijg je hallucinaties niet, want het model kan nog steeds verkeerd interpreteren of buiten de gegeven bronnen treden. Goede RAG-systemen tonen daarom altijd de bron bij het antwoord, zodat de gebruiker kan controleren.
Een verzameling documenten, een manier om die om te zetten naar embeddings (vectoren), een vector database om die op te slaan, een retrieval-stap die relevante stukken vindt bij elke vraag, en een LLM dat het antwoord formuleert. Frameworks als LangChain en LlamaIndex bieden deze stappen kant en klaar.
Retrieval is het ophalen van relevante documenten, generation is het genereren van het antwoord. Augmented betekent dat het generatieproces wordt verrijkt met de opgehaalde informatie. De term komt uit een paper van Facebook AI Research uit 2020.