CommunitySchreiben & Editierengithub.com

zhichao1208/reduce-hallucination

Auditiere LLM-Agenten auf Halluzinationen mittels Verhörwissenschaftlicher Methoden. Verankern, zitieren, enthalten. Eine offene Agenten-Fertigkeit.

Was ist reduce-hallucination?

Diese Fertigkeit bietet ein umfassendes Audit-Protokoll, um Halluzinationen in LLM-Agenten zu erkennen und zu beheben. Sie basiert auf Techniken der Verhörwissenschaft, die dazu dienen, sachkundige Zeugen zur Wahrheitsaussage zu bewegen. Jeder LLM-Knoten wird als Zeuge betrachtet, die Übergabe zwischen Knoten als Transkription von Aussagen und Benutzerkorrekturen sowie Aufgabenaufzeichnungen als physische Beweise. Der Ansatz definiert drei eiserne Regeln (keine Anklage ohne Beweis, Oberflächensignale beweisen keine Wahrheit, Selbstkorrektur benötigt ein neues externes Signal) und drei Säulen einer guten Zitierung (treu, relevant, unterstützend). Das Protokoll umfasst fünf Phasen: Befragung jedes Zeugen auf rote Flaggen in Prompt und Schema, Audit der Transkription (Knotengrenzen/Datenfluss), Abgleich mit physischen Beweisen, priorisierte Korrekturen (von Prompt/Code-Validatoren bis hin zu LLM-Kreuzverhör-Knoten) und die Erstellung eines abschließenden Berichts. Die Fertigkeit ist für Entwickler von LLM-basierten Agenten (z. B. mit Claude Code, Cursor, Codex) konzipiert, die die Zuverlässigkeit, Korrektheit und Transparenz ihrer Systeme verbessern möchten.

Funktioniert mit~Claude Code~Codex CLI~Cursor
npx skills add zhichao1208/reduce-hallucination

Installed? Explore more Schreiben & Editieren skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

Halluzinationen reduzieren

Verwandle die bewährten Techniken der Verhörwissenschaft, mit denen ein sachkundiger Zeuge zur Wahrheitsaussage gebracht wird, in ein Standard-Audit für LLM-Agenten. Jeder LLM-Knoten ist ein Zeuge. Die Übergabe zwischen Knoten ist die Transkription der Aussagen. Benutzerkorrekturen und Aufgabenaufzeichnungen sind physische Beweise.

Theorie und Belege befinden sich in references/. Lies references/research-map.md für die Zitate hinter jeder Behauptung.

Drei eiserne Regeln

  1. Keine Anklage ohne Beweis (Wellmans Regel). Jeder Befund muss den tatsächlichen Prompt, das Schema oder die Ausgabe zitieren, um die es geht. Ein Verdacht ohne Zitat kommt in eine „zu überprüfende“ Liste, nicht in die Befunde.
  2. Oberflächensignale beweisen keine Wahrheit. Fließender, selbstbewusster, detaillierter Text ist nicht korrekter als knapper Text. Menschen erkennen Täuschung anhand des Verhaltens etwa auf Zufallsniveau. Beurteile nur den Inhalt: Verankerung, Konsistenz, ob die zitierte Textstelle existiert.
  3. Selbstkorrektur benötigt ein neues externes Signal. „Bist du sicher? Überprüfe noch einmal“ ohne neue Beweise verschlechtert die Genauigkeit. Jede erneute Überprüfung muss abgerufene Ergebnisse oder Validator-Output einspritzen.

Die drei Säulen einer guten Zitierung

Die Zitierqualität zerfällt in drei Prüfungen, in aufsteigender Schwierigkeit und Wertigkeit:

SäuleFrageStatus heute
TreuIst das Zitat wortgetreu echt und die Behauptung nicht erfunden?Weitgehend lösbar: wörtlicher String-Abgleich + Enthaltung.
RelevantIst die Quelle thematisch zur Frage passend?Weitgehend lösbar: Retrieval-Qualität + Konsistenzabfragen.
UnterstützendUnterstützt die Quelle die Behauptung, widerspricht ihr oder bleibt neutral?Die Grenzregion. Schwierig, und die seltene Klasse „widerspricht“ ist die schwächste Stelle der Systeme.

Ein Zitat, das sich auf eine echte, thematisch passende Passage bezieht, aber die Behauptung nicht tatsächlich stützt („Fehlverankerung“), ist schlimmer als kein Zitat, weil es Vertrauen in eine falsche Behauptung erzeugt und die einzige funktionierende Verteidigung des Prüfers (die Inhaltsprüfung) entwaffnet. Ein Zitat zu zeigen, ohne es backend zu verifizieren, macht Halluzinationen gefährlicher, nicht weniger.

Audit-Protokoll

Phase 1 — Jeden Zeugen befragen (Prompt + Schema rote Flaggen)

Für jeden LLM-Knoten die Liste der roten Flaggen durchgehen. Jede Flagge ist ein Verstoß gegen Verhörtechniken.

#Rote Flagge (worauf achten)Warum es wichtig istSchaden
R1Ein Enum-Feld ohne null / unknown-Option; eine einseitige Anweisung „gib eine Bestätigung von X aus“.Eine Antwort erzwingen erzeugt Compliance (Analogon zu falschem Geständnis).Erzwungenes Raten, selbstbewusste Erfindung.
R2Der Prosa gewährt eine Enthaltung („verwende null, falls fehlend“), aber das Schema hat kein null.Das Schema gewinnt, die Enthaltung ist ungültig.Lautlose Erfindung.
R3Der Prompt fordert Belege/Zitate, aber nichts downstream prüft sie.Sagen ohne zu verifizieren lehrt das Modell, überzeugendere Zitate zu erfinden.Gefälschte Anker.
R4Richtungsweisende Anweisungen: „sei konservativ“, „nimm an“, „schließe aus“, „standardmäßig“.Einseitige Annahme; kombiniert mit R1 erzeugt es systematische Verzerrung.Ergebnis in eine Richtung verzerrt.
R5Ein aggregiertes Feld ohne definierte Einheit („Gesamtjahre“, „Gesamtpunktzahl“).Eine Messung braucht ihre Einheit, bevor sie festgelegt werden kann.Definitionskonflikt wird als Extraktionsfehler gelesen.
R6Wenige Beispiele, die nicht aufgabenbezogen sind oder zitationsfreies Denken modellieren.Beispiele setzen die Erwartung für eine „gute“ Antwort.Lehrt den falschen Ausgabestil.
R7Der Prompt behauptet, der Knoten könne etwas, wofür er kein Werkzeug hat.Falsche Prämisse.Erfundene Prozessdarstellung.
R8Eine vom Benutzer oder einem vorgelagerten Knoten übergebene „Tatsache“, die ohne Quellenmarkierung als Wahrheit verwendet wird.Nur mit verifizierten Beweisen konfrontieren.Prämissenverschmutzung.
R9Eine Vorlage mit einem Pflichtfeld ohne leeren Zweig.Die Vorlagenversion einer erzwungenen Antwort.Eine leere Stelle wird mit dem nächsten Wert gefüllt.
R10Erneute Überprüfung / Wiederholung aggressiv formuliert („Du hattest Unrecht, korrigiere es“) ohne neue Beweise.Unterwürfigkeit kippt korrekte Antworten.Richtige Antworten werden umgestoßen.

Jeden Eintrag erfassen als: Knoten | R# | zitierter Text | einzeilige Konsequenz.

Phase 2 — Die Transkription prüfen (Knotengrenzen / Datenfluss)

Hier passieren die meisten Pipeline-Halluzinationen. Zeichne den Datenfluss und überprüfe jede Kante:

  1. Überschreitet Unsicherheit die Grenze? Upstream-confidence / missing_fields / null / Notizen — konsumiert irgendetwas downstream diese, oder glättet eine Vorlage sie zu einer Behauptung? Achte auf „tote“ Unsicherheit: produziert, aber nie gelesen.
  2. Geht die Herkunft verloren? Ein Wert, den das upstream-Denken als „angenommen/abgeleitet“ eingesteht, wird downstream zu einer unmarkierten Tatsache. Das Schema sollte stated | inferred | absent tragen.
  3. Kreuzen sich Tatsachenkategorien? Konfigurations- oder Anforderungsdaten werden so dargestellt, als ob der Benutzer/das Dokument sie behauptet hätte.
  4. Ändert ein Aggregat die Einheit? „medizinische Gesamtjahre“ upstream wird zu „Jahre als Titel X“ downstream.
  5. Führt das LLM deterministische Berechnungen durch? Datumsarithmetik, Summen, Zählungen in einem Prompt sollten in einen Code-Schritt verlagert werden.

Phase 3 — Physische Beweise abgleichen (wenn Aufgabenaufzeichnungen existieren)

  1. Zwischenergebnisse der Knoten für eine Stichprobe von Aufgaben ziehen (bevorzugt solche mit Benutzerkorrekturen oder Fehlern).
  2. Endausgabe mit den Zwischenergebnissen jedes Knotens und der rohen Eingabe Feld für Feld vergleichen; lokalisieren, an welcher Grenze die Wahrheit zuerst verloren ging.
  3. Frühere inkonsistente Aussagen finden: dasselbe Feld, das sich über Knoten hinweg widerspricht.
  4. Wenn Korrekturen richtungsweisend sind (systematisch in eine Richtung), Phase-1-R4-Richtlinien erneut prüfen; zufällige Fehler deuten eher auf Eingabequalität hin.
  5. Ehrlich klassifizieren: „Information, die nie in der Quelle war“ (eine Prozesslücke, keine Halluzination) vs. „Information, die in der Eingabe war, aber falsch angegeben wurde“ (eine echte Halluzination).

Phase 4 — Priorisierte Korrekturen (nach ROI)

Schicht 1 — Prompt / Schema (keine strukturelle Änderung)

  • Jedes R1/R2 → ein null/unknown-Enum + eine entstigmatisierende Zeile hinzufügen („X ist eine korrekte, erwartete Antwort“).
  • Jedes R9 → einen leeren Zweig zur Vorlage hinzufügen (Behauptung wird zu einer offenen Frage).
  • Jedes R5 → die Einheit aufteilen oder einen Bereich {floor, ceiling} ausgeben.
  • Jedes R3 → ein {value, source, evidence_quote}-Tupel zu tragenden Feldern hinzufügen.

Schicht 2 — Ein deterministischer Code-Validator (keine LLM-Kosten)

ValidatorPrüft
Enum-WhitelistFeldwert ist in der erlaubten Menge.
Zitat-Stringmatchevidence_quote existiert wortwörtlich in der zitierten Quelle; falls nicht, ablehnen oder herabstufen.
Querfeld-KonsistenzSummen stimmen überein; missing_fields widerspricht nicht gefüllten Werten.
EinheitsberechnungDatumsdifferenzen / Summen in Code erledigt; das LLM macht nur semantische Extraktion.
AustrittsvertragJeder benutzersichtbare Tatsachenplatz ist nicht leer und stammt aus einem erlaubten Quellfeld.

Platziere ihn vor jedem Knoten, der benutzersichtbaren Inhalt erzeugt. Bei Fehler eine Fallback-Flagge setzen und zu einer offenen Frage oder einem Menschen leiten.

Schicht 3 — Ein LLM-Kreuzverhör-Knoten (LM-vs-LM)

  • Ein separater Knoten, der nur die zu prüfende Ausgabe plus das Quelldokument erhält (nicht den verunreinigenden Kontext).
  • Formuliere die Aufgabe als Widerlegung: „Versuche zu widerlegen: Lässt sich jede Behauptung in dieser Ausgabe auf das Quelldokument zurückführen? Liste die Behauptungen auf, die dies nicht tun.“
  • Ausgabe {verdict, offending_claims[]}; bei risikoreichen Abläufen erneut fragen (neu angeordnet) und einen Konsens per Abstimmung ermitteln.
  • Kosten: +1 LLM-Aufruf pro Aufgabe — auf benutzersichtbare Ausgänge oder risikoreiche Entscheidungen beschränken.

Phase 5 — Der Bericht

# Halluzinations-Audit — {Agent}
## Einzeiliges Urteil
## Beweisübersicht (Knoten / geprüfte Version / Aufgabenstichprobe / Korrekturstichprobe + Richtung)
## Befunde (jeweils: Ort | R# | zitierter Text | Konsequenz | Korrektur #)
## Datenflusskarte und tote Kanäle
## Korrektur-Empfehlungen (Schicht 1/2/3, jeweils mit den Befunden markiert, die sie beseitigen)
## Zu überprüfen (Verdachtsfälle ohne genügend Beweise + wie man sie bekommt)
## Ehrliche Grenze (welche Korrekturen Prozesslücken sind, keine Halluzinationen; was dieses Audit nicht abgedeckt hat)

Unterstützend als die Grenzregion (optionale Erweiterung)

Treu + relevant sind das Minimum. Das offene Problem ist unterstützend: Unterstützt die zitierte Quelle die Behauptung, widerspricht ihr oder bleibt neutral? Zwei Anmerkungen aus der Forschung:

  • Modelliere es als Standpunkt plus Grad. Ein dreistufiger Standpunkt (folgert / widerspricht / neutral) übersieht teilweise oder bedingte Unterstützung, die den Großteil von Regulierungs- und Rechtstexten ausmacht. Ein „teilweise/bedingt“-Flag hinzufügen, das zur menschlichen Prüfung führt.
  • Unterstützend ist relativ zur Absicht. Dieselbe Passage unterstützt „wir halten uns daran“ und widerspricht „wir haben eine Lücke“, je nachdem, was der Benutzer argumentiert. Wenn Standpunkt oder Absicht unsicher sind, sowohl eine unterstützende als auch eine widersprechende Quelle zeigen und den Benutzer wählen lassen. Die Richtung als Einladung zur Überprüfung darstellen, nicht als Urteil.

Erinnerungen

  • Wenn ein Prompt „schockierend schlecht“ ist, zuerst prüfen, ob es sich um automatisch generierte Boilerplate handelt (wiederholte Rolle/Ziel/Aufgabe ist der Hinweis). „Ein systematisches Problem mit diesem Generator“ ist besser, als denselben Fehler pro Agent aufzulisten.
  • Innerhalb eines Agenten kontrastieren: Welche Felder sind sauber und welche scheitern. Der Unterschied ist normalerweise die Antwort (Felder mit einer unknown-Option sind tendenziell sauber).
  • Den Bericht durch einen Klartext-Lektoratsschritt laufen lassen: Ein Befund muss für jemanden lesbar sein, der die Theorie nicht gelesen hat.

Verwandte Fertigkeiten

Teil einer kleinen Familie offener Agenten-Fertigkeiten für vertrauenswürdige, klare Kommunikation:

  • reduce-hallucination — LLM-Agenten auditieren; verankern, zitieren, enthalten.
  • better-doc — Klassischer Stil + Smart Brevity.
  • numbers — Zahlen bedeutungsvoll machen und sauber darstellen.

Verwandte Skills