RAG & Vektor-Datenbanken in n8n
Wie Sie mit n8n intelligente Dokumentensuche, KI-Assistenten und semantische Search bauen – mit Pinecone, Supabase & Qdrant.
Das Problem mit klassischer Suche
Warum Sie semantische Suche brauchen
Sie haben 10.000 PDF-Dokumente (Angebote, Verträge, Handbücher). Ein Kunde fragt: "Wie war nochmal die Kündigungsfrist bei Projekt XY?"
- Dateinamen-Suche: Findet nichts, wenn "Kündigungsfrist" nicht im Dateinamen steht
- Volltext-Suche (SQL LIKE): Findet nur exakte Wortübereinstimmungen, nicht ähnliche Begriffe
- ChatGPT: Kennt Ihre internen Dokumente nicht, kann nur raten
Sie brauchen semantische Suche – die Bedeutung versteht, nicht nur Wörter matched.
Was ist RAG (Retrieval-Augmented Generation)?
Externe Wissensdatenbanken mit LLMs kombinieren
RAG ist eine Technik, die externe Wissensdatenbanken mit Large Language Models (LLMs) kombiniert.
Ohne RAG
ChatGPT kennt nur sein Trainingsdaten-Wissen (bis 2023). Ihre internen Dokumente? Keine Ahnung.
Mit RAG
Bevor ChatGPT antwortet, sucht es zuerst in Ihrer Vektor-Datenbank nach relevanten Dokumenten und nutzt diese als Kontext.
Der RAG-Prozess in 4 Schritten
Embedding erstellen (beim Indexieren)
Was passiert, wenn Sie ein Dokument hochladen?
Vektoren speichern
Vektoren werden in Vektor-Datenbank gespeichert
User-Frage embedden (beim Abfragen)
User-Frage wird ebenfalls vektorisiert
Ähnlichkeitssuche & LLM-Antwort
Die relevantesten Chunks werden an ChatGPT gegeben
Warum Vektoren statt SQL?
Vektoren repräsentieren Bedeutung im mathematischen Raum.
SQL-Suche
"Kündigungsfrist" findet nur exakt "Kündigungsfrist"
Findet NICHT: "Vertragslaufzeit", "Beendigungsklausel"
Vektor-Suche
"Kündigungsfrist" findet auch ähnliche Konzepte
Findet AUCH: "3-monatige Kündigungsklausel", "Vertragslaufzeit"
Vektor-Datenbanken: Pinecone vs Supabase vs Qdrant
n8n unterstützt alle drei – aber welche ist die richtige für Sie?
| Kriterium | Pinecone | Supabase Vector | Qdrant |
|---|---|---|---|
| Typ | Fully Managed, Vektor-spezialisiert | PostgreSQL + pgvector Extension | Open Source, Self-Hosted oder Cloud |
| Hauptvorteil | Schnellste Performance bei großen Datenmengen | SQL + Vektoren in EINER Datenbank | Höchste Flexibilität, Self-Hosting |
| Hybrid Search | Ja (Dense + Sparse Vectors) | Ja (Vector + Full-Text via tsvector) | Ja (Payload Filtering) |
| Kosten (2025) | Ab $25/Monat ($15 Credits inkl.) | Ab $25/Monat ($10 Compute Credits inkl.) | Kostenlos (Self-Hosted) oder Cloud ab $25/Monat |
| n8n Support | Offizieller Node | Offizieller Node (limitiert, Custom API empfohlen) | Offizieller Node |
| Skalierung | Millionen Vektoren, automatisch | Gut bis ~1M Vektoren (dann langsamer) | Unbegrenzt (Self-Hosted) |
| Metadata-Filter | Ja (per Namespace + Metadata) | Ja (PostgreSQL WHERE clauses) | Ja (Payload Filters) |
| Best for | Enterprise, große Datenmengen, Zero Ops | KMUs, die schon PostgreSQL nutzen | Entwickler, Self-Hosting, spezielle Use Cases |
Pinecone
Wählen Sie Pinecone für Zero Maintenance, große Datenmengen und beste Performance
- Sie >100k Dokumente haben
- Sie Zero Maintenance wollen
- Performance kritisch ist
- Fire and forget Lösung
Supabase
Wählen Sie Supabase für SQL + Vektoren in einer Datenbank und bestes Preis-Leistungs-Verhältnis
- Sie bereits PostgreSQL nutzen
- Sie SQL + Vektoren mischen wollen
- Sie <1M Dokumente haben
- Best Value für KMUs
Qdrant
Wählen Sie Qdrant für maximale Kontrolle, DSGVO-konformes Self-Hosting und Zero-Cost-Option
- Sie Self-Hosting wollen (DSGVO)
- Spezielle Filtering-Logik benötigt wird
- High-Performance On-Premise gefragt ist
- Kosten = 0 (bei Self-Hosting)
Hybrid Search: Das Beste aus beiden Welten
Semantische Ähnlichkeit + exakte Matches kombinieren
Problem: Vektor-Suche ist toll für semantische Ähnlichkeit, aber schlecht bei exakten Namen/IDs.
User fragt: "Zeig mir Vertrag V-2024-42"
Vektor-Suche findet alle Verträge, aber nicht speziell V-2024-42, weil Vektoren keine exakten IDs matchen.
User fragt: "Zeig mir Vertrag V-2024-42"
Hybrid Search kombiniert Vektor-Ähnlichkeit + Keyword-Match auf "V-2024-42" → findet exakt den Vertrag.
Wie Hybrid Search funktioniert
Dense Vector Search (Semantisch)
User-Frage wird in Vektor umgewandelt → findet semantisch ähnliche Chunks
Sparse Vector Search / Full-Text (Keywords)
Gleichzeitig: Klassische Keyword-Suche auf exakte Begriffe
Ranking & Kombination
Beide Ergebnisse werden kombiniert
Implementierung in n8n
Pinecone: Hybrid Search via Sparse + Dense Vectors (dot product metric)
Supabase: Vektor-Suche (pgvector) + PostgreSQL Full-Text Search (tsvector) kombinieren
Qdrant: Payload Filters für Metadata-basierte Keyword-Suche + Vektor-Similarity
Praktische Implementierung in n8n
Workflow-Aufbau für RAG-System
Phase 1: Dokumente Indexieren
Einmalig + bei Updates
- 1. Trigger: Webhook oder Schedule (z.B. täglich 2 Uhr nachts)
- 2. Dokumente laden: Google Drive Node, Notion Node, oder E-Mail-Anhänge
- 3. PDF zu Text: Extract from File Node (PDF OCR) oder externe API
- 4. Text chunken: Code Node – zerlegt in 500-1000 Zeichen Chunks mit Overlap
- 5. Embeddings erstellen: OpenAI Embeddings Node (text-embedding-3-small)
- 6. In Vektor-DB speichern: Pinecone/Supabase/Qdrant Vector Store Node
Phase 2: User-Fragen beantworten
Echtzeit
- 1. Trigger: Webhook (z.B. von Chatbot), E-Mail, oder Slack Message
- 2. User-Frage embedden: OpenAI Embeddings Node (gleiche wie beim Indexieren!)
- 3. Vektor-Suche: Supabase/Pinecone/Qdrant Node – findet Top-5 ähnlichste Chunks
- 4. Kontext zusammenbauen: Code Node – kombiniert die 5 Chunks
- 5. LLM-Anfrage: OpenAI Chat Model Node mit Kontext
- 6. Antwort zurückgeben: Webhook Response, Slack Message, oder E-Mail
Code-Beispiel: Text Chunking (n8n Code Node)
// Input: $input.item.json.text (vollständiger Dokumenten-Text)
const text = $input.item.json.text;
const chunkSize = 500; // Zeichen pro Chunk
const overlap = 50; // Überlappung zwischen Chunks
const chunks = [];
for (let i = 0; i < text.length; i += chunkSize - overlap) {
const chunk = text.slice(i, i + chunkSize);
chunks.push({
text: chunk,
metadata: {
filename: $input.item.json.filename,
chunkIndex: chunks.length,
customer: $input.item.json.customer
}
});
}
return chunks.map(chunk => ({ json: chunk }));
Praktische Use Cases für KMUs
Reale Anwendungsbeispiele
Intelligente Vertrags-Suche
5.000 Verträge durchsuchbar in Sekunden statt Minuten
- Frage: Zeig mir alle Verträge mit automatischer Verlängerung
- Vektor-Suche findet semantisch passende Klauseln
- Keyword-Filter: nur Kunde X, nur 2024
- Zeitersparnis: 10 Min → 30 Sekunden
Support-Chatbot mit interner Knowledge Base
Slack-Bot beantwortet Fragen basierend auf Notion-Dokumentation
- Alle Notion-Pages werden indexiert
- Mitarbeiter fragen direkt im Slack
- Mit Quellenangabe: Laut Handbuch Seite X...
- Entlastet Support um ~40%
E-Mail-Archiv-Suche
Finden Sie relevante E-Mails in Sekunden statt Stunden
- n8n Trigger: Neue E-Mail → OCR Anhänge → Embedding → Speichern
- Suche: Zeig mir alle E-Mails zu Rechnung 2024-42
- Findet E-Mail + alle relevanten Thread-Antworten
- Zeitersparnis: 15 Min Suche → 10 Sekunden
Produkt-Handbuch-Chatbot
Website-Chatbot beantwortet Fragen aus 500-seitigem Handbuch
- Handbuch wird in Vektor-DB indexiert
- User fragt: Wie konfiguriere ich Feature X?
- Bot findet relevante Handbuch-Abschnitte → antwortet
- Support-Tickets um ~30% reduziert
Best Practices & Fallstricke
Was funktioniert und was nicht
Do's
- Chunk-Size testen: 500-1000 Zeichen mit 10-20% Overlap funktioniert meist gut
- Metadata nutzen: Speichern Sie Dateiname, Datum, Kunde, Seite – für besseres Filtering
- Hybrid Search verwenden: Kombiniert semantisch + exakte Matches = zuverlässiger
- Quellen angeben: LLM soll Dateiname + Seite in Antwort nennen (Vertrauen!)
- Inkrementelle Updates: Nur neue/geänderte Dokumente neu indexieren (nicht alles)
Don'ts
- Zu große Chunks: >2000 Zeichen = Kontext geht verloren, zu allgemein
- Zu kleine Chunks: <200 Zeichen = zu fragmentiert, fehlt Zusammenhang
- Kein Overlap: Wichtige Infos können an Chunk-Grenzen zerschnitten werden
- Schlechte OCR: Bei gescannten PDFs unbedingt gute OCR nutzen (Unstructured.io, Textract)
- Keine Duplikate-Prüfung: Gleiches Dokument 5x indexiert = schlechte Ergebnisse
Brauchen Sie Hilfe bei der Implementierung?
Wir bauen RAG-Systeme mit n8n für Sie – von einfacher Dokumentensuche bis komplexen AI-Assistenten.