Lektion 4 von 6·12 Min Lesezeit

RAG-Pipeline aufbauen

Jetzt verbinden wir alle Bausteine zu einer funktionierenden End-to-End-Pipeline. Von der Dokumenten-Ingestion über das Retrieval bis zur finalen Antwortgenerierung.

Die Architektur

Dokumente → Loader → Chunker → Embedder → Vektor-DB
                                                ↑
User Query → Embedder → Similarity Search ──────┘
                                    ↓
                         Top-K Chunks + Query → LLM → Antwort

Schritt 1: Document Ingestion

Document Loader

Verschiedene Quellen erfordern verschiedene Loader:

  • PDF: PyPDF2, Unstructured, Adobe Extract API
  • Web: BeautifulSoup, Crawl4AI, Firecrawl
  • Office: python-docx, openpyxl
  • Datenbanken: SQL-Connector, API-Calls

Pre-Processing

  • HTML-Tags entfernen
  • Tabellen in strukturierten Text umwandeln
  • Header/Footer eliminieren
  • Encoding normalisieren (UTF-8)

Schritt 2: Chunking + Embedding

// Pseudo-Code für die Ingestion
const chunks = recursiveSplit(document, { chunkSize: 512, overlap: 64 })
const embeddings = await embedModel.embed(chunks.map(c => c.text))
await vectorDB.upsert(chunks.map((c, i) => ({
  id: c.id,
  vector: embeddings[i],
  metadata: { source: c.source, page: c.page }
})))

Schritt 3: Retrieval

Query-Optimierung

  • Query Rewriting: LLM formuliert die Nutzerfrage für bessere Retrieval-Ergebnisse um
  • HyDE (Hypothetical Document Embedding): LLM generiert eine hypothetische Antwort, deren Embedding für die Suche verwendet wird
  • Multi-Query: Mehrere Varianten der Frage generieren und Ergebnisse zusammenführen

Reranking

Nach dem initialen Retrieval (Top-20) bewertet ein Reranker-Modell die Relevanz und liefert die besten 3–5 Chunks.

Schritt 4: Generation

System-Prompt:
"Beantworte die Frage basierend auf dem folgenden Kontext.
Wenn der Kontext die Antwort nicht enthält, sage das ehrlich.
Zitiere relevante Quellen."

Kontext: [Top-K Chunks]
Frage: [User Query]

Praxis-Stack (2026)

KomponenteEmpfehlungAlternative
OrchestrierungLangChain / LlamaIndexHaystack
EmbeddingsOpenAI text-embedding-3Voyage, BGE
Vektor-DBpgvector / QdrantPinecone, Weaviate
RerankerCohere Rerank v3Cross-Encoder
LLMClaude Opus / GPT-5Mixtral (Self-hosted)

Praxis-Tipp: Bauen Sie zuerst einen Minimal-Prototypen ohne Reranking und Query-Optimierung. Messen Sie die Qualität, dann optimieren Sie gezielt.

📝

Quiz

Frage 1 von 3

Was ist der Zweck von Reranking in einer RAG-Pipeline?