Retrieval-Augmented Generation

forkortelse for RAG

Retrieval-augmented generation (RAG) er en teknik, hvor en sprogmodel udvides med en ekstern vidensbase for at forbedre nøjagtigheden og reducere hallucinationer.

Kort fortalt

Kort fortalt: RAG er en metode, der kombinerer en søgemaskine med en sprogmodel, så modellen kan hente relevante oplysninger i stedet for at gætte.

Kategori
teknik
Niveau
øvet

Betydninger

1
  1. 1

    En arkitektur, der kombinerer en retriever (søgning) med en generator (sprogmodel) for at producere svar baseret på hentet kontekst.

    • RAG-modellen henter først relevante dokumenter fra en vektordatabase og genererer derefter svar baseret på dem.Lewis et al., 2020
    • Virksomheder implementerer ofte RAG for at give deres chatbots adgang til interne dokumenter.

Hvornår bruges det

RAG bruges typisk i chatbots og Q&A-systemer, hvor modellen skal besvare spørgsmål baseret på en specifik dokumentdatabase. Det forbedrer faktuel nøjagtighed og giver mulighed for at opdatere viden uden at gen-træne modellen.

Kodeeksempel

import vecstore
import llm

def rag_query(query):
    docs = vecstore.search(query, k=3)
    context = "\n".join(doc.text for doc in docs)
    prompt = f"Baseret på følgende: {context}\nSvar på: {query}"
    return llm.generate(prompt)

Simpel RAG-implementering: først søges i en vektordatabase, derefter genereres svar med kontekst.

Oprindelse

Udtrykket blev introduceret i en 2020-artikel af Lewis et al., der beskrev en hybrid model med retrieval-komponent.

Afledte ord

3

Kilder

1
  • Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks (Lewis et al., 2020)