RAG mit Rerankern verbessern

RAG mit Rerankern verbessern

Präzisere Antworten mit Substanz! Mit intelligentem Re-Ranking und Two-Stage Retrieval

Avatar von Christopher Stock

Die Nachfrage nach intelligenten Recherchesystemen ist in den letzten Jahren stark gestiegen. Befördert wurde sie durch das Aufkommen großer Sprachmodelle (LLMs – Large Language Models), die eine Verarbeitung und Beantwortung natürlichsprachlicher Fragen ermöglichen. Die Technik RAG (Retrieval-Augmented Generation) hat sich dabei als ein sehr beliebter und wirkungsvoller Ansatz etabliert, um die klassische Informationssuche mit Hilfe generativer KI-Modelle zu verbessern. Oft wird aber nicht die richtige Antwort gefunden, obwohl sie in den indizierten Daten vorlag. Hier liefert der Einsatz eines Rerankers noch präzisere und zuverlässigere Antworten und stellt damit einen entscheidenden Hebel dar, um RAG-Systeme auf ein neues Qualitätsniveau zu heben.

In diesem Artikel zeige ich dir, wie RAG-Systeme durch das Einschalten eines Rerankers weiter verbessert werden können und wie dies die Qualität der generierten Anfragen signifikant verbessert. Und wenn du willst, entwickeln wir ein Python-Programm, das die drei Technologien LLM, RAG und Reranker integriert und die Unterschiede in den Antworten bei Deaktivierung sowie Aktivierung des Rerankers demonstriert. Dafür musst du nur am Ende des Artikels eine kleine Entscheidung treffen …

Was ist RAG?

RAG verbessert die Genauigkeit und Zuverlässigkeit großer Sprachmodelle. Der Fokus eines RAG-Systems ist immer das Zurverfügungstellen von externen Informationen, die nicht im LLM vorliegen. Die Quellen hierfür können Wissensdatenbanken oder Dokumentensammlungen sein.

Das mit diesem externen Wissen kombinierte und angereicherte Sprachmodell wird nun als neuer Kontext zur Generierung der Antworten genutzt. Somit ermöglicht die Integration eines RAG-Systems einen nahtlosen Informationsfluss zwischen parametrisiertem Wissen aus Sprachmodellen und nichtparametrisierten Daten aus externen Quellen.

Die bekanntesten Sprachmodelle (LLMs) sind OpenAI, Google Gemini, Anthropic und Deepseek.

RAG-Prozess

Auf die Anfrage eines Benutzers hin durchläuft der RAG-Prozess die folgenden drei Schritte:

1. Retrieval

Die für die Anfrage relevanten Dokumente werden mithilfe einer Vektordatenbank oder Dokumentensammlung aus einer Wissensbasis abgerufen. Typischerweise basiert dies auf einer semantischen Ähnlichkeit.

2. Augmentation

Die abgerufenen Informationen werden mit dem bisherigen Gesprächsverlauf ergänzt. Dieser Ansatz eignet sich hervorragend für Use Cases wie Frage-Antwort-Systeme, Chatbots, technische Support-Systeme oder interne Wissensabfragen.

Kurze Unterbechung

Das ist dein Alltag?

Keine Sorge – Hilfe ist nah! Melde Dich unverbindlich bei uns und wir schauen uns gemeinsam an, ob und wie wir Dich unterstützen können.

3. Generation

Ein LLM nutzt die abgerufenen Dokumente als Kontext, um eine Antwort auf die Nutzerfrage zu generieren. Dabei verarbeitet es die erweiterte Eingabe und nutzt die externen Informationen, um die Genauigkeit und Vollständigkeit der generierten Antwort zu erhöhen.

Die bekanntesten Retrieval-Frameworks (RAG-Systeme) sind LangChain, RAGFlow, LlamaIndex und Haystack.

Das Problem beim RAG

Trotz der Beliebtheit und hohen Leistungsfähigkeit moderner RAG-Systeme funktionieren sie leider nicht in allen Kontexten besonders gut. So werden die relevantesten Dokumente nicht immer auf den vordersten Plätzen gelistet und auch Treffer generiert, die nicht wirklich zutreffend oder hilfreich sind.

Dies hat den einfachen Grund, dass eine semantische Nähe der Informationen nicht automatisch eine faktische Relevanz bedeuten. Zudem ist ein weiterer trivialer Grund dafür oftmals, dass einfach wirklich viele Dokumente zu einem Thema existieren, man hier aber leider ein schlechtes Embedding gewählt und die Daten schlecht extrahiert hat oder sie falsch gruppiert vorliegen. Anfragen des Benutzers können somit zwar zu nahen, aber zu dennoch falschen Ergebnissen führen.

GraphRAG – Wie moderne AI-Technologie Unternehmen zu besseren Geschäftsentscheidungen verhilft

Einen bedeutenden Fortschritt stellt GraphRAG dar, das RAG mit Wissensgraphen vereint.

Daniel hat sich mit dem Thema beschäftigt – welche Vorteile GraphRAG gegenüber normalen RAGs bietet, erfährst du in seinem Beitrag.

Reranker als Lösung

Zur Lösung des genannten Problems kommen Reranker ins Spiel. Bei ihnen handelt es sich um spezialisierte Modelle, die eine feinere Bewertung der abgerufenen Dokumente ermöglichen. Das Zusammenspiel von Frage und Dokument wird mit ihnen deutlich genauer analysiert als durch einen einfachen Ähnlichkeitsvergleich. Auf diese Weise können die Antworten auch auf bestimmte Domänen und Kontexte zugeschnitten werden und ohne Feinabstimmung und Nachschulung aktualisiert werden.

Re-Ranking und Two-Stage Retrieval

Der Einsatz eines Rerankers erweitert den ursprünglichen RAG-Abruf um einen weiteren Prozessschritt und führt eine Neubewertung (Re-Ranking) der abgerufenen Dokumente durch. So wird ein zweistufiger Abruf (Two-Stage Retrieval) realisiert:

Retrieval (Abruf)

Eine relativ große Menge potenziell relevanter Dokumente wird mithilfe einer schnellen und effizienten Abrufmethode angefordert. Dabei kann es sich um ein Vektorraummodell oder um eine schlüsselwortbasierte Suche handeln.

Re-Ranking (Neubewertung)

Im zweiten Schritt wird ein ausgefeilteres Re-Ranking-Modell verwendet, um die ursprünglich abgerufenen Dokumente basierend auf ihrer Relevanz für die Abfrage neu zu bewerten und zu ordnen. Somit werden die für den Benutzer am interessantesten Ergebnisse zurückgegeben, was letztendlich zu qualitativ hochwertigeren generierten Antworten aus dem Sprachmodell führt.

Gebräuchliche Reranker-Modelle sind Cross-Encoder, Cohere Rerank, ColBERT und MonoT5.

Arbeitsweise eines Rerankers

Das Re-Ranking-Modell ist speziell darauf trainiert, die Relevanz eines Dokuments für eine bestimmte Abfrage zu bewerten und basiert häufig auf einem neuronalen Netzwerk oder auf einer transformatorbasierten Architektur. Sie lernen dabei durch Training auf Datensätzen mit Fragen und passenden sowie unpassenden Antworten, welche Kombinationen eine hohe Relevanz aufweisen.

Diese fortschrittlichen Fähigkeiten zum Verständnis natürlicher Sprache nutzt der Reranker, um die semantischen Nuancen und kontextuellen Beziehungen zwischen der Abfrage und den Dokumenten zu erfassen, was zu einer erheblich genaueren und relevanteren Bewertung und Rangfolge der abgerufenen Dokumente führt.

Prozess des Re-Rankings

Beim Re-Ranking werden vom Reranker die folgenden vier Prozessschritte durchlaufen:

Eingabe (Input)

Die Nutzerfrage und die einzelnen Retrieval-Treffer werden als Datenpaare an das Reranker-Modell übergeben. Dabei handelt es sich beispielsweise um einen Satz der Top-20-Dokumente aus dem Retriever.

Bewertung (Scoring)

Der Reranker analysiert jedes Dokument hinsichtlich der Relevanz zur konkreten ursprünglichen Frage und berechnet einen Relevanzwert für jedes einzelne Datenpaar.

Sortierung (Ranking)

Die Dokumente werden anhand des Scores neu geordnet, sodass die relevantesten Dokumente ganz oben gelistet werden.

Output (Selection)

Lediglich die relevantesten Ergebnisse werden zurück an den Generator übergeben, der daraus eine präzise und fundierte Antwort erstellt. Hier kann die Menge beispielsweise auf die Top-5-Dokumente eingeschränkt werden.

Vorteile von Rerankern

Der größte Vorteil der Implementierung eines zweistufigen Abrufs im Kontext von RAG-Systemen mittels Rerankern ist eine höhere Relevanz der erhaltenen Ergebnisse. Da die generierten Antworten auf einem besseren Kontext basieren, werden irrelevante Dokumente weniger stark gewichtet oder ganz aussortiert. Diese stärkere Berücksichtigung der Kontextualität führt zu einer robusteren Qualität und Zuverlässigkeit der generierten Antworten, auch bei schwierigen oder komplexeren Anfragen.

Re-Ranking-Modelle sind außerdem modular einsetzbar und können somit leicht in bestehende RAG-Frameworks integriert werden. Daher können sie auch unabhängig von der ursprünglichen Abrufmethode ausgetauscht und aktualisiert werden. Entwickler*innen ermöglicht dies eine große Flexibilität und Anpassungsfähigkeit an die sich kontinuierlich ändernden Anforderungen des Systems.

Präzisere Antworten mit Substanz –
mit intelligentem Re-Ranking und Two-Stage Retrieval

Die Integration eines RAG-Systems mit LLMs und Rerankern führt zu qualitativ hochwertigen Antworten, die durch eine signifikante Verbesserung der Genauigkeit, Vertrauenswürdigkeit und Anwendbarkeit der generierten Antworten geprägt sind. Dies erweist sich insbesondere bei komplexen oder kontextintensiven Anfragen als besonders wertvoll.

LLMs finden zunehmend Anwendung bei wissensbasierten Aufgaben und RAG hat sich dabei als eine äußerst leistungsfähige Technik etabliert, um deren Fähigkeiten weiter zu optimieren. Mit der zunehmenden Integration von RAG-Architekturen in Suchmaschinen, Assistenzsystemen und Unternehmensanwendungen werden Reranker in Zukunft eine noch zentralere Rolle spielen.

Möglicherweise stellen Reranker sogar eine Schlüsseltechnologie dar für die Entwicklung der nächsten Generation einer wirklich intelligenten und wissensbasierten KI? 🔑

An dieser Stelle könnte ich mich jetzt verabschieden … oder dir noch ein ein praktisches Beispiel mitgeben – mit Code und allen Informationen, die du benötigst. Dafür musst du nur den Schalter auf „Praxis“ umlegen :)

Das ist dein Alltag?

Keine Sorge – Hilfe ist nah! Melde Dich unverbindlich bei uns und wir schauen uns gemeinsam an, ob und wie wir Dich unterstützen können.

15 Minuten knallharter Fokus!

Fokus-Webinar: Warum fehlende Daten der #1-Killer für Dein AI-Projekt sind.

Der #1-Killer für Deine AI-Projekte!

Nimm Dir 15 Minuten Zeit und wir erklären dir:

  • Warum fehlende Daten der eigentliche Killer für Deine AI-Projekte sind.
  • Was Dein Ausweg auf der Silo-Falle ist.
  • Konkret: Lösungsansätze aus der bei uns gelebten Praxis!
Avatar von Christopher Stock

Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Für das Handling unseres Newsletters nutzen wir den Dienst HubSpot. Mehr Informationen, insbesondere auch zu Deinem Widerrufsrecht, kannst Du jederzeit unserer Datenschutzerklärung entnehmen.