FortgeschrittenLesezeit 8 Min.·

Baue mit RAG ein Q&A-System für deine Wissensbasis

LLMs kennen dein privates, aktuelles Material nicht und neigen zu Halluzinationen. RAG (Retrieval-Augmented Generation) lässt das Modell auf Basis einer verlässlichen Wissensbasis antworten – nach dem Prinzip „erst abrufen, dann generieren“. Einer der praxistauglichsten Produktionsansätze heute.

VonAI Resource Hub

Warum RAG nötig ist

Wissen per Fine-Tuning direkt ins Modell zu bringen ist teuer und langsam zu aktualisieren. RAG hält das Wissen in einer externen Datenbank und ruft bei Bedarf die passenden Abschnitte ab, um sie dem Modell zu geben – günstig und stets aktuell.

Überblick über die Pipeline

Ein typisches RAG-System hat zwei Phasen: eine Offline-„Indexierungsphase“, die Dokumente in abrufbare Vektoren verwandelt, und eine Online-„Abfragephase“, die anhand der Nutzerfrage abruft und eine Antwort erzeugt.

Dokument-Chunking und Embeddings

Teile die Dokumente zunächst in passend große Abschnitte. Zu groß, und der Abruf wird ungenau; zu klein, und der Kontext geht verloren. Üblich sind einige hundert Tokens mit etwas Überlappung.

Wandle dann mit einem Embedding-Modell jeden Abschnitt in einen Vektor um und speichere ihn in einer Vektordatenbank (etwa pgvector, Milvus oder Qdrant).

Vektorabruf und Top-K

Stellt ein Nutzer eine Frage, wandle auch sie in einen Vektor um, führe eine Ähnlichkeitssuche in der Datenbank aus und rufe die relevantesten Abschnitte ab (Top-K).

Du kannst die Stichwortsuche für einen „hybriden Abruf“ kombinieren und mit Reranking die Recall-Qualität weiter steigern.

Kontext zusammenstellen und Antwort erzeugen

Füge die abgerufenen Abschnitte in den Prompt ein und weise das Modell an, „nur auf Basis des bereitgestellten Materials zu antworten und klar zu sagen, wenn das Material die Antwort nicht enthält“ – das senkt Halluzinationen deutlich.

Zu den fortgeschrittenen Optimierungen zählen das Umschreiben der Anfrage, das Zitieren von Quellen, das Steuern der Kontextlänge sowie das Entduplizieren und Filtern der Abrufergebnisse.

Eine Vektordatenbank wählen

Die Vektordatenbank steht im Herzen von RAG. Für Prototypen läuft Chroma ohne Setup im Speicher. Für Produktions-Workloads bieten Qdrant (Rust-basiert) und Pinecone (vollständig verwaltet) die beste Performance und Skalierbarkeit. Wenn du bereits PostgreSQL nutzt, vermeidet pgvector neue Infrastruktur. Weaviate glänzt, wenn du eingebaute Vektorisierungsmodule und eine GraphQL-API brauchst.

RAG-Qualität bewerten

Ein RAG-System ist nur so gut wie sein Abruf und seine Generierung. Bewerte den Abruf mit Recall@K (erscheint der richtige Abschnitt in den Top-K-Ergebnissen?) und die Generierung mit Faithfulness (bleibt die Antwort im abgerufenen Kontext geerdet?) und Relevanz (beantwortet sie wirklich die Frage?). Frameworks wie RAGAS automatisieren diese Metriken, sodass du die Qualität verfolgen kannst, während du Chunking-Strategien, Embedding-Modelle und Prompt-Templates iterierst.

RAGVektordatenbankEmbeddingWissensbasis

Verwandte Tutorials