TL;DR
Das Wichtigste zuerst
- RAG adressiert drei Probleme gleichzeitig: Das Modell kennt eure internen Daten nicht, das Kontextfenster ist zu klein für den gesamten Wissensbestand, und ohne Belege erfindet ein Modell plausible Antworten.
- Die Pipeline hat acht Stufen — Ingestion, Chunking, Embedding, Indexierung, Query-Verarbeitung, Retrieval, Re-Ranking, Generierung. Jede Stufe kann die Antwortqualität zerstören, unabhängig vom eingesetzten Modell.
- Die häufigste Fehlerursache ist nicht das Modell, sondern das Chunking: zu große, zu kleine oder strukturblinde Textschnipsel liefern Kontext, aus dem keine korrekte Antwort ableitbar ist.
- Reine Vektorsuche wird überschätzt. Hybrid-Suche aus BM25-Volltextsuche und Embeddings ist bei Produktnummern, Fachbegriffen und Eigennamen in der Regel robuster.
- Berechtigungen gehören in den Retrieval-Schritt, nicht ins Prompt. Ein Modell, das ein Dokument im Kontext hat, wird dessen Inhalt früher oder später wiedergeben.
- Ohne Evaluationsdatensatz lässt sich nicht unterscheiden, ob eine schlechte Antwort am Retrieval oder an der Generierung liegt — und ohne diese Unterscheidung optimiert man blind.
Wer ernsthaft mit Sprachmodellen arbeitet, steht früher oder später vor derselben Frage: Wie bekommt das Modell Zugriff auf unsere eigenen Dokumente, Verträge, Tickets und Handbücher? Ein allgemeines Modell kann Sprache, aber es kennt weder eure Preisliste noch euren Freigabeprozess noch den Servicevertrag mit einem bestimmten Kunden. RAG ist die etablierte Antwort auf diese Lücke — und zugleich die Stelle, an der interne KI-Projekte technisch häufig scheitern, weil das Ergebnis in der Demo überzeugt und im Alltag nicht. Der Unterschied zwischen einem RAG-System, das Vertrauen aufbaut, und einem, das im Alltag niemand mehr benutzt, liegt selten am Sprachmodell. Er liegt in der Datenaufbereitung, in der Suchqualität und in der Frage, ob das System sagen kann, woher eine Aussage stammt.
Warum RAG existiert: drei Probleme, eine Architektur
Ein Sprachmodell ist ein statisches Artefakt. Sein Wissen stammt aus Trainingsdaten mit einem festen Stichtag, und interne Unternehmensdaten waren nie Teil dieses Trainings. Fragt jemand nach der aktuell gültigen Reisekostenrichtlinie, hat das Modell zwei Möglichkeiten: zugeben, dass es die Antwort nicht kennt, oder eine plausibel klingende Richtlinie formulieren. Ohne zusätzliche Architektur kommt es vor, dass Modelle sich für Letzteres entscheiden — wie häufig, hängt stark vom Modell und von der Systemanweisung ab.
Das zweite Problem ist das Kontextfenster. Moderne Modelle verarbeiten sehr lange Eingaben, aber ein Unternehmenswissensbestand aus Tausenden Dokumenten passt in kein Kontextfenster — und selbst wo er hineinpasst, muss jeder Aufruf den gesamten Kontext verarbeiten; Prompt-Caching senkt die Kosten für gleichbleibende Präfixe, hebt sie aber nicht auf. Hinzu kommt ein Effekt, den Liu et al. 2023 unter dem Namen "Lost in the Middle" beschrieben haben: Modelle nutzten in diesen Experimenten Informationen am Anfang und Ende eines langen Kontexts zuverlässiger als Informationen in der Mitte. Ob neuere Modelle dieses Verhalten verbessert haben, ist nicht abschließend geklärt. Mehr Kontext ist jedenfalls nicht automatisch besserer Kontext.
Das dritte Problem ist Nachvollziehbarkeit. Eine Antwort ohne Beleg ist in einem Unternehmenskontext oft wertlos, weil niemand sie verantworten kann. RAG verlagert die Wahrheitsquelle vom Modellgewicht in ein durchsuchbares Dokumentenkorpus und macht damit prüfbar, worauf eine Aussage beruht.
Wichtig ist die realistische Erwartung: RAG beseitigt Halluzinationen nicht. Es reduziert sie, indem das Modell die Antwort aus mitgeliefertem Material ableiten soll statt aus Erinnerung — und es macht Fehler erkennbar, weil die zitierte Quelle nachlesbar ist. Ein RAG-System, das den falschen Kontext liefert, produziert dagegen besonders überzeugende Falschaussagen.
Die RAG-Pipeline Schritt für Schritt
Eine produktive RAG-Pipeline zerfällt in zwei Phasen: eine Offline-Phase, in der Dokumente aufbereitet und indexiert werden, und eine Online-Phase, die bei jeder Anfrage durchlaufen wird. Beide Phasen lassen sich unabhängig voneinander optimieren, und genau diese Trennung hilft bei der Fehlersuche.
Offline — Ingestion: Dokumente werden aus Quellsystemen geholt (Dateiablage, Wiki, Ticketsystem, DMS, Datenbank), in Text konvertiert und normalisiert. Hier entstehen die ersten stillen Fehler: PDF-Parser, die Tabellen in unlesbare Zeichenfolgen verwandeln, Kopf- und Fußzeilen, die in jedem Chunk mitlaufen, oder gescannte Dokumente ohne OCR. Parallel werden Metadaten erfasst — Quelle, Titel, Abteilung, Gültigkeitsdatum, Berechtigungen, Version.
Offline — Chunking und Embedding: Der Text wird in Abschnitte zerlegt und jeder Abschnitt durch ein Embedding-Modell in einen Vektor übersetzt — eine Zahlenfolge mit typischerweise mehreren hundert bis wenigen tausend Dimensionen, die die Bedeutung des Textes kodiert. Ähnliche Bedeutung ergibt ähnliche Vektoren, gemessen meist über Kosinus-Ähnlichkeit. Vektor, Originaltext und Metadaten wandern gemeinsam in den Index.
Online — Retrieval und Re-Ranking: Die Nutzerfrage wird mit demselben Embedding-Modell vektorisiert; der Index liefert die ähnlichsten k Kandidaten, üblicherweise über einen Näherungsalgorithmus wie HNSW. Weil dieser erste Durchgang auf Geschwindigkeit optimiert ist, folgt in guten Systemen ein Re-Ranking: Ein Cross-Encoder bewertet jedes Kandidatenpaar aus Frage und Textabschnitt gemeinsam und sortiert neu. Das ist deutlich rechenintensiver, aber nur für wenige Kandidaten nötig — und es ist häufig der Schritt mit dem besten Verhältnis von Aufwand zu Qualitätsgewinn.
Online — Prompt-Konstruktion und Generierung: Die verbleibenden Abschnitte werden mit Quellenkennzeichnung in den Prompt eingesetzt, zusammen mit der Anweisung, ausschließlich aus diesem Material zu antworten und fehlende Information explizit zu benennen. Das Modell generiert die Antwort und referenziert die verwendeten Abschnitte. Ob diese Zitate stimmen, ist ein eigener Prüfschritt — Modelle können Belege auch falsch zuordnen.
- Ingestion: Quellsysteme anbinden, Text extrahieren, Metadaten und Berechtigungen mitführen
- Chunking: Dokumente in sinnvolle Abschnitte zerlegen, Struktur erhalten
- Embedding: Abschnitte in Vektoren übersetzen, konsistent mit dem Query-Modell
- Indexierung: Vektoren, Volltext und Metadaten gemeinsam speichern
- Query-Verarbeitung: Frage klären, ggf. umformulieren oder in Teilfragen zerlegen
- Retrieval: Kandidaten holen, Berechtigungsfilter direkt in der Suche anwenden
- Re-Ranking: Kandidaten mit Cross-Encoder neu bewerten und kürzen
- Generierung: Antwort mit Quellenangabe, Verweigerung bei fehlendem Beleg
RAG vs. Fine-Tuning vs. langes Kontextfenster vs. Tool-Aufrufe
Diese vier Ansätze werden oft als Konkurrenten diskutiert, lösen aber unterschiedliche Probleme. RAG bringt Wissen ins Modell. Fine-Tuning bringt Verhalten ins Modell — Tonalität, Format, Fachsprache, Aufgabenmuster. Ein langes Kontextfenster ersetzt Retrieval nur bei kleinen, klar abgegrenzten Beständen. Tool- und Funktionsaufrufe holen strukturierte, exakte Daten aus Systemen, in denen Ähnlichkeitssuche schlicht das falsche Werkzeug ist.
Die praktisch wichtigste Abgrenzung ist die zwischen RAG und Fine-Tuning, und sie lässt sich auf eine Frage reduzieren: Ändert sich die Information? Preise, Richtlinien, Projektstände, Ticketverläufe ändern sich — die gehören in ein Retrieval-System, weil ein Update dort das Neuschreiben eines Dokuments bedeutet und nicht einen Trainingslauf. Wie das Unternehmen formuliert, welche Struktur ein Angebot hat, welche Begriffe intern gelten: Das ändert sich selten und lässt sich per Fine-Tuning oder oft schon per Systemprompt festlegen.
Die zweite wichtige Abgrenzung betrifft exakte Daten. Für die Frage nach dem offenen Rechnungsbetrag eines Kunden ist Vektorsuche das falsche Verfahren — hier braucht es einen Funktionsaufruf gegen die Fachanwendung. Produktive Systeme kombinieren beides: unstrukturiertes Wissen per RAG, strukturierte Fakten per Tool-Aufruf. Genau diese Kombination beschreibt der Bauplan für KI-Agenten, und mit dem Model Context Protocol lässt sich der Retrieval-Schritt selbst als Tool bereitstellen, das mehrere Anwendungen nutzen können.
| Kriterium | RAG | Fine-Tuning | Langes Kontextfenster | Tool-/Funktionsaufruf |
|---|---|---|---|---|
| Löst primär | Fehlendes Faktenwissen | Fehlendes Verhalten, Stil, Format | Kleine, geschlossene Dokumentenmenge | Zugriff auf exakte, strukturierte Daten |
| Aktualität | Sofort, sobald das Dokument neu indexiert ist | Erst mit dem nächsten Trainingslauf | Sofort, aber pro Anfrage neu mitgeschickt | Immer live aus dem Quellsystem |
| Kostencharakteristik | Infrastruktur plus Kontext-Tokens pro Anfrage | Einmaliger Trainingsaufwand; danach kaum Kontext-Tokens pro Anfrage, die Inferenz selbst ist je nach Anbieter aber teurer als auf dem Basismodell | Skaliert mit der Kontextlänge jeder Anfrage; Prompt-Caching dämpft wiederkehrende Präfixe | Kosten des angebundenen Systems, wenig Tokens |
| Nachvollziehbarkeit | Hoch — Quelle ist zitierbar | Niedrig — Wissen steckt in Gewichten | Hoch, solange das Dokument im Prompt steht | Hoch — Ergebnis stammt aus dem System |
| Berechtigungen | Filterbar pro Nutzer im Retrieval | Nicht trennbar, Wissen gilt für alle | Nur durch Auswahl der übergebenen Dokumente | Über die Rechte des aufgerufenen Systems |
| Typischer Einsatz | Interne Wissenssuche, Support, Dokumentation | Konsistente Formate, Fachjargon, Klassifikation | Ein Vertrag, ein Bericht, eine Fallakte | Bestände, Buchungen, Kundenstammdaten |
Chunking: die häufigste Fehlerursache in RAG-Systemen
Chunking entscheidet, welche Informationseinheit überhaupt gefunden werden kann. Zerschneidet die Pipeline einen Text mitten in einer Tabelle, an einer Aufzählung oder zwischen Bedingung und Rechtsfolge, dann existiert die vollständige Aussage im Index nicht mehr — kein Retrieval-Verfahren und kein Sprachmodell kann das reparieren. Genau deshalb ist Chunking in meiner Erfahrung die Stelle, an der sich RAG-Qualität am schnellsten verbessern lässt.
Zu große Abschnitte verwässern das Embedding: Ein Vektor, der viele verschiedene Themen gleichzeitig repräsentieren soll, liegt zu keinem davon besonders nah. Zu kleine Abschnitte verlieren Kontext — der Satz "Diese Frist beträgt 14 Tage" ist ohne den vorangehenden Absatz nicht verwertbar. Zwischen diesen beiden Fehlern liegt kein universeller Optimalwert, sondern eine Abhängigkeit vom Dokumenttyp: Ein Handbuch, ein Vertrag und ein Chatprotokoll brauchen verschiedene Strategien.
Zwei Techniken lösen viele Probleme unabhängig von der gewählten Größe. Erstens die Trennung von Suchtreffer und Antwortkontext: Gesucht wird auf kleinen, präzisen Abschnitten, an das Modell übergeben wird der umgebende größere Abschnitt oder das Elterndokument. Zweitens die kontextuelle Anreicherung: Vor dem Embedding bekommt jeder Abschnitt eine kurze, automatisch erzeugte Einordnung vorangestellt — welches Dokument, welches Kapitel, worum es geht. Das behebt genau den Fall, in dem ein Abschnitt sprachlich isoliert nicht mehr verständlich ist.
Praktisch bewährt hat sich, Chunking an der Dokumentstruktur auszurichten statt an Zeichenzahlen: Überschriftenebenen, Listen, Tabellen und Absätze als primäre Grenzen, Zeichenlimits nur als Obergrenze. Tabellen sollten möglichst am Stück bleiben und ihre Kopfzeile behalten, weil sie sonst als reine Zahlenkolonne im Index landen.
| Strategie | Funktionsweise | Stärke | Schwäche |
|---|---|---|---|
| Feste Größe mit Überlappung | Fixe Zeichen- oder Tokenzahl, überlappende Ränder | Einfach, robust, gut parallelisierbar | Ignoriert Struktur, zerschneidet Tabellen und Sätze |
| Rekursiv strukturbasiert | Zerlegt entlang Absatz, Satz, Wort, bis die Größe passt | Guter Kompromiss, sinnvoller Standardansatz | Kennt keine Semantik, nur Zeichenhierarchie |
| Dokumentstruktur (Markdown/HTML) | Grenzen an Überschriften, Listen, Tabellen | Erhält Bedeutungseinheiten, Metadaten aus Überschriften | Setzt sauber strukturierte Quelldokumente voraus |
| Semantisches Chunking | Schnitt bei inhaltlichem Themenwechsel, per Embedding erkannt | Thematisch geschlossene Abschnitte | Rechenintensiv in der Ingestion, schwer zu debuggen |
| Small-to-Big / Parent Retrieval | Kleine Chunks für die Suche, großer Kontext für die Antwort | Präzise Treffer bei vollständigem Kontext | Zusätzliche Speicher- und Verwaltungslogik |
| Kontextuelle Anreicherung | Kurze Einordnung wird vor dem Embedding vorangestellt | Löst isolierte, referenzlose Textabschnitte | Zusätzliche Modellkosten bei der Indexierung |
Embedding-Modelle — und was bei deutschsprachigen Inhalten zu beachten ist
Ein Embedding-Modell bildet Text auf einen Vektor ab, dessen Lage im Raum die Bedeutung kodiert. Für RAG zählen vier Eigenschaften: die unterstützten Sprachen, die maximale Eingabelänge, die Dimensionalität (mehr Dimensionen bedeuten vor allem mehr Speicherbedarf; innerhalb einer Modellfamilie oft etwas bessere Qualität, modellübergreifend ist die Dimensionszahl aber kein Qualitätsmaß) und die Frage, ob das Modell selbst gehostet werden kann. Der letzte Punkt ist in regulierten Umgebungen oft der entscheidende, weil beim Embedding der vollständige Dokumenttext an den Anbieter geht — nicht nur die Nutzerfrage.
Für deutschsprachige Inhalte gilt: Ein rein englisch trainiertes Modell funktioniert oberflächlich, verliert aber genau dort Trennschärfe, wo es darauf ankommt. Deutsche Komposita sind das bekannteste Problem — "Betriebsvereinbarung", "Rückstellungsbewertung", "Instandhaltungsintervall" zerfallen bei der Tokenisierung in Fragmente, die im Englischen nichts bedeuten. Hinzu kommen Flexion, Trennbarkeit von Verben und Fachsprache aus Verwaltung, Recht und Technik. Wählt daher ein explizit mehrsprachiges oder deutschsprachig evaluiertes Modell; das MTEB-Benchmark enthält deutschsprachige Aufgaben und ist ein brauchbarer Startpunkt für den Vergleich.
Ein Detail geht dabei leicht unter: Deutsche Texte erzeugen bei gängigen Tokenizern in der Regel mehr Tokens als der entsprechende englische Text. Wie groß der Aufschlag ausfällt, hängt vom Tokenizer ab und sollte am eigenen Korpus gemessen werden. Betroffen sind Embedding-Kosten, effektive Chunk-Größen und der Platzbedarf im Kontextfenster gleichermaßen — wer Chunk-Grenzen aus englischsprachiger Dokumentation übernimmt, arbeitet real mit kürzeren Inhalten. Zum Umgang mit Tokenverbrauch gibt es einen eigenen Praxisartikel zum Tokensparen.
Zwei harte Regeln zum Schluss. Erstens: Query und Dokument müssen mit demselben Modell und derselben Version eingebettet werden — ein Modellwechsel erfordert die vollständige Neuindexierung des Bestands. Zweitens: Manche Modelle erwarten unterschiedliche Präfixe für Suchanfrage und Dokument; wer das ignoriert, verliert Qualität, ohne dass ein Fehler sichtbar wird. Wer Embeddings lokal erzeugen will, findet die Grundlagen im Artikel zum lokalen Betrieb von Sprachmodellen.
Vektordatenbanken, Volltextsuche und warum Hybrid meist gewinnt
Eine Vektordatenbank speichert Embeddings und beantwortet Ähnlichkeitsanfragen näherungsweise (Approximate Nearest Neighbour), typischerweise über einen HNSW-Graphindex oder ein clusterbasiertes Verfahren. Der Unterschied zwischen den Produkten liegt selten in der reinen Suchqualität, sondern in Betriebsfragen: Filterung nach Metadaten während der Suche, Konsistenz bei Updates, Mandantentrennung, Speicherbedarf und Betriebsmodell.
Für viele Unternehmen ist die pragmatischste Wahl kein neues Spezialsystem, sondern eine Erweiterung des vorhandenen: Postgres mit pgvector, wenn ohnehin Postgres läuft, oder eine Suchmaschine wie OpenSearch beziehungsweise Elasticsearch, die Volltext- und Vektorsuche gemeinsam abdeckt. Ein zusätzlicher Datenspeicher bedeutet zusätzliche Backups, Berechtigungen und Ausfallpfade — dieser Aufwand sollte durch einen konkreten Bedarf begründet sein, nicht durch die Erwartung, dass RAG eine Vektordatenbank voraussetzt.
Der meistunterschätzte Punkt: Klassische Volltextsuche ist nicht überholt. BM25 findet exakte Begriffe zuverlässig — Artikelnummern, Fehlercodes, Paragraphen, Eigennamen, Abkürzungen. Voraussetzung ist eine passende Tokenisierung im Index: Zerlegt der Analyzer eine Artikelnummer, geht der Vorteil verloren. Genau dort versagt Vektorsuche regelmäßig, weil "Fehler E-4711" und "Fehler E-4712" semantisch nahezu identisch sind. Umgekehrt findet die Vektorsuche Umschreibungen, die kein Wort mit der Frage teilen.
Hybrid-Suche kombiniert beides und führt die zwei Trefferlisten zusammen, meist über Reciprocal Rank Fusion — ein Verfahren, das nur Rangpositionen verrechnet und deshalb ohne Kalibrierung unterschiedlicher Score-Skalen auskommt. In Kombination mit einem Re-Ranking-Schritt ist das für die meisten Unternehmensbestände die robusteste Ausgangskonfiguration. Wie sich das in eine Gesamtarchitektur einfügt, beschreibt die Übersicht zur KI-Infrastruktur.
| Verfahren | Findet gut | Findet schlecht | Betriebsaufwand |
|---|---|---|---|
| Volltextsuche (BM25) | Exakte Begriffe, Codes, Nummern, Eigennamen — passende Tokenisierung vorausgesetzt | Synonyme, Umschreibungen, Fragen in anderer Formulierung | Gering, oft bereits im vorhandenen Suchsystem enthalten |
| Vektorsuche (dense) | Bedeutungsähnlichkeit, Paraphrasen, vage Fragen | Exakte Zeichenfolgen, seltene Fachbegriffe, Negationen | Mittel: Index, Embedding-Modell, Neuindexierung bei Modellwechsel |
| Hybrid (BM25 + Vektor, RRF) | Beides, mit deutlich stabilerem Verhalten | Bleibt abhängig von Chunk-Qualität | Mittel bis hoch: zwei Indizes, eine Fusionslogik |
| Re-Ranking (Cross-Encoder) | Feinsortierung der besten Kandidaten | Nichts, was das Retrieval gar nicht gefunden hat | Zusätzliche Latenz und Rechenlast pro Anfrage |
Evaluation: woran man merkt, dass ein RAG-System schlecht ist
Der teuerste Fehler im RAG-Betrieb ist, Qualität nach Gefühl zu beurteilen. Ohne Messung lässt sich die zentrale Frage nicht beantworten: Lag die falsche Antwort daran, dass die richtige Passage nie gefunden wurde, oder daran, dass sie im Kontext stand und das Modell sie ignoriert hat? Beide Fälle sehen für Nutzende identisch aus und erfordern völlig unterschiedliche Gegenmaßnahmen.
Die Grundlage ist ein Evaluationsdatensatz: reale Fragen aus dem Fachbereich, dazu die Dokumentstellen, die die Antwort tatsächlich enthalten. Ein solcher Satz muss nicht groß sein, aber er muss echt sein — selbst ausgedachte Fragen treffen tendenziell genau die Formulierungen, die das System ohnehin beherrscht. Mit diesem Datensatz wird zuerst das Retrieval isoliert gemessen: Wie oft ist die richtige Stelle unter den ersten k Treffern (Recall@k), und auf welcher Position steht sie (MRR, nDCG)? Diese Zahlen sind die Obergrenze der Antwortqualität — was das Retrieval nicht liefert, kann kein Modell ausgleichen.
Erst danach wird die Generierung bewertet, entlang von drei Dimensionen: Ist jede Aussage durch den mitgelieferten Kontext gedeckt (Groundedness), beantwortet die Antwort die gestellte Frage (Relevanz), und verweigert das System zuverlässig, wenn keine Grundlage existiert? Der letzte Punkt ist im Unternehmenseinsatz der wichtigste und wird am seltensten getestet: Der Evaluationssatz braucht Fragen, auf die es bewusst keine Antwort im Bestand gibt.
Im laufenden Betrieb sind drei Signale aussagekräftig: Anfragen, bei denen das System verweigert, obwohl die Information existiert; Antworten, deren Zitate von Nutzenden aufgerufen und dann als unpassend markiert werden; und Suchanfragen ohne verwertbaren Treffer. Jede Änderung an Chunking, Embedding-Modell oder Prompt sollte gegen denselben Datensatz laufen, bevor sie produktiv geht — sonst ist jede Optimierung ein Tausch von einem Fehler gegen einen anderen.
- Retrieval getrennt von Generierung messen — sonst optimiert man an der falschen Stelle
- Recall@k und Rangposition als harte Kennzahlen für die Suchqualität
- Groundedness prüfen: Steht jede Aussage tatsächlich im mitgelieferten Kontext?
- Verweigerungsverhalten testen mit Fragen, die im Bestand bewusst nicht beantwortbar sind
- Regressionslauf vor jeder Änderung an Chunking, Modell oder Prompt
Typische Unternehmensarchitektur — inklusive Berechtigungsfilter
Eine belastbare RAG-Architektur im Unternehmen besteht aus fünf Schichten: den Quellsystemen, einer Ingestion-Strecke, dem Index, einem Retrieval-Dienst und der Anwendung, die das Sprachmodell aufruft. Entscheidend ist, dass der Retrieval-Dienst eine eigene, zentral betriebene Komponente ist und nicht in jeder Anwendung neu gebaut wird. Nur so lassen sich Berechtigungen, Protokollierung und Qualitätsmessung an einer Stelle durchsetzen.
Der kritischste Punkt ist die Berechtigungsprüfung, und dafür gibt es eine klare Regel: Sie gehört in die Suchanfrage, nicht in den Prompt. Ein Dokument, das im Kontext des Modells landet, gilt als offengelegt — die Anweisung "nutze dieses Dokument nur, wenn der Nutzer berechtigt ist" ist keine Zugriffskontrolle. Praktisch bedeutet das: Jeder Chunk trägt die Zugriffsmerkmale seines Quelldokuments als Metadaten, und die Suche wertet diesen Filter gemeinsam mit der Ähnlichkeitssuche aus, statt die Trefferliste erst nachträglich zu bereinigen (gefilterte Suche, oft als Pre-Filtering bezeichnet). Wie das intern umgesetzt ist, unterscheidet sich je nach System — sehr selektive Filter können in ANN-Indizes Recall und Latenz beeinflussen und gehören deshalb in die Lasttests. Wird stattdessen erst gesucht und danach gefiltert, schrumpft die Trefferliste unkontrolliert — Nutzende bekommen dann zwar keine unberechtigten Dokumente, aber auch zu wenige berechtigte.
Zwei Folgeprobleme sind in der Praxis unterschätzt. Erstens veralten Berechtigungen: Wird ein Dokument im Quellsystem umgestuft oder ein Mitarbeiter aus einer Gruppe entfernt, muss der Index das zeitnah nachvollziehen — sonst antwortet das System aus Rechten, die es nicht mehr gibt. Zweitens sind Löschungen bindend: Ein im Quellsystem gelöschtes Dokument muss aus Chunks, Vektoren und etwaigen Caches verschwinden. Beide Punkte sind organisatorisch und gehören in die KI-Governance, nicht in ein Ticket am Ende des Projekts.
Dazu kommt Protokollierung: Wer hat wann welche Frage gestellt, welche Dokumente wurden geliefert, welche Antwort erzeugt? Das ist keine Bürokratie, sondern die Voraussetzung, um Fehlverhalten zu rekonstruieren und Auskunftsersuchen überhaupt beantworten zu können. Welche Protokollierungs- und Auskunftspflichten im Einzelfall greifen, klärt ihr mit Rechtsabteilung oder Datenschutzbeauftragten. Wie sich ein RAG-System in eine breitere Wissensstrategie einordnet, beschreibt die Seite zum KI-Wissensmanagement; die organisatorische Gesamtsicht liefert Unternehmens-KI.
Betrieb: Aktualisierung, Latenz und Kostentreiber
Ein RAG-System ist kein Projekt mit Enddatum, sondern eine Datenstrecke, die laufend gepflegt wird. Die zentrale Betriebsfrage lautet: Wie kommen Änderungen aus den Quellsystemen in den Index? Vollständige Neuindexierung ist einfach, aber teuer und langsam; inkrementelle Aktualisierung über Änderungszeitstempel oder Webhooks ist deutlich effizienter, verlangt aber eine saubere Identität pro Chunk, damit Aktualisierungen und Löschungen zuverlässig durchschlagen. Versionierung gehört dazu — sonst stehen alte und neue Fassung derselben Richtlinie gleichzeitig im Index und konkurrieren um denselben Treffer.
Bei der Latenz summieren sich vier Beiträge: Embedding der Anfrage, Vektorsuche, Re-Ranking und Generierung. Die Generierung dominiert meist, aber Re-Ranking kann spürbar zu Buche schlagen, wenn zu viele Kandidaten bewertet werden. Ein pragmatischer Zuschnitt ist, breit zu suchen, aber nur eine kleine Zahl von Kandidaten neu zu sortieren und noch weniger an das Modell zu übergeben.
Die Kosten verteilen sich auf drei Posten: einmalige beziehungsweise laufende Embedding-Kosten bei der Indexierung, Infrastrukturkosten für Index und Retrieval-Dienst, und Inferenzkosten, die im Wesentlichen mit der Menge des übergebenen Kontexts skalieren. Der letzte Posten wird am häufigsten unterschätzt: Wer bei jeder Anfrage zwanzig Abschnitte mitschickt statt fünf, zahlt das dauerhaft bei jedem einzelnen Aufruf — und bekommt wegen der schlechteren Kontextdichte oft nicht einmal bessere Antworten.
Für Bestände mit hohen Vertraulichkeitsanforderungen lässt sich die gesamte Strecke lokal betreiben: Embedding-Modell, Index und Generierungsmodell im eigenen Netz. Das ist technisch machbar und deutlich weniger exotisch als noch vor wenigen Jahren; die Einordnung dazu steht in KI-Datenschutz und lokale KI.
Braucht ihr ein eigenes RAG-System — oder reicht etwas Einfacheres?
Passt, wenn
- Der Wissensbestand ist zu groß für ein Kontextfenster und wächst weiter — Handbücher, Verträge, Tickets, Wiki-Inhalte über mehrere Systeme hinweg.
- Die Inhalte ändern sich laufend und Antworten müssen den aktuellen Stand widerspiegeln, nicht den vom letzten Quartal.
- Antworten müssen belegbar sein, weil sie in Kundenkommunikation, Prüfungen oder Entscheidungen einfließen.
- Unterschiedliche Nutzergruppen dürfen unterschiedliche Dokumente sehen, und diese Trennung muss technisch durchgesetzt werden.
- Dieselbe Wissensbasis soll mehrere Anwendungen versorgen — Support-Assistent, interne Suche, Agenten-Workflows.
Passt nicht, wenn
- Der relevante Bestand umfasst wenige Dokumente, die vollständig in ein Kontextfenster passen — dann ist direktes Mitgeben einfacher und genauer.
- Die gesuchten Informationen sind strukturierte Daten aus Fachanwendungen; dafür ist ein Funktionsaufruf gegen die API das richtige Werkzeug, nicht Ähnlichkeitssuche.
- Das eigentliche Problem ist Stil, Format oder Fachsprache — das löst ein guter Systemprompt oder Fine-Tuning, nicht Retrieval.
- Die Quelldokumente sind inhaltlich veraltet, widersprüchlich oder ungepflegt; ein RAG-System macht diese Probleme sichtbar, aber nicht besser.
- Es gibt niemanden, der Ingestion, Index und Qualitätsmessung dauerhaft betreut — dann entsteht ein System, dem mit der Zeit niemand mehr vertraut.
Häufige Fehler
- Chunking nach Zeichenzahl statt nach Struktur Feste Blockgrößen zerschneiden Tabellen, Aufzählungen und Bedingungssätze. Die vollständige Aussage existiert dann im Index nicht mehr, und keine spätere Optimierung holt sie zurück. Dokumentstruktur als primäre Grenze verwenden, Zeichenlimits nur als Obergrenze.
- Ausschließlich auf Vektorsuche setzen Reine Ähnlichkeitssuche findet Artikelnummern, Fehlercodes und Paragraphen unzuverlässig, weil sich benachbarte Codes semantisch kaum unterscheiden. Eine zusätzliche BM25-Volltextsuche mit anschließender Rangfusion bringt hier häufig einen großen Qualitätsgewinn bei überschaubarem Aufwand.
- Berechtigungen im Prompt statt im Retrieval Wenn ein Dokument im Kontextfenster liegt, ist es offengelegt — unabhängig davon, was die Systemanweisung sagt. Zugriffsmerkmale gehören als Metadaten an jeden Chunk und müssen gemeinsam mit der Ähnlichkeitssuche ausgewertet werden, nicht erst hinterher auf der Trefferliste.
- Kein Evaluationsdatensatz Ohne echte Fragen mit bekannten Fundstellen lässt sich nicht unterscheiden, ob das Retrieval oder die Generierung versagt hat. Jede Optimierung wird damit zum Ratespiel, und Verbesserungen an einer Stelle bleiben unbemerkte Verschlechterungen an anderer.
- Ingestion als einmaliges Projekt behandeln Dokumente ändern sich, werden gelöscht und umklassifiziert. Ohne inkrementelle Aktualisierung, stabile Chunk-Identitäten und Versionierung liefert das System mit der Zeit Antworten aus veralteten Fassungen — und wirkt dabei genauso überzeugend wie vorher.
- Zu viel Kontext übergeben Mehr Abschnitte im Prompt erhöhen Kosten und Latenz bei jeder Anfrage und verschlechtern häufig die Antwortqualität, weil relevante Stellen zwischen Füllmaterial untergehen. Besser breit suchen, hart nachsortieren und wenige, dichte Abschnitte übergeben.
Häufige Fragen
Was ist RAG einfach erklärt?
RAG bedeutet, dass ein Sprachmodell vor dem Antworten in euren eigenen Dokumenten nachschlägt und die gefundenen Passagen mit in die Frage bekommt. Das Modell antwortet dann aus diesem Material statt aus seinem Trainingswissen. Der Effekt entspricht dem Unterschied zwischen einer Prüfung aus dem Gedächtnis und einer Prüfung mit geöffnetem Handbuch.
Wofür steht RAG?
RAG steht für Retrieval Augmented Generation, also durch Abruf angereicherte Generierung. "Retrieval" bezeichnet die Suche nach passenden Textstellen, "Generation" die Antworterzeugung durch das Sprachmodell. Der Begriff geht auf die Arbeit "Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks" von Lewis et al. (2020) zurück und hat sich seither als Standardbezeichnung für dieses Architekturmuster durchgesetzt.
Wie bringe ich ChatGPT oder Claude meine eigenen Daten bei?
Für kleine Bestände genügt oft das Hochladen einzelner Dokumente in den Chat oder ein Projekt-Wissensbereich. Für einen wachsenden Bestand mit vielen Nutzenden und Berechtigungen braucht es ein eigenes RAG-System: Dokumente indexieren, pro Anfrage die passenden Stellen suchen und über die API mit an das Modell geben. Der Übergang liegt dort, wo Aktualität, Zugriffsrechte und Nachvollziehbarkeit relevant werden.
Was ist der Unterschied zwischen RAG und Fine-Tuning?
RAG gibt dem Modell Wissen, Fine-Tuning gibt ihm Verhalten. Alles, was sich ändert — Preise, Richtlinien, Projektstände — gehört in ein Retrieval-System, weil eine Aktualisierung dort das Neuindexieren eines Dokuments bedeutet statt eines Trainingslaufs. Fine-Tuning lohnt sich für konstante Formate, Fachsprache und wiederkehrende Aufgabenmuster, und beide lassen sich kombinieren.
Macht ein langes Kontextfenster RAG überflüssig?
Nein, außer bei kleinen und klar abgegrenzten Beständen. Ein Unternehmenskorpus passt in kein Kontextfenster, und selbst dort, wo er hineinpasst, kostet jeder Aufruf die Verarbeitung des vollständigen Kontexts; Prompt-Caching dämpft das bei gleichbleibenden Präfixen, macht es aber nicht kostenlos. Hinzu kommt, dass Modelle Informationen in der Mitte langer Eingaben in Untersuchungen wie "Lost in the Middle" (Liu et al., 2023) weniger zuverlässig genutzt haben — Auswahl bleibt also nötig.
Verhindert RAG Halluzinationen?
RAG reduziert Halluzinationen, beseitigt sie aber nicht. Das Modell kann mitgelieferten Kontext falsch zusammenfassen, Belege falsch zuordnen oder bei fehlender Fundstelle trotzdem antworten. Wirksam sind drei Maßnahmen: eine explizite Verweigerungsanweisung, Quellenangaben pro Aussage und eine Evaluation, die genau dieses Verweigerungsverhalten testet.
Brauche ich für RAG zwingend eine Vektordatenbank?
Nein. Postgres mit der pgvector-Erweiterung oder eine vorhandene Suchmaschine wie OpenSearch decken Vektor- und Volltextsuche für die meisten Unternehmensbestände ab. Ein spezialisiertes Vektorsystem lohnt sich bei sehr großen Beständen, hohem Anfragevolumen oder komplexer Mandantentrennung — die Entscheidung ist eine Betriebsfrage, keine Grundsatzfrage.
Welches Embedding-Modell eignet sich für deutschsprachige Dokumente?
Ein explizit mehrsprachiges oder auf deutschsprachigen Aufgaben evaluiertes Modell ist Pflicht, weil rein englisch trainierte Modelle bei Komposita, Flexion und Verwaltungsfachsprache an Trennschärfe verlieren. Das MTEB-Benchmark enthält deutschsprachige Testaufgaben und eignet sich als Ausgangspunkt für den Vergleich. Die Dimensionszahl taugt dabei nicht als Qualitätsmaß — sie bestimmt vor allem den Speicherbedarf. Wichtig ist außerdem, ob das Modell selbst gehostet werden kann, da beim Embedding der vollständige Dokumenttext verarbeitet wird.
Wie groß sollten die Chunks sein?
Es gibt keinen universellen Wert; die passende Größe hängt vom Dokumenttyp und vom Embedding-Modell ab. Sinnvoller als eine Zahl ist das Prinzip: Ein Chunk sollte genau eine abgeschlossene Aussage enthalten und ohne den umgebenden Text verständlich sein. Wo das nicht gelingt, helfen Small-to-Big-Retrieval und eine kurze Kontexteinordnung vor jedem Abschnitt mehr als jede Feinjustierung der Zeichenzahl.
Wie stelle ich sicher, dass niemand über RAG Dokumente sieht, für die er keine Rechte hat?
Die Zugriffsmerkmale jedes Quelldokuments müssen als Metadaten an jedem Chunk hängen und in der Suche gemeinsam mit der Ähnlichkeitsberechnung ausgewertet werden. Nachträgliches Filtern der Trefferliste ist unzureichend, weil es die Ergebnisqualität zerstört, und eine Anweisung im Systemprompt ist gar keine Zugriffskontrolle. Wie die gefilterte Suche intern umgesetzt ist, unterscheidet sich je nach System und gehört in die Lasttests. Zusätzlich muss der Index Rechteänderungen und Löschungen aus den Quellsystemen zeitnah nachvollziehen.
Woran erkenne ich, dass unser RAG-System schlecht arbeitet?
Am zuverlässigsten an einem Evaluationsdatensatz aus echten Fachfragen mit bekannten Fundstellen: Wie oft steht die richtige Stelle unter den ersten Treffern, und wie weit oben? Im Betrieb sind drei Signale aussagekräftig — Verweigerungen trotz vorhandener Information, als unpassend markierte Quellenangaben und Suchanfragen ohne verwertbaren Treffer. Fehlt diese Messung, lässt sich Retrieval-Versagen nicht von Generierungsfehlern unterscheiden.
Weiterlesen
Verwandte Themen
Geschrieben von
Christian Ohle
KI-Entwickler & Online-Marketer · seit 2005 im Web
Seit 2005 mit dem Web: Online-Marketing, Coding, lokale KI. Schreibt hier über Unternehmens-KI, Wissensmanagement, RAG, KI-Agenten und Automatisierung — alles selbst gebaut und getestet, inklusive der Setups, die nicht funktioniert haben.
christianohle.de ist ein persönliches Projekt — kein Beratungsangebot, keine Agentur und keine Akquise-Plattform. Mehr dazu.