RAG (Retrieval-Augmented Generation) ist ein Verfahren, bei dem ein Sprachmodell vor der Antwort passende Textstellen aus einer Wissensbasis heraussucht und sie zusammen mit deiner Frage in den Prompt bekommt. Das Modell antwortet dann auf Grundlage dieser Stellen, statt sich nur auf sein Trainingswissen zu verlassen.
Stell dir eine Prüfung mit offenem Buch vor. Ohne RAG muss das Modell alles aus dem Gedächtnis beantworten. Mit RAG darf es vorher im richtigen Ordner nachschlagen. Fragst du den Support-Bot eines Shops „Wie lange gilt die Garantie?“, sucht er zuerst den passenden Absatz in den Garantiebedingungen und formuliert daraus die Antwort, samt Hinweis, wo sie steht.
Hier erfährst du, wie das technisch abläuft, was es im Vergleich zu einem riesigen Prompt kostet, wo RAG scheitert und wann du besser zu Fine-Tuning oder einem großen Kontextfenster greifst.
1. Warum es RAG überhaupt braucht
Ein Sprachmodell weiß nur, was in seinen Trainingsdaten stand. Das hat zwei Folgen.
- Es kennt deine Daten nicht. Interne Handbücher, Verträge, Kundentickets oder deine Preisliste waren nie Teil des Trainings.
- Sein Wissen endet an einem Stichtag. Was danach passiert ist, kennt es nicht. Mehr dazu im Eintrag zum Knowledge Cutoff Date.
Fragst du trotzdem danach, füllt das Modell die Lücke oft mit etwas, das plausibel klingt, aber nicht stimmt. Das nennt man Halluzination. RAG setzt genau hier an. Es gibt dem Modell das fehlende Material, bevor es antwortet. Den Begriff geprägt hat 2020 ein Forschungsteam um Patrick Lewis von Meta AI, UCL und NYU.
2. Wie RAG funktioniert
Ein RAG-System besteht aus zwei Teilen. Der erste läuft einmal vorab, der zweite bei jeder Frage.
2.1 Vorab: Wissen aufbereiten
Die Dokumente werden in Abschnitte geteilt, oft einige hundert Wörter lang. Für jeden Abschnitt berechnet ein Embedding-Modell einen Zahlenvektor, der seine Bedeutung beschreibt. Texte mit ähnlichem Inhalt landen dabei nah beieinander, auch wenn sie andere Wörter verwenden. „Rückgabe“ und „Umtausch“ liegen also nah zusammen, „Rückgabe“ und „Rechnungsadresse“ weit auseinander. Die Vektoren kommen in eine Vektordatenbank oder einen Suchindex.
2.2 Bei jeder Frage: suchen, anreichern, antworten
- Retrieval: Die Frage wird ebenfalls in einen Vektor umgerechnet. Die Suche liefert die Abschnitte, die ihr am ähnlichsten sind. Viele Systeme kombinieren das mit einer klassischen Stichwortsuche, damit Produktnummern oder Eigennamen nicht verloren gehen.
- Augmentation: Die besten Treffer werden zusammen mit der Frage in den Prompt geschrieben, meist mit der Anweisung, nur diese Quellen zu verwenden.
- Generation: Das Sprachmodell formuliert die Antwort und verweist im Idealfall auf die Abschnitte, aus denen sie stammt.
Wichtig: Das Modell selbst wird dabei nicht verändert. RAG ändert nur, was im Prompt steht. Deshalb kannst du die Wissensbasis jederzeit aktualisieren, ohne irgendetwas neu zu trainieren.
3. Rechenbeispiel: eine Wissensbasis mit 3.000 Seiten
Nehmen wir ein mittelgroßes Unternehmen mit 3.000 Seiten an Handbüchern, Richtlinien und FAQ. Mit den Annahmen aus dem Eintrag zum Context Window sind das rund 2.300.000 Token.
Von den 343 Modellen in unserem Verzeichnis haben nur 2 ein Kontextfenster, in das diese Menge überhaupt hineinpasst. Mit RAG schickst du dagegen pro Frage nur die 5 besten Abschnitte mit je etwa 300 Wörtern. Das sind rund 2.600 Token, also etwa 0,1 % der Wissensbasis.
- Eingabe-Token je Frage
- 2.300.000
- Eingabekosten je Frage
- 4,60 $
- Eingabe-Token je Frage
- 2.600
- Eingabekosten je Frage
- 0,0052 $
Gerechnet ist mit dem Eingabepreis von Claude Sonnet 5.5, die Kosten für die Antwort kommen jeweils dazu. Für den Preis einer einzigen Frage mit der kompletten Wissensbasis bekommst du mit RAG rund 885 Antworten. Prompt-Caching würde die erste Variante günstiger machen, löst aber das Platzproblem nicht.
So sieht der Prompt aus, den das Modell am Ende tatsächlich bekommt. Das Beispiel ist konstruiert und stammt nicht aus einem bestimmten System:
Beantworte die Frage nur mit Hilfe der folgenden Auszüge.
Wenn die Antwort nicht darin steht, sag das.
Nenne am Ende die Quelle in eckigen Klammern.
[Garantiebedingungen, Abschnitt 3.1]
Auf alle Geräte gewähren wir 24 Monate Garantie ab Kaufdatum.
Akkus sind für 12 Monate abgedeckt.
[FAQ, Rückgabe]
Unbenutzte Ware kannst du innerhalb von 30 Tagen zurückgeben.
Frage: Wie lange gilt die Garantie auf den Akku meines Geräts?Beispielhafte Antwort:
Für den Akku gilt eine Garantie von 12 Monaten ab Kaufdatum.
Das übrige Gerät ist 24 Monate abgedeckt. [Garantiebedingungen, Abschnitt 3.1]Die Anweisung „Wenn die Antwort nicht darin steht, sag das“ ist kein Detail. Ohne sie greift das Modell bei fehlenden Treffern gern auf sein eigenes Wissen zurück und mischt es unbemerkt unter.
4. RAG, Fine-Tuning oder großer Kontext?
Die drei Wege lösen unterschiedliche Probleme. Die Tabelle hilft bei der Entscheidung:
- Gut für
- Große oder sich oft ändernde Wissensbestände, Antworten mit Quellenangabe, Zugriffsrechte pro Dokument
- Schwach bei
- Fragen, die das ganze Material auf einmal brauchen, etwa „Fasse alle Verträge zusammen“
- Gut für
- Wenige Dokumente, die komplett gelesen werden müssen, schnelle Prototypen
- Schwach bei
- Große Mengen, hohe Kosten pro Frage, nachlassende Genauigkeit in sehr langen Prompts
- Gut für
- Stil, Tonfall, feste Formate, wiederkehrende Aufgaben
- Schwach bei
- Neue Fakten verlässlich einspeichern und aktuell halten
- Gut für
- Aktuelle, öffentliche Informationen
- Schwach bei
- Interne Daten und Quellen mit schwankender Qualität
In der Praxis kombinieren viele Systeme die Wege. Ein feinjustiertes Modell liefert den gewünschten Ton, RAG die Fakten. Wann sich der Aufwand des Nachtrainierens lohnt, steht im Eintrag zum Fine-Tuning.
5. Wo RAG scheitert
RAG klingt nach einer einfachen Lösung gegen falsche Antworten. Das Problem ist:
Die Antwort kann nur so gut sein wie die Suche davor. Ein Team um Scott Barnett hat drei RAG-Projekte ausgewertet und sieben typische Fehlerquellen beschrieben. Die wichtigsten davon:
- Die Suche findet die richtige Stelle nicht. Dann antwortet das Modell auf Basis falscher oder gar keiner Treffer. Das passiert etwa, wenn die Frage andere Begriffe verwendet als das Dokument.
- Die Stelle ist da, aber zerschnitten. Steht die Ausnahme zur Regel im nächsten Abschnitt, sieht das Modell nur die halbe Wahrheit.
- Das Modell nutzt die Treffer nicht richtig. Es übersieht die entscheidende Zeile, mischt eigenes Wissen hinein oder zieht falsche Schlüsse.
- Die Dokumente sind veraltet oder widersprechen sich. Liegen zwei Fassungen einer Richtlinie im Index, findet die Suche womöglich die alte.
Wie groß der Effekt sein kann, zeigt eine präregistrierte Stanford-Studie von 2024. Anbieter juristischer Recherche-Tools hatten mit RAG geworben und teils „halluzinationsfreie“ Zitate versprochen. Im Test halluzinierten die Tools von LexisNexis und Thomson Reuters trotzdem bei 17 bis 33 % der Testanfragen. Das war weniger als bei einem allgemeinen Chatbot, aber weit entfernt von null.
Dazu kommt ein Sicherheitsrisiko. Was in deiner Wissensbasis steht, landet direkt im Prompt. Enthält ein Dokument oder eine Webseite versteckte Anweisungen, kann das Modell sie befolgen. Das nennt man Prompt Injection.
6. Was heißt das für dich?
- Prüfe erst, ob du RAG brauchst. Passen deine Dokumente bequem ins Kontextfenster, lade sie einfach hoch. Das ist einfacher und oft genauer. Wie viel hineinpasst, zeigt dir der Token-Zähler.
- Nutze fertige Lösungen, bevor du selbst baust. Projektordner in Chatbots und die Datei-Suche, die OpenAI und Google in ihren APIs anbieten, decken viele Fälle ab, ohne dass du eine Vektordatenbank betreiben musst.
- Halte die Wissensbasis sauber. Lösche alte Fassungen, gib Dokumenten klare Titel und teile sie an sinnvollen Stellen, etwa an Überschriften.
- Verlange Quellenangaben. Lass das Modell jede Aussage mit dem Abschnitt belegen, aus dem sie stammt, und prüfe Stichproben.
- Teste mit echten Fragen. Sammle 20 bis 50 typische Fragen mit bekannter Antwort und prüfe, ob die Suche die richtigen Stellen findet. Erst dann lohnt es sich, am Prompt zu feilen.
- Erlaube „weiß ich nicht“. Schreib in den System-Prompt, dass das Modell fehlende Informationen zugeben soll, statt zu raten.
