[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"portal-settings:stajic:de":3,"public-menus:all":37,"post:rag-failed-but-which-layer-actually-failed-a-diagnostic-method:de":204,"related:post:rag-failed-but-which-layer-actually-failed-a-diagnostic-method:de:1":1682},{"statusCode":4,"data":5,"message":36},200,{"tenantId":6,"lang":7,"defaultLang":7,"siteUrl":8,"contactEmail":9,"brandName":10,"logoUrl":11,"siteName":10,"siteDescription":12,"ogImage":9,"robotsIndex":13,"socialLinks":9,"reservedSlugs":9,"seoPolicy":14},"stajic","de","https:\u002F\u002Fstajic.de",null,"Stajic Platform","\u002FLogo_Planet.svg","Stajic Portal",true,{"branding":15,"relatedContent":16,"crossDomainLinks":17},{"logoUrl":11},{"enabled":13},[18,21,24,27,30,33],{"url":19,"label":20,"isActive":13,"showInFooter":13,"includeInSameAs":13},"https:\u002F\u002Ffigure.rocks","figure.rocks",{"url":22,"label":23,"isActive":13,"showInFooter":13,"includeInSameAs":13},"https:\u002F\u002Floving.rocks","loving.rocks",{"url":25,"label":26,"isActive":13,"showInFooter":13,"includeInSameAs":13},"https:\u002F\u002Fbazify.com","bazify.com",{"url":28,"label":29,"isActive":13,"showInFooter":13,"includeInSameAs":13},"https:\u002F\u002Fbazify.de","bazify.de",{"url":31,"label":32,"isActive":13,"showInFooter":13,"includeInSameAs":13},"https:\u002F\u002Fbazify.at","bazify.at",{"url":34,"label":35,"isActive":13,"showInFooter":13,"includeInSameAs":13},"https:\u002F\u002Fbazify.ba","bazify.ba","Portal settings resolved",[38,44],{"id":39,"name":40,"location":41,"isActive":13,"isDefault":42,"items":43},1,"main-navigation","header",false,[],{"id":45,"name":46,"location":47,"isActive":13,"isDefault":13,"items":48},4,"main-menu","sidebar",[49,65,78,92,102,117,132],{"id":50,"title":51,"url":59,"target":60,"icon":61,"isActive":13,"type":62,"productId":9,"categoryId":9,"shopCategoryId":9,"articleId":9,"pageId":63,"portfolioId":9,"children":64},"item-18",{"de":52,"en":53,"es":54,"fr":55,"it":53,"ru":56,"sr":57,"zh":58},"Startseite","Home","Inicio","Accueil","Главная","Почетна","首页","\u002Ffull-stack-web-developer-munich-performance-seo-and-maintainable-builds","_self","i-lucide-home","page",111,[],{"id":66,"title":67,"url":74,"target":60,"icon":75,"isActive":13,"type":62,"productId":9,"categoryId":9,"shopCategoryId":9,"articleId":9,"pageId":76,"portfolioId":9,"children":77},"item-22",{"de":68,"en":68,"es":69,"fr":68,"it":70,"ru":71,"sr":72,"zh":73},"Vision","Visión","Visione","Видение","Визија","想象","\u002Fueber-uns-webdesign-muenchen-webaplikation","i-lucide-eye",113,[],{"id":79,"title":80,"url":88,"target":60,"icon":89,"isActive":13,"type":62,"productId":9,"categoryId":9,"shopCategoryId":9,"articleId":9,"pageId":90,"portfolioId":9,"children":91},"item-19",{"de":81,"en":82,"es":83,"fr":82,"it":84,"ru":85,"sr":86,"zh":87},"Leistungen","Services","Servicios","Servizi","Услуги","Услуге","服务","\u002Fservices-dienstleistungen-muenchen","i-lucide-wrench",116,[],{"id":93,"title":94,"url":98,"target":60,"icon":99,"isActive":13,"type":62,"productId":9,"categoryId":9,"shopCategoryId":9,"articleId":9,"pageId":100,"portfolioId":9,"children":101},"item-23",{"de":95,"en":95,"es":95,"fr":95,"it":95,"ru":96,"sr":96,"zh":97},"Blog","Блог","博客","\u002Fblog","i-lucide-book-open",112,[],{"id":103,"title":104,"url":113,"target":60,"icon":114,"isActive":13,"type":62,"productId":9,"categoryId":9,"shopCategoryId":9,"articleId":9,"pageId":115,"portfolioId":9,"children":116},"item-32",{"de":105,"en":106,"es":107,"fr":108,"it":109,"ru":110,"sr":111,"zh":112},"Neue Technologien","New Technologies","Nuevas tecnologías","Nouvelles technologies","Nuove tecnologie","Новые технологии","Нове технологије","新技术！","\u002Fneue-webtechnologien","i-lucide-sparkles",122,[],{"id":118,"title":119,"url":128,"target":60,"icon":129,"isActive":13,"type":62,"productId":9,"categoryId":9,"shopCategoryId":9,"articleId":9,"pageId":130,"portfolioId":9,"children":131},"item-20",{"de":120,"en":121,"es":122,"fr":123,"it":124,"ru":125,"sr":126,"zh":127},"Kontakt","Contact us!","Contacto","Contact","Contatto","Контакт","Контактирајте нас","联系我们！","\u002Fcontact","i-lucide-mail",115,[],{"id":133,"title":134,"url":143,"target":60,"icon":144,"isActive":13,"type":62,"productId":9,"categoryId":9,"shopCategoryId":9,"articleId":9,"pageId":145,"portfolioId":9,"children":146},"item-21",{"de":135,"en":136,"es":137,"fr":138,"it":139,"ru":140,"sr":141,"zh":142},"Unsere Arbeit","Our Work","Nuestro trabajo","Nos réalisations","I nostri lavori","Наши работы","Наши радови","文件夹","\u002Fportfolio","i-lucide-briefcase",114,[147,160,174,180,192],{"id":148,"title":149,"url":143,"target":60,"icon":158,"isActive":13,"type":62,"productId":9,"categoryId":9,"shopCategoryId":9,"articleId":9,"pageId":145,"portfolioId":9,"children":159},"item-24",{"de":150,"en":151,"es":152,"fr":153,"it":154,"ru":155,"sr":156,"zh":157},"Alle Projekte","All Projects","Todos los proyectos","Tous les projets","Tutti i progetti","Все проекты","Сви пројекти","所有项目","i-lucide-grid-3x3",[],{"id":161,"title":162,"url":170,"target":60,"icon":171,"isActive":13,"type":172,"productId":9,"categoryId":9,"shopCategoryId":9,"articleId":9,"pageId":9,"portfolioId":9,"children":173},"item-29",{"de":163,"en":164,"es":165,"fr":166,"it":167,"ru":168,"sr":169,"zh":142},"Local Roots, Global Reach","Local Roots - Global Reach","Empresa local ","Entreprise locale","Azienda locale","Местная компания","Локално предузеће глобално тржиште","\u002Fportfolio\u002Flocal-roots-global-reach-communication-media-systems-for-modern-business","i-lucide-folder","custom",[],{"id":175,"title":176,"url":178,"target":60,"icon":171,"isActive":13,"type":172,"productId":9,"categoryId":9,"shopCategoryId":9,"articleId":9,"pageId":9,"portfolioId":9,"children":179},"item-28",{"de":177,"en":177,"es":177,"fr":177,"it":177,"ru":177,"sr":177,"zh":177},"Solr Suggester","\u002Fportfolio\u002Fsolr-fuzzy-suggester-und-solr-infix-suggester-abfrage-ueber-ajax-und-filterung",[],{"id":181,"title":182,"url":190,"target":60,"icon":171,"isActive":13,"type":172,"productId":9,"categoryId":9,"shopCategoryId":9,"articleId":9,"pageId":9,"portfolioId":9,"children":191},"item-27",{"de":183,"en":184,"es":185,"fr":186,"it":187,"ru":188,"sr":189,"zh":184},"Firmenwebseite SEO","Company Website SEO","Sitio web corporativo SEO","Site web d’entreprise SEO","Sito web aziendale SEO","Корпоративный сайт SEO","Пословна веб-страница SEO","\u002Fportfolio\u002Fseo-sem-branding-mobile-webseite-muenchen",[],{"id":193,"title":194,"url":202,"target":60,"icon":171,"isActive":13,"type":172,"productId":9,"categoryId":9,"shopCategoryId":9,"articleId":9,"pageId":9,"portfolioId":9,"children":203},"item-31",{"de":195,"en":196,"es":197,"fr":198,"it":199,"ru":200,"sr":201,"zh":196},"Digitalisierungsportal","Digitalization Portal","Portal de digitalización","Portail de numérisation","Portale di digitalizzazione","Портал цифровизации","Портал за дигитализацију","\u002Fportfolio\u002Fdigitalisierungsportal-archiv-museum-bibliothek-ead-lido-mets-mods",[],{"statusCode":4,"data":205,"message":1681},{"id":206,"title":207,"slug":208,"content":209,"contentJson":210,"excerpt":834,"featuredImage":835,"featuredImageAlt":836,"featuredImageCaption":9,"featuredImageTitle":9,"featuredImageCopyright":9,"featuredImageAuthor":9,"featuredImageSourceUrl":9,"featuredImageLicense":9,"featuredImageIsAiGenerated":42,"status":837,"publishedAt":838,"createdAt":839,"updatedAt":840,"seoLocalePaths":841,"categories":850,"author":863,"translations":868},"469","RAG fehlgeschlagen – aber welche Ebene ist tatsächlich fehlgeschlagen? Eine diagnostische Methode","rag-failed-but-which-layer-actually-failed-a-diagnostic-method","{\"time\":1790369108749,\"blocks\":[{\"id\":\"intro\",\"type\":\"paragraph\",\"data\":{\"text\":\"Ein RAG-System liefert eine schwache, falsche, unvollständige oder unbelegte Antwort. Die übliche Diagnose lautet „Retrieval fehlgeschlagen“ oder „das Modell hat halluziniert“. Beide Bezeichnungen sind zu unspezifisch, um nützlich zu sein. Eine Produktions-RAG-Pipeline kann vor dem Retrieval, während des Retrievals, beim Ranking, bei der Kontextzusammenstellung, während der Generierung oder nach der Generierung fehlschlagen, wenn Evidenz und Validität geprüft werden.\"},\"tunes\":{}},{\"id\":\"direct\",\"type\":\"callout\",\"data\":{\"variant\":\"info\",\"title\":\"Direkte Antwort\",\"body\":\"\u003Cstrong>Debuggen Sie RAG nicht als eine Komponente.\u003C\u002Fstrong> Diagnostizieren Sie es als eine Kette unabhängig testbarer Schichten. Stellen Sie zuerst fest, ob die erforderliche Evidenz in einer autoritativen Quelle existiert. Testen Sie dann die Query-Konstruktion, das Kandidaten-Retrieval, das Ranking, die Kontextzusammenstellung, die Generierung, die Evidenzzuordnung und die Aktualität. Die schnellste Isolierungstechnik ist ein \u003Cstrong>Oracle-Kontext-Test\u003C\u002Fstrong>: Geben Sie dem Generator die korrekte Evidenz manuell. Wird die Antwort korrekt, liegt der dominante Fehler vor der Generierung. Bleibt sie falsch, ist das Retrieval nicht das primäre Problem.\"},\"tunes\":{}},{\"id\":\"model-note\",\"type\":\"callout\",\"data\":{\"variant\":\"note\",\"title\":\"Über das diagnostische Modell\",\"body\":\"Der RAG Failure Stack in diesem Artikel ist ein praktisches diagnostisches Modell, kein formaler Industriestandard. Bestehende Plattformen trennen bereits reine Retrieval-Metriken von Retrieve-and-Generate-Metriken; dieses Modell erweitert diese Trennung zu einer schrittweisen Produktions-Debugging-Methode.\"},\"tunes\":{}},{\"id\":\"toc\",\"type\":\"tableOfContents\",\"data\":{\"title\":\"Inhalt\",\"minLevel\":2,\"maxLevel\":3},\"tunes\":{}},{\"id\":\"h-not-diagnosis\",\"type\":\"header\",\"data\":{\"text\":\"Warum „RAG ist fehlgeschlagen“ keine Diagnose ist\",\"level\":2},\"tunes\":{}},{\"id\":\"p-not-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"Retrieval-augmentierte Generierung kombiniert mehrere Mechanismen: Eine Benutzeranfrage wird interpretiert, eine oder mehrere Suchen werden konstruiert, Kandidatenmaterial wird abgerufen, Ergebnisse werden gefiltert oder neu gerankt, ausgewählte Evidenz wird in einen Modellkontext eingefügt und ein Modell generiert eine Antwort. Produktionssysteme können Berechtigungen, Metadatenfilter, Aktualitätsregeln, Zitate, Query-Rewriting, hybride Suche, Tool-Aufrufe, Speicher und externen Zustand hinzufügen.\"},\"tunes\":{}},{\"id\":\"p-not-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"Eine falsche endgültige Antwort sagt daher nicht, welche Komponente fehlgeschlagen ist. Das Modell kann die falsche Evidenz erhalten haben. Es kann die richtige Evidenz mit zu viel Rauschen vermischt erhalten haben. Die Evidenz kann korrekt, aber veraltet sein. Die Quelle kann die Antwort nie enthalten haben. Oder das Modell hat einen völlig ausreichenden Kontext ignoriert.\"},\"tunes\":{}},{\"id\":\"p-not-3\",\"type\":\"paragraph\",\"data\":{\"text\":\"OpenAIs RAG-Leitfaden unterscheidet bereits grundlegend zwischen Retrieval-Fehler und Modellfehler: Ein System kann den falschen Kontext liefern oder den richtigen Kontext liefern und trotzdem die falsche Antwort generieren. AWS trennt ebenso die reine Retrieval-Bewertung von der Retrieve-and-Generate-Bewertung. Für die Produktionsdiagnose sollte diese Unterscheidung weitergeführt werden.\"},\"tunes\":{}},{\"id\":\"h-stack\",\"type\":\"header\",\"data\":{\"text\":\"Der RAG Failure Stack\",\"level\":2},\"tunes\":{}},{\"id\":\"table-stack\",\"type\":\"table\",\"data\":{\"withHeadings\":true,\"stretched\":false,\"content\":[[\"Schicht\",\"Frage\",\"Typischer Fehler\"],[\"1. Quellenabdeckung\",\"Existiert die erforderliche Evidenz in einer zulässigen autoritativen Quelle?\",\"Das Korpus kann die Frage überhaupt nicht beantworten\"],[\"2. Query-Konstruktion\",\"Hat das System nach dem Richtigen gesucht?\",\"Absicht, Entitäten, Filter, Sprache oder Zeitbeschränkungen gehen verloren\"],[\"3. Kandidaten-Retrieval\",\"Ist die relevante Evidenz in die Kandidatenmenge gelangt?\",\"Geringer Recall; der richtige Chunk wird nie abgerufen\"],[\"4. Ranking &amp; Filterung\",\"Hat die richtige Evidenz überlebt und hoch genug gerankt?\",\"Relevante Evidenz wird vergraben, herausgefiltert oder von oberflächlich ähnlichem Text überragt\"],[\"5. Kontextzusammenstellung\",\"Hat das Modell nutzbare Evidenz erhalten?\",\"Abschneiden, schlechte Chunk-Grenzen, Duplikate, widersprüchliche Passagen oder Kontextüberlastung\"],[\"6. Generierung\",\"Hat das Modell die gelieferte Evidenz korrekt genutzt?\",\"Unbelegte Schlussfolgerung, Instruktionsfehler, Denkfehler oder Verweigerungsfehlanpassung\"],[\"7. Evidenzzuordnung\",\"Kann die Antwort auf die Evidenz zurückgeführt werden, die sie zu nutzen behauptet?\",\"Fehlende, schwache oder falsche Zitate; Behauptungen übersteigen die abgerufene Unterstützung\"],[\"8. Validität &amp; Aktualität\",\"Ist die Evidenz jetzt noch für diese Frage gültig?\",\"Korrekte historische Evidenz wird außerhalb ihrer Gültigkeitszeit, Version, Gerichtsbarkeit oder ihres Zustands wiederverwendet\"]]},\"tunes\":{}},{\"id\":\"h-source\",\"type\":\"header\",\"data\":{\"text\":\"Schicht 1 — Quellenabdeckung: Kann das System dies überhaupt beantworten?\",\"level\":3},\"tunes\":{}},{\"id\":\"p-source-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"Bevor Sie Embeddings, Reranker oder Prompts optimieren, verifizieren Sie, dass die Antwort im Wissensraum existiert, den das System nutzen darf. Das klingt offensichtlich, aber viele RAG-Fehler sind tatsächlich Korpus-Fehler. Die angeforderte Tatsache kann fehlen, in einem nicht indexierten Anhang verborgen sein, nur in einem neueren Dokument verfügbar sein, in einem System außerhalb des RAG-Korpus gespeichert sein oder durch Berechtigungen blockiert werden.\"},\"tunes\":{}},{\"id\":\"p-source-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"Eine Retrieval-Metrik kann Informationen nicht wiederherstellen, die nie indexiert wurden. Ein größeres Top-k kann kein Dokument abrufen, das die Pipeline nicht enthält. Wenn der Quellenabdeckungstest fehlschlägt, ist die richtige Lösung Ingestion, Quellenauswahl, Berechtigungen oder ein explizites Verhalten „nicht beantwortbar aus verfügbarer Evidenz“.\"},\"tunes\":{}},{\"id\":\"source-warning\",\"type\":\"callout\",\"data\":{\"variant\":\"warning\",\"title\":\"Fehlermuster\",\"body\":\"Teams optimieren das Retrieval oft anhand von Fragen, die das Korpus tatsächlich nicht beantworten kann. Dadurch kann der Retriever besser darin werden, verwandten Text zu finden, während die zugrunde liegende Informationslücke unberührt bleibt.\"},\"tunes\":{}},{\"id\":\"h-query\",\"type\":\"header\",\"data\":{\"text\":\"Schicht 2 — Query-Konstruktion: Hat das System dem Korpus die richtige Frage gestellt?\",\"level\":3},\"tunes\":{}},{\"id\":\"p-query-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"Die Benutzeranfrage ist nicht immer die Retrieval-Anfrage. Produktionssysteme schreiben Fragen um, lösen Pronomen auf, extrahieren Entitäten, übersetzen Sprachen, fügen Metadatenbeschränkungen hinzu, teilen komplexe Fragen auf oder generieren mehrere Suchen. Jede Transformation kann das Retrieval verbessern, aber jede Transformation kann auch Informationen zerstören.\"},\"tunes\":{}},{\"id\":\"p-query-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"Eine Anfrage wie „Gilt die Richtlinie nach dem September-Update noch für Auftragnehmer in Deutschland?“ enthält mindestens eine Entität, eine Population, eine Gerichtsbarkeit und eine Zeitgrenze. Eine umgeschriebene Anfrage, die zu „Auftragnehmer-Richtlinie“ wird, kann semantisch verwandten Text abrufen, während die Variablen verloren gehen, die entscheiden, ob die Antwort gültig ist.\"},\"tunes\":{}},{\"id\":\"h-retrieval\",\"type\":\"header\",\"data\":{\"text\":\"Ebene 3 — Kandidatenabruf: Ist der relevante Beleg in die Menge gelangt?\",\"level\":3},\"tunes\":{}},{\"id\":\"p-ret-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"Der Kandidatenabruf ist in erster Linie ein Recall-Problem. Die diagnostische Frage lautet noch nicht, ob das beste Ergebnis an erster Stelle steht; sie lautet, ob relevanter Beleg irgendwo im Kandidatenpool aufgetaucht ist. Wenn die bekannte korrekte Quelle nicht erscheint, untersuchen Sie Indexierung, Chunking, Embeddings, lexikalisches Matching, Metadaten, hybride Suche, Sprachbehandlung, Synonyme und Query-Erweiterung.\"},\"tunes\":{}},{\"id\":\"p-ret-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"Hier ist die reine Retrieval-Evaluierung wertvoll. AWS stellt Kontextrelevanz und Kontextabdeckung für die reine Retrieve-only-RAG-Evaluierung bereit. Die wichtige Produktionsgewohnheit ist, das Retrieval vor der Generierung zu bewerten, damit eine ausgefeilte endgültige Antwort keine schwache Kandidatenmenge verbergen kann.\"},\"tunes\":{}},{\"id\":\"h-ranking\",\"type\":\"header\",\"data\":{\"text\":\"Ebene 4 — Ranking und Filterung: Wurde der richtige Beleg verworfen oder begraben?\",\"level\":3},\"tunes\":{}},{\"id\":\"p-rank-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"Ein System kann einen guten Recall haben und trotzdem scheitern, weil der relevante Beleg unter noisy aber semantisch ähnlichem Material rangiert. Reranker, Aktualitäts-Boosts, Autoritätsgewichtungen, Sprachpräferenzen, Mandantenfilters, Zugriffskontrollen, Produktstatusfilter und Deduplizierung verändern alle, was in den endgültigen Kontext überlebt.\"},\"tunes\":{}},{\"id\":\"p-rank-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"Das Debugging sollte daher die vollständige Kandidatenliste bewahren, nicht nur die endgültigen Top-k. Wenn der Gold-Beleg auf Rang 18 abgerufen und von einem Reranker entfernt wurde, ist die Lösung nicht dieselbe wie bei einem Retrieval-Fehler.\"},\"tunes\":{}},{\"id\":\"h-context\",\"type\":\"header\",\"data\":{\"text\":\"Ebene 5 — Kontextzusammenstellung: Wurde nützlicher Beleg zu nutzbarem Kontext?\",\"level\":3},\"tunes\":{}},{\"id\":\"p-ctx-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"Retrieval-Erfolg garantiert keinen Kontext-Erfolg. Relevante Chunks können abgeschnitten, von ihren Qualifikatoren getrennt, dupliziert werden, bis sie den Prompt dominieren, mit widersprüchlichen Versionen vermischt oder von genügend irrelevantem Text umgeben sein, sodass die entscheidende Passage an Salienz verliert.\"},\"tunes\":{}},{\"id\":\"p-ctx-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"Chunk-Grenzen sind besonders wichtig. Ein Satz kann die Regel enthalten, während der folgende Satz die Ausnahme enthält. Wenn sie getrennt indexiert werden und nur der erste abgerufen wird, kann der Retriever relevant erscheinen, während der zusammengestellte Kontext irreführend wird.\"},\"tunes\":{}},{\"id\":\"h-generation\",\"type\":\"header\",\"data\":{\"text\":\"Ebene 6 — Generierung: Kann das Modell korrekten Beleg korrekt nutzen?\",\"level\":3},\"tunes\":{}},{\"id\":\"p-gen-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"Sobald das System nachweislich ausreichenden Beleg geliefert hat, wird die Generierung unabhängig testbar. Das Modell kann überverallgemeinern, inkompatible Passagen kombinieren, eine negative Aussage ignorieren, das angeforderte Antwortformat nicht einhalten, eine Brücke zwischen Fakten erfinden oder aus parametrischem Gedächtnis statt aus dem abgerufenen Beleg antworten.\"},\"tunes\":{}},{\"id\":\"p-gen-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"Deshalb ist die End-to-End-Korrektheit allein für die Diagnose unzureichend. OpenAI empfiehlt Evaluierung als strukturierte Methode, um das Verhalten von Anwendungen zu verstehen, während Anthropics Leitfaden zur Agenten-Evaluierung mehrere Versuche, Bewerter, Traces und realistische Fehlerfälle betont. Für RAG sollte der Generator sowohl mit normalem Retrieval als auch mit kontrolliertem Gold-Kontext getestet werden.\"},\"tunes\":{}},{\"id\":\"h-evidence\",\"type\":\"header\",\"data\":{\"text\":\"Ebene 7 — Belegzuordnung: Wird die Antwort tatsächlich gestützt?\",\"level\":3},\"tunes\":{}},{\"id\":\"p-evidence-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"Eine plausible Antwort mit Zitaten kann dennoch schwach fundiert sein. Das zitierte Dokument kann für das Thema relevant sein, aber die spezifische Behauptung nicht stützen. Ein Satz kann gestützt sein, während ein anderer abgeleitet wird. Ein Zitat kann auf eine Quelle verweisen, die der Antwort widerspricht, sobald ihre Bedingungen gelesen werden.\"},\"tunes\":{}},{\"id\":\"p-evidence-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"Die Zitatbewertung gehört daher nach die Generierung. AWS unterscheidet zwischen Zitatpräzision und Zitatabdeckung: ob zitierte Passagen korrekt zitiert werden und ob die Antwort ausreichend durch Zitate gestützt wird. In der Produktion ist die Unterstützung auf Behauptungsebene nützlicher, als das Vorhandensein irgendeines Zitats als Belegqualität zu behandeln.\"},\"tunes\":{}},{\"id\":\"h-validity\",\"type\":\"header\",\"data\":{\"text\":\"Ebene 8 — Gültigkeit und Aktualität: War der Beleg für diese Version der Realität korrekt?\",\"level\":3},\"tunes\":{}},{\"id\":\"p-valid-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"RAG kann eine vollkommen authentische, hochrelevante, getreu zitierte Quelle abrufen und dennoch eine falsche Antwort produzieren, wenn die Quelle für die aktuelle Frage nicht mehr gültig ist. Richtlinien ändern sich. APIs werden veraltet. Preise bewegen sich. Softwareverhalten ändert sich zwischen Versionen. Produktbestände ändern sich. Berechtigungen ändern sich. Spiel-Patches ändern Mechaniken.\"},\"tunes\":{}},{\"id\":\"p-valid-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"Dies ist eine separate Fehlerklasse von Halluzination. Der Beleg ist real; seine Anwendbarkeit ist falsch. Ein robustes System benötigt daher Zeitstempel, Versions- oder Gerichtsbarkeitsmetadaten, wo relevant, Quellenautorität, Ablöseregeln und einen expliziten Mechanismus, um zu entscheiden, wann älterer Beleg eingeschränkt oder verworfen werden muss.\"},\"tunes\":{}},{\"id\":\"h-oracle\",\"type\":\"header\",\"data\":{\"text\":\"Die schnellste Isolationsmethode: der Oracle-Kontext-Test\",\"level\":2},\"tunes\":{}},{\"id\":\"p-oracle-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"Die nützlichste erste Aufteilung ist einfach: Stellen Sie dem Generator manuell eine kleine Menge von Belegen zur Verfügung, von denen Sie wissen, dass sie ausreichen, um die Frage zu beantworten. Lassen Sie die Aufgabe und die erwartete Antwort unverändert.\"},\"tunes\":{}},{\"id\":\"oracle-comparison\",\"type\":\"comparison\",\"data\":{\"title\":\"Oracle-Kontext-Test\",\"layout\":\"table\",\"columns\":[{\"id\":\"result\",\"label\":\"Ergebnis\"},{\"id\":\"meaning\",\"label\":\"Wahrscheinliche Interpretation\"},{\"id\":\"next\",\"label\":\"Nächster diagnostischer Schritt\"}],\"rows\":[{\"id\":\"oracle-pass\",\"label\":\"Antwort wird korrekt\",\"values\":[\"\",\"\",\"\"]},{\"id\":\"oracle-fail\",\"label\":\"Antwort bleibt falsch\",\"values\":[\"\",\"\",\"\"]},{\"id\":\"oracle-partial\",\"label\":\"Antwort verbessert sich, bleibt aber unvollständig\",\"values\":[\"\",\"\",\"\"]}]},\"tunes\":{}},{\"id\":\"oracle-tip\",\"type\":\"callout\",\"data\":{\"variant\":\"tip\",\"title\":\"Warum dieser Test so aussagekräftig ist\",\"body\":\"Der Oracle-Kontext-Test entfernt den größten Teil der Retrieval-Pipeline aus dem Experiment. Er beweist nicht, dass die Generierung perfekt ist, aber er liefert ein schnelles kontrafaktisches Szenario: \u003Cstrong>Was würde das Modell tun, wenn das Retrieval bereits erfolgreich gewesen wäre?\u003C\u002Fstrong>\"},\"tunes\":{}},{\"id\":\"h-sequence\",\"type\":\"header\",\"data\":{\"text\":\"Eine diagnostische Abfolge für den Produktivbetrieb\",\"level\":2},\"tunes\":{}},{\"id\":\"diag-flow\",\"type\":\"processFlow\",\"data\":{\"title\":\"Diagnostizieren Sie den Fehler vom Beleg bis zur Antwort\",\"orientation\":\"auto\",\"steps\":[{\"label\":\"1. Definieren Sie die erwartete Aussage\",\"description\":\"Schreiben Sie die erwartete Antwort, die zulässige Unsicherheit und die Belege auf, die sie rechtfertigen würden.\"},{\"label\":\"2. Überprüfen Sie die Quellenabdeckung\",\"description\":\"Bestätigen Sie, dass autoritative und zulässige Belege im indexierten oder erreichbaren Quellensatz vorhanden sind.\"},{\"label\":\"3. Führen Sie den Oracle-Kontext-Test durch\",\"description\":\"Geben Sie dem Generator ausreichende Gold-Belege direkt und beobachten Sie, ob die Antwort korrekt wird.\"},{\"label\":\"4. Untersuchen Sie die Retrieval-Abfrage\",\"description\":\"Prüfen Sie Umschreibungen, Entitäten, Filter, Sprache, Zeitbeschränkungen, Zerlegung und verborgene Annahmen.\"},{\"label\":\"5. Untersuchen Sie die Kandidaten vor dem Reranking\",\"description\":\"Stellen Sie fest, ob relevante Belege überhaupt abgerufen wurden, und notieren Sie ihren Rang.\"},{\"label\":\"6. Untersuchen Sie Ranking und Kontextzusammenstellung\",\"description\":\"Prüfen Sie Reranking, Metadatenfilter, Kürzung, Chunk-Grenzen, Duplikate, Konflikte und Top-k-Zusammensetzung.\"},{\"label\":\"7. Bewerten Sie Generierung und Zitate getrennt\",\"description\":\"Messen Sie Antwortkorrektheit, Vollständigkeit, Treue und Belegunterstützung auf Aussagenebene.\"},{\"label\":\"8. Testen Sie Gültigkeitsgrenzen\",\"description\":\"Prüfen Sie, ob Version, Datum, Zustand, Gerichtsbarkeit, Berechtigungen oder ablösende Belege die Antwort verändern.\"}]},\"tunes\":{}},{\"id\":\"h-one-change\",\"type\":\"header\",\"data\":{\"text\":\"Ändern Sie nicht drei Ebenen gleichzeitig\",\"level\":2},\"tunes\":{}},{\"id\":\"p-one-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"Ein häufiger Debugging-Fehler besteht darin, Embeddings, Chunk-Größen, Top-k, Prompts und das Modell in einer Iteration zu ändern. Wenn sich die Bewertung verbessert, wissen Sie nicht, warum. Wenn sie sich verschlechtert, wissen Sie nicht, welche Änderung die Regression verursacht hat.\"},\"tunes\":{}},{\"id\":\"p-one-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"Behandeln Sie RAG-Debugging wie eine experimentelle Diagnose: Halten Sie so viel von der Pipeline wie möglich konstant und ersetzen Sie eine unsichere Komponente durch eine kontrollierte Eingabe. Gold-Dokumente isolieren das Retrieval. Gold-Chunks isolieren die Chunk-Auswahl. Ein fester Kontext isoliert die Generierung. Ein festes Modell isoliert Retrieval-Änderungen. Ein fester Korpus isoliert Änderungen an Ingestion und Indexierung.\"},\"tunes\":{}},{\"id\":\"h-matrix\",\"type\":\"header\",\"data\":{\"text\":\"Eine Fehlermatrix für häufige RAG-Symptome\",\"level\":2},\"tunes\":{}},{\"id\":\"symptom-matrix\",\"type\":\"table\",\"data\":{\"withHeadings\":true,\"stretched\":false,\"content\":[[\"Symptom\",\"Wahrscheinlichste zuerst zu testende Ebenen\",\"Unterscheidender Test\"],[\"Keine relevante Quelle erscheint\",\"Quellenabdeckung → Abfrage → Kandidaten-Retrieval\",\"Durchsuchen Sie den Korpus manuell und untersuchen Sie dann die umgeschriebene Abfrage und ungefilterte Kandidaten\"],[\"Relevante Quelle erscheint, aber die Antwort ist falsch\",\"Kontextzusammenstellung → Generierung\",\"Oracle-Kontext-Test mit derselben Quelle, reduziert auf entscheidende Passagen\"],[\"Antwort ist manchmal korrekt, manchmal falsch\",\"Ranking → Kontextzusammenstellung → Variabilität der Generierung\",\"Wiederholen Sie Versuche und protokollieren Sie abgerufenen Satz, Rang, Prompt-Kontext und Modellausgabe\"],[\"Antwort zitiert das richtige Dokument, übertreibt es aber\",\"Generierung → Belegzuordnung → Gültigkeit\",\"Bewerten Sie jede Aussage anhand der exakt zitierten Passage\"],[\"Alte Informationen gewinnen immer wieder\",\"Ranking → Gültigkeit\u002FAktualität\",\"Vergleichen Sie mit Aktualitäts-\u002FAblösungsregeln und untersuchen Sie Metadaten\"],[\"Antwort verpasst eine Ausnahme\",\"Chunking → Kontextzusammenstellung\",\"Prüfen Sie, ob Regel und Ausnahme getrennt oder abgeschnitten wurden\"],[\"Mehr Top-k verschlechtert die Qualität\",\"Ranking → Kontextüberlastung\",\"Entfernen Sie Chunks mit geringem Wert und vergleichen Sie mit einem minimalen Belegsatz\"],[\"Modellwechsel behebt die Antwort\",\"Generierung, aber nicht unbedingt Retrieval\",\"Wiederholen Sie mit identischem abgerufenem Kontext über Modelle hinweg\"],[\"Embedding-Wechsel behebt die Antwort\",\"Retrieval\u002FRanking\",\"Halten Sie Generator und Kontextvorlage konstant und vergleichen Sie die Kandidaten-Recall\"]]},\"tunes\":{}},{\"id\":\"h-metrics\",\"type\":\"header\",\"data\":{\"text\":\"Messen Sie jede Ebene mit der Metrik, die sie tatsächlich beeinflussen kann\",\"level\":2},\"tunes\":{}},{\"id\":\"metrics-table\",\"type\":\"table\",\"data\":{\"withHeadings\":true,\"stretched\":false,\"content\":[[\"Ebene\",\"Nützliche Messungen\",\"Was nicht daraus geschlossen werden sollte\"],[\"Quellenabdeckung\",\"Quote beantwortbarer Fragen, Korpusabdeckung, Vollständigkeit der Ingestion\",\"Geben Sie nicht den Embeddings die Schuld für fehlendes Quellenmaterial\"],[\"Kandidaten-Retrieval\",\"Recall@k, Trefferquote, Kontextabdeckung\",\"Hoher Recall beweist keine Ranking-Qualität\"],[\"Ranking\",\"MRR, NDCG, Gold-Rang, Precision@k\",\"Gutes Ranking beweist nicht, dass der Generator die Belege genutzt hat\"],[\"Kontextzusammenstellung\",\"Belegbeibehaltung, Duplikation, Widerspruchsrate, Token-Auslastung\",\"Großer Kontext bedeutet nicht nützlichen Kontext\"],[\"Generierung\",\"Korrektheit, Vollständigkeit, Aufgabenerfolg, Treue\",\"Korrektheit allein beweist keine Fundierung\"],[\"Belegzuordnung\",\"Zitationspräzision, Zitationsabdeckung, Aussagenunterstützung\",\"Eine Zitationsanzahl ist keine Belegqualität\"],[\"Gültigkeit\",\"Aktualität, Genauigkeit der Ablösung, Übereinstimmung von Version\u002FGerichtsbarkeit\",\"Relevante Belege sind nicht automatisch anwendbare Belege\"]]},\"tunes\":{}},{\"id\":\"h-correct-answer\",\"type\":\"header\",\"data\":{\"text\":\"Eine korrekte Antwort kann dennoch einen RAG-Defekt verbergen\",\"level\":2},\"tunes\":{}},{\"id\":\"p-correct-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"Das umgekehrte Problem ist ebenfalls wichtig. Ein RAG-System kann die korrekte Antwort liefern, während das Retrieval defekt ist. Das Modell kennt die Antwort möglicherweise bereits aus dem Training, leitet sie aus schwachen Belegen ab oder rät richtig. Wenn die Evaluierung nur die endgültige Antwort betrachtet, kann das System gesund erscheinen, bis die Frage Informationen erreicht, die nur im privaten Korpus existieren.\"},\"tunes\":{}},{\"id\":\"p-correct-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"Dies ist dasselbe Zuverlässigkeitsproblem, das allgemeiner in Agentensystemen auftritt: Korrektheit des Ergebnisses reicht nicht aus, um zu beweisen, dass der Ausführungspfad zuverlässig war. Für RAG sollten Traces mindestens die Retrieval-Abfrage, den Kandidatensatz, das Ranking, den endgültigen Kontext, die Antwort, Zitate, Modellversion, Korpus-\u002FIndexversion und relevante Filter bewahren.\"},\"tunes\":{}},{\"id\":\"internal-reliability\",\"type\":\"referralArticle\",\"data\":{\"url\":\"https:\u002F\u002Fstajic.de\u002Fde\u002Fblog\u002Fai-agent-reliability-why-the-final-answer-is-not-enough\",\"title\":\"Zuverlässigkeit von KI-Agenten: Warum die endgültige Antwort nicht ausreicht\",\"excerpt\":\"Eine korrekte Ausgabe beweist weder korrektes Schlussfolgern noch sichere Ausführung oder ein vertrauenswürdiges System. Dieser Artikel erweitert dieses Prinzip von der RAG-Diagnose auf Agenten-Trajektorien und operative Assurance.\",\"ctaLabel\":\"Lesen Sie den verwandten Artikel\"},\"tunes\":{}},{\"id\":\"h-hypotheses\",\"type\":\"header\",\"data\":{\"text\":\"Verwenden Sie konkurrierende Hypothesen, nicht eine Lieblingserklärung\",\"level\":2},\"tunes\":{}},{\"id\":\"p-hyp-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"Wenn eine schlechte Antwort sofort zu einem „Embedding-Problem“ wird, ist die Untersuchung bereits voreingenommen. Eine stärkere Debugging-Methode schreibt konkurrierende Hypothesen auf, bevor das System geändert wird: fehlende Quelle, schlechtes Query-Rewriting, geringer Retrieval-Recall, schlechtes Reranking, Kontextkürzung, widersprüchliche Versionen, Generierungsfehler, Zitationsfehler oder veraltete Evidenz.\"},\"tunes\":{}},{\"id\":\"p-hyp-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"Wählen Sie dann einen Test, der diese Hypothesen trennen würde. Dies ist effizienter als das Sammeln weiterer Beispiele, die die erste Erklärung stützen. Dasselbe Prinzip gilt allgemein für KI-gestütztes technisches Denken: Eine nützliche Diagnose ist eine, die diskriminierende Tests übersteht, nicht eine, die lediglich plausibel klingt.\"},\"tunes\":{}},{\"id\":\"internal-reasoning\",\"type\":\"referralArticle\",\"data\":{\"url\":\"https:\u002F\u002Fstajic.de\u002Fde\u002Fblog\u002Ffrom-research-protocol-to-a-general-ai-reasoning-framework\",\"title\":\"Vom Forschungsprotokoll zu einem allgemeinen KI-Reasoning-Framework\",\"excerpt\":\"Eine domänenunabhängige Reasoning-Methode zur Trennung von Evidenz und Annahmen, zum Testen konkurrierender Hypothesen und zur Verwendung domänenspezifischer Validatoren.\",\"ctaLabel\":\"Das Reasoning-Framework lesen\"},\"tunes\":{}},{\"id\":\"h-change\",\"type\":\"header\",\"data\":{\"text\":\"Was würde diese Antwort ändern?\",\"level\":2},\"tunes\":{}},{\"id\":\"p-change-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"Die genauen Diagnoseschichten ändern sich mit der Architektur. Eine einfache Single-Document-RAG-Anwendung hat möglicherweise kein Query-Rewriting, keinen Reranker und keine Zitationsschicht. Ein agentisches Retrieval-System kann Planung, mehrere Suchen, Tool-Auswahl, Gedächtnis, Berechtigungen und iterative Evidenzsammlung hinzufügen. Eine strukturierte Datenbankabfrage verwendet möglicherweise überhaupt keine Chunks oder Embeddings.\"},\"tunes\":{}},{\"id\":\"p-change-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"Die Kernmethode bleibt bestehen: Identifizieren Sie die Komponenten, die das Ergebnis unabhängig verändern können, konstruieren Sie kontrollierte Tests, die unsichere Komponenten durch bekannt gute Eingaben ersetzen, und messen Sie jede Komponente mit Evidenz, die für diese Schicht geeignet ist.\"},\"tunes\":{}},{\"id\":\"h-limitations\",\"type\":\"header\",\"data\":{\"text\":\"Einschränkungen\",\"level\":2},\"tunes\":{}},{\"id\":\"p-limit-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"Reale Fehler sind oft gekoppelt. Eine schwache Query kann den Recall verringern, was das Reranking verändert, was den Kontext verändert, was die Generierungsvarianz erhöht. Der Oracle-Kontext-Test ist eine diagnostische Abkürzung, kein Beweis dafür, dass eine Komponente allein verantwortlich ist. Evaluierungsdatensätze können auch nicht repräsentativ sein, und modellbasierte Bewerter können eigene Fehler einführen.\"},\"tunes\":{}},{\"id\":\"p-limit-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"Der vorgeschlagene Stack wird daher am besten als Untersuchungsstruktur verwendet: die Pipeline protokollieren, Variablen isolieren, Fehler reproduzieren, konkurrierende Erklärungen testen und nach schichtweisen Korrekturen eine End-to-End-Evaluierung beibehalten.\"},\"tunes\":{}},{\"id\":\"h-conclusion\",\"type\":\"header\",\"data\":{\"text\":\"Fazit\",\"level\":2},\"tunes\":{}},{\"id\":\"p-conclusion-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"„RAG ist fehlgeschlagen“ sollte der Beginn der Untersuchung sein, nicht das Fazit. Eine nützliche Diagnose identifiziert, ob dem System die Evidenz fehlte, es falsch suchte, sie nicht abrufen konnte, sie schlecht einordnete, unbrauchbaren Kontext zusammenstellte, falsch generierte, Aussagen schlecht zuordnete oder Evidenz außerhalb ihrer Gültigkeitsgrenze anwendete.\"},\"tunes\":{}},{\"id\":\"p-conclusion-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"Die praktische Regel ist einfach: Ersetzen Sie Unsicherheit Schicht für Schicht durch kontrollierte Evidenz. Beginnen Sie mit dem Oracle-Kontext-Test. Trennen Sie die reine Retrieval-Evaluierung von der Generierungs-Evaluierung. Bewahren Sie den vollständigen Trace auf. Beheben Sie dann die Komponente, die tatsächlich fehlgeschlagen ist, anstatt den gesamten RAG-Stack nach Intuition abzustimmen.\"},\"tunes\":{}},{\"id\":\"h-faq\",\"type\":\"header\",\"data\":{\"text\":\"FAQ\",\"level\":2},\"tunes\":{}},{\"id\":\"faq\",\"type\":\"faq\",\"data\":{\"title\":\"RAG-Fehlerdiagnose\",\"items\":[{\"id\":\"faq1\",\"question\":\"Wie kann ich feststellen, ob das RAG-Retrieval oder das LLM fehlgeschlagen ist?\",\"answer\":\"Geben Sie dem Modell manuell eine kleine Menge bekanntermaßen korrekter Evidenz. Wenn die Antwort korrekt wird, untersuchen Sie Quellenabdeckung, Query-Konstruktion, Retrieval, Ranking und Kontextzusammenstellung. Wenn das Modell trotz ausreichender Evidenz weiterhin fehlschlägt, ist das Retrieval nicht das Hauptproblem.\"},{\"id\":\"faq2\",\"question\":\"Kann RAG fehlschlagen, obwohl das richtige Dokument abgerufen wurde?\",\"answer\":\"Ja. Die relevante Passage kann zu niedrig eingestuft, abgeschnitten, von einer Ausnahme getrennt, mit widersprüchlicher Evidenz vermischt, von irrelevantem Kontext überlagert oder vom Generator falsch verwendet werden.\"},{\"id\":\"faq3\",\"question\":\"Reicht die Korrektheit der Antwort aus, um ein RAG-System zu bewerten?\",\"answer\":\"Nein. Ein Modell kann trotz schwachem Retrieval eine korrekte Antwort erzeugen, indem es sich auf vorheriges Modellwissen oder Zufall verlässt. Bewerten Sie Retrieval und Evidenzunterstützung getrennt von der Korrektheit der endgültigen Antwort.\"},{\"id\":\"faq4\",\"question\":\"Was sollte ich beim Debuggen von RAG protokollieren?\",\"answer\":\"Protokollieren Sie mindestens die Benutzeranfrage, die transformierte Retrieval-Query, Filter, Kandidatendokumente und Ränge, den endgültig ausgewählten Kontext, Modell- und Prompt-Version, Antwort, Zitate, Korpus-\u002FIndexversion sowie Timing- oder Versionsmetadaten, die für die Aktualität relevant sind.\"},{\"id\":\"faq5\",\"question\":\"Behebt eine Erhöhung von top-k normalerweise RAG?\",\"answer\":\"Nicht zuverlässig. Eine größere Kandidaten- oder Kontextmenge kann den Recall verbessern, aber auch Rauschen, Widersprüche, Duplikate und Kontextüberlastung hinzufügen. Testen Sie, ob die relevante Evidenz fehlt, bevor Sie top-k erhöhen.\"}]},\"tunes\":{}},{\"id\":\"h-glossary\",\"type\":\"header\",\"data\":{\"text\":\"Glossar\",\"level\":2},\"tunes\":{}},{\"id\":\"glossary\",\"type\":\"glossary\",\"data\":{\"title\":\"Wichtige diagnostische Begriffe\",\"entries\":[{\"term\":\"Oracle-Kontext-Test\",\"definition\":\"Ein kontrollierter Test, bei dem dem Generator direkt bekannt ausreichende Evidenz gegeben wird, um festzustellen, ob der dominierende Fehler vor der Generierung liegt.\",\"anchor\":\"oracle-context-test\"},{\"term\":\"Kandidaten-Retrieval\",\"definition\":\"Die Phase, die eine anfängliche Menge potenziell relevanter Dokumente, Chunks, Datensätze oder Passagen vor dem endgültigen Ranking oder der Kontextzusammenstellung auswählt.\",\"anchor\":\"candidate-retrieval\"},{\"term\":\"Kontextzusammenstellung\",\"definition\":\"Der Prozess der Umwandlung abgerufener Evidenz in die tatsächliche Modelleingabe, einschließlich Reihenfolge, Kürzung, Deduplizierung, Formatierung und Token-Budget-Entscheidungen.\",\"anchor\":\"context-assembly\"},{\"term\":\"Treue\",\"definition\":\"Der Grad, in dem generierte Aussagen durch die abgerufene oder bereitgestellte Evidenz gestützt bleiben, anstatt nicht unterstützte Inhalte einzuführen.\",\"anchor\":\"faithfulness\"},{\"term\":\"Kontextabdeckung\",\"definition\":\"Ein retrievalorientiertes Maß dafür, ob die ausgewählte Evidenz die zur Beantwortung der Frage benötigten Informationen abdeckt.\",\"anchor\":\"context-coverage\"},{\"term\":\"Gültigkeitsgrenze\",\"definition\":\"Die Bedingungen, unter denen eine Aussage oder Antwort weiterhin anwendbar bleibt, wie Zeit, Version, Gerichtsbarkeit, Zustand, Population, Berechtigungen oder Quellenannahmen.\",\"anchor\":\"validity-boundary\"}]},\"tunes\":{}},{\"id\":\"h-sources\",\"type\":\"header\",\"data\":{\"text\":\"Primärquellen und weiterführende Literatur\",\"level\":2},\"tunes\":{}},{\"id\":\"src-openai-rag\",\"type\":\"linkTool\",\"data\":{\"link\":\"https:\u002F\u002Fdevelopers.openai.com\u002Fapi\u002Fdocs\u002Fguides\u002Foptimizing-llm-accuracy\",\"meta\":{\"image\":{\"url\":\"\"},\"title\":\"OpenAI — Optimierung der LLM-Genauigkeit\",\"description\":\"OpenAI-Leitfaden zur Trennung von Retrieval-Fehlern und LLM-Fehlern in RAG-Anwendungen.\"}},\"tunes\":{}},{\"id\":\"src-openai-evals\",\"type\":\"linkTool\",\"data\":{\"link\":\"https:\u002F\u002Fdevelopers.openai.com\u002Fapi\u002Fdocs\u002Fguides\u002Fevaluation-best-practices\",\"meta\":{\"image\":{\"url\":\"\"},\"title\":\"OpenAI — Best Practices für Evaluierung\",\"description\":\"Leitfaden zur strukturierten Evaluierung variabler KI-Systeme und produktionsorientiertem Testdesign.\"}},\"tunes\":{}},{\"id\":\"src-aws-rag\",\"type\":\"linkTool\",\"data\":{\"link\":\"https:\u002F\u002Fdocs.aws.amazon.com\u002Fbedrock\u002Flatest\u002Fuserguide\u002Fknowledge-base-evaluation-metrics.html\",\"meta\":{\"image\":{\"url\":\"\"},\"title\":\"Amazon Bedrock — RAG-Evaluierungsmetriken\",\"description\":\"Dokumentation, die reine Abrufmetriken von Abruf-und-Generierungs-Metriken trennt, einschließlich Kontextrelevanz, Abdeckung, Treue und Zitationsmaßen.\"}},\"tunes\":{}},{\"id\":\"src-anthropic-evals\",\"type\":\"linkTool\",\"data\":{\"link\":\"https:\u002F\u002Fwww.anthropic.com\u002Fengineering\u002Fdemystifying-evals-for-ai-agents\",\"meta\":{\"image\":{\"url\":\"\"},\"title\":\"Anthropic — Entmystifizierung von Evals für KI-Agenten\",\"description\":\"Praktische Evaluierungsanleitung zu Aufgaben, Versuchen, Bewertern, Traces, Regressionen und Produktionsverhalten.\"}},\"tunes\":{}},{\"id\":\"src-google-rag\",\"type\":\"linkTool\",\"data\":{\"link\":\"https:\u002F\u002Fcloud.google.com\u002Fuse-cases\u002Fretrieval-augmented-generation\",\"meta\":{\"image\":{\"url\":\"\"},\"title\":\"Google Cloud — Retrieval-Augmented Generation\",\"description\":\"Überblick über die RAG-Architektur und die Bedeutung von relevantem Abruf und fundierter Generierung.\"}},\"tunes\":{}}],\"version\":\"2.31.6\"}",{"time":211,"blocks":212,"version":833},1790369108749,[213,219,227,234,242,247,252,257,262,267,309,314,319,324,331,336,341,346,351,356,361,366,371,376,381,386,391,396,401,406,411,416,421,426,431,436,441,446,476,483,488,520,525,530,535,540,585,590,627,632,637,642,651,656,661,666,674,679,684,689,694,699,704,709,714,719,724,750,755,782,787,797,806,815,824],{"id":214,"data":215,"type":217,"tunes":218},"intro",{"text":216},"Ein RAG-System liefert eine schwache, falsche, unvollständige oder unbelegte Antwort. Die übliche Diagnose lautet „Retrieval fehlgeschlagen“ oder „das Modell hat halluziniert“. Beide Bezeichnungen sind zu unspezifisch, um nützlich zu sein. Eine Produktions-RAG-Pipeline kann vor dem Retrieval, während des Retrievals, beim Ranking, bei der Kontextzusammenstellung, während der Generierung oder nach der Generierung fehlschlagen, wenn Evidenz und Validität geprüft werden.","paragraph",{},{"id":220,"data":221,"type":225,"tunes":226},"direct",{"body":222,"title":223,"variant":224},"\u003Cstrong>Debuggen Sie RAG nicht als eine Komponente.\u003C\u002Fstrong> Diagnostizieren Sie es als eine Kette unabhängig testbarer Schichten. Stellen Sie zuerst fest, ob die erforderliche Evidenz in einer autoritativen Quelle existiert. Testen Sie dann die Query-Konstruktion, das Kandidaten-Retrieval, das Ranking, die Kontextzusammenstellung, die Generierung, die Evidenzzuordnung und die Aktualität. Die schnellste Isolierungstechnik ist ein \u003Cstrong>Oracle-Kontext-Test\u003C\u002Fstrong>: Geben Sie dem Generator die korrekte Evidenz manuell. Wird die Antwort korrekt, liegt der dominante Fehler vor der Generierung. Bleibt sie falsch, ist das Retrieval nicht das primäre Problem.","Direkte Antwort","info","callout",{},{"id":228,"data":229,"type":225,"tunes":233},"model-note",{"body":230,"title":231,"variant":232},"Der RAG Failure Stack in diesem Artikel ist ein praktisches diagnostisches Modell, kein formaler Industriestandard. Bestehende Plattformen trennen bereits reine Retrieval-Metriken von Retrieve-and-Generate-Metriken; dieses Modell erweitert diese Trennung zu einer schrittweisen Produktions-Debugging-Methode.","Über das diagnostische Modell","note",{},{"id":235,"data":236,"type":240,"tunes":241},"toc",{"title":237,"maxLevel":238,"minLevel":239},"Inhalt",3,2,"tableOfContents",{},{"id":243,"data":244,"type":41,"tunes":246},"h-not-diagnosis",{"text":245,"level":239},"Warum „RAG ist fehlgeschlagen“ keine Diagnose ist",{},{"id":248,"data":249,"type":217,"tunes":251},"p-not-1",{"text":250},"Retrieval-augmentierte Generierung kombiniert mehrere Mechanismen: Eine Benutzeranfrage wird interpretiert, eine oder mehrere Suchen werden konstruiert, Kandidatenmaterial wird abgerufen, Ergebnisse werden gefiltert oder neu gerankt, ausgewählte Evidenz wird in einen Modellkontext eingefügt und ein Modell generiert eine Antwort. Produktionssysteme können Berechtigungen, Metadatenfilter, Aktualitätsregeln, Zitate, Query-Rewriting, hybride Suche, Tool-Aufrufe, Speicher und externen Zustand hinzufügen.",{},{"id":253,"data":254,"type":217,"tunes":256},"p-not-2",{"text":255},"Eine falsche endgültige Antwort sagt daher nicht, welche Komponente fehlgeschlagen ist. Das Modell kann die falsche Evidenz erhalten haben. Es kann die richtige Evidenz mit zu viel Rauschen vermischt erhalten haben. Die Evidenz kann korrekt, aber veraltet sein. Die Quelle kann die Antwort nie enthalten haben. Oder das Modell hat einen völlig ausreichenden Kontext ignoriert.",{},{"id":258,"data":259,"type":217,"tunes":261},"p-not-3",{"text":260},"OpenAIs RAG-Leitfaden unterscheidet bereits grundlegend zwischen Retrieval-Fehler und Modellfehler: Ein System kann den falschen Kontext liefern oder den richtigen Kontext liefern und trotzdem die falsche Antwort generieren. AWS trennt ebenso die reine Retrieval-Bewertung von der Retrieve-and-Generate-Bewertung. Für die Produktionsdiagnose sollte diese Unterscheidung weitergeführt werden.",{},{"id":263,"data":264,"type":41,"tunes":266},"h-stack",{"text":265,"level":239},"Der RAG Failure Stack",{},{"id":268,"data":269,"type":307,"tunes":308},"table-stack",{"content":270,"stretched":42,"withHeadings":13},[271,275,279,283,287,291,295,299,303],[272,273,274],"Schicht","Frage","Typischer Fehler",[276,277,278],"1. Quellenabdeckung","Existiert die erforderliche Evidenz in einer zulässigen autoritativen Quelle?","Das Korpus kann die Frage überhaupt nicht beantworten",[280,281,282],"2. Query-Konstruktion","Hat das System nach dem Richtigen gesucht?","Absicht, Entitäten, Filter, Sprache oder Zeitbeschränkungen gehen verloren",[284,285,286],"3. Kandidaten-Retrieval","Ist die relevante Evidenz in die Kandidatenmenge gelangt?","Geringer Recall; der richtige Chunk wird nie abgerufen",[288,289,290],"4. Ranking &amp; Filterung","Hat die richtige Evidenz überlebt und hoch genug gerankt?","Relevante Evidenz wird vergraben, herausgefiltert oder von oberflächlich ähnlichem Text überragt",[292,293,294],"5. Kontextzusammenstellung","Hat das Modell nutzbare Evidenz erhalten?","Abschneiden, schlechte Chunk-Grenzen, Duplikate, widersprüchliche Passagen oder Kontextüberlastung",[296,297,298],"6. Generierung","Hat das Modell die gelieferte Evidenz korrekt genutzt?","Unbelegte Schlussfolgerung, Instruktionsfehler, Denkfehler oder Verweigerungsfehlanpassung",[300,301,302],"7. Evidenzzuordnung","Kann die Antwort auf die Evidenz zurückgeführt werden, die sie zu nutzen behauptet?","Fehlende, schwache oder falsche Zitate; Behauptungen übersteigen die abgerufene Unterstützung",[304,305,306],"8. Validität &amp; Aktualität","Ist die Evidenz jetzt noch für diese Frage gültig?","Korrekte historische Evidenz wird außerhalb ihrer Gültigkeitszeit, Version, Gerichtsbarkeit oder ihres Zustands wiederverwendet","table",{},{"id":310,"data":311,"type":41,"tunes":313},"h-source",{"text":312,"level":238},"Schicht 1 — Quellenabdeckung: Kann das System dies überhaupt beantworten?",{},{"id":315,"data":316,"type":217,"tunes":318},"p-source-1",{"text":317},"Bevor Sie Embeddings, Reranker oder Prompts optimieren, verifizieren Sie, dass die Antwort im Wissensraum existiert, den das System nutzen darf. Das klingt offensichtlich, aber viele RAG-Fehler sind tatsächlich Korpus-Fehler. Die angeforderte Tatsache kann fehlen, in einem nicht indexierten Anhang verborgen sein, nur in einem neueren Dokument verfügbar sein, in einem System außerhalb des RAG-Korpus gespeichert sein oder durch Berechtigungen blockiert werden.",{},{"id":320,"data":321,"type":217,"tunes":323},"p-source-2",{"text":322},"Eine Retrieval-Metrik kann Informationen nicht wiederherstellen, die nie indexiert wurden. Ein größeres Top-k kann kein Dokument abrufen, das die Pipeline nicht enthält. Wenn der Quellenabdeckungstest fehlschlägt, ist die richtige Lösung Ingestion, Quellenauswahl, Berechtigungen oder ein explizites Verhalten „nicht beantwortbar aus verfügbarer Evidenz“.",{},{"id":325,"data":326,"type":225,"tunes":330},"source-warning",{"body":327,"title":328,"variant":329},"Teams optimieren das Retrieval oft anhand von Fragen, die das Korpus tatsächlich nicht beantworten kann. Dadurch kann der Retriever besser darin werden, verwandten Text zu finden, während die zugrunde liegende Informationslücke unberührt bleibt.","Fehlermuster","warning",{},{"id":332,"data":333,"type":41,"tunes":335},"h-query",{"text":334,"level":238},"Schicht 2 — Query-Konstruktion: Hat das System dem Korpus die richtige Frage gestellt?",{},{"id":337,"data":338,"type":217,"tunes":340},"p-query-1",{"text":339},"Die Benutzeranfrage ist nicht immer die Retrieval-Anfrage. Produktionssysteme schreiben Fragen um, lösen Pronomen auf, extrahieren Entitäten, übersetzen Sprachen, fügen Metadatenbeschränkungen hinzu, teilen komplexe Fragen auf oder generieren mehrere Suchen. Jede Transformation kann das Retrieval verbessern, aber jede Transformation kann auch Informationen zerstören.",{},{"id":342,"data":343,"type":217,"tunes":345},"p-query-2",{"text":344},"Eine Anfrage wie „Gilt die Richtlinie nach dem September-Update noch für Auftragnehmer in Deutschland?“ enthält mindestens eine Entität, eine Population, eine Gerichtsbarkeit und eine Zeitgrenze. Eine umgeschriebene Anfrage, die zu „Auftragnehmer-Richtlinie“ wird, kann semantisch verwandten Text abrufen, während die Variablen verloren gehen, die entscheiden, ob die Antwort gültig ist.",{},{"id":347,"data":348,"type":41,"tunes":350},"h-retrieval",{"text":349,"level":238},"Ebene 3 — Kandidatenabruf: Ist der relevante Beleg in die Menge gelangt?",{},{"id":352,"data":353,"type":217,"tunes":355},"p-ret-1",{"text":354},"Der Kandidatenabruf ist in erster Linie ein Recall-Problem. Die diagnostische Frage lautet noch nicht, ob das beste Ergebnis an erster Stelle steht; sie lautet, ob relevanter Beleg irgendwo im Kandidatenpool aufgetaucht ist. Wenn die bekannte korrekte Quelle nicht erscheint, untersuchen Sie Indexierung, Chunking, Embeddings, lexikalisches Matching, Metadaten, hybride Suche, Sprachbehandlung, Synonyme und Query-Erweiterung.",{},{"id":357,"data":358,"type":217,"tunes":360},"p-ret-2",{"text":359},"Hier ist die reine Retrieval-Evaluierung wertvoll. AWS stellt Kontextrelevanz und Kontextabdeckung für die reine Retrieve-only-RAG-Evaluierung bereit. Die wichtige Produktionsgewohnheit ist, das Retrieval vor der Generierung zu bewerten, damit eine ausgefeilte endgültige Antwort keine schwache Kandidatenmenge verbergen kann.",{},{"id":362,"data":363,"type":41,"tunes":365},"h-ranking",{"text":364,"level":238},"Ebene 4 — Ranking und Filterung: Wurde der richtige Beleg verworfen oder begraben?",{},{"id":367,"data":368,"type":217,"tunes":370},"p-rank-1",{"text":369},"Ein System kann einen guten Recall haben und trotzdem scheitern, weil der relevante Beleg unter noisy aber semantisch ähnlichem Material rangiert. Reranker, Aktualitäts-Boosts, Autoritätsgewichtungen, Sprachpräferenzen, Mandantenfilters, Zugriffskontrollen, Produktstatusfilter und Deduplizierung verändern alle, was in den endgültigen Kontext überlebt.",{},{"id":372,"data":373,"type":217,"tunes":375},"p-rank-2",{"text":374},"Das Debugging sollte daher die vollständige Kandidatenliste bewahren, nicht nur die endgültigen Top-k. Wenn der Gold-Beleg auf Rang 18 abgerufen und von einem Reranker entfernt wurde, ist die Lösung nicht dieselbe wie bei einem Retrieval-Fehler.",{},{"id":377,"data":378,"type":41,"tunes":380},"h-context",{"text":379,"level":238},"Ebene 5 — Kontextzusammenstellung: Wurde nützlicher Beleg zu nutzbarem Kontext?",{},{"id":382,"data":383,"type":217,"tunes":385},"p-ctx-1",{"text":384},"Retrieval-Erfolg garantiert keinen Kontext-Erfolg. Relevante Chunks können abgeschnitten, von ihren Qualifikatoren getrennt, dupliziert werden, bis sie den Prompt dominieren, mit widersprüchlichen Versionen vermischt oder von genügend irrelevantem Text umgeben sein, sodass die entscheidende Passage an Salienz verliert.",{},{"id":387,"data":388,"type":217,"tunes":390},"p-ctx-2",{"text":389},"Chunk-Grenzen sind besonders wichtig. Ein Satz kann die Regel enthalten, während der folgende Satz die Ausnahme enthält. Wenn sie getrennt indexiert werden und nur der erste abgerufen wird, kann der Retriever relevant erscheinen, während der zusammengestellte Kontext irreführend wird.",{},{"id":392,"data":393,"type":41,"tunes":395},"h-generation",{"text":394,"level":238},"Ebene 6 — Generierung: Kann das Modell korrekten Beleg korrekt nutzen?",{},{"id":397,"data":398,"type":217,"tunes":400},"p-gen-1",{"text":399},"Sobald das System nachweislich ausreichenden Beleg geliefert hat, wird die Generierung unabhängig testbar. Das Modell kann überverallgemeinern, inkompatible Passagen kombinieren, eine negative Aussage ignorieren, das angeforderte Antwortformat nicht einhalten, eine Brücke zwischen Fakten erfinden oder aus parametrischem Gedächtnis statt aus dem abgerufenen Beleg antworten.",{},{"id":402,"data":403,"type":217,"tunes":405},"p-gen-2",{"text":404},"Deshalb ist die End-to-End-Korrektheit allein für die Diagnose unzureichend. OpenAI empfiehlt Evaluierung als strukturierte Methode, um das Verhalten von Anwendungen zu verstehen, während Anthropics Leitfaden zur Agenten-Evaluierung mehrere Versuche, Bewerter, Traces und realistische Fehlerfälle betont. Für RAG sollte der Generator sowohl mit normalem Retrieval als auch mit kontrolliertem Gold-Kontext getestet werden.",{},{"id":407,"data":408,"type":41,"tunes":410},"h-evidence",{"text":409,"level":238},"Ebene 7 — Belegzuordnung: Wird die Antwort tatsächlich gestützt?",{},{"id":412,"data":413,"type":217,"tunes":415},"p-evidence-1",{"text":414},"Eine plausible Antwort mit Zitaten kann dennoch schwach fundiert sein. Das zitierte Dokument kann für das Thema relevant sein, aber die spezifische Behauptung nicht stützen. Ein Satz kann gestützt sein, während ein anderer abgeleitet wird. Ein Zitat kann auf eine Quelle verweisen, die der Antwort widerspricht, sobald ihre Bedingungen gelesen werden.",{},{"id":417,"data":418,"type":217,"tunes":420},"p-evidence-2",{"text":419},"Die Zitatbewertung gehört daher nach die Generierung. AWS unterscheidet zwischen Zitatpräzision und Zitatabdeckung: ob zitierte Passagen korrekt zitiert werden und ob die Antwort ausreichend durch Zitate gestützt wird. In der Produktion ist die Unterstützung auf Behauptungsebene nützlicher, als das Vorhandensein irgendeines Zitats als Belegqualität zu behandeln.",{},{"id":422,"data":423,"type":41,"tunes":425},"h-validity",{"text":424,"level":238},"Ebene 8 — Gültigkeit und Aktualität: War der Beleg für diese Version der Realität korrekt?",{},{"id":427,"data":428,"type":217,"tunes":430},"p-valid-1",{"text":429},"RAG kann eine vollkommen authentische, hochrelevante, getreu zitierte Quelle abrufen und dennoch eine falsche Antwort produzieren, wenn die Quelle für die aktuelle Frage nicht mehr gültig ist. Richtlinien ändern sich. APIs werden veraltet. Preise bewegen sich. Softwareverhalten ändert sich zwischen Versionen. Produktbestände ändern sich. Berechtigungen ändern sich. Spiel-Patches ändern Mechaniken.",{},{"id":432,"data":433,"type":217,"tunes":435},"p-valid-2",{"text":434},"Dies ist eine separate Fehlerklasse von Halluzination. Der Beleg ist real; seine Anwendbarkeit ist falsch. Ein robustes System benötigt daher Zeitstempel, Versions- oder Gerichtsbarkeitsmetadaten, wo relevant, Quellenautorität, Ablöseregeln und einen expliziten Mechanismus, um zu entscheiden, wann älterer Beleg eingeschränkt oder verworfen werden muss.",{},{"id":437,"data":438,"type":41,"tunes":440},"h-oracle",{"text":439,"level":239},"Die schnellste Isolationsmethode: der Oracle-Kontext-Test",{},{"id":442,"data":443,"type":217,"tunes":445},"p-oracle-1",{"text":444},"Die nützlichste erste Aufteilung ist einfach: Stellen Sie dem Generator manuell eine kleine Menge von Belegen zur Verfügung, von denen Sie wissen, dass sie ausreichen, um die Frage zu beantworten. Lassen Sie die Aufgabe und die erwartete Antwort unverändert.",{},{"id":447,"data":448,"type":474,"tunes":475},"oracle-comparison",{"rows":449,"title":463,"layout":307,"columns":464},[450,455,459],{"id":451,"label":452,"values":453},"oracle-pass","Antwort wird korrekt",[454,454,454],"",{"id":456,"label":457,"values":458},"oracle-fail","Antwort bleibt falsch",[454,454,454],{"id":460,"label":461,"values":462},"oracle-partial","Antwort verbessert sich, bleibt aber unvollständig",[454,454,454],"Oracle-Kontext-Test",[465,468,471],{"id":466,"label":467},"result","Ergebnis",{"id":469,"label":470},"meaning","Wahrscheinliche Interpretation",{"id":472,"label":473},"next","Nächster diagnostischer Schritt","comparison",{},{"id":477,"data":478,"type":225,"tunes":482},"oracle-tip",{"body":479,"title":480,"variant":481},"Der Oracle-Kontext-Test entfernt den größten Teil der Retrieval-Pipeline aus dem Experiment. Er beweist nicht, dass die Generierung perfekt ist, aber er liefert ein schnelles kontrafaktisches Szenario: \u003Cstrong>Was würde das Modell tun, wenn das Retrieval bereits erfolgreich gewesen wäre?\u003C\u002Fstrong>","Warum dieser Test so aussagekräftig ist","tip",{},{"id":484,"data":485,"type":41,"tunes":487},"h-sequence",{"text":486,"level":239},"Eine diagnostische Abfolge für den Produktivbetrieb",{},{"id":489,"data":490,"type":518,"tunes":519},"diag-flow",{"steps":491,"title":516,"orientation":517},[492,495,498,501,504,507,510,513],{"label":493,"description":494},"1. Definieren Sie die erwartete Aussage","Schreiben Sie die erwartete Antwort, die zulässige Unsicherheit und die Belege auf, die sie rechtfertigen würden.",{"label":496,"description":497},"2. Überprüfen Sie die Quellenabdeckung","Bestätigen Sie, dass autoritative und zulässige Belege im indexierten oder erreichbaren Quellensatz vorhanden sind.",{"label":499,"description":500},"3. Führen Sie den Oracle-Kontext-Test durch","Geben Sie dem Generator ausreichende Gold-Belege direkt und beobachten Sie, ob die Antwort korrekt wird.",{"label":502,"description":503},"4. Untersuchen Sie die Retrieval-Abfrage","Prüfen Sie Umschreibungen, Entitäten, Filter, Sprache, Zeitbeschränkungen, Zerlegung und verborgene Annahmen.",{"label":505,"description":506},"5. Untersuchen Sie die Kandidaten vor dem Reranking","Stellen Sie fest, ob relevante Belege überhaupt abgerufen wurden, und notieren Sie ihren Rang.",{"label":508,"description":509},"6. Untersuchen Sie Ranking und Kontextzusammenstellung","Prüfen Sie Reranking, Metadatenfilter, Kürzung, Chunk-Grenzen, Duplikate, Konflikte und Top-k-Zusammensetzung.",{"label":511,"description":512},"7. Bewerten Sie Generierung und Zitate getrennt","Messen Sie Antwortkorrektheit, Vollständigkeit, Treue und Belegunterstützung auf Aussagenebene.",{"label":514,"description":515},"8. Testen Sie Gültigkeitsgrenzen","Prüfen Sie, ob Version, Datum, Zustand, Gerichtsbarkeit, Berechtigungen oder ablösende Belege die Antwort verändern.","Diagnostizieren Sie den Fehler vom Beleg bis zur Antwort","auto","processFlow",{},{"id":521,"data":522,"type":41,"tunes":524},"h-one-change",{"text":523,"level":239},"Ändern Sie nicht drei Ebenen gleichzeitig",{},{"id":526,"data":527,"type":217,"tunes":529},"p-one-1",{"text":528},"Ein häufiger Debugging-Fehler besteht darin, Embeddings, Chunk-Größen, Top-k, Prompts und das Modell in einer Iteration zu ändern. Wenn sich die Bewertung verbessert, wissen Sie nicht, warum. Wenn sie sich verschlechtert, wissen Sie nicht, welche Änderung die Regression verursacht hat.",{},{"id":531,"data":532,"type":217,"tunes":534},"p-one-2",{"text":533},"Behandeln Sie RAG-Debugging wie eine experimentelle Diagnose: Halten Sie so viel von der Pipeline wie möglich konstant und ersetzen Sie eine unsichere Komponente durch eine kontrollierte Eingabe. Gold-Dokumente isolieren das Retrieval. Gold-Chunks isolieren die Chunk-Auswahl. Ein fester Kontext isoliert die Generierung. Ein festes Modell isoliert Retrieval-Änderungen. Ein fester Korpus isoliert Änderungen an Ingestion und Indexierung.",{},{"id":536,"data":537,"type":41,"tunes":539},"h-matrix",{"text":538,"level":239},"Eine Fehlermatrix für häufige RAG-Symptome",{},{"id":541,"data":542,"type":307,"tunes":584},"symptom-matrix",{"content":543,"stretched":42,"withHeadings":13},[544,548,552,556,560,564,568,572,576,580],[545,546,547],"Symptom","Wahrscheinlichste zuerst zu testende Ebenen","Unterscheidender Test",[549,550,551],"Keine relevante Quelle erscheint","Quellenabdeckung → Abfrage → Kandidaten-Retrieval","Durchsuchen Sie den Korpus manuell und untersuchen Sie dann die umgeschriebene Abfrage und ungefilterte Kandidaten",[553,554,555],"Relevante Quelle erscheint, aber die Antwort ist falsch","Kontextzusammenstellung → Generierung","Oracle-Kontext-Test mit derselben Quelle, reduziert auf entscheidende Passagen",[557,558,559],"Antwort ist manchmal korrekt, manchmal falsch","Ranking → Kontextzusammenstellung → Variabilität der Generierung","Wiederholen Sie Versuche und protokollieren Sie abgerufenen Satz, Rang, Prompt-Kontext und Modellausgabe",[561,562,563],"Antwort zitiert das richtige Dokument, übertreibt es aber","Generierung → Belegzuordnung → Gültigkeit","Bewerten Sie jede Aussage anhand der exakt zitierten Passage",[565,566,567],"Alte Informationen gewinnen immer wieder","Ranking → Gültigkeit\u002FAktualität","Vergleichen Sie mit Aktualitäts-\u002FAblösungsregeln und untersuchen Sie Metadaten",[569,570,571],"Antwort verpasst eine Ausnahme","Chunking → Kontextzusammenstellung","Prüfen Sie, ob Regel und Ausnahme getrennt oder abgeschnitten wurden",[573,574,575],"Mehr Top-k verschlechtert die Qualität","Ranking → Kontextüberlastung","Entfernen Sie Chunks mit geringem Wert und vergleichen Sie mit einem minimalen Belegsatz",[577,578,579],"Modellwechsel behebt die Antwort","Generierung, aber nicht unbedingt Retrieval","Wiederholen Sie mit identischem abgerufenem Kontext über Modelle hinweg",[581,582,583],"Embedding-Wechsel behebt die Antwort","Retrieval\u002FRanking","Halten Sie Generator und Kontextvorlage konstant und vergleichen Sie die Kandidaten-Recall",{},{"id":586,"data":587,"type":41,"tunes":589},"h-metrics",{"text":588,"level":239},"Messen Sie jede Ebene mit der Metrik, die sie tatsächlich beeinflussen kann",{},{"id":591,"data":592,"type":307,"tunes":626},"metrics-table",{"content":593,"stretched":42,"withHeadings":13},[594,598,602,606,610,614,618,622],[595,596,597],"Ebene","Nützliche Messungen","Was nicht daraus geschlossen werden sollte",[599,600,601],"Quellenabdeckung","Quote beantwortbarer Fragen, Korpusabdeckung, Vollständigkeit der Ingestion","Geben Sie nicht den Embeddings die Schuld für fehlendes Quellenmaterial",[603,604,605],"Kandidaten-Retrieval","Recall@k, Trefferquote, Kontextabdeckung","Hoher Recall beweist keine Ranking-Qualität",[607,608,609],"Ranking","MRR, NDCG, Gold-Rang, Precision@k","Gutes Ranking beweist nicht, dass der Generator die Belege genutzt hat",[611,612,613],"Kontextzusammenstellung","Belegbeibehaltung, Duplikation, Widerspruchsrate, Token-Auslastung","Großer Kontext bedeutet nicht nützlichen Kontext",[615,616,617],"Generierung","Korrektheit, Vollständigkeit, Aufgabenerfolg, Treue","Korrektheit allein beweist keine Fundierung",[619,620,621],"Belegzuordnung","Zitationspräzision, Zitationsabdeckung, Aussagenunterstützung","Eine Zitationsanzahl ist keine Belegqualität",[623,624,625],"Gültigkeit","Aktualität, Genauigkeit der Ablösung, Übereinstimmung von Version\u002FGerichtsbarkeit","Relevante Belege sind nicht automatisch anwendbare Belege",{},{"id":628,"data":629,"type":41,"tunes":631},"h-correct-answer",{"text":630,"level":239},"Eine korrekte Antwort kann dennoch einen RAG-Defekt verbergen",{},{"id":633,"data":634,"type":217,"tunes":636},"p-correct-1",{"text":635},"Das umgekehrte Problem ist ebenfalls wichtig. Ein RAG-System kann die korrekte Antwort liefern, während das Retrieval defekt ist. Das Modell kennt die Antwort möglicherweise bereits aus dem Training, leitet sie aus schwachen Belegen ab oder rät richtig. Wenn die Evaluierung nur die endgültige Antwort betrachtet, kann das System gesund erscheinen, bis die Frage Informationen erreicht, die nur im privaten Korpus existieren.",{},{"id":638,"data":639,"type":217,"tunes":641},"p-correct-2",{"text":640},"Dies ist dasselbe Zuverlässigkeitsproblem, das allgemeiner in Agentensystemen auftritt: Korrektheit des Ergebnisses reicht nicht aus, um zu beweisen, dass der Ausführungspfad zuverlässig war. Für RAG sollten Traces mindestens die Retrieval-Abfrage, den Kandidatensatz, das Ranking, den endgültigen Kontext, die Antwort, Zitate, Modellversion, Korpus-\u002FIndexversion und relevante Filter bewahren.",{},{"id":643,"data":644,"type":649,"tunes":650},"internal-reliability",{"url":645,"title":646,"excerpt":647,"ctaLabel":648},"https:\u002F\u002Fstajic.de\u002Fde\u002Fblog\u002Fai-agent-reliability-why-the-final-answer-is-not-enough","Zuverlässigkeit von KI-Agenten: Warum die endgültige Antwort nicht ausreicht","Eine korrekte Ausgabe beweist weder korrektes Schlussfolgern noch sichere Ausführung oder ein vertrauenswürdiges System. Dieser Artikel erweitert dieses Prinzip von der RAG-Diagnose auf Agenten-Trajektorien und operative Assurance.","Lesen Sie den verwandten Artikel","referralArticle",{},{"id":652,"data":653,"type":41,"tunes":655},"h-hypotheses",{"text":654,"level":239},"Verwenden Sie konkurrierende Hypothesen, nicht eine Lieblingserklärung",{},{"id":657,"data":658,"type":217,"tunes":660},"p-hyp-1",{"text":659},"Wenn eine schlechte Antwort sofort zu einem „Embedding-Problem“ wird, ist die Untersuchung bereits voreingenommen. Eine stärkere Debugging-Methode schreibt konkurrierende Hypothesen auf, bevor das System geändert wird: fehlende Quelle, schlechtes Query-Rewriting, geringer Retrieval-Recall, schlechtes Reranking, Kontextkürzung, widersprüchliche Versionen, Generierungsfehler, Zitationsfehler oder veraltete Evidenz.",{},{"id":662,"data":663,"type":217,"tunes":665},"p-hyp-2",{"text":664},"Wählen Sie dann einen Test, der diese Hypothesen trennen würde. Dies ist effizienter als das Sammeln weiterer Beispiele, die die erste Erklärung stützen. Dasselbe Prinzip gilt allgemein für KI-gestütztes technisches Denken: Eine nützliche Diagnose ist eine, die diskriminierende Tests übersteht, nicht eine, die lediglich plausibel klingt.",{},{"id":667,"data":668,"type":649,"tunes":673},"internal-reasoning",{"url":669,"title":670,"excerpt":671,"ctaLabel":672},"https:\u002F\u002Fstajic.de\u002Fde\u002Fblog\u002Ffrom-research-protocol-to-a-general-ai-reasoning-framework","Vom Forschungsprotokoll zu einem allgemeinen KI-Reasoning-Framework","Eine domänenunabhängige Reasoning-Methode zur Trennung von Evidenz und Annahmen, zum Testen konkurrierender Hypothesen und zur Verwendung domänenspezifischer Validatoren.","Das Reasoning-Framework lesen",{},{"id":675,"data":676,"type":41,"tunes":678},"h-change",{"text":677,"level":239},"Was würde diese Antwort ändern?",{},{"id":680,"data":681,"type":217,"tunes":683},"p-change-1",{"text":682},"Die genauen Diagnoseschichten ändern sich mit der Architektur. Eine einfache Single-Document-RAG-Anwendung hat möglicherweise kein Query-Rewriting, keinen Reranker und keine Zitationsschicht. Ein agentisches Retrieval-System kann Planung, mehrere Suchen, Tool-Auswahl, Gedächtnis, Berechtigungen und iterative Evidenzsammlung hinzufügen. Eine strukturierte Datenbankabfrage verwendet möglicherweise überhaupt keine Chunks oder Embeddings.",{},{"id":685,"data":686,"type":217,"tunes":688},"p-change-2",{"text":687},"Die Kernmethode bleibt bestehen: Identifizieren Sie die Komponenten, die das Ergebnis unabhängig verändern können, konstruieren Sie kontrollierte Tests, die unsichere Komponenten durch bekannt gute Eingaben ersetzen, und messen Sie jede Komponente mit Evidenz, die für diese Schicht geeignet ist.",{},{"id":690,"data":691,"type":41,"tunes":693},"h-limitations",{"text":692,"level":239},"Einschränkungen",{},{"id":695,"data":696,"type":217,"tunes":698},"p-limit-1",{"text":697},"Reale Fehler sind oft gekoppelt. Eine schwache Query kann den Recall verringern, was das Reranking verändert, was den Kontext verändert, was die Generierungsvarianz erhöht. Der Oracle-Kontext-Test ist eine diagnostische Abkürzung, kein Beweis dafür, dass eine Komponente allein verantwortlich ist. Evaluierungsdatensätze können auch nicht repräsentativ sein, und modellbasierte Bewerter können eigene Fehler einführen.",{},{"id":700,"data":701,"type":217,"tunes":703},"p-limit-2",{"text":702},"Der vorgeschlagene Stack wird daher am besten als Untersuchungsstruktur verwendet: die Pipeline protokollieren, Variablen isolieren, Fehler reproduzieren, konkurrierende Erklärungen testen und nach schichtweisen Korrekturen eine End-to-End-Evaluierung beibehalten.",{},{"id":705,"data":706,"type":41,"tunes":708},"h-conclusion",{"text":707,"level":239},"Fazit",{},{"id":710,"data":711,"type":217,"tunes":713},"p-conclusion-1",{"text":712},"„RAG ist fehlgeschlagen“ sollte der Beginn der Untersuchung sein, nicht das Fazit. Eine nützliche Diagnose identifiziert, ob dem System die Evidenz fehlte, es falsch suchte, sie nicht abrufen konnte, sie schlecht einordnete, unbrauchbaren Kontext zusammenstellte, falsch generierte, Aussagen schlecht zuordnete oder Evidenz außerhalb ihrer Gültigkeitsgrenze anwendete.",{},{"id":715,"data":716,"type":217,"tunes":718},"p-conclusion-2",{"text":717},"Die praktische Regel ist einfach: Ersetzen Sie Unsicherheit Schicht für Schicht durch kontrollierte Evidenz. Beginnen Sie mit dem Oracle-Kontext-Test. Trennen Sie die reine Retrieval-Evaluierung von der Generierungs-Evaluierung. Bewahren Sie den vollständigen Trace auf. Beheben Sie dann die Komponente, die tatsächlich fehlgeschlagen ist, anstatt den gesamten RAG-Stack nach Intuition abzustimmen.",{},{"id":720,"data":721,"type":41,"tunes":723},"h-faq",{"text":722,"level":239},"FAQ",{},{"id":725,"data":726,"type":725,"tunes":749},"faq",{"items":727,"title":748},[728,732,736,740,744],{"id":729,"answer":730,"question":731},"faq1","Geben Sie dem Modell manuell eine kleine Menge bekanntermaßen korrekter Evidenz. Wenn die Antwort korrekt wird, untersuchen Sie Quellenabdeckung, Query-Konstruktion, Retrieval, Ranking und Kontextzusammenstellung. Wenn das Modell trotz ausreichender Evidenz weiterhin fehlschlägt, ist das Retrieval nicht das Hauptproblem.","Wie kann ich feststellen, ob das RAG-Retrieval oder das LLM fehlgeschlagen ist?",{"id":733,"answer":734,"question":735},"faq2","Ja. Die relevante Passage kann zu niedrig eingestuft, abgeschnitten, von einer Ausnahme getrennt, mit widersprüchlicher Evidenz vermischt, von irrelevantem Kontext überlagert oder vom Generator falsch verwendet werden.","Kann RAG fehlschlagen, obwohl das richtige Dokument abgerufen wurde?",{"id":737,"answer":738,"question":739},"faq3","Nein. Ein Modell kann trotz schwachem Retrieval eine korrekte Antwort erzeugen, indem es sich auf vorheriges Modellwissen oder Zufall verlässt. Bewerten Sie Retrieval und Evidenzunterstützung getrennt von der Korrektheit der endgültigen Antwort.","Reicht die Korrektheit der Antwort aus, um ein RAG-System zu bewerten?",{"id":741,"answer":742,"question":743},"faq4","Protokollieren Sie mindestens die Benutzeranfrage, die transformierte Retrieval-Query, Filter, Kandidatendokumente und Ränge, den endgültig ausgewählten Kontext, Modell- und Prompt-Version, Antwort, Zitate, Korpus-\u002FIndexversion sowie Timing- oder Versionsmetadaten, die für die Aktualität relevant sind.","Was sollte ich beim Debuggen von RAG protokollieren?",{"id":745,"answer":746,"question":747},"faq5","Nicht zuverlässig. Eine größere Kandidaten- oder Kontextmenge kann den Recall verbessern, aber auch Rauschen, Widersprüche, Duplikate und Kontextüberlastung hinzufügen. Testen Sie, ob die relevante Evidenz fehlt, bevor Sie top-k erhöhen.","Behebt eine Erhöhung von top-k normalerweise RAG?","RAG-Fehlerdiagnose",{},{"id":751,"data":752,"type":41,"tunes":754},"h-glossary",{"text":753,"level":239},"Glossar",{},{"id":756,"data":757,"type":756,"tunes":781},"glossary",{"title":758,"entries":759},"Wichtige diagnostische Begriffe",[760,763,766,769,773,777],{"term":463,"anchor":761,"definition":762},"oracle-context-test","Ein kontrollierter Test, bei dem dem Generator direkt bekannt ausreichende Evidenz gegeben wird, um festzustellen, ob der dominierende Fehler vor der Generierung liegt.",{"term":603,"anchor":764,"definition":765},"candidate-retrieval","Die Phase, die eine anfängliche Menge potenziell relevanter Dokumente, Chunks, Datensätze oder Passagen vor dem endgültigen Ranking oder der Kontextzusammenstellung auswählt.",{"term":611,"anchor":767,"definition":768},"context-assembly","Der Prozess der Umwandlung abgerufener Evidenz in die tatsächliche Modelleingabe, einschließlich Reihenfolge, Kürzung, Deduplizierung, Formatierung und Token-Budget-Entscheidungen.",{"term":770,"anchor":771,"definition":772},"Treue","faithfulness","Der Grad, in dem generierte Aussagen durch die abgerufene oder bereitgestellte Evidenz gestützt bleiben, anstatt nicht unterstützte Inhalte einzuführen.",{"term":774,"anchor":775,"definition":776},"Kontextabdeckung","context-coverage","Ein retrievalorientiertes Maß dafür, ob die ausgewählte Evidenz die zur Beantwortung der Frage benötigten Informationen abdeckt.",{"term":778,"anchor":779,"definition":780},"Gültigkeitsgrenze","validity-boundary","Die Bedingungen, unter denen eine Aussage oder Antwort weiterhin anwendbar bleibt, wie Zeit, Version, Gerichtsbarkeit, Zustand, Population, Berechtigungen oder Quellenannahmen.",{},{"id":783,"data":784,"type":41,"tunes":786},"h-sources",{"text":785,"level":239},"Primärquellen und weiterführende Literatur",{},{"id":788,"data":789,"type":795,"tunes":796},"src-openai-rag",{"link":790,"meta":791},"https:\u002F\u002Fdevelopers.openai.com\u002Fapi\u002Fdocs\u002Fguides\u002Foptimizing-llm-accuracy",{"image":792,"title":793,"description":794},{"url":454},"OpenAI — Optimierung der LLM-Genauigkeit","OpenAI-Leitfaden zur Trennung von Retrieval-Fehlern und LLM-Fehlern in RAG-Anwendungen.","linkTool",{},{"id":798,"data":799,"type":795,"tunes":805},"src-openai-evals",{"link":800,"meta":801},"https:\u002F\u002Fdevelopers.openai.com\u002Fapi\u002Fdocs\u002Fguides\u002Fevaluation-best-practices",{"image":802,"title":803,"description":804},{"url":454},"OpenAI — Best Practices für Evaluierung","Leitfaden zur strukturierten Evaluierung variabler KI-Systeme und produktionsorientiertem Testdesign.",{},{"id":807,"data":808,"type":795,"tunes":814},"src-aws-rag",{"link":809,"meta":810},"https:\u002F\u002Fdocs.aws.amazon.com\u002Fbedrock\u002Flatest\u002Fuserguide\u002Fknowledge-base-evaluation-metrics.html",{"image":811,"title":812,"description":813},{"url":454},"Amazon Bedrock — RAG-Evaluierungsmetriken","Dokumentation, die reine Abrufmetriken von Abruf-und-Generierungs-Metriken trennt, einschließlich Kontextrelevanz, Abdeckung, Treue und Zitationsmaßen.",{},{"id":816,"data":817,"type":795,"tunes":823},"src-anthropic-evals",{"link":818,"meta":819},"https:\u002F\u002Fwww.anthropic.com\u002Fengineering\u002Fdemystifying-evals-for-ai-agents",{"image":820,"title":821,"description":822},{"url":454},"Anthropic — Entmystifizierung von Evals für KI-Agenten","Praktische Evaluierungsanleitung zu Aufgaben, Versuchen, Bewertern, Traces, Regressionen und Produktionsverhalten.",{},{"id":825,"data":826,"type":795,"tunes":832},"src-google-rag",{"link":827,"meta":828},"https:\u002F\u002Fcloud.google.com\u002Fuse-cases\u002Fretrieval-augmented-generation",{"image":829,"title":830,"description":831},{"url":454},"Google Cloud — Retrieval-Augmented Generation","Überblick über die RAG-Architektur und die Bedeutung von relevantem Abruf und fundierter Generierung.",{},"2.31.6","Wenn eine RAG-Antwort falsch ist, ist es zu vage, das Retrieval oder das Modell verantwortlich zu machen. Diese Diagnosemethode isoliert Quellenabdeckung, Query-Konstruktion, Retrieval, Ranking, Kontextzusammenstellung, Generierung, Evidenzzuordnung und Aktualität – sodass der tatsächliche Fehler reproduziert und behoben werden kann.","\u002Fuploads\u002F2026\u002F09\u002Frag-failed-but-which-layer-actually-failed-a-diagnostic-method-1790350847177-pior4c.webp","rag-failed-but-which-layer-actually-failed-a-diagnostic-method-1790350847177-pior4c","PUBLISHED","2026-09-24T19:39:00.000Z","2026-09-25T15:39:19.132Z","2026-09-25T20:46:25.690Z",{"en":842,"de":843,"sr":844,"es":845,"fr":846,"it":847,"ru":848,"zh":849},"\u002Fblog\u002Frag-failed-but-which-layer-actually-failed-a-diagnostic-method","\u002Fde\u002Fblog\u002Frag-failed-but-which-layer-actually-failed-a-diagnostic-method","\u002Fsr\u002Fblog\u002Frag-failed-but-which-layer-actually-failed-a-diagnostic-method","\u002Fes\u002Fblog\u002Frag-failed-but-which-layer-actually-failed-a-diagnostic-method","\u002Ffr\u002Fblog\u002Frag-failed-but-which-layer-actually-failed-a-diagnostic-method","\u002Fit\u002Fblog\u002Frag-failed-but-which-layer-actually-failed-a-diagnostic-method","\u002Fru\u002Fblog\u002Frag-failed-but-which-layer-actually-failed-a-diagnostic-method","\u002Fzh\u002Fblog\u002Frag-failed-but-which-layer-actually-failed-a-diagnostic-method",[851,855,859],{"id":852,"name":853,"slug":854},58,"Evaluation & Qualitäts-Gates","evaluation",{"id":856,"name":857,"slug":858},89,"Evaluation-Harness","evaluation-harness",{"id":860,"name":861,"slug":862},85,"Qualitäts-Gates","quality-gates",{"id":864,"login":865,"email":866,"displayName":867},"20","rooth8233","aleksandar@stajic.de","Aleksandar Stajić",[869,1170],{"lang":7,"title":207,"content":209,"contentJson":870,"excerpt":834},{"time":211,"blocks":871,"version":833},[872,875,878,881,884,887,890,893,896,899,912,915,918,921,924,927,930,933,936,939,942,945,948,951,954,957,960,963,966,969,972,975,978,981,984,987,990,993,1007,1010,1013,1025,1028,1031,1034,1037,1051,1054,1066,1069,1072,1075,1078,1081,1084,1087,1090,1093,1096,1099,1102,1105,1108,1111,1114,1117,1120,1129,1132,1142,1145,1150,1155,1160,1165],{"id":214,"data":873,"type":217,"tunes":874},{"text":216},{},{"id":220,"data":876,"type":225,"tunes":877},{"body":222,"title":223,"variant":224},{},{"id":228,"data":879,"type":225,"tunes":880},{"body":230,"title":231,"variant":232},{},{"id":235,"data":882,"type":240,"tunes":883},{"title":237,"maxLevel":238,"minLevel":239},{},{"id":243,"data":885,"type":41,"tunes":886},{"text":245,"level":239},{},{"id":248,"data":888,"type":217,"tunes":889},{"text":250},{},{"id":253,"data":891,"type":217,"tunes":892},{"text":255},{},{"id":258,"data":894,"type":217,"tunes":895},{"text":260},{},{"id":263,"data":897,"type":41,"tunes":898},{"text":265,"level":239},{},{"id":268,"data":900,"type":307,"tunes":911},{"content":901,"stretched":42,"withHeadings":13},[902,903,904,905,906,907,908,909,910],[272,273,274],[276,277,278],[280,281,282],[284,285,286],[288,289,290],[292,293,294],[296,297,298],[300,301,302],[304,305,306],{},{"id":310,"data":913,"type":41,"tunes":914},{"text":312,"level":238},{},{"id":315,"data":916,"type":217,"tunes":917},{"text":317},{},{"id":320,"data":919,"type":217,"tunes":920},{"text":322},{},{"id":325,"data":922,"type":225,"tunes":923},{"body":327,"title":328,"variant":329},{},{"id":332,"data":925,"type":41,"tunes":926},{"text":334,"level":238},{},{"id":337,"data":928,"type":217,"tunes":929},{"text":339},{},{"id":342,"data":931,"type":217,"tunes":932},{"text":344},{},{"id":347,"data":934,"type":41,"tunes":935},{"text":349,"level":238},{},{"id":352,"data":937,"type":217,"tunes":938},{"text":354},{},{"id":357,"data":940,"type":217,"tunes":941},{"text":359},{},{"id":362,"data":943,"type":41,"tunes":944},{"text":364,"level":238},{},{"id":367,"data":946,"type":217,"tunes":947},{"text":369},{},{"id":372,"data":949,"type":217,"tunes":950},{"text":374},{},{"id":377,"data":952,"type":41,"tunes":953},{"text":379,"level":238},{},{"id":382,"data":955,"type":217,"tunes":956},{"text":384},{},{"id":387,"data":958,"type":217,"tunes":959},{"text":389},{},{"id":392,"data":961,"type":41,"tunes":962},{"text":394,"level":238},{},{"id":397,"data":964,"type":217,"tunes":965},{"text":399},{},{"id":402,"data":967,"type":217,"tunes":968},{"text":404},{},{"id":407,"data":970,"type":41,"tunes":971},{"text":409,"level":238},{},{"id":412,"data":973,"type":217,"tunes":974},{"text":414},{},{"id":417,"data":976,"type":217,"tunes":977},{"text":419},{},{"id":422,"data":979,"type":41,"tunes":980},{"text":424,"level":238},{},{"id":427,"data":982,"type":217,"tunes":983},{"text":429},{},{"id":432,"data":985,"type":217,"tunes":986},{"text":434},{},{"id":437,"data":988,"type":41,"tunes":989},{"text":439,"level":239},{},{"id":442,"data":991,"type":217,"tunes":992},{"text":444},{},{"id":447,"data":994,"type":474,"tunes":1006},{"rows":995,"title":463,"layout":307,"columns":1002},[996,998,1000],{"id":451,"label":452,"values":997},[454,454,454],{"id":456,"label":457,"values":999},[454,454,454],{"id":460,"label":461,"values":1001},[454,454,454],[1003,1004,1005],{"id":466,"label":467},{"id":469,"label":470},{"id":472,"label":473},{},{"id":477,"data":1008,"type":225,"tunes":1009},{"body":479,"title":480,"variant":481},{},{"id":484,"data":1011,"type":41,"tunes":1012},{"text":486,"level":239},{},{"id":489,"data":1014,"type":518,"tunes":1024},{"steps":1015,"title":516,"orientation":517},[1016,1017,1018,1019,1020,1021,1022,1023],{"label":493,"description":494},{"label":496,"description":497},{"label":499,"description":500},{"label":502,"description":503},{"label":505,"description":506},{"label":508,"description":509},{"label":511,"description":512},{"label":514,"description":515},{},{"id":521,"data":1026,"type":41,"tunes":1027},{"text":523,"level":239},{},{"id":526,"data":1029,"type":217,"tunes":1030},{"text":528},{},{"id":531,"data":1032,"type":217,"tunes":1033},{"text":533},{},{"id":536,"data":1035,"type":41,"tunes":1036},{"text":538,"level":239},{},{"id":541,"data":1038,"type":307,"tunes":1050},{"content":1039,"stretched":42,"withHeadings":13},[1040,1041,1042,1043,1044,1045,1046,1047,1048,1049],[545,546,547],[549,550,551],[553,554,555],[557,558,559],[561,562,563],[565,566,567],[569,570,571],[573,574,575],[577,578,579],[581,582,583],{},{"id":586,"data":1052,"type":41,"tunes":1053},{"text":588,"level":239},{},{"id":591,"data":1055,"type":307,"tunes":1065},{"content":1056,"stretched":42,"withHeadings":13},[1057,1058,1059,1060,1061,1062,1063,1064],[595,596,597],[599,600,601],[603,604,605],[607,608,609],[611,612,613],[615,616,617],[619,620,621],[623,624,625],{},{"id":628,"data":1067,"type":41,"tunes":1068},{"text":630,"level":239},{},{"id":633,"data":1070,"type":217,"tunes":1071},{"text":635},{},{"id":638,"data":1073,"type":217,"tunes":1074},{"text":640},{},{"id":643,"data":1076,"type":649,"tunes":1077},{"url":645,"title":646,"excerpt":647,"ctaLabel":648},{},{"id":652,"data":1079,"type":41,"tunes":1080},{"text":654,"level":239},{},{"id":657,"data":1082,"type":217,"tunes":1083},{"text":659},{},{"id":662,"data":1085,"type":217,"tunes":1086},{"text":664},{},{"id":667,"data":1088,"type":649,"tunes":1089},{"url":669,"title":670,"excerpt":671,"ctaLabel":672},{},{"id":675,"data":1091,"type":41,"tunes":1092},{"text":677,"level":239},{},{"id":680,"data":1094,"type":217,"tunes":1095},{"text":682},{},{"id":685,"data":1097,"type":217,"tunes":1098},{"text":687},{},{"id":690,"data":1100,"type":41,"tunes":1101},{"text":692,"level":239},{},{"id":695,"data":1103,"type":217,"tunes":1104},{"text":697},{},{"id":700,"data":1106,"type":217,"tunes":1107},{"text":702},{},{"id":705,"data":1109,"type":41,"tunes":1110},{"text":707,"level":239},{},{"id":710,"data":1112,"type":217,"tunes":1113},{"text":712},{},{"id":715,"data":1115,"type":217,"tunes":1116},{"text":717},{},{"id":720,"data":1118,"type":41,"tunes":1119},{"text":722,"level":239},{},{"id":725,"data":1121,"type":725,"tunes":1128},{"items":1122,"title":748},[1123,1124,1125,1126,1127],{"id":729,"answer":730,"question":731},{"id":733,"answer":734,"question":735},{"id":737,"answer":738,"question":739},{"id":741,"answer":742,"question":743},{"id":745,"answer":746,"question":747},{},{"id":751,"data":1130,"type":41,"tunes":1131},{"text":753,"level":239},{},{"id":756,"data":1133,"type":756,"tunes":1141},{"title":758,"entries":1134},[1135,1136,1137,1138,1139,1140],{"term":463,"anchor":761,"definition":762},{"term":603,"anchor":764,"definition":765},{"term":611,"anchor":767,"definition":768},{"term":770,"anchor":771,"definition":772},{"term":774,"anchor":775,"definition":776},{"term":778,"anchor":779,"definition":780},{},{"id":783,"data":1143,"type":41,"tunes":1144},{"text":785,"level":239},{},{"id":788,"data":1146,"type":795,"tunes":1149},{"link":790,"meta":1147},{"image":1148,"title":793,"description":794},{"url":454},{},{"id":798,"data":1151,"type":795,"tunes":1154},{"link":800,"meta":1152},{"image":1153,"title":803,"description":804},{"url":454},{},{"id":807,"data":1156,"type":795,"tunes":1159},{"link":809,"meta":1157},{"image":1158,"title":812,"description":813},{"url":454},{},{"id":816,"data":1161,"type":795,"tunes":1164},{"link":818,"meta":1162},{"image":1163,"title":821,"description":822},{"url":454},{},{"id":825,"data":1166,"type":795,"tunes":1169},{"link":827,"meta":1167},{"image":1168,"title":830,"description":831},{"url":454},{},{"lang":1171,"title":1172,"content":1173,"contentJson":1174,"excerpt":1680},"en","RAG Failed — But Which Layer Actually Failed? A Diagnostic Method","{\"time\":1790369097340,\"blocks\":[{\"id\":\"8zyFXn5HD5\",\"type\":\"tableOfContents\",\"data\":{\"title\":\"Contents\",\"minLevel\":2,\"maxLevel\":3},\"tunes\":{}},{\"id\":\"intro\",\"type\":\"paragraph\",\"data\":{\"text\":\"A RAG system returns a weak, wrong, incomplete, or unsupported answer. The usual diagnosis is “retrieval failed” or “the model hallucinated.” Both labels are too broad to be useful. A production RAG pipeline can fail before retrieval, during retrieval, while ranking, while assembling context, during generation, or after generation when evidence and validity are checked.\"},\"tunes\":{}},{\"id\":\"direct\",\"type\":\"callout\",\"data\":{\"variant\":\"info\",\"title\":\"Direct answer\",\"body\":\"\u003Cstrong>Do not debug RAG as one component.\u003C\u002Fstrong> Diagnose it as a chain of independently testable layers. First determine whether the required evidence exists in an authoritative source. Then test query construction, candidate retrieval, ranking, context assembly, generation, evidence attribution, and freshness. The fastest isolation technique is an \u003Cstrong>oracle-context test\u003C\u002Fstrong>: give the generator the correct evidence manually. If the answer becomes correct, the dominant failure is upstream of generation. If it remains wrong, retrieval is not the primary problem.\"},\"tunes\":{}},{\"id\":\"model-note\",\"type\":\"callout\",\"data\":{\"variant\":\"note\",\"title\":\"About the diagnostic model\",\"body\":\"The RAG Failure Stack in this article is a practical diagnostic model, not a formal industry standard. Existing platforms already separate retrieval-only metrics from retrieve-and-generate metrics; this model extends that separation into a step-by-step production debugging method.\"},\"tunes\":{}},{\"id\":\"h-not-diagnosis\",\"type\":\"header\",\"data\":{\"text\":\"Why “RAG failed” is not a diagnosis\",\"level\":2},\"tunes\":{}},{\"id\":\"p-not-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"Retrieval-augmented generation combines several mechanisms: a user request is interpreted, one or more searches are constructed, candidate material is retrieved, results are filtered or reranked, selected evidence is inserted into a model context, and a model generates an answer. Production systems may add permissions, metadata filters, freshness rules, citations, query rewriting, hybrid search, tool calls, memory, and external state.\"},\"tunes\":{}},{\"id\":\"p-not-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"A wrong final answer therefore does not tell you which component failed. The model may have received the wrong evidence. It may have received the right evidence mixed with too much noise. The evidence may be correct but stale. The source may never have contained the answer. Or the model may have ignored perfectly adequate context.\"},\"tunes\":{}},{\"id\":\"p-not-3\",\"type\":\"paragraph\",\"data\":{\"text\":\"OpenAI's RAG guidance already makes a fundamental distinction between retrieval failure and model failure: a system can supply the wrong context, or it can supply the right context and still generate the wrong answer. AWS similarly separates retrieve-only evaluation from retrieve-and-generate evaluation. For production diagnosis, that distinction should be taken further.\"},\"tunes\":{}},{\"id\":\"h-stack\",\"type\":\"header\",\"data\":{\"text\":\"The RAG Failure Stack\",\"level\":2},\"tunes\":{}},{\"id\":\"table-stack\",\"type\":\"table\",\"data\":{\"withHeadings\":true,\"stretched\":false,\"content\":[[\"Layer\",\"Question\",\"Typical failure\"],[\"1. Source coverage\",\"Does the required evidence exist in an allowed authoritative source?\",\"The corpus cannot answer the question at all\"],[\"2. Query construction\",\"Did the system search for the right thing?\",\"Intent, entities, filters, language, or time constraints are lost\"],[\"3. Candidate retrieval\",\"Did the relevant evidence enter the candidate set?\",\"Low recall; the right chunk is never retrieved\"],[\"4. Ranking &amp; filtering\",\"Did the right evidence survive and rank high enough?\",\"Relevant evidence is buried, filtered out, or outranked by superficially similar text\"],[\"5. Context assembly\",\"Did the model receive usable evidence?\",\"Truncation, bad chunk boundaries, duplicates, conflicting passages, or context overload\"],[\"6. Generation\",\"Did the model use the supplied evidence correctly?\",\"Unsupported inference, instruction failure, reasoning error, or refusal mismatch\"],[\"7. Evidence attribution\",\"Can the answer be traced to the evidence it claims to use?\",\"Missing, weak, or incorrect citations; claims exceed retrieved support\"],[\"8. Validity &amp; freshness\",\"Is the evidence still valid for this question now?\",\"Correct historical evidence is reused outside its valid time, version, jurisdiction, or state\"]]},\"tunes\":{}},{\"id\":\"h-source\",\"type\":\"header\",\"data\":{\"text\":\"Layer 1 — Source coverage: can the system answer this at all?\",\"level\":3},\"tunes\":{}},{\"id\":\"p-source-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"Before tuning embeddings, rerankers, or prompts, verify that the answer exists in the knowledge space the system is allowed to use. This sounds obvious, but many RAG failures are actually corpus failures. The requested fact may be absent, hidden in an unindexed attachment, available only in a newer document, stored in a system outside the RAG corpus, or blocked by permissions.\"},\"tunes\":{}},{\"id\":\"p-source-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"A retrieval metric cannot recover information that was never indexed. A larger top-k cannot retrieve a document the pipeline does not contain. If the source coverage test fails, the correct fix is ingestion, source selection, permissions, or an explicit “not answerable from available evidence” behaviour.\"},\"tunes\":{}},{\"id\":\"source-warning\",\"type\":\"callout\",\"data\":{\"variant\":\"warning\",\"title\":\"Failure pattern\",\"body\":\"Teams often tune retrieval against questions that the corpus cannot actually answer. This can make the retriever better at finding related text while leaving the underlying information gap untouched.\"},\"tunes\":{}},{\"id\":\"h-query\",\"type\":\"header\",\"data\":{\"text\":\"Layer 2 — Query construction: did the system ask the corpus the right question?\",\"level\":3},\"tunes\":{}},{\"id\":\"p-query-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"The user query is not always the retrieval query. Production systems rewrite questions, resolve pronouns, extract entities, translate languages, add metadata constraints, split complex questions, or generate multiple searches. Every transformation can improve retrieval, but every transformation can also destroy information.\"},\"tunes\":{}},{\"id\":\"p-query-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"A request such as “Does the policy still apply to contractors in Germany after the September update?” contains at least an entity, a population, a jurisdiction, and a time boundary. A rewritten query that becomes “contractor policy” may retrieve semantically related text while losing the variables that decide whether the answer is valid.\"},\"tunes\":{}},{\"id\":\"h-retrieval\",\"type\":\"header\",\"data\":{\"text\":\"Layer 3 — Candidate retrieval: did the relevant evidence enter the set?\",\"level\":3},\"tunes\":{}},{\"id\":\"p-ret-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"Candidate retrieval is primarily a recall problem. The diagnostic question is not yet whether the best result ranked first; it is whether relevant evidence appeared anywhere in the candidate pool. If the known correct source does not appear, investigate indexing, chunking, embeddings, lexical matching, metadata, hybrid search, language handling, synonyms, and query expansion.\"},\"tunes\":{}},{\"id\":\"p-ret-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"This is where retrieval-only evaluation is valuable. AWS exposes context relevance and context coverage for retrieve-only RAG evaluation. The important production habit is to evaluate retrieval before generation so that a polished final answer cannot hide a weak candidate set.\"},\"tunes\":{}},{\"id\":\"h-ranking\",\"type\":\"header\",\"data\":{\"text\":\"Layer 4 — Ranking and filtering: was the right evidence discarded or buried?\",\"level\":3},\"tunes\":{}},{\"id\":\"p-rank-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"A system can have good recall and still fail because the relevant evidence ranks below noisy but semantically similar material. Rerankers, recency boosts, authority weights, language preferences, tenant filters, access controls, product status filters, and deduplication all change what survives into the final context.\"},\"tunes\":{}},{\"id\":\"p-rank-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"Debugging should therefore preserve the full candidate list, not only the final top-k. If the gold evidence was retrieved at rank 18 and a reranker removed it, the fix is not the same as a retrieval miss.\"},\"tunes\":{}},{\"id\":\"h-context\",\"type\":\"header\",\"data\":{\"text\":\"Layer 5 — Context assembly: did useful evidence become usable context?\",\"level\":3},\"tunes\":{}},{\"id\":\"p-ctx-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"Retrieval success does not guarantee context success. Relevant chunks can be truncated, separated from their qualifiers, duplicated until they dominate the prompt, mixed with contradictory versions, or surrounded by enough irrelevant text that the decisive passage loses salience.\"},\"tunes\":{}},{\"id\":\"p-ctx-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"Chunk boundaries are especially important. A sentence may contain the rule while the following sentence contains the exception. If they are indexed separately and only the first is retrieved, the retriever can appear relevant while the assembled context becomes misleading.\"},\"tunes\":{}},{\"id\":\"h-generation\",\"type\":\"header\",\"data\":{\"text\":\"Layer 6 — Generation: can the model use correct evidence correctly?\",\"level\":3},\"tunes\":{}},{\"id\":\"p-gen-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"Once the system has demonstrably supplied sufficient evidence, generation becomes independently testable. The model may overgeneralize, combine incompatible passages, ignore a negative statement, fail to follow the requested answer format, invent a bridge between facts, or answer from parametric memory instead of the retrieved evidence.\"},\"tunes\":{}},{\"id\":\"p-gen-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"This is why end-to-end correctness alone is insufficient for diagnosis. OpenAI recommends evaluation as a structured way to understand application behaviour, while Anthropic's agent-evaluation guidance emphasizes multiple trials, graders, traces, and realistic failure cases. For RAG, the generator should be tested both with normal retrieval and with controlled gold context.\"},\"tunes\":{}},{\"id\":\"h-evidence\",\"type\":\"header\",\"data\":{\"text\":\"Layer 7 — Evidence attribution: is the answer actually supported?\",\"level\":3},\"tunes\":{}},{\"id\":\"p-evidence-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"A plausible answer with citations can still be weakly grounded. The cited document may be relevant to the topic but not support the specific claim. One sentence may be supported while another is inferred. A citation may point to a source that contradicts the answer once its conditions are read.\"},\"tunes\":{}},{\"id\":\"p-evidence-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"Citation evaluation therefore belongs after generation. AWS distinguishes citation precision from citation coverage: whether cited passages are correctly cited and whether the answer is sufficiently supported by citations. In production, claim-level support is more useful than treating the presence of any citation as evidence quality.\"},\"tunes\":{}},{\"id\":\"h-validity\",\"type\":\"header\",\"data\":{\"text\":\"Layer 8 — Validity and freshness: was the evidence correct for this version of reality?\",\"level\":3},\"tunes\":{}},{\"id\":\"p-valid-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"RAG can retrieve a perfectly authentic, highly relevant, faithfully quoted source and still produce a wrong answer if the source is no longer valid for the current question. Policies change. APIs are deprecated. prices move. software behaviour changes between versions. product inventory changes. permissions change. game patches change mechanics.\"},\"tunes\":{}},{\"id\":\"p-valid-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"This is a separate failure class from hallucination. The evidence is real; its applicability is wrong. A robust system therefore needs timestamps, version or jurisdiction metadata where relevant, source authority, supersession rules, and an explicit mechanism for deciding when older evidence must be restricted or abandoned.\"},\"tunes\":{}},{\"id\":\"h-oracle\",\"type\":\"header\",\"data\":{\"text\":\"The fastest isolation method: the oracle-context test\",\"level\":2},\"tunes\":{}},{\"id\":\"p-oracle-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"The most useful first split is simple: manually provide the generator with a small set of evidence that you know is sufficient to answer the question. Keep the task and expected answer unchanged.\"},\"tunes\":{}},{\"id\":\"oracle-comparison\",\"type\":\"comparison\",\"data\":{\"title\":\"Oracle-context test\",\"layout\":\"table\",\"columns\":[{\"id\":\"result\",\"label\":\"Result\"},{\"id\":\"meaning\",\"label\":\"Likely interpretation\"},{\"id\":\"next\",\"label\":\"Next diagnostic step\"}],\"rows\":[{\"id\":\"oracle-pass\",\"label\":\"Answer becomes correct\",\"values\":[\"\",\"\",\"\"]},{\"id\":\"oracle-fail\",\"label\":\"Answer remains wrong\",\"values\":[\"\",\"\",\"\"]},{\"id\":\"oracle-partial\",\"label\":\"Answer improves but remains incomplete\",\"values\":[\"\",\"\",\"\"]}]},\"tunes\":{}},{\"id\":\"oracle-tip\",\"type\":\"callout\",\"data\":{\"variant\":\"tip\",\"title\":\"Why this test is powerful\",\"body\":\"The oracle-context test removes most of the retrieval pipeline from the experiment. It does not prove that generation is perfect, but it gives you a fast counterfactual: \u003Cstrong>what would the model do if retrieval had already succeeded?\u003C\u002Fstrong>\"},\"tunes\":{}},{\"id\":\"h-sequence\",\"type\":\"header\",\"data\":{\"text\":\"A production diagnostic sequence\",\"level\":2},\"tunes\":{}},{\"id\":\"diag-flow\",\"type\":\"processFlow\",\"data\":{\"title\":\"Diagnose the failure from evidence to answer\",\"orientation\":\"auto\",\"steps\":[{\"label\":\"1. Define the expected claim\",\"description\":\"Write the expected answer, allowed uncertainty, and the evidence that would justify it.\"},{\"label\":\"2. Verify source coverage\",\"description\":\"Confirm that authoritative and permitted evidence exists in the indexed or reachable source set.\"},{\"label\":\"3. Run the oracle-context test\",\"description\":\"Supply sufficient gold evidence directly to the generator and observe whether the answer becomes correct.\"},{\"label\":\"4. Inspect the retrieval query\",\"description\":\"Check rewrites, entities, filters, language, time constraints, decomposition, and hidden assumptions.\"},{\"label\":\"5. Inspect candidates before reranking\",\"description\":\"Determine whether relevant evidence was retrieved at all and record its rank.\"},{\"label\":\"6. Inspect ranking and context assembly\",\"description\":\"Check reranking, metadata filters, truncation, chunk boundaries, duplicates, conflicts, and top-k composition.\"},{\"label\":\"7. Grade generation and citations separately\",\"description\":\"Measure answer correctness, completeness, faithfulness, and claim-level evidence support.\"},{\"label\":\"8. Test validity boundaries\",\"description\":\"Check whether version, date, state, jurisdiction, permissions, or superseding evidence changes the answer.\"}]},\"tunes\":{}},{\"id\":\"h-one-change\",\"type\":\"header\",\"data\":{\"text\":\"Do not change three layers at once\",\"level\":2},\"tunes\":{}},{\"id\":\"p-one-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"A common debugging mistake is to change embeddings, chunk sizes, top-k, prompts, and the model in one iteration. If the score improves, you do not know why. If it gets worse, you do not know which change caused the regression.\"},\"tunes\":{}},{\"id\":\"p-one-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"Treat RAG debugging like experimental diagnosis: hold as much of the pipeline constant as possible and replace one uncertain component with a controlled input. Gold documents isolate retrieval. Gold chunks isolate chunk selection. Fixed context isolates generation. A fixed model isolates retrieval changes. A fixed corpus isolates ingestion and indexing changes.\"},\"tunes\":{}},{\"id\":\"h-matrix\",\"type\":\"header\",\"data\":{\"text\":\"A failure matrix for common RAG symptoms\",\"level\":2},\"tunes\":{}},{\"id\":\"symptom-matrix\",\"type\":\"table\",\"data\":{\"withHeadings\":true,\"stretched\":false,\"content\":[[\"Symptom\",\"Most likely layers to test first\",\"Discriminating test\"],[\"No relevant source appears\",\"Source coverage → Query → Candidate retrieval\",\"Search the corpus manually, then inspect rewritten query and unfiltered candidates\"],[\"Relevant source appears but answer is wrong\",\"Context assembly → Generation\",\"Oracle-context test with the same source reduced to decisive passages\"],[\"Answer is correct sometimes, wrong other times\",\"Ranking → Context assembly → Generation variability\",\"Repeat trials while logging retrieved set, rank, prompt context, and model output\"],[\"Answer cites the right document but overstates it\",\"Generation → Evidence attribution → Validity\",\"Grade each claim against the exact cited passage\"],[\"Old information keeps winning\",\"Ranking → Validity\u002Ffreshness\",\"Compare with recency\u002Fsupersession rules and inspect metadata\"],[\"Answer misses an exception\",\"Chunking → Context assembly\",\"Check whether rule and exception were split or truncated\"],[\"Adding more top-k makes quality worse\",\"Ranking → Context overload\",\"Ablate low-value chunks and compare with a minimal evidence set\"],[\"Changing the model fixes the answer\",\"Generation, but not necessarily retrieval\",\"Repeat with identical retrieved context across models\"],[\"Changing embeddings fixes the answer\",\"Retrieval\u002Franking\",\"Keep generator and context template constant while comparing candidate recall\"]]},\"tunes\":{}},{\"id\":\"h-metrics\",\"type\":\"header\",\"data\":{\"text\":\"Measure each layer with the metric it can actually influence\",\"level\":2},\"tunes\":{}},{\"id\":\"metrics-table\",\"type\":\"table\",\"data\":{\"withHeadings\":true,\"stretched\":false,\"content\":[[\"Layer\",\"Useful measurements\",\"What not to infer\"],[\"Source coverage\",\"Answerable-question rate, corpus coverage, ingestion completeness\",\"Do not blame embeddings for missing source material\"],[\"Candidate retrieval\",\"Recall@k, hit rate, context coverage\",\"High recall does not prove ranking quality\"],[\"Ranking\",\"MRR, NDCG, gold rank, precision@k\",\"Good ranking does not prove the generator used the evidence\"],[\"Context assembly\",\"Evidence retention, duplication, contradiction rate, token utilization\",\"Large context does not mean useful context\"],[\"Generation\",\"Correctness, completeness, task success, faithfulness\",\"Correctness alone does not prove grounding\"],[\"Evidence attribution\",\"Citation precision, citation coverage, claim support\",\"A citation count is not evidence quality\"],[\"Validity\",\"Freshness, supersession accuracy, version\u002Fjurisdiction match\",\"Relevant evidence is not automatically applicable evidence\"]]},\"tunes\":{}},{\"id\":\"h-correct-answer\",\"type\":\"header\",\"data\":{\"text\":\"A correct answer can still hide a RAG defect\",\"level\":2},\"tunes\":{}},{\"id\":\"p-correct-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"The reverse problem also matters. A RAG system can produce the correct answer while retrieval is broken. The model may already know the answer from training, infer it from weak evidence, or guess correctly. If evaluation looks only at the final answer, the system can appear healthy until the question reaches information that exists only in the private corpus.\"},\"tunes\":{}},{\"id\":\"p-correct-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"This is the same reliability problem that appears in agent systems more broadly: outcome correctness is not enough to prove that the execution path was reliable. For RAG, traces should preserve at least the retrieval query, candidate set, ranking, final context, answer, citations, model version, corpus\u002Findex version, and relevant filters.\"},\"tunes\":{}},{\"id\":\"internal-reliability\",\"type\":\"referralArticle\",\"data\":{\"url\":\"https:\u002F\u002Fstajic.de\u002Fblog\u002Fai-agent-reliability-why-the-final-answer-is-not-enough\",\"title\":\"AI Agent Reliability: Why the Final Answer Is Not Enough\",\"excerpt\":\"Correct output does not prove correct reasoning, safe execution, or a trustworthy system. This article extends that principle from RAG diagnosis to agent trajectories and operational assurance.\",\"ctaLabel\":\"Read the related article\"},\"tunes\":{}},{\"id\":\"h-hypotheses\",\"type\":\"header\",\"data\":{\"text\":\"Use competing hypotheses, not a favourite explanation\",\"level\":2},\"tunes\":{}},{\"id\":\"p-hyp-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"If a bad answer immediately becomes “an embedding problem,” the investigation is already biased. A stronger debugging method writes down competing hypotheses before changing the system: missing source, bad query rewrite, low retrieval recall, bad reranking, context truncation, conflicting versions, generation failure, citation failure, or stale evidence.\"},\"tunes\":{}},{\"id\":\"p-hyp-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"Then choose a test that would separate those hypotheses. This is more efficient than collecting more examples that support the first explanation. The same principle applies to AI-assisted technical reasoning in general: a useful diagnosis is one that survives discriminating tests, not one that merely sounds plausible.\"},\"tunes\":{}},{\"id\":\"internal-reasoning\",\"type\":\"referralArticle\",\"data\":{\"url\":\"https:\u002F\u002Fstajic.de\u002Fblog\u002Ffrom-research-protocol-to-a-general-ai-reasoning-framework\",\"title\":\"From Research Protocol to a General AI Reasoning Framework\",\"excerpt\":\"A domain-independent reasoning method for separating evidence from assumptions, testing competing hypotheses and using domain-specific validators.\",\"ctaLabel\":\"Read the reasoning framework\"},\"tunes\":{}},{\"id\":\"h-change\",\"type\":\"header\",\"data\":{\"text\":\"What would change this answer?\",\"level\":2},\"tunes\":{}},{\"id\":\"p-change-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"The exact diagnostic layers change with architecture. A simple single-document RAG application may have no query rewriting, reranker, or citation layer. An agentic retrieval system may add planning, multiple searches, tool selection, memory, permissions, and iterative evidence gathering. A structured database lookup may not use chunks or embeddings at all.\"},\"tunes\":{}},{\"id\":\"p-change-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"The core method still holds: identify the components that can independently change the result, construct controlled tests that replace uncertain components with known-good inputs, and measure each component using evidence appropriate to that layer.\"},\"tunes\":{}},{\"id\":\"h-limitations\",\"type\":\"header\",\"data\":{\"text\":\"Limitations\",\"level\":2},\"tunes\":{}},{\"id\":\"p-limit-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"Real failures are often coupled. A weak query can reduce recall, which changes reranking, which changes context, which increases generation variance. The oracle-context test is a diagnostic shortcut, not proof that one component is solely responsible. Evaluation datasets can also be unrepresentative, and model-based graders can introduce their own errors.\"},\"tunes\":{}},{\"id\":\"p-limit-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"The proposed stack is therefore best used as an investigation structure: log the pipeline, isolate variables, reproduce failures, test competing explanations, and keep end-to-end evaluation after layer-level fixes.\"},\"tunes\":{}},{\"id\":\"h-conclusion\",\"type\":\"header\",\"data\":{\"text\":\"Conclusion\",\"level\":2},\"tunes\":{}},{\"id\":\"p-conclusion-1\",\"type\":\"paragraph\",\"data\":{\"text\":\"“RAG failed” should be the beginning of the investigation, not the conclusion. A useful diagnosis identifies whether the system lacked the evidence, searched incorrectly, failed to retrieve it, ranked it badly, assembled unusable context, generated incorrectly, attributed claims poorly, or applied evidence outside its validity boundary.\"},\"tunes\":{}},{\"id\":\"p-conclusion-2\",\"type\":\"paragraph\",\"data\":{\"text\":\"The practical rule is simple: replace uncertainty with controlled evidence one layer at a time. Start with the oracle-context test. Separate retrieval-only evaluation from generation evaluation. Preserve the full trace. Then fix the component that actually failed instead of tuning the entire RAG stack by intuition.\"},\"tunes\":{}},{\"id\":\"h-faq\",\"type\":\"header\",\"data\":{\"text\":\"FAQ\",\"level\":2},\"tunes\":{}},{\"id\":\"faq\",\"type\":\"faq\",\"data\":{\"title\":\"RAG failure diagnosis\",\"items\":[{\"id\":\"faq1\",\"question\":\"How can I tell whether RAG retrieval or the LLM failed?\",\"answer\":\"Give the model a small set of known-correct evidence manually. If the answer becomes correct, investigate source coverage, query construction, retrieval, ranking, and context assembly. If the model still fails with sufficient evidence, retrieval is not the primary problem.\"},{\"id\":\"faq2\",\"question\":\"Can RAG fail even when the correct document was retrieved?\",\"answer\":\"Yes. The relevant passage can be ranked too low, truncated, separated from an exception, mixed with conflicting evidence, overwhelmed by irrelevant context, or used incorrectly by the generator.\"},{\"id\":\"faq3\",\"question\":\"Is answer correctness enough to evaluate a RAG system?\",\"answer\":\"No. A model can produce a correct answer despite weak retrieval by relying on prior model knowledge or chance. Evaluate retrieval and evidence support separately from final-answer correctness.\"},{\"id\":\"faq4\",\"question\":\"What should I log when debugging RAG?\",\"answer\":\"At minimum log the user request, transformed retrieval query, filters, candidate documents and ranks, final selected context, model and prompt version, answer, citations, corpus\u002Findex version, and timing or version metadata relevant to freshness.\"},{\"id\":\"faq5\",\"question\":\"Does increasing top-k usually fix RAG?\",\"answer\":\"Not reliably. A larger candidate or context set may improve recall, but it can also add noise, contradictions, duplicates, and context overload. Test whether the relevant evidence is missing before increasing top-k.\"}]},\"tunes\":{}},{\"id\":\"h-glossary\",\"type\":\"header\",\"data\":{\"text\":\"Glossary\",\"level\":2},\"tunes\":{}},{\"id\":\"glossary\",\"type\":\"glossary\",\"data\":{\"title\":\"Key diagnostic terms\",\"entries\":[{\"term\":\"Oracle-context test\",\"definition\":\"A controlled test in which the generator is given known-sufficient evidence directly to determine whether the dominant failure is upstream of generation.\",\"anchor\":\"oracle-context-test\"},{\"term\":\"Candidate retrieval\",\"definition\":\"The stage that selects an initial set of potentially relevant documents, chunks, records, or passages before final ranking or context assembly.\",\"anchor\":\"candidate-retrieval\"},{\"term\":\"Context assembly\",\"definition\":\"The process of converting retrieved evidence into the actual model input, including ordering, truncation, deduplication, formatting, and token-budget decisions.\",\"anchor\":\"context-assembly\"},{\"term\":\"Faithfulness\",\"definition\":\"The degree to which generated claims remain supported by the retrieved or supplied evidence rather than introducing unsupported content.\",\"anchor\":\"faithfulness\"},{\"term\":\"Context coverage\",\"definition\":\"A retrieval-oriented measure of whether selected evidence covers the information needed to answer the question.\",\"anchor\":\"context-coverage\"},{\"term\":\"Validity boundary\",\"definition\":\"The conditions under which a claim or answer remains applicable, such as time, version, jurisdiction, state, population, permissions, or source assumptions.\",\"anchor\":\"validity-boundary\"}]},\"tunes\":{}},{\"id\":\"h-sources\",\"type\":\"header\",\"data\":{\"text\":\"Primary sources and further reading\",\"level\":2},\"tunes\":{}},{\"id\":\"src-openai-rag\",\"type\":\"linkTool\",\"data\":{\"link\":\"https:\u002F\u002Fdevelopers.openai.com\u002Fapi\u002Fdocs\u002Fguides\u002Foptimizing-llm-accuracy\",\"meta\":{\"image\":{\"url\":\"\"},\"title\":\"OpenAI — Optimizing LLM Accuracy\",\"description\":\"OpenAI guidance separating retrieval failures from LLM failures in RAG applications.\"}},\"tunes\":{}},{\"id\":\"src-openai-evals\",\"type\":\"linkTool\",\"data\":{\"link\":\"https:\u002F\u002Fdevelopers.openai.com\u002Fapi\u002Fdocs\u002Fguides\u002Fevaluation-best-practices\",\"meta\":{\"image\":{\"url\":\"\"},\"title\":\"OpenAI — Evaluation Best Practices\",\"description\":\"Guidance on structured evaluation for variable AI systems and production-oriented test design.\"}},\"tunes\":{}},{\"id\":\"src-aws-rag\",\"type\":\"linkTool\",\"data\":{\"link\":\"https:\u002F\u002Fdocs.aws.amazon.com\u002Fbedrock\u002Flatest\u002Fuserguide\u002Fknowledge-base-evaluation-metrics.html\",\"meta\":{\"image\":{\"url\":\"\"},\"title\":\"Amazon Bedrock — RAG Evaluation Metrics\",\"description\":\"Documentation separating retrieve-only metrics from retrieve-and-generate metrics, including context relevance, coverage, faithfulness and citation measures.\"}},\"tunes\":{}},{\"id\":\"src-anthropic-evals\",\"type\":\"linkTool\",\"data\":{\"link\":\"https:\u002F\u002Fwww.anthropic.com\u002Fengineering\u002Fdemystifying-evals-for-ai-agents\",\"meta\":{\"image\":{\"url\":\"\"},\"title\":\"Anthropic — Demystifying Evals for AI Agents\",\"description\":\"Practical evaluation guidance on tasks, trials, graders, traces, regressions and production behaviour.\"}},\"tunes\":{}},{\"id\":\"src-google-rag\",\"type\":\"linkTool\",\"data\":{\"link\":\"https:\u002F\u002Fcloud.google.com\u002Fuse-cases\u002Fretrieval-augmented-generation\",\"meta\":{\"image\":{\"url\":\"\"},\"title\":\"Google Cloud — Retrieval-Augmented Generation\",\"description\":\"Overview of RAG architecture and the importance of relevant retrieval and grounded generation.\"}},\"tunes\":{}}],\"version\":\"2.31.6\"}",{"time":1175,"blocks":1176,"version":833},1790369097340,[1177,1182,1186,1191,1196,1200,1204,1208,1212,1216,1256,1260,1264,1268,1273,1277,1281,1285,1289,1293,1297,1301,1305,1309,1313,1317,1321,1325,1329,1333,1337,1341,1345,1349,1353,1357,1361,1365,1386,1391,1395,1424,1428,1432,1436,1440,1483,1487,1521,1525,1529,1533,1540,1544,1548,1552,1559,1563,1567,1571,1575,1579,1583,1587,1591,1595,1598,1618,1622,1642,1646,1653,1660,1667,1674],{"id":1178,"data":1179,"type":240,"tunes":1181},"8zyFXn5HD5",{"title":1180,"maxLevel":238,"minLevel":239},"Contents",{},{"id":214,"data":1183,"type":217,"tunes":1185},{"text":1184},"A RAG system returns a weak, wrong, incomplete, or unsupported answer. The usual diagnosis is “retrieval failed” or “the model hallucinated.” Both labels are too broad to be useful. A production RAG pipeline can fail before retrieval, during retrieval, while ranking, while assembling context, during generation, or after generation when evidence and validity are checked.",{},{"id":220,"data":1187,"type":225,"tunes":1190},{"body":1188,"title":1189,"variant":224},"\u003Cstrong>Do not debug RAG as one component.\u003C\u002Fstrong> Diagnose it as a chain of independently testable layers. First determine whether the required evidence exists in an authoritative source. Then test query construction, candidate retrieval, ranking, context assembly, generation, evidence attribution, and freshness. The fastest isolation technique is an \u003Cstrong>oracle-context test\u003C\u002Fstrong>: give the generator the correct evidence manually. If the answer becomes correct, the dominant failure is upstream of generation. If it remains wrong, retrieval is not the primary problem.","Direct answer",{},{"id":228,"data":1192,"type":225,"tunes":1195},{"body":1193,"title":1194,"variant":232},"The RAG Failure Stack in this article is a practical diagnostic model, not a formal industry standard. Existing platforms already separate retrieval-only metrics from retrieve-and-generate metrics; this model extends that separation into a step-by-step production debugging method.","About the diagnostic model",{},{"id":243,"data":1197,"type":41,"tunes":1199},{"text":1198,"level":239},"Why “RAG failed” is not a diagnosis",{},{"id":248,"data":1201,"type":217,"tunes":1203},{"text":1202},"Retrieval-augmented generation combines several mechanisms: a user request is interpreted, one or more searches are constructed, candidate material is retrieved, results are filtered or reranked, selected evidence is inserted into a model context, and a model generates an answer. Production systems may add permissions, metadata filters, freshness rules, citations, query rewriting, hybrid search, tool calls, memory, and external state.",{},{"id":253,"data":1205,"type":217,"tunes":1207},{"text":1206},"A wrong final answer therefore does not tell you which component failed. The model may have received the wrong evidence. It may have received the right evidence mixed with too much noise. The evidence may be correct but stale. The source may never have contained the answer. Or the model may have ignored perfectly adequate context.",{},{"id":258,"data":1209,"type":217,"tunes":1211},{"text":1210},"OpenAI's RAG guidance already makes a fundamental distinction between retrieval failure and model failure: a system can supply the wrong context, or it can supply the right context and still generate the wrong answer. AWS similarly separates retrieve-only evaluation from retrieve-and-generate evaluation. For production diagnosis, that distinction should be taken further.",{},{"id":263,"data":1213,"type":41,"tunes":1215},{"text":1214,"level":239},"The RAG Failure Stack",{},{"id":268,"data":1217,"type":307,"tunes":1255},{"content":1218,"stretched":42,"withHeadings":13},[1219,1223,1227,1231,1235,1239,1243,1247,1251],[1220,1221,1222],"Layer","Question","Typical failure",[1224,1225,1226],"1. Source coverage","Does the required evidence exist in an allowed authoritative source?","The corpus cannot answer the question at all",[1228,1229,1230],"2. Query construction","Did the system search for the right thing?","Intent, entities, filters, language, or time constraints are lost",[1232,1233,1234],"3. Candidate retrieval","Did the relevant evidence enter the candidate set?","Low recall; the right chunk is never retrieved",[1236,1237,1238],"4. Ranking &amp; filtering","Did the right evidence survive and rank high enough?","Relevant evidence is buried, filtered out, or outranked by superficially similar text",[1240,1241,1242],"5. Context assembly","Did the model receive usable evidence?","Truncation, bad chunk boundaries, duplicates, conflicting passages, or context overload",[1244,1245,1246],"6. Generation","Did the model use the supplied evidence correctly?","Unsupported inference, instruction failure, reasoning error, or refusal mismatch",[1248,1249,1250],"7. Evidence attribution","Can the answer be traced to the evidence it claims to use?","Missing, weak, or incorrect citations; claims exceed retrieved support",[1252,1253,1254],"8. Validity &amp; freshness","Is the evidence still valid for this question now?","Correct historical evidence is reused outside its valid time, version, jurisdiction, or state",{},{"id":310,"data":1257,"type":41,"tunes":1259},{"text":1258,"level":238},"Layer 1 — Source coverage: can the system answer this at all?",{},{"id":315,"data":1261,"type":217,"tunes":1263},{"text":1262},"Before tuning embeddings, rerankers, or prompts, verify that the answer exists in the knowledge space the system is allowed to use. This sounds obvious, but many RAG failures are actually corpus failures. The requested fact may be absent, hidden in an unindexed attachment, available only in a newer document, stored in a system outside the RAG corpus, or blocked by permissions.",{},{"id":320,"data":1265,"type":217,"tunes":1267},{"text":1266},"A retrieval metric cannot recover information that was never indexed. A larger top-k cannot retrieve a document the pipeline does not contain. If the source coverage test fails, the correct fix is ingestion, source selection, permissions, or an explicit “not answerable from available evidence” behaviour.",{},{"id":325,"data":1269,"type":225,"tunes":1272},{"body":1270,"title":1271,"variant":329},"Teams often tune retrieval against questions that the corpus cannot actually answer. This can make the retriever better at finding related text while leaving the underlying information gap untouched.","Failure pattern",{},{"id":332,"data":1274,"type":41,"tunes":1276},{"text":1275,"level":238},"Layer 2 — Query construction: did the system ask the corpus the right question?",{},{"id":337,"data":1278,"type":217,"tunes":1280},{"text":1279},"The user query is not always the retrieval query. Production systems rewrite questions, resolve pronouns, extract entities, translate languages, add metadata constraints, split complex questions, or generate multiple searches. Every transformation can improve retrieval, but every transformation can also destroy information.",{},{"id":342,"data":1282,"type":217,"tunes":1284},{"text":1283},"A request such as “Does the policy still apply to contractors in Germany after the September update?” contains at least an entity, a population, a jurisdiction, and a time boundary. A rewritten query that becomes “contractor policy” may retrieve semantically related text while losing the variables that decide whether the answer is valid.",{},{"id":347,"data":1286,"type":41,"tunes":1288},{"text":1287,"level":238},"Layer 3 — Candidate retrieval: did the relevant evidence enter the set?",{},{"id":352,"data":1290,"type":217,"tunes":1292},{"text":1291},"Candidate retrieval is primarily a recall problem. The diagnostic question is not yet whether the best result ranked first; it is whether relevant evidence appeared anywhere in the candidate pool. If the known correct source does not appear, investigate indexing, chunking, embeddings, lexical matching, metadata, hybrid search, language handling, synonyms, and query expansion.",{},{"id":357,"data":1294,"type":217,"tunes":1296},{"text":1295},"This is where retrieval-only evaluation is valuable. AWS exposes context relevance and context coverage for retrieve-only RAG evaluation. The important production habit is to evaluate retrieval before generation so that a polished final answer cannot hide a weak candidate set.",{},{"id":362,"data":1298,"type":41,"tunes":1300},{"text":1299,"level":238},"Layer 4 — Ranking and filtering: was the right evidence discarded or buried?",{},{"id":367,"data":1302,"type":217,"tunes":1304},{"text":1303},"A system can have good recall and still fail because the relevant evidence ranks below noisy but semantically similar material. Rerankers, recency boosts, authority weights, language preferences, tenant filters, access controls, product status filters, and deduplication all change what survives into the final context.",{},{"id":372,"data":1306,"type":217,"tunes":1308},{"text":1307},"Debugging should therefore preserve the full candidate list, not only the final top-k. If the gold evidence was retrieved at rank 18 and a reranker removed it, the fix is not the same as a retrieval miss.",{},{"id":377,"data":1310,"type":41,"tunes":1312},{"text":1311,"level":238},"Layer 5 — Context assembly: did useful evidence become usable context?",{},{"id":382,"data":1314,"type":217,"tunes":1316},{"text":1315},"Retrieval success does not guarantee context success. Relevant chunks can be truncated, separated from their qualifiers, duplicated until they dominate the prompt, mixed with contradictory versions, or surrounded by enough irrelevant text that the decisive passage loses salience.",{},{"id":387,"data":1318,"type":217,"tunes":1320},{"text":1319},"Chunk boundaries are especially important. A sentence may contain the rule while the following sentence contains the exception. If they are indexed separately and only the first is retrieved, the retriever can appear relevant while the assembled context becomes misleading.",{},{"id":392,"data":1322,"type":41,"tunes":1324},{"text":1323,"level":238},"Layer 6 — Generation: can the model use correct evidence correctly?",{},{"id":397,"data":1326,"type":217,"tunes":1328},{"text":1327},"Once the system has demonstrably supplied sufficient evidence, generation becomes independently testable. The model may overgeneralize, combine incompatible passages, ignore a negative statement, fail to follow the requested answer format, invent a bridge between facts, or answer from parametric memory instead of the retrieved evidence.",{},{"id":402,"data":1330,"type":217,"tunes":1332},{"text":1331},"This is why end-to-end correctness alone is insufficient for diagnosis. OpenAI recommends evaluation as a structured way to understand application behaviour, while Anthropic's agent-evaluation guidance emphasizes multiple trials, graders, traces, and realistic failure cases. For RAG, the generator should be tested both with normal retrieval and with controlled gold context.",{},{"id":407,"data":1334,"type":41,"tunes":1336},{"text":1335,"level":238},"Layer 7 — Evidence attribution: is the answer actually supported?",{},{"id":412,"data":1338,"type":217,"tunes":1340},{"text":1339},"A plausible answer with citations can still be weakly grounded. The cited document may be relevant to the topic but not support the specific claim. One sentence may be supported while another is inferred. A citation may point to a source that contradicts the answer once its conditions are read.",{},{"id":417,"data":1342,"type":217,"tunes":1344},{"text":1343},"Citation evaluation therefore belongs after generation. AWS distinguishes citation precision from citation coverage: whether cited passages are correctly cited and whether the answer is sufficiently supported by citations. In production, claim-level support is more useful than treating the presence of any citation as evidence quality.",{},{"id":422,"data":1346,"type":41,"tunes":1348},{"text":1347,"level":238},"Layer 8 — Validity and freshness: was the evidence correct for this version of reality?",{},{"id":427,"data":1350,"type":217,"tunes":1352},{"text":1351},"RAG can retrieve a perfectly authentic, highly relevant, faithfully quoted source and still produce a wrong answer if the source is no longer valid for the current question. Policies change. APIs are deprecated. prices move. software behaviour changes between versions. product inventory changes. permissions change. game patches change mechanics.",{},{"id":432,"data":1354,"type":217,"tunes":1356},{"text":1355},"This is a separate failure class from hallucination. The evidence is real; its applicability is wrong. A robust system therefore needs timestamps, version or jurisdiction metadata where relevant, source authority, supersession rules, and an explicit mechanism for deciding when older evidence must be restricted or abandoned.",{},{"id":437,"data":1358,"type":41,"tunes":1360},{"text":1359,"level":239},"The fastest isolation method: the oracle-context test",{},{"id":442,"data":1362,"type":217,"tunes":1364},{"text":1363},"The most useful first split is simple: manually provide the generator with a small set of evidence that you know is sufficient to answer the question. Keep the task and expected answer unchanged.",{},{"id":447,"data":1366,"type":474,"tunes":1385},{"rows":1367,"title":1377,"layout":307,"columns":1378},[1368,1371,1374],{"id":451,"label":1369,"values":1370},"Answer becomes correct",[454,454,454],{"id":456,"label":1372,"values":1373},"Answer remains wrong",[454,454,454],{"id":460,"label":1375,"values":1376},"Answer improves but remains incomplete",[454,454,454],"Oracle-context test",[1379,1381,1383],{"id":466,"label":1380},"Result",{"id":469,"label":1382},"Likely interpretation",{"id":472,"label":1384},"Next diagnostic step",{},{"id":477,"data":1387,"type":225,"tunes":1390},{"body":1388,"title":1389,"variant":481},"The oracle-context test removes most of the retrieval pipeline from the experiment. It does not prove that generation is perfect, but it gives you a fast counterfactual: \u003Cstrong>what would the model do if retrieval had already succeeded?\u003C\u002Fstrong>","Why this test is powerful",{},{"id":484,"data":1392,"type":41,"tunes":1394},{"text":1393,"level":239},"A production diagnostic sequence",{},{"id":489,"data":1396,"type":518,"tunes":1423},{"steps":1397,"title":1422,"orientation":517},[1398,1401,1404,1407,1410,1413,1416,1419],{"label":1399,"description":1400},"1. Define the expected claim","Write the expected answer, allowed uncertainty, and the evidence that would justify it.",{"label":1402,"description":1403},"2. Verify source coverage","Confirm that authoritative and permitted evidence exists in the indexed or reachable source set.",{"label":1405,"description":1406},"3. Run the oracle-context test","Supply sufficient gold evidence directly to the generator and observe whether the answer becomes correct.",{"label":1408,"description":1409},"4. Inspect the retrieval query","Check rewrites, entities, filters, language, time constraints, decomposition, and hidden assumptions.",{"label":1411,"description":1412},"5. Inspect candidates before reranking","Determine whether relevant evidence was retrieved at all and record its rank.",{"label":1414,"description":1415},"6. Inspect ranking and context assembly","Check reranking, metadata filters, truncation, chunk boundaries, duplicates, conflicts, and top-k composition.",{"label":1417,"description":1418},"7. Grade generation and citations separately","Measure answer correctness, completeness, faithfulness, and claim-level evidence support.",{"label":1420,"description":1421},"8. Test validity boundaries","Check whether version, date, state, jurisdiction, permissions, or superseding evidence changes the answer.","Diagnose the failure from evidence to answer",{},{"id":521,"data":1425,"type":41,"tunes":1427},{"text":1426,"level":239},"Do not change three layers at once",{},{"id":526,"data":1429,"type":217,"tunes":1431},{"text":1430},"A common debugging mistake is to change embeddings, chunk sizes, top-k, prompts, and the model in one iteration. If the score improves, you do not know why. If it gets worse, you do not know which change caused the regression.",{},{"id":531,"data":1433,"type":217,"tunes":1435},{"text":1434},"Treat RAG debugging like experimental diagnosis: hold as much of the pipeline constant as possible and replace one uncertain component with a controlled input. Gold documents isolate retrieval. Gold chunks isolate chunk selection. Fixed context isolates generation. A fixed model isolates retrieval changes. A fixed corpus isolates ingestion and indexing changes.",{},{"id":536,"data":1437,"type":41,"tunes":1439},{"text":1438,"level":239},"A failure matrix for common RAG symptoms",{},{"id":541,"data":1441,"type":307,"tunes":1482},{"content":1442,"stretched":42,"withHeadings":13},[1443,1446,1450,1454,1458,1462,1466,1470,1474,1478],[545,1444,1445],"Most likely layers to test first","Discriminating test",[1447,1448,1449],"No relevant source appears","Source coverage → Query → Candidate retrieval","Search the corpus manually, then inspect rewritten query and unfiltered candidates",[1451,1452,1453],"Relevant source appears but answer is wrong","Context assembly → Generation","Oracle-context test with the same source reduced to decisive passages",[1455,1456,1457],"Answer is correct sometimes, wrong other times","Ranking → Context assembly → Generation variability","Repeat trials while logging retrieved set, rank, prompt context, and model output",[1459,1460,1461],"Answer cites the right document but overstates it","Generation → Evidence attribution → Validity","Grade each claim against the exact cited passage",[1463,1464,1465],"Old information keeps winning","Ranking → Validity\u002Ffreshness","Compare with recency\u002Fsupersession rules and inspect metadata",[1467,1468,1469],"Answer misses an exception","Chunking → Context assembly","Check whether rule and exception were split or truncated",[1471,1472,1473],"Adding more top-k makes quality worse","Ranking → Context overload","Ablate low-value chunks and compare with a minimal evidence set",[1475,1476,1477],"Changing the model fixes the answer","Generation, but not necessarily retrieval","Repeat with identical retrieved context across models",[1479,1480,1481],"Changing embeddings fixes the answer","Retrieval\u002Franking","Keep generator and context template constant while comparing candidate recall",{},{"id":586,"data":1484,"type":41,"tunes":1486},{"text":1485,"level":239},"Measure each layer with the metric it can actually influence",{},{"id":591,"data":1488,"type":307,"tunes":1520},{"content":1489,"stretched":42,"withHeadings":13},[1490,1493,1497,1501,1504,1508,1512,1516],[1220,1491,1492],"Useful measurements","What not to infer",[1494,1495,1496],"Source coverage","Answerable-question rate, corpus coverage, ingestion completeness","Do not blame embeddings for missing source material",[1498,1499,1500],"Candidate retrieval","Recall@k, hit rate, context coverage","High recall does not prove ranking quality",[607,1502,1503],"MRR, NDCG, gold rank, precision@k","Good ranking does not prove the generator used the evidence",[1505,1506,1507],"Context assembly","Evidence retention, duplication, contradiction rate, token utilization","Large context does not mean useful context",[1509,1510,1511],"Generation","Correctness, completeness, task success, faithfulness","Correctness alone does not prove grounding",[1513,1514,1515],"Evidence attribution","Citation precision, citation coverage, claim support","A citation count is not evidence quality",[1517,1518,1519],"Validity","Freshness, supersession accuracy, version\u002Fjurisdiction match","Relevant evidence is not automatically applicable evidence",{},{"id":628,"data":1522,"type":41,"tunes":1524},{"text":1523,"level":239},"A correct answer can still hide a RAG defect",{},{"id":633,"data":1526,"type":217,"tunes":1528},{"text":1527},"The reverse problem also matters. A RAG system can produce the correct answer while retrieval is broken. The model may already know the answer from training, infer it from weak evidence, or guess correctly. If evaluation looks only at the final answer, the system can appear healthy until the question reaches information that exists only in the private corpus.",{},{"id":638,"data":1530,"type":217,"tunes":1532},{"text":1531},"This is the same reliability problem that appears in agent systems more broadly: outcome correctness is not enough to prove that the execution path was reliable. For RAG, traces should preserve at least the retrieval query, candidate set, ranking, final context, answer, citations, model version, corpus\u002Findex version, and relevant filters.",{},{"id":643,"data":1534,"type":649,"tunes":1539},{"url":1535,"title":1536,"excerpt":1537,"ctaLabel":1538},"https:\u002F\u002Fstajic.de\u002Fblog\u002Fai-agent-reliability-why-the-final-answer-is-not-enough","AI Agent Reliability: Why the Final Answer Is Not Enough","Correct output does not prove correct reasoning, safe execution, or a trustworthy system. This article extends that principle from RAG diagnosis to agent trajectories and operational assurance.","Read the related article",{},{"id":652,"data":1541,"type":41,"tunes":1543},{"text":1542,"level":239},"Use competing hypotheses, not a favourite explanation",{},{"id":657,"data":1545,"type":217,"tunes":1547},{"text":1546},"If a bad answer immediately becomes “an embedding problem,” the investigation is already biased. A stronger debugging method writes down competing hypotheses before changing the system: missing source, bad query rewrite, low retrieval recall, bad reranking, context truncation, conflicting versions, generation failure, citation failure, or stale evidence.",{},{"id":662,"data":1549,"type":217,"tunes":1551},{"text":1550},"Then choose a test that would separate those hypotheses. This is more efficient than collecting more examples that support the first explanation. The same principle applies to AI-assisted technical reasoning in general: a useful diagnosis is one that survives discriminating tests, not one that merely sounds plausible.",{},{"id":667,"data":1553,"type":649,"tunes":1558},{"url":1554,"title":1555,"excerpt":1556,"ctaLabel":1557},"https:\u002F\u002Fstajic.de\u002Fblog\u002Ffrom-research-protocol-to-a-general-ai-reasoning-framework","From Research Protocol to a General AI Reasoning Framework","A domain-independent reasoning method for separating evidence from assumptions, testing competing hypotheses and using domain-specific validators.","Read the reasoning framework",{},{"id":675,"data":1560,"type":41,"tunes":1562},{"text":1561,"level":239},"What would change this answer?",{},{"id":680,"data":1564,"type":217,"tunes":1566},{"text":1565},"The exact diagnostic layers change with architecture. A simple single-document RAG application may have no query rewriting, reranker, or citation layer. An agentic retrieval system may add planning, multiple searches, tool selection, memory, permissions, and iterative evidence gathering. A structured database lookup may not use chunks or embeddings at all.",{},{"id":685,"data":1568,"type":217,"tunes":1570},{"text":1569},"The core method still holds: identify the components that can independently change the result, construct controlled tests that replace uncertain components with known-good inputs, and measure each component using evidence appropriate to that layer.",{},{"id":690,"data":1572,"type":41,"tunes":1574},{"text":1573,"level":239},"Limitations",{},{"id":695,"data":1576,"type":217,"tunes":1578},{"text":1577},"Real failures are often coupled. A weak query can reduce recall, which changes reranking, which changes context, which increases generation variance. The oracle-context test is a diagnostic shortcut, not proof that one component is solely responsible. Evaluation datasets can also be unrepresentative, and model-based graders can introduce their own errors.",{},{"id":700,"data":1580,"type":217,"tunes":1582},{"text":1581},"The proposed stack is therefore best used as an investigation structure: log the pipeline, isolate variables, reproduce failures, test competing explanations, and keep end-to-end evaluation after layer-level fixes.",{},{"id":705,"data":1584,"type":41,"tunes":1586},{"text":1585,"level":239},"Conclusion",{},{"id":710,"data":1588,"type":217,"tunes":1590},{"text":1589},"“RAG failed” should be the beginning of the investigation, not the conclusion. A useful diagnosis identifies whether the system lacked the evidence, searched incorrectly, failed to retrieve it, ranked it badly, assembled unusable context, generated incorrectly, attributed claims poorly, or applied evidence outside its validity boundary.",{},{"id":715,"data":1592,"type":217,"tunes":1594},{"text":1593},"The practical rule is simple: replace uncertainty with controlled evidence one layer at a time. Start with the oracle-context test. Separate retrieval-only evaluation from generation evaluation. Preserve the full trace. Then fix the component that actually failed instead of tuning the entire RAG stack by intuition.",{},{"id":720,"data":1596,"type":41,"tunes":1597},{"text":722,"level":239},{},{"id":725,"data":1599,"type":725,"tunes":1617},{"items":1600,"title":1616},[1601,1604,1607,1610,1613],{"id":729,"answer":1602,"question":1603},"Give the model a small set of known-correct evidence manually. If the answer becomes correct, investigate source coverage, query construction, retrieval, ranking, and context assembly. If the model still fails with sufficient evidence, retrieval is not the primary problem.","How can I tell whether RAG retrieval or the LLM failed?",{"id":733,"answer":1605,"question":1606},"Yes. The relevant passage can be ranked too low, truncated, separated from an exception, mixed with conflicting evidence, overwhelmed by irrelevant context, or used incorrectly by the generator.","Can RAG fail even when the correct document was retrieved?",{"id":737,"answer":1608,"question":1609},"No. A model can produce a correct answer despite weak retrieval by relying on prior model knowledge or chance. Evaluate retrieval and evidence support separately from final-answer correctness.","Is answer correctness enough to evaluate a RAG system?",{"id":741,"answer":1611,"question":1612},"At minimum log the user request, transformed retrieval query, filters, candidate documents and ranks, final selected context, model and prompt version, answer, citations, corpus\u002Findex version, and timing or version metadata relevant to freshness.","What should I log when debugging RAG?",{"id":745,"answer":1614,"question":1615},"Not reliably. A larger candidate or context set may improve recall, but it can also add noise, contradictions, duplicates, and context overload. Test whether the relevant evidence is missing before increasing top-k.","Does increasing top-k usually fix RAG?","RAG failure diagnosis",{},{"id":751,"data":1619,"type":41,"tunes":1621},{"text":1620,"level":239},"Glossary",{},{"id":756,"data":1623,"type":756,"tunes":1641},{"title":1624,"entries":1625},"Key diagnostic terms",[1626,1628,1630,1632,1635,1638],{"term":1377,"anchor":761,"definition":1627},"A controlled test in which the generator is given known-sufficient evidence directly to determine whether the dominant failure is upstream of generation.",{"term":1498,"anchor":764,"definition":1629},"The stage that selects an initial set of potentially relevant documents, chunks, records, or passages before final ranking or context assembly.",{"term":1505,"anchor":767,"definition":1631},"The process of converting retrieved evidence into the actual model input, including ordering, truncation, deduplication, formatting, and token-budget decisions.",{"term":1633,"anchor":771,"definition":1634},"Faithfulness","The degree to which generated claims remain supported by the retrieved or supplied evidence rather than introducing unsupported content.",{"term":1636,"anchor":775,"definition":1637},"Context coverage","A retrieval-oriented measure of whether selected evidence covers the information needed to answer the question.",{"term":1639,"anchor":779,"definition":1640},"Validity boundary","The conditions under which a claim or answer remains applicable, such as time, version, jurisdiction, state, population, permissions, or source assumptions.",{},{"id":783,"data":1643,"type":41,"tunes":1645},{"text":1644,"level":239},"Primary sources and further reading",{},{"id":788,"data":1647,"type":795,"tunes":1652},{"link":790,"meta":1648},{"image":1649,"title":1650,"description":1651},{"url":454},"OpenAI — Optimizing LLM Accuracy","OpenAI guidance separating retrieval failures from LLM failures in RAG applications.",{},{"id":798,"data":1654,"type":795,"tunes":1659},{"link":800,"meta":1655},{"image":1656,"title":1657,"description":1658},{"url":454},"OpenAI — Evaluation Best Practices","Guidance on structured evaluation for variable AI systems and production-oriented test design.",{},{"id":807,"data":1661,"type":795,"tunes":1666},{"link":809,"meta":1662},{"image":1663,"title":1664,"description":1665},{"url":454},"Amazon Bedrock — RAG Evaluation Metrics","Documentation separating retrieve-only metrics from retrieve-and-generate metrics, including context relevance, coverage, faithfulness and citation measures.",{},{"id":816,"data":1668,"type":795,"tunes":1673},{"link":818,"meta":1669},{"image":1670,"title":1671,"description":1672},{"url":454},"Anthropic — Demystifying Evals for AI Agents","Practical evaluation guidance on tasks, trials, graders, traces, regressions and production behaviour.",{},{"id":825,"data":1675,"type":795,"tunes":1679},{"link":827,"meta":1676},{"image":1677,"title":830,"description":1678},{"url":454},"Overview of RAG architecture and the importance of relevant retrieval and grounded generation.",{},"When a RAG answer is wrong, blaming retrieval or the model is too vague. This diagnostic method isolates source coverage, query construction, retrieval, ranking, context assembly, generation, evidence attribution, and freshness—so the actual failure can be reproduced and fixed.","Post erfolgreich abgerufen",{"items":1683,"source":1738,"manualIds":1739,"manualMatchedIds":1740},[1684,1691,1698,1704,1711,1717,1724,1731],{"id":1685,"slug":1686,"title":1687,"excerpt":1688,"featuredImage":1689,"publishedAt":1690},"459","ollama-is-not-the-product-building-production-ready-open-llm-applications","Ollama ist nicht das Produkt: Entwicklung produktionsreifer Open-LLM-Anwendungen","Das Ausführen eines lokalen Modells mit Ollama ist einfach. Das Erstellen einer produktionsreifen Open-LLM-Anwendung ist schwieriger: Es erfordert RAG, Zugriffskontrolle, Anbieterabstraktion, Evaluierung, Protokollierung, Bereitstellungsdisziplin und eine kontrollierte Anwendungsschicht um das Modell herum.","\u002Fuploads\u002F2026\u002F06\u002Follama-is-not-the-product-building-production-ready-open-llm-applications-1782679361640-h0usqf.webp","2026-06-28T16:39:00.000Z",{"id":1692,"slug":1693,"title":1694,"excerpt":1695,"featuredImage":1696,"publishedAt":1697},"364","tipps-fuer-die-verbesserung-der-seo-suchmaschinenoptimierung","Meistern des SEO-Workflows: Essenzielle Optimierungsstrategien für organisches Wachstum","Ein strukturierter SEO-Workflow ist entscheidend für nachhaltiges organisches Wachstum. Lerne die zehn grundlegenden Strategien, von der Keyword-Recherche und technischen Optimierung bis hin zur Content-Qualität und Performance-Analyse.","\u002Fuploads\u002F2026\u002F03\u002Ftipps-fuer-die-verbesserung-der-seo-suchmaschinenoptimierung-1774866098131-hwkzrg.webp","2024-01-26T06:35:00.000Z",{"id":1699,"slug":1700,"title":646,"excerpt":1701,"featuredImage":1702,"publishedAt":1703},"460","ai-agent-reliability-why-the-final-answer-is-not-enough","Korrekte Ausgabe beweist weder korrektes Denken, sichere Ausführung noch ein vertrauenswürdiges System.","\u002Fuploads\u002F2026\u002F09\u002Fai-agent-reliability-why-the-final-answer-is-not-enough-1788955466306-pl0qhz.webp","2026-09-09T04:01:00.000Z",{"id":1705,"slug":1706,"title":1707,"excerpt":1708,"featuredImage":1709,"publishedAt":1710},"468","ai-agent-memory-is-not-rag-how-to-separate-memory-retrieval-state-and-context","KI-Agenten-Gedächtnis ist kein RAG: Wie man Gedächtnis, Retrieval, Zustand und Kontext voneinander trennt","Agentengedächtnis, RAG, Zustand und Kontext werden oft so verwendet, als wären sie austauschbar. Das sind sie nicht. Dieses praktische Architekturmodell trennt die vier Schichten, zeigt, wohin jede gehört, und erklärt, was kaputtgeht, wenn Systeme sie zu einer einzigen zusammenfassen.","\u002Fuploads\u002F2026\u002F09\u002Fai-agent-memory-is-not-rag-how-to-separate-memory-retrieval-state-and-context-1790350560308-np0xy6.webp","2026-09-25T11:34:00.000Z",{"id":1712,"slug":858,"title":1713,"excerpt":1714,"featuredImage":1715,"publishedAt":1716},"434","Umfassender Leitfaden zum Evaluation Harness: LLM-Leistungsbewertung meistern","Dieser Leitfaden bietet eine detaillierte Einführung in Evaluation Harness, ein unverzichtbares Framework zur strengen Bewertung der Fähigkeiten von Large Language Models (LLMs) in Enterprise-LLMOps-Pipelines. Erfahren Sie mehr über Einrichtung, Best Practices und fortgeschrittene Techniken, um ein zuverlässiges Modell-Benchmarking und eine Optimierung zu gewährleisten.","\u002Fuploads\u002F2026\u002F04\u002Fevaluation-harness-1775466944495-4s0xv2.webp","2026-03-01T17:50:00.000Z",{"id":1718,"slug":1719,"title":1720,"excerpt":1721,"featuredImage":1722,"publishedAt":1723},"478","what-is-rag-the-simplest-explanation-of-how-it-works","Was ist RAG? Die einfachste Erklärung, wie es funktioniert","RAG klingt kompliziert, aber die Idee ist einfach: Bevor eine KI antwortet, sucht sie zunächst nützliche Informationen aus einer Wissensquelle und gibt diese Informationen an das Sprachmodell weiter. Dieser Leitfaden erklärt RAG, LLMs, Zustand, Gedächtnis und Werkzeuge anhand eines einfachen mentalen Modells.","\u002Fuploads\u002F2026\u002F09\u002Fwhat-is-rag-the-simplest-explanation-of-how-it-works-1790377492124-khjagt.webp","2026-09-25T19:03:00.000Z",{"id":1725,"slug":1726,"title":1727,"excerpt":1728,"featuredImage":1729,"publishedAt":1730},"477","computer-use-agents-why-a-successful-demo-can-still-be-an-unreliable-system","Computer-Use-Agenten: Warum eine erfolgreiche Demo dennoch ein unzuverlässiges System sein kann","Computer-Use-Agenten können mittlerweile beeindruckende Browser- und Desktop-Workflows abschließen, aber ein erfolgreicher Durchlauf beweist Fähigkeit—nicht Zuverlässigkeit. Dieser Artikel zeigt, wie man Wiederholbarkeit, Umgebungsrobustheit, Steuerung über lange Zeithorizonte, Zustandsbewusstsein, Ergebnisüberprüfung und sichere Zielhandhabung testet.","\u002Fuploads\u002F2026\u002F09\u002Fcomputer-use-agents-why-a-successful-demo-can-still-be-an-unreliable-system-1790352854690-75qnrg.webp","2026-09-25T12:13:00.000Z",{"id":1732,"slug":1733,"title":1734,"excerpt":1735,"featuredImage":1736,"publishedAt":1737},"475","managed-agent-harness-vs-self-hosted-agent-loop-what-you-gain-what-you-lose","Managed Agent Harness vs. Self-Hosted Agent Loop: Was Sie gewinnen, was Sie verlieren","“Selbst gehosteter Agent” kann sehr unterschiedliche Architekturen bedeuten. Dieser Leitfaden unterscheidet zwischen dem Managed Harness, der selbst gehosteten Ausführungsumgebung und dem vollständig selbst betriebenen Agent-Loop—und zeigt, welche Kontrollgrenze Teams tatsächlich benötigen.","\u002Fuploads\u002F2026\u002F09\u002Fmanaged-agent-harness-vs-self-hosted-agent-loop-what-you-gain-what-you-lose-1790352403475-kj10jh.webp","2026-09-25T12:05:00.000Z","fallback",[],[]]