Warum reines Vector Search fur E-Commerce versagt
Der Kunde — ein polnischer Online-Shop fur Tapeten und Dekor — hatte einen 57-MB-PDF-Katalog mit 1.200+ Produkten. Der erste Gedanke: alles vektorisieren, LLM Fragen beantworten lassen. Das ist der falsche Ansatz fur E-Commerce, und zwar aus folgendem Grund.
Wenn ein Kunde fragt "Was kostet Artikel SKU-4821?" muss die Antwort exakt sein. Eine semantische Vektorsuche liefert die ahnlichsten Chunks — aber Ahnlichkeit garantiert keine Genauigkeit. Preise konnen halluzinieren. Abmessungen werden zwischen Produkten verwechselt. Lagerbestande geraten bei Varianten durcheinander.
Der originale Katalog war zudem 57 MB rohes PDF — direkt an Gemini File Search hochgeladen, traf das den Hot-Cache-Preistier (~45 $/Monat) und verursachte uber 8 Sekunden Antwortlatenz. Fur ein Chat-Widget unbrauchbar.
Die Grundursache
E-Commerce-Daten haben zwei grundlegend verschiedene Informationstypen, die unterschiedliche Abrufstrategien erfordern:
- Harte Fakten — Preis, SKU, Lagerbestand, Abmessungen. Muss exakt sein. Halluzination hier = Geschaftsverlust.
- Weiches Wissen — Stilbeschreibungen, Anwendungsfalle, Empfehlungen, FAQ. Kann angenahert sein. Semantischer Abruf funktioniert gut.
Eine einzige Abrufstrategie kann nicht beides bedienen. Das ist die Kernerkenntnis hinter Hybrid RAG.
Hybrid RAG System: SQL + pgvector
Die Losung teilt den Katalog in zwei Schichten auf, jede fur die Anfragen geeignet, fur die sie konzipiert ist:
↓
LangGraph ReAct Agent
↓ ↓
SQL-Tool (harte Fakten) pgvector-Tool (Semantik)
Preis, SKU, Lagerbestand Stil, FAQ, Empfehlungen
↓ ↓
→ Gemini 2.5 Flash ←
↓
Antwort
Schicht 1 — SQL (Supabase PostgreSQL)
Alle deterministischen Fakten liegen in strukturierten Tabellen: Produkt-ID, Name, Preis, Lagerbestand, Abmessungen, Kategorie, Lieferant. Wenn der Agent einen Preis oder Verfugbarkeitsstatus benotigt, fuhrt er eine SQL-Abfrage uber das get_product_detail-Tool aus. Die Antwort ist immer exakt — kein Embedding-Abstand, keine Naherung.
Schicht 2 — pgvector (semantische Suche)
Produktbeschreibungen, Stilhinweise, Anwendungsfalltext und FAQ-Inhalte werden gechunkt, mit Sentence-Transformers eingebettet und in pgvector gespeichert. Wenn ein Nutzer fragt "Was eignet sich gut fur ein kleines Bad?" oder "Etwas Modernes fur ein Kinderzimmer?", fuhrt der Agent eine Ahnlichkeitssuche durch und ruft den relevantesten Stilkontext ab.
Die ETL-Pipeline
Bevor eine Anfrage korrekt beantwortet werden kann, mussen die Daten sauber sein. Ich habe eine ETL-Pipeline gebaut, die: strukturierte Felder aus dem rohen PDF extrahiert, Produktduplikate bereinigt, vor dem Massen-Embedding Contract Tests fur jede Kategorie durchfuhrt (Trockenlauf mit einem einzelnen Element zur Verifikation der Prompt-Genauigkeit) und in beide Supabase-Tabellen upserted. Das 57-MB-PDF wurde zu einer sauberen 5-MB-Wissensbasis.
LangGraph ReAct — warum keine einfache Chain
Ein Single-Shot-LLM-Prompt kann echte E-Commerce-Anfragen nicht bewaltigen. "Haben Sie beige Tapeten unter 30 Euro, die fur ein feuchtes Bad geeignet sind und auf Lager sind?" erfordert mehrere Abrufschritte: nach Farbe und Preis filtern (SQL), Feuchtraumeignung prUfen (semantisch), Lagerbestand verifizieren (SQL erneut).
LangGraph ReAct Agent lost das mit einer Tool-Calling-Schleife:
search_products— Keyword + Kategorie-Filter in SQLfilter_by_attributes— Preisbereich, Lagerbestand, Abmessungenget_product_detail— exakte Fakten fur eine bestimmte SKUsemantic_recommend— Stil- und Anwendungsfall-Ahnlichkeitget_faq— haufige Fragen zu Montage und Pflege
Der Agent entscheidet, welche Tools er in welcher Reihenfolge aufruft, basierend auf der Nutzeranfrage. LangSmith bietet vollstandige Observability fur jeden Tool-Aufruf und Token-Verbrauch.
Wie ~90% API-Kostensenkung entsteht
Der naive Ansatz — den vollstandigen Katalog fur jede Anfrage ans LLM senden — ist teuer. 57 MB = Millionen von Token pro Anfrage zum Hot-Cache-Preis.
Der Hybrid RAG Ansatz sendet nur das Notwendige:
- SQL-Abfrage liefert exakte Zeilen — 200-500 Token strukturierter Daten
- pgvector liefert Top-3 relevante Chunks — 400-800 Token Kontext
- Gesamtkontext pro Anfrage: ~1.000-1.500 Token statt Millionen
Gemini 2.5 Flash (nicht Pro) ubernimmt die finale Synthese — schnell, gunstig, fur diese Aufgabe prazise genug. Die architektonische Entscheidung, den Abruf aufzuteilen, bringt mehr als jede Modelloptimierung.
Ergebnis: die Kosten pro Anfrage sanken von ~0,045 $ (Hot-Cache vollstandiges PDF) auf ~0,004 $ (Hybrid RAG). In der Skalierung ist dieser Unterschied die gesamte Gewinnmarge.
Von Entwicklung zu Live: FastAPI + Railway
Der Agent ist uber einen FastAPI /chat-Endpunkt zuganglich. Das Frontend ist ein leichtgewichtiges Web-Chat-Widget, das auf den Produktseiten des Shops eingebettet ist. Telegram wurde nur fur internes Debugging wahrend der Entwicklung genutzt — nicht in der produktiven, kundenseitigen Schnittstelle.
Deployment erfolgt auf Railway mit Docker — Zero-Config-Autoskalierung, kein Server-Management. Die Supabase-Instanz handhabt sowohl die PostgreSQL-Daten als auch die pgvector-Extension. Keine separate Vektordatenbank-Infrastruktur notwendig.
Observability von Anfang an
LangSmith ist vor der ersten Produktionsanfrage eingebunden. Jeder Agent-Lauf wird protokolliert: welche Tools wurden aufgerufen, in welcher Reihenfolge, wie viele Token wurden verbraucht, wo hat der Agent gezogert oder wiederholt. Das ist nicht optional — ohne Observability ist das Debuggen eines fehlverhaltenden Agents in der Produktion Raterei.
Qualitassicherung
Kaufer-Szenario-Integrationstests laufen gegen den Live-Agent: 20+ Testanfragen fur Preisfragen, Lagerpruungen, Stilempfehlungen und Randfalle (abgekundete Produkte, nicht vorratige Varianten). Diese Tests laufen in CI vor jedem Deployment. Der Agent kann mit einem fehlgeschlagenen Kaufer-Szenario nicht in die Produktion gehen.
Was ich anders machen wurde — und was funktioniert
Nach Datentyp aufteilen, nicht nach Abrufmethode
Der grosste Fehler bei RAG-Implementierungen ist, alles zu vektorisieren. Die richtige Frage lautet: "Benotigt dieses Datenelement exakten oder angenaherten Abruf?" Preise und SKUs brauchen Exaktheit. Beschreibungen und Empfehlungen brauchen Annaherung. Bauen Sie Ihre Abrufschicht entsprechend auf.
ETL-Qualitat bestimmt Agent-Qualitat
Garbage in, Garbage out ist das haufigste RAG-Versagen. Ich habe mehr Zeit in die ETL-Pipeline investiert — Deduplizierung, Feldnormalisierung, Contract Tests — als in den Agent selbst. Eine gut strukturierte Wissensbasis macht den Agent ohne Prompt-Engineering dramatisch genauer.
ReAct statt Chains fur mehrstufige Anfragen
Chains funktionieren fur einstufigen Abruf. Echte Nutzeranfragen sind mehrstufig. Ein ReAct Agent mit gut gestalteten Tools handhabt Gesprachskontext, Folgefragen und zusammengesetzte Anfragen, ohne jedes Szenario speziell zu codieren.
Observability ist in der Produktion nicht optional
LangSmith von Tag 1 — nicht nach dem ersten Produktionsvorfall nachgerustet. Sie mussen sehen, was der Agent tut, bevor Nutzer Ihnen sagen, dass etwas falsch lauft.
Wann macht ein RAG Verkaufsassistent fur Ihr Unternehmen Sinn?
Diese Architektur eignet sich fur jeden E-Commerce- oder B2B-Betrieb in Deutschland, der hat:
- 100+ Produkte mit strukturierten Attributen (Preis, Kategorie, Spezifikationen)
- Kunden, die vor dem Kauf Fragen stellen — nicht nur browsen und klicken
- Einen Katalog, der sich regelmasig andert (saisonal, Lagerupdates)
- Ein Support-Team, das Zeit mit wiederkehrenden Produktfragen verbringt
Die Integration ist ein Chat-Widget auf der bestehenden Website — kein vollstandiger Neuaufbau notwendig. Der Agent verbindet sich mit Ihrer Produktdatenbank und bestehenden Infrastruktur. Entwicklungszeit fur einen Standard-E-Commerce-Aufbau: 3-6 Wochen.
Branchen, die in Deutschland gut funktionieren: Mobel- und Einrichtungshandler, Baustofflieferanten, B2B-Teile- und Komponentenhandler, Tapeten- und Bodenbelagspezialisten, Lebensmittel- und Getranke-Groshandel.
Eingesetzte Technologien
Ich entwickle produktionsreife RAG Systeme fur E-Commerce- und B2B-Betriebe in Deutschland. SQL + Vektorsuche hybrid, null Halluzinationen, in Ihre bestehende Website integriert. Sprechen wir uber Ihren Katalog.