Hvad er RAG (Retrieval-Augmented Generation)?
RAG, retrieval-augmented generation, er en teknik hvor sprogmodellen først henter relevante dokumenter fra en videnskilde og derefter formulerer sit svar ud fra dem i stedet for at gætte ud fra hukommelsen. Flowet er hent, berig, generér. Det gør svarene mere korrekte og kildebelagte, og det er især nyttigt til at stille spørgsmål til virksomhedens egne dokumenter.
RAG står for retrieval-augmented generation, og det er en af de mest nyttige teknikker til at få en sprogmodel til at svare på netop jeres spørgsmål. Idéen er enkel: I stedet for at lade modellen gætte ud fra sin træningshukommelse lader man den først hente relevante dokumenter og derefter svare ud fra dem. Den forskel gør svarene både mere korrekte og mulige at spore til en kilde.
De tre trin: hent, berig, generér
Den bedste måde at forstå RAG på er at følge hvad der sker når et spørgsmål bliver stillet. Det sker i tre trin:
- Hent. Systemet tager spørgsmålet og søger de mest relevante dokumenter, eller tekststykker, frem fra en videnskilde, f.eks. jeres interne dokumenter.
- Berig. De fundne stykker lægges ind i modellens kontekst sammen med det oprindelige spørgsmål. Modellen får altså materialet serveret før den svarer.
- Generér. Modellen formulerer et svar ud fra det hentede materiale, ikke udelukkende ud fra hvad den tilfældigvis husker fra sin træning.
Man kan tænke på det som forskellen mellem at svare på et spørgsmål ud fra hukommelsen og først at slå det op i den rigtige bog. Samme person, men et langt mere pålideligt svar når materialet ligger på bordet.
Derfor mindsker det hallucinationer
Et velkendt problem med sprogmodeller er at de nogle gange “hallucinerer”: De svarer selvsikkert med noget der lyder rimeligt, men er forkert. Det skyldes at en ren model udfylder huller ud fra mønstre, ikke ud fra fakta den kan pege på.
RAG dæmper det af en enkel grund: Modellen svarer ud fra konkrete dokumenter den har fået foran sig. Når svaret bygger på hentet tekst, bliver det både mere korrekt og kildebelagt: I kan vise hvilket dokument svaret kom fra. Det fjerner ikke risikoen helt; hentes de forkerte dokumenter, kan svaret alligevel blive forkert. Men det flytter svaret fra gæt til belæg, og det gør en stor forskel i praksis.
Det typiske anvendelsestilfælde
Den mest almindelige grund til at bygge en RAG-løsning er at kunne stille spørgsmål til virksomhedens egne dokumenter.
| Type indhold | Eksempler på spørgsmål RAG kan svare på |
|---|---|
| Interne retningslinjer | "Hvad gælder for fjernarbejde ifølge vores politik?" |
| Produktinformation | "Hvilket af vores produkter passer til dette behov?" |
| Support og kontrakter | "Hvad siger kontrakten om opsigelsesvarsel?" |
Pointen er at en sprogmodel ikke kender jeres interne data fra sin træning: Den har aldrig set jeres dokumenter. Med RAG hentes det rigtige materiale ind ved hvert enkelt spørgsmål så svarene afspejler netop jeres information og holdes aktuelle når dokumenterne opdateres.
RAG sammenlignet med at finjustere modellen
Et almindeligt opfølgende spørgsmål er hvorfor man ikke i stedet træner viden ind i modellen. Forskellen er praktisk: RAG henter viden ved hvert spørgsmål uden at røre selve modellen, hvilket gør den let at opdatere. Udskifter I dokumenterne, ændres svarene med det samme. Finjustering bager i stedet viden ind i modellen gennem træning, hvilket er tungere at opdatere.
Til materiale der ændres ofte, og til tilfælde hvor svarene skal kunne føres tilbage til en kilde, er RAG som regel det naturlige valg. Mange løsninger kombinerer desuden teknikkerne, men RAG er næsten altid den første I møder når målet er at stille spørgsmål til jeres egne dokumenter.
Hvor RAG kan gå galt
RAG er stærkt, men ikke magisk, og det er nyttigt at vide hvor det har sine svagheder. Hele kvaliteten afhænger af hentningstrinnet: Finder systemet de forkerte dokumenter, bliver svaret forkert, uanset hvor god modellen er. Almindelige svagheder er dårligt struktureret materiale, dokumenter der modsiger hinanden uden at nogen har ryddet op, og spørgsmål der er så vagt formuleret at de rigtige dokumenter ikke kan findes.
Der er også en grænse for hvor meget tekst der kan være i modellens kontekst ved hvert spørgsmål. Derfor deles dokumenterne op i mindre stykker, og hvordan den opdeling laves, påvirker præcisionen. En gennemtænkt RAG-løsning lægger meget arbejde netop her, i at strukturere, rydde op i og dele materialet op, snarere end i selve modellen.
Hvorfor det betyder noget for en køber
For en virksomhed er RAG ofte svaret på spørgsmålet “hvordan får vi AI til at kende vores eget stof uden at sende det hele til en model der er trænet på det?”. Med RAG bliver jeres dokumenter i jeres egen videnskilde og sendes ind stykvis og kontrolleret ved hvert spørgsmål i stedet for at blive bagt permanent ind i en model. Det giver et klarere billede af hvilke data der forlader huset og hvornår, og det er et vigtigt spørgsmål når man skal kunne redegøre for hvor oplysningerne behandles.
RAG gør desuden svarene kildebelagte, hvilket betyder at en medarbejder kan tjekke hvor et svar kom fra, i stedet for at stole blindt på det. Det er ofte forskellen mellem en AI-løsning der må bruges i skarp drift, og en der bliver hængende i pilotfasen.
At bygge en RAG-løsning der henter det rigtige materiale og svarer pålideligt, er et håndværk, og kvaliteten af hentningstrinnet afgør meget. Vil du vide hvordan det kunne se ud for jeres dokumenter, kan du læse mere om vores AI-ydelser eller kontakte os med en beskrivelse af hvilket indhold I vil kunne stille spørgsmål til.
Ofte stillede spørgsmål
Hvad står RAG for?
RAG står for retrieval-augmented generation, cirka "generering forstærket med hentning". Navnet beskriver præcis hvad teknikken gør: Den kombinerer et hentningstrin, hvor relevante dokumenter findes frem, med et genereringstrin, hvor modellen skriver et svar baseret på de hentede dokumenter.
Hvordan fungerer RAG trin for trin?
I tre trin. Hent: Systemet søger de dokumenter frem der er relevante for spørgsmålet. Berig: De fundne tekststykker lægges ind i modellens kontekst sammen med spørgsmålet. Generér: Modellen formulerer et svar ud fra netop det materiale i stedet for udelukkende at forlade sig på sin træningshukommelse.
Hvorfor mindsker RAG hallucinationer?
Fordi modellen svarer ud fra konkrete dokumenter den har fået foran sig, ikke ud fra en vag hukommelse. Når svaret bygger på hentet tekst, bliver det både mere korrekt og muligt at spore tilbage til en kilde. Det fjerner ikke risikoen helt, men mindsker den betydeligt.
Hvad er et typisk anvendelsestilfælde for RAG?
At stille spørgsmål til virksomhedens egne dokumenter: interne retningslinjer, produktinformation, kontrakter, supportartikler. Modellen kan ikke kende jeres interne data fra sin træning, men med RAG hentes de rigtige dokumenter ind ved hvert spørgsmål så svarene afspejler netop jeres information.
Hvad er forskellen på RAG og at finjustere en model?
RAG henter viden ind ved hvert spørgsmål uden at ændre modellen, hvilket gør den let at opdatere: Udskift dokumenterne, så ændres svarene. Finjustering bager viden ind i selve modellen gennem træning. RAG passer når materialet ændres ofte og svarene skal kunne føres tilbage til en kilde.