Retrieval Augmented Generation (RAG) ist eine fortschrittliche Technik der künstlichen Intelligenz (KI), die die Qualität und Zuverlässigkeit der von Large Language Models (LLMs) generierten Antworten verbessern soll. Dabei werden die generativen Fähigkeiten eines LLMs mit einem Information Retrieval System kombiniert. Bevor das RAG-System eine Antwort generiert, ruft es zunächst relevante Informationsschnipsel aus einer vordefinierten Wissensquelle ab (z. B. aus unternehmensinternen Dokumenten, einer bestimmten Datenbank oder dem Internet). Dieser Kontext wird dann zusammen mit der ursprünglichen Benutzeranfrage an das LLM weitergeleitet, so dass das Modell genauere, aktuellere und auf Fakten basierende Antworten geben kann, wodurch Probleme wie Halluzinationen vermieden werden.
Wie Retrieval Augmented Generation funktioniert
Der RAG-Prozess umfasst in der Regel zwei Hauptphasen:
- Abrufen: Wenn ein Nutzer eine Eingabeaufforderung oder eine Anfrage stellt, nutzt das System diese Eingabe zunächst, um einen großen Korpus von Dokumenten oder eine Vektordatenbank zu durchsuchen. Ziel dieser Suche ist es, Textabschnitte oder Dokumente zu finden, die für die Anfrage relevante Informationen enthalten. Techniken wie die semantische Suche werden hier oft eingesetzt, um kontextuell ähnliche Informationen zu finden und nicht nur Schlüsselwortübereinstimmungen.
- Generierung: Die in der ersten Phase ermittelten relevanten Informationen werden dann mit der ursprünglichen Eingabeaufforderung kombiniert. Diese erweiterte Eingabeaufforderung, die nun mit spezifischem Kontext angereichert ist, wird an das LLM weitergeleitet. Das LLM nutzt sowohl die ursprüngliche Anfrage als auch den bereitgestellten Kontext, um eine umfassende und sachlich fundierte Antwort zu erstellen. Dieser Prozess wurde in Forschungsarbeiten wie der Arbeit Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks formell eingeführt.
Vorteile und Anwendungen
Die RAG bietet mehrere Vorteile gegenüber der Verwendung von Standard-LLMs allein:
- Verbesserte Genauigkeit: Da die Antworten auf externen Daten beruhen, verringert die RAG die Wahrscheinlichkeit, dass das LLM falsche oder erfundene Informationen liefert.
- Zugang zu aktuellen Informationen: RAG-Systeme können auf aktuelle Informationen zugreifen, die in ihrer Wissensdatenbank gespeichert sind. Damit wird die Einschränkung von LLMs überwunden, deren Wissen zum Zeitpunkt ihrer letzten Schulung eingefroren ist.
- Bereichsspezifisches Wissen: Es ermöglicht LLMs, Antworten auf Expertenebene in speziellen Bereichen zu geben, indem sie Informationen aus bestimmten technischen Dokumenten oder Datenbanken abrufen.
- Transparenz und Vertrauen: RAG-Systeme können oft die für die Generierung verwendeten Quellen angeben, was das Vertrauen der Nutzer/innen stärkt und eine Überprüfung der Fakten ermöglicht, was für die KI-Ethik entscheidend ist.
Beispiele aus der realen Welt:
- Wissensmanagement im Unternehmen: Unternehmen nutzen RAG, um interne Chatbots zu entwickeln, die Fragen von Beschäftigten präzise beantworten können, indem sie Informationen aus internen Richtlinien, technischen Handbüchern und Berichten abrufen, die in Plattformen wie SharePoint oder speziellen Wissensdatenbanken gespeichert sind.
- Automatisierung des Kundensupports: Kundenservice-Plattformen nutzen RAG, um Support-Agenten oder Chatbots mit relevanten Informationen aus FAQs, Produktdokumentationen und früheren Support-Tickets zu versorgen und so eine schnellere und genauere Lösung von Kundenanfragen zu ermöglichen. Tools wie Zendesk bieten solche Funktionen an.
RAG vs. Verwandte Konzepte
- RAG vs. Standard-LLMs: Standard-LLMs generieren Antworten ausschließlich auf der Grundlage von Mustern, die beim Training gelernt wurden. RAG verbessert dies durch die dynamische Einbeziehung externer Informationen zum Zeitpunkt der Inferenz, was zu sachlicheren und kontextrelevanten Ergebnissen führt.
- RAG vs. Fine-Tuning: Beim Fine-Tuning wird ein vorab trainiertes Modell an bestimmte Aufgaben oder Bereiche angepasst, indem der Trainingsprozess auf einem kleineren, speziellen Datensatz fortgesetzt wird. Das ist zwar effektiv, aber es erfordert erhebliche Rechenressourcen und ein erneutes Training, um das Wissen zu aktualisieren. RAG ermöglicht Wissensaktualisierungen durch einfache Änderung der externen Datenquelle, ohne dass das LLM neu trainiert werden muss, was es flexibler für sich schnell ändernde Informationen macht. RAG und Feinabstimmung können auch gemeinsam eingesetzt werden.
- RAG vs. Prompt Engineering: Beim Prompt-Engineering wird die Eingabeaufforderung sorgfältig ausgearbeitet, um die Antwort des LLMs zu steuern. RAG automatisiert den Prozess der Bereitstellung von relevantem Kontext innerhalb des Prompts, indem es diesen aus einer externen Quelle abruft. Frameworks wie LangChain und LlamaIndex bieten Werkzeuge, um RAG-Pipelines zu erstellen.
RAG ist ein bedeutender Schritt auf dem Weg zur Schaffung besserer und zuverlässigerer KI-Systeme, indem es die Lücke zwischen der enormen generativen Leistung von LLMs und dem Bedarf an sachlicher Genauigkeit schließt. Obwohl das Konzept oft mit Text in Verbindung gebracht wird, könnte es auch Modelle wie Ultralytics YOLO durch das Abrufen relevanter visueller Beispiele oder Metadaten erweitern, obwohl dies noch ein neues Forschungsgebiet in der Computer Vision ist. Plattformen wie Ultralytics HUB erleichtern die Verwaltung von Modellen und Datensätzen, die in zukünftigen multimodalen RAG-Anwendungen als Wissensquellen dienen könnten. Die Untersuchung der verfügbaren Datensätze kann Aufschluss darüber geben, welche Art von strukturierten Informationen nützlich sein könnten.