In der Welt der Künstlichen Intelligenz hört man immer öfter den Begriff RAG – das steht für Retrieval-Augmented Generation. Doch was steckt dahinter, und warum wird diese Technik gerade so wichtig?
Kurz gesagt: RAG ist eine Methode, bei der grosse Sprachmodelle wie ChatGPT mit zusätzlichem externem Wissen kombiniert werden. Das sorgt dafür, dass die Antworten genauer, aktueller und besser auf den Kontext abgestimmt sind.
Wie funktioniert ein RAG-System?
Ein RAG-System besteht aus zwei wichtigen Teilen:
1. Retrieval (Abrufen)
Das System durchsucht eine grosse Sammlung von Texten – beispielsweise Dokumente, Webseiten oder interne Handbücher. Dafür nutzt es sogenannte Vektor-Datenbanken (wie Qdrant oder Faiss), die Texte als Zahlenfolgen (sogenannte Embeddings) speichern. So findet das System blitzschnell die Stellen, die zur Frage passen.
2. Generation (Erzeugen)
Die gefundenen Textstellen werden dann an ein Sprachmodell (LLM) weitergegeben. Dieses nutzt den Kontext, um eine klare, präzise Antwort zu formulieren.
Warum ist RAG so nützlich?
Normale Sprachmodelle haben zwei wesentliche Einschränkungen:
- Sie kennen nur das Wissen bis zu ihrem letzten Trainingszeitpunkt – sie sind nicht immer aktuell.
- Sie haben keinen Zugriff auf private oder firmenspezifische Daten.
Mit einem RAG-System kann man diese Probleme umgehen:
- Eigene Dokumente, PDFs oder Webseiten in das System einbinden.
- Spezifische Fragen beantworten, die nur in diesen Daten stehen.
- Fehlerhafte oder erfundene Antworten (sogenannte Halluzinationen) stark reduzieren.
- Aktuelles Wissen nutzen, ohne das Modell selbst neu trainieren zu müssen.
Wie läuft eine Anfrage in einem RAG-System ab?
Nutzer stellt eine Frage
↓
System sucht die ähnlichsten Textstellen in der Datenbank
↓
Gefundene Texte und die Frage gehen ans Sprachmodell
↓
Sprachmodell schreibt eine passende Antwort
Beispiel: Chatbot für Firmendokumente
Angenommen, ein Mitarbeiter fragt: „Wie hoch ist die Rückerstattungsgrenze für Reisen?“
Das RAG-System durchsucht dabei 80.000 Textabschnitte aus den Firmen-Handbüchern und findet die passende Passage. Diese wird dem Sprachmodell präsentiert, das dann antwortet: „Die Rückerstattung beträgt maximal 1.200 CHF, wenn die Reise genehmigt war.“
Woraus besteht ein RAG-System?
Ein RAG-System setzt sich aus mehreren Bausteinen zusammen – hier sind die wichtigsten und einige populäre Tools dazu:
- Embeddings erstellen: Tools wie OpenAI oder Huggingface Transformers wandeln Texte in Zahlenfolgen um.
- Texte in Stücke (Chunks) speichern: Dafür verwendet man Vektor-Datenbanken wie Qdrant, Faiss oder Weaviate.
- Suche implementieren: Mit REST-API oder Programmiersprachen wie Python, Node.js, PHP oder Rust kann die Suche eingebaut werden.
- Sprachmodell (LLM) nutzen: OpenAI API, Mistral oder lokale Modelle (z. B. LLaMA) helfen beim Generieren der Antworten.
- Antwort mit Kontext erzeugen: Über sogenannte Prompt Templates, etwa mit einer System-Message, wird der Kontext optimal an das Modell übergeben.
| 🧱 Baustein | ⚙️ Mögliche Tools/Technologien |
|---|---|
| Embeddings erstellen | OpenAI, Huggingface Transformers |
| Texte in Stücke (Chunks) speichern | Vektor-Datenbanken wie Qdrant, Faiss, Weaviate |
| Suche implementieren | REST-APIs, Python, Node.js, PHP, Rust |
| Sprachmodell (LLM) nutzen | OpenAI API, Mistral, lokale Modelle (z.B. LLaMA, Mixtral) |
| Antwort mit Kontext erzeugen | Prompt Templates (z. B. System-Message für das LLM) |
Vorteile von RAG auf einen Blick
- Kein teures Nachtrainieren des Sprachmodells (LLM) nötig.
- Nutzung eigener, privater Daten – ohne diese an Dritte zu schicken.
- Modular und flexibel – passend für verschiedene Programmiersprachen und Anwendungen.
- Kombination aus intelligenter Suche und smarte Textgenerierung (per LLM) führt zu besseren Antworten.
Beispiel-Setups
- PHP-Webserver + Qdrant + OpenAI API
- PHP-Webserver + MariaDB 11.8 mit Vektorisierung (HNSW) + DeepSeek AI API
- Rust- oder Python-Programm + Faiss + Lokales Sprachmodell
- Einfaches Bash-Skript + REST-API + JSON-Daten (Minimalbeispiel)
DE
EN