RAG-Halluzinationen messen: Ein Gesamtscore verdeckt den schwachen Retriever

|Autor: QUASA-Redaktion|6 Min. Lesezeit| 1
RAG-Halluzinationen messen: Ein Gesamtscore verdeckt den schwachen Retriever

Eine quellentreue RAG-Antwort beweist noch nicht, dass der Retriever gut arbeitet. Um Halluzinationen und Retrieval-Fehler getrennt zu erkennen, prüfen Sie die Aussagen der Antwort gegen den abgerufenen Kontext und bewerten zusätzlich die Reihenfolge der relevanten Chunks. Die Ragas-Dokumentation zu Faithfulness definiert die erste Kennzahl als Anteil der Antwortaussagen, die sich aus dem bereitgestellten Kontext ableiten lassen.

Für die zweite Frage zählt, ob nützliche Textstücke früh in der Trefferliste stehen. Die Ragas-Dokumentation zu Context Precision bewertet die Rangfolge relevanter Chunks; mit einer Referenzantwort lässt sich ihre Relevanz zur erwarteten Antwort beurteilen. Ein Durchschnitt aus beiden Kennzahlen kann einen schwachen Retriever verdecken, wenn die Antwort trotzdem durch später platzierte Chunks belegt ist.

Den Testfall aus Frage, Kontext, Antwort und Referenz bauen

Speichern Sie für jeden Fall die Nutzerfrage, sämtliche abgerufenen Chunks in ihrer ursprünglichen Reihenfolge, die erzeugte Antwort und eine unabhängig formulierte Referenzantwort. Die Referenz legt fest, was die Frage sachlich beantworten soll. Für Context Precision muss außerdem erkennbar sein, welcher Chunk zur Referenz beiträgt; für Faithfulness zählt dagegen, ob der abgerufene Kontext die tatsächlich erzeugten Aussagen trägt.

Ein ausdrücklich hypothetischer Fall zeigt den Unterschied. Die Frage lautet: „Wie hoch ist die Hotelpauschale, und ab wann ist ein Taxi erlaubt?“ Die Referenz lautet: „Die Hotelpauschale beträgt 120 Euro; ein Taxi ist ab 22 Uhr erlaubt.“ Als ersten Chunk liefert der Retriever eine Passage über Zugriffsrechte, danach eine Passage mit der Pauschale und schließlich eine mit der Taxiregel. Die erzeugte Antwort gibt beide Angaben der Referenz wieder. Beträge und Regeln sind ausschließlich für dieses Rechenbeispiel erfunden.

Halten Sie bei wiederholten Durchläufen Dokumentbestand, Chunk-Zerlegung und Zahl der abgerufenen Treffer fest. Protokollieren Sie auch Modell, Prompt und Bewertungsverfahren. Sonst kann eine veränderte Kennzahl mehrere Ursachen haben: Andere Textgrenzen verändern die Treffer, eine neue Rangfolge verändert Context Precision und ein anderer Generator kann trotz identischer Treffer neue unbelegte Aussagen hinzufügen.

Faithfulness für jede Antwortaussage bestimmen

Zerlegen Sie die erzeugte Antwort in einzeln prüfbare Behauptungen. Im Beispiel sind das die Höhe der Pauschale und der Beginn der Taxierlaubnis. Prüfen Sie jede Behauptung gegen den gesamten tatsächlich abgerufenen Kontext und teilen Sie die Zahl der gestützten Behauptungen durch die Zahl aller Behauptungen. Die Position des Belegs in der Trefferliste ändert an diesem Verhältnis nichts.

Beide Aussagen der Beispielantwort sind durch Chunks gedeckt: Faithfulness beträgt 2/2, also 1. Ändert der Generator nur den zweiten Satz zu „Ein Taxi ist jederzeit erlaubt“, bleibt die Pauschale belegt, während die Taxiaussage keinen Beleg mehr hat. Faithfulness fällt auf 1/2 beziehungsweise 0,5. Neben dem Wert gehört deshalb die genaue unbelegte Aussage ins Testprotokoll; erst sie zeigt, welcher Teil der Antwort das Problem verursacht.

Faithfulness misst die Bindung an den gelieferten Kontext, nicht die Wahrheit des Kontextes. Steht eine veraltete Taxiregel im abgerufenen Chunk, kann die Antwort ihm treu folgen und dennoch von der gültigen Regel abweichen. Ebenso kann eine knappe Antwort eine Teilfrage auslassen und für ihre wenigen Aussagen trotzdem einen hohen Faithfulness-Wert erreichen. Der Abgleich mit der unabhängig erstellten Referenz beantwortet diese anderen Fragen.

Context Precision aus der Trefferreihenfolge berechnen

Markieren Sie jeden Chunk danach, ob er zur Beantwortung der Referenz beiträgt, und lassen Sie seine Position unverändert. Im Beispiel ist der erste Treffer zu Zugriffsrechten irrelevant; die Treffer auf Rang zwei und drei liefern die beiden benötigten Angaben. Berechnen Sie an jeder Position mit einem relevanten Treffer den Anteil relevanter Treffer bis zu dieser Position. Das ergibt zunächst 1/2 und danach 2/3.

Der Mittelwert dieser beiden Anteile beträgt 7/12, also rund 0,58. Rutschen die Pauschalen- und Taxipassage auf die ersten beiden Plätze und die Zugriffsrechte ans Ende, beträgt der Wert nach derselben Rechnung 1. Die erzeugte Antwort kann dabei Wort für Wort gleich bleiben. Die Kennzahl erfasst hier allein, wie gut der Retriever hilfreiche Chunks vor einen nutzlosen Treffer setzt.

Für die Relevanzmarkierung ist der Inhalt entscheidend, nicht ein gemeinsames Stichwort. Ein Chunk, der nur „Taxi“ erwähnt, ohne die erlaubte Uhrzeit zu nennen, beantwortet diese Teilfrage nicht. Context Precision beurteilt zudem nur die abgerufene Liste: Fehlt eine benötigte Passage vollständig, kann die Rangfolge der vorhandenen Treffer dieses Versäumnis nicht allein sichtbar machen. Vergleichen Sie dafür die Referenz mit dem Inhalt der Treffer.

Die beiden Werte gemeinsam diagnostizieren

Im hypothetischen Testfall stehen Faithfulness 1 und Context Precision rund 0,58 nebeneinander. Ein einfacher Mittelwert ergäbe rund 0,79 und ließe die schwache Trefferreihenfolge weniger deutlich erscheinen. Dieser Mittelwert ist nur eine illustrative Rechnung, kein zusätzlicher Ragas-Score. Die getrennten Werte zeigen präziser, dass die Antwort belegt ist, der Retriever aber einen irrelevanten Chunk vor beide Belege gesetzt hat.

Bei niedriger Faithfulness und hoher Context Precision liegen hilfreiche Chunks weit oben, während mindestens eine Antwortaussage aus ihnen nicht folgt. Die Diagnose beginnt dann bei dieser Aussage und dem zugehörigen Kontext. Sind beide Werte niedrig, prüfen Sie sowohl die Relevanz und Position der Chunks als auch die einzelnen Behauptungen. Beide Fehler können im selben Durchlauf auftreten, ohne dieselbe Ursache zu haben.

Hohe Werte in beiden Spalten beantworten wiederum nicht jede Qualitätsfrage. Vergleichen Sie die Antwort mit der Referenz, um ausgelassene Teilfragen zu erkennen, und prüfen Sie die maßgeblichen Dokumente, wenn deren sachliche Gültigkeit zweifelhaft ist. So bleiben Belegtreue, Trefferreihenfolge, Vollständigkeit und Richtigkeit als unterschiedliche Eigenschaften eines Testfalls sichtbar.

Grenzwerte aus den eigenen Fällen ableiten

Ein fester Grenzwert wird erst aussagekräftig, wenn das Testset typische Fragen und schwierige Randfälle aus dem vorgesehenen Einsatzbereich enthält. Bewahren Sie Einzelurteile und Fehlstellen neben den Scores auf: Ein Mittelwert über viele Fragen kann eine wichtige unbelegte Aussage oder einen regelmäßig zu spät platzierten Beleg verdecken. Vergleichen Sie Systemänderungen mit denselben Fällen, statt Veränderungen allein aus einem neuen Durchschnitt abzulesen.

Eine Forschungsübersicht zu Faithfulness-Metriken berichtet, dass Bewertungen durch Sprachmodelle häufig besonders stark mit menschlichen Urteilen korrelieren. Daraus ergibt sich kein universeller Grenzwert für den eigenen Dokumentbestand. Eine menschlich geprüfte Stichprobe hilft besonders dort, wo eine Behauptung mehrere Chunks benötigt oder die Relevanz eines Treffers strittig ist. Im Protokoll bleibt dann nachvollziehbar, ob ein schlechter Wert auf eine unbelegte Aussage, einen irrelevanten Treffer oder dessen ungünstige Position zurückgeht.

Lesen Sie auch:

Teilen:

Newsletter abonnieren

Erhalten Sie die neuesten Nachrichten zu Web3, KI und Krypto direkt in Ihren Posteingang.

0