Eine Vektordatenbank speichert Inhalte als numerische Vektoren (Embeddings) und findet darin per Ähnlichkeitssuche die passendsten Treffer. Sie bildet die Retrieval-Schicht von RAG-Systemen und ermöglicht semantische Suche, bei der die Bedeutung zählt statt der exakten Schreibweise.

Funktionsweise

Ein Embedding-Modell wandelt Text, Bilder oder Audio in Vektoren mit mehreren hundert bis tausend Dimensionen um. Ähnliche Inhalte liegen im Vektorraum nahe beieinander. Statt exakter Übereinstimmung (wie bei einer relationalen Datenbank) sucht die Vektordatenbank nach Approximate Nearest Neighbors (ANN): Sie findet die nächstgelegenen Vektoren zu einer Anfrage, ohne alle Paare zu vergleichen.

Index-Algorithmen

  • HNSW (Hierarchical Navigable Small World): mehrschichtiger Graph, sehr schnelle Ähnlichkeitssuche in Millisekunden.
  • IVF (Inverted File): Vektoren werden in Cluster aufgeteilt, die Suche startet in den vielversprechendsten Clustern.
  • PQ (Product Quantization): komprimierte Vektoren sparen Speicher, erkauft mit etwas Genauigkeit.
  • LSH (Locality-Sensitive Hashing): Hash-Verfahren, das ähnliche Vektoren in denselben Bucket legt.

Distanzmetriken und Einsatz

Üblich sind Kosinus-Ähnlichkeit (Richtung der Vektoren), euklidische Distanz und Dot Product. Vektordatenbanken stecken in RAG-Pipelines, Empfehlungssystemen, Duplikaterkennung und Bildersuche. Bekannte Systeme: FAISS (Bibliothek von Meta), Pinecone, Qdrant, Weaviate, Milvus, Chroma sowie pgvector als Erweiterung für PostgreSQL.

Verwandte Grundlagen: Embedding, RAG in der Praxis, Token und Kontext, Token.