promptgarten 🌱
🌍 EN
Begriff●●○4 Min · +40 XP

Vektordatenbanken: Suche nach Bedeutung statt nach Wörtern

Eine Vektordatenbank speichert Embeddings und findet blitzschnell die ähnlichsten – die Grundlage für RAG und semantische Suche.

Was eine Vektordatenbank macht

Ein Embedding-Modell verwandelt Text (oder Bilder) in einen Vektor – eine lange Liste von Zahlen, die die Bedeutung erfasst. Eine Vektordatenbank speichert viele solcher Vektoren und beantwortet eine Frage blitzschnell: Welche gespeicherten Vektoren sind einem neuen Vektor am ähnlichsten?

Wofür man sie braucht

Genau das ist die Grundlage von RAG (Retrieval-Augmented Generation) und semantischer Suche: Statt nach exakten Wörtern zu suchen, findet die Datenbank Textstücke mit ähnlicher Bedeutung, auch wenn kein Wort übereinstimmt. "Wie kündige ich?" findet dann auch einen Abschnitt, der "Vertrag beenden" heißt.

Bekannte Vektordatenbanken

  • pgvector: Erweiterung für die normale Postgres-Datenbank, kein separates System nötig.
  • Chroma: leichtgewichtig, quelloffen, beliebt für kleinere Projekte und schnellen Start.
  • Qdrant: eigenständige Datenbank, für größere Mengen und Produktionsbetrieb gebaut.
  • Weitere bekannte Namen: Pinecone, Weaviate, Milvus.

Wann man KEINE braucht

Bei ein paar Hundert oder wenigen Tausend Textstücken reicht oft ein simples Array im Arbeitsspeicher mit einer einfachen Ähnlichkeitsberechnung – eine eigene Vektordatenbank lohnt sich erst, wenn Datenmenge, Geschwindigkeit oder gleichzeitige Zugriffe das nicht mehr hergeben.

BEISPIEL

CREATE EXTENSION vector; CREATE TABLE docs (id bigserial PRIMARY KEY, content text, embedding vector(1024)); SELECT content FROM docs ORDER BY embedding <-> '[0.01, 0.02, ...]' LIMIT 5;

🛠️ ÜBUNG — MACH DAS BEI DIR

Vergleiche für ein eigenes kleines Projekt, ob du eine Vektordatenbank brauchst oder ein einfaches Array reicht.

  1. Schätze, wie viele Textstücke (Chunks) deine Wissensbasis aktuell hat.
  2. Wenn es unter ein paar Tausend sind: probiere ein einfaches In-Memory-Array mit Kosinus-Ähnlichkeit aus.
  3. Wenn du bereits Postgres nutzt: probiere stattdessen pgvector mit einer kleinen Testtabelle aus.
  4. Vergleiche Aufwand und Antwortzeit beider Ansätze.

SELBST-CHECK

  • Hast du geschätzt, wie viele Chunks deine Wissensbasis hat?
  • Hast du beide Ansätze wirklich ausprobiert, nicht nur überlegt?
  • Weißt du jetzt, welcher Ansatz für dein Projekt den geringeren Aufwand bedeutet?

KURZ-QUIZ

Wann brauchst du laut Faustregel KEINE eigene Vektordatenbank?

QUELLEN

VERWANDTE THEMEN

Embeddings – Text als Zahlen ●●○RAG (Retrieval-Augmented Generation) ●●○Ein einfaches RAG selbst bauen ●●●Context Window (Kontextfenster) ●○○