Wie funktioniert Retrieval Augmented Generation (RAG)?
In diesem Artikel gehen wir näher darauf ein, wie Retrieval Augmented Generation funktioniert und wie damit die Wissensbasis von LLMs durch externe Daten erweitert wird. Das hat eine entscheidende Bedeutet für die Entwicklung von Anwendungen oder Geschäftsprozessen. Das Grundverständnis und die Vorteile von RAG für generative KI Anwendungen haben wir zusätzlich hier in einem separaten Beitrag zusammengefasst.
Retrieval Augmented Generation - Vorbereitung von relevanten Daten und Informationen
Am Anfang steht der Aufbau einer Informations- und Datenbasis. Dazu zählen verschiedene externe Quellen außerhalb der ursprünglichen Trainingsdaten des LLMs. Dies können z.B. Dokumente, Datenbanken, Webseiten oder APIs sein. Die Daten können auch in verschiedenen Formaten wie Dateien, Datenbank-Datensätze oder als Langform-Texte vorliegen. Zusammen mit den Trainingsdaten des LLM dient diese Sammlung als Wissensbasis, auf die das RAG-System zugreift, um Informationen abzurufen. Diese Wissensbasis kann kontinuierlich mit neuen und aktuellen Daten angereichert werden. Liegen die relevanten Informationen und Daten vor, werden diese im nächsten Schritt in ein gemeinsames Format für den definierten Suchprozess überführt.
Ein häufiger Ansatz ist die semantische Suche. Dabei werden relevanten Daten und Informationen mit Embeddings versehen. Ein Embedding ist ein großer Vektor, der durch ein Embedding-Modell erzeugt wird und die Bedeutung einer Datenquelle, z.B. eines Dokuments, repräsentiert. Um eine semantische Suche durchzuführen, werden die vom Nutzenden eingegebenen Anfragen (z.B. in einem Chatbot) ebenfalls in ein Embedding übersetzt. Anschließend werden die aufbereiteten Dokumente anhand ihrer Embeddings mit denen der Anfrage verglichen und sortiert.
Bei der Volltextsuche werden die Suchbegriffe mit verschiedenen Techniken normalisiert. Im nächsten Schritte werden Dokumente, die zumindest einen Teil der normalisierten Suchbegriffe enthalten, anhand verschiedener Metriken (z.B. "Wie oft kommt der Suchbegriff vor?") sortiert und dem LLM zur Verfügung gestellt (z.B. BM25). Die hybride Suche hingegen ist eine Kombination aus einer Volltextsuche und einer semantischer Suche - sie setzt beide Aufbereitungsschritte voraus. Dabei werden beide Suchen durchgeführt, die Ergebnisse zusammengeführt und dem LLM zur Verfügung gestellt.
Retrieval Augmented Generation - Schritt für Schritt erklärt
Nachdem wir uns mit der grundsätzlichen Aufbereitung von Daten und Informationen für ein RAG-System beschäftigt haben, wollen wir nun den RAG-Prozess im Detail betrachten. Am Beispiel einer semantischen Suche wird gezeigt, wie spezifische Daten aus externen Quellen extrahiert und in die Antwort eines LLMs integriert werden.
Schritt 1: Abrufen von relevanten Informationen (Retrieve)
Der erste Schritt in der Funktionsweise von Retrieval Augmented Generation ist das Abrufen relevanter Informationen aus einer großen Datenbank oder einem Wissenspool. Wird beispielsweise eine Benutzeranfrage in einen Chatbot eingegeben, wird diese durch ein Ebedding-Modell in eine Vektordarstellung umgewandelt und mit der vorhandenen Vektordatenbank abgeglichen. Dabei sucht die Vektor-Datenbank nach den Vektoren, die der Anfrage am ähnlichsten sind.
Ein Beispiel für eine generative KI Anwendung mit RAG ist ein intelligenter Chatbot, der im Kundenservice eingesetzt werden kann. Wenn ein(e) Kund:in z. B. fragt:
, sucht das RAG-System in der Wissensdatenbank nach relevanten Informationen. Die Ergebnisse der RAG-Suche können Daten zu Rückgabebedingungen, Artikelzustand, Versandrichtlinien oder FAQs enthalten. Diese spezifischen Informationen werden zurückgegeben, da sie eine hohe Relevanz für die Eingabe haben.
Schritt 2: Einbindung von relevante Informationen (Augment)
Als nächstes werden die relevanten Informationen im RAG-System mit Hilfe von Prompt-Techniken in den Kontext der ursprünglichen Aufforderung eingefügt. Das Ergebnis ist eine erweiterte Aufforderung, die sowohl die ursprüngliche Eingabe als auch die relevanten Informationen enthält. Die erweiterte Aufforderung wird an das LLM gesendet, um eine präzise und aktuelle Antwort zu generieren. So gelangen die relevante Informationen in die Generierung der Antwort ein.
In unserem Beispiel führt das RAG-System die relevanten Informationen (z. B. Rückgabebedingungen, Versandrichtlinien oder FAQs) zusammen, fügt sie der Aufforderung als Kontext hinzu und übermittelt die angepasste Aufforderung an das LLM.
Schritt 3: Generierung der Antwort (Generate)
Nachdem das RAG-System die spezifischen Informationen gefunden und dem LLM in der erweiterten Aufforderung zur Verfügung gestellt hat, erfolgt die Generierung der Antwort. Dafür nutzt das LLM die vorliegende Wissensbasis aus seinen Trainingsdaten und den bereitgestellten Informationen und formuliert eine Antwort in natürlicher Sprache.
In unserem Beispiel würde ein(e) Kund:in vom Chatbot eine Antwort erhalten, die erklärt, wie die Schuhe zurückgegeben werden können. Dies ist eine mögliche Form der Antwort:
Fazit
Der Beitrag beschreibt nicht nur, wie Retrieval Augmented Generation funktioniert, sondern zeigt auch, wie Unternehmen diese Methode für sich nutzen können, um ihre generative KI Anwendungen weiterzuentwickeln. Generell gibt es eine Vielzahl von Ansatzpunkten für den Einsatz von Retrieval Augmented Generation in Unternehmen, sei es z. B. im Kundenservice, in Geschäftsprozessen oder im Wissensmanagement.
Der Erfolg hängt jedoch entscheidend von der Verfügbarkeit und dem Umfang der relevanten Daten ab. Nur durch eine sorgfältige Auswahl und Integration der relevanten Informationen kann Retrieval Augmented Generation einen echten Mehrwert bieten. Unternehmen sollten daher nicht nur in die Methode selbst, sondern auch in die Qualität und Verfügbarkeit ihrer Daten investieren.