RAG-Fusion – Ein Paradigmenwechsel in der KI

RAG-Fusion revolutioniert Frage-Antwort-Systeme durch die Kombination von Sprache und Suche. Es behebt Schwächen von RAG und sorgt für präzisere Antworten, indem es mehrere Suchanfragen und einen Fusions-Algorithmus verwendet.

Die Entwicklung von KI-Systemen, die in der Lage sind, präzise und relevante Antworten auf Fragen zu geben, ist eine der großen Herausforderungen der heutigen Forschung. In den letzten Jahren haben große Sprachmodelle enorme Fortschritte in dieser Richtung gemacht. Doch trotz ihrer beeindruckenden Fähigkeiten stoßen sie an Grenzen, wenn es um faktenbasierte Antworten geht. Hier kommt ein neuer Ansatz ins Spiel – Retrieval Augmented Generation, kurz RAG.

Was ist RAG?

Bei RAG werden große Sprachmodelle mit einer Suchkomponente kombiniert. Das Sprachmodell generiert Antworten auf Basis seines trainierten Wissens. Zusätzlich werden relevante Textpassagen aus einer Wissensbasis abgerufen und dem Modell zusammen mit der Frage als Kontext bereitgestellt.Dieser Ansatz vereint das Beste aus zwei Welten:

  • Das große Weltwissen der Sprachmodelle
  • Die Faktentreue der abgerufenen Kontexte

Bereits RAG liefert daher präzisere und kontextbezogenere Antworten als reine Sprachmodelle. Doch die Methode hat auch Schwächen:

  • Menschliche Suchanfragen sind oft nicht optimal
  • Es wird nur eine einzelne Abfrage durchgeführt

Genau hier setzt RAG-Fusion an.

RAG-Fusion – Mehr Kontext durch multiple Abfragen

Bei RAG-Fusion werden nicht nur einzelne Suchanfragen gestellt, sondern gleich mehrere. Diese Varianten der Originalfrage decken gemeinsam einen größeren Kontext ab.Die Ergebnisse all dieser Suchläufe werden dann mit einem Reciprocal Rank Fusion Algorithmus neu berechnet. Dieser berücksichtigt für jedes Dokument, wie hoch es in den einzelnen Suchläufen rangierte. Dokumente, die durchgehend höhere Ränge belegen, werden nach oben gestuft.Mit diesem Ansatz wird die kombinierte Information aus mehreren Abfragen gezielt zusammengeführt.

Die Vorteile von RAG-Fusion

RAG-Fusion bringt einige entscheidende Verbesserungen:

  • Breitere Informationsabdeckung: Multiple Queries ermöglichen Zugriff auf mehr Wissen
  • Präzisere Rankings: Der Fusions-Algorithmus identifiziert die relevantesten Dokumente
  • Robust gegenüber Keyword-Variation: Verschiedene Query-Formulierungen gleichen Einschränkungen menschlicher Suchanfragen aus

Studien haben gezeigt, dass RAG-Fusion selbst große Sprachmodelle bei vielen anspruchsvollen Aufgaben übertrifft. Die Ergebnisse sind akkurater, relevanter und faktisch korrekt.Der Ansatz stellt somit einen Paradigmenwechsel bei der Entwicklung von Frage-Antwort-Systemen dar.

RAG-Fusion in der Praxis

Ich möchte anhand eines Beispiels veranschaulichen, wie RAG-Fusion in der Praxis funktioniert:Angenommen ein Nutzer stellt die Frage: „Wann wurde J.R.R. Tolkien geboren?“Ein klassisches RAG-System würde nun eine einzelne Keyword-Abfrage starten, z.B. „J.R.R. Tolkien Geburtsdatum“.Bei RAG-Fusion generiert das System stattdessen mehrere Varianten:

  • „J.R.R. Tolkien Geburt“
  • „Geburt J.R.R Tolkien“
  • „Lebensdaten J.R.R. Tolkien“

Jeder dieser Suchläufe liefert leicht unterschiedliche Ergebnisse. RAG-Fusion analysiert nun, welche Dokumente durchgehend hohe Relevanz zeigen:

  • Dokument A erscheint bei allen Abfragen auf Platz 1
  • Dokument B nur bei einer Abfrage auf Platz 4

Dokument A wird daher im finalen Ranking weit nach oben gestuft, da es mehrfach als sehr relevant identifiziert wurde.Auf diese Weise findet RAG-Fusion die Informationen, die die Frage am besten beantworten. Es generiert die Antwort „J.R.R. Tolkien wurde am 3. Januar 1892 geboren.“ – korrekt und mit Quellenangabe.

Fazit

RAG-Fusion stellt den neuesten Stand der Technik bei der Entwicklung von Frage-Antwort-Systemen dar. Die Kombination aus großen Sprachmodellen mit mehreren Suchanfragen und einem Fusions-Algorithmus für die Ergebnisse ermöglicht wesentlich präzisere Antworten.Der Ansatz überwindet bestehende Einschränkungen und lässt Systeme deutlich weniger Halluzinationen oder Falschinformationen produzieren.RAG und insbesondere RAG-Fusion machen KI-Systeme zuverlässiger und vertrauenswürdiger. Sie werden unsere Interaktion und Kollaboration mit intelligenten Assistenten in Zukunft entscheidend verbessern.

[1] Technische Erklärung von RAG-Fusion:
https://towardsdatascience.com/forget-rag-the-future-is-rag-fusion-1147298d8ad1

[2] Vergleich von RAG und RAG-Fusion:
https://www.linkedin.com/pulse/rag-fusion-frank-morales-aguilera-beng-meng-smieee-vw37e

[3] Implementierung von RAG-Fusion in Python:
https://safjan.com/implementing-rank-fusion-in-python/

[4] Video-Erklärung von RAG-Fusion:

[5] Wissenschaftliche Veröffentlichung zu RAG-Fusion:
https://arxiv.org/abs/2402.03367

[6] GitHub Repository mit RAG-Fusion Code:
https://github.com/Raudaschl/rag-fusion

[7] Artikel über Vorteile von RAG-Fusion:
https://hackernoon.com/de/Erzielung-relevanter-LLM-Antworten-durch-Bew%C3%A4ltigung-allgemeiner-Herausforderungen-im-Bereich-Retrieval-Augmented-Generation