Retrieval-Augmented Generation

Vektorsuche im RAG: Funktionsweise und Ähnlichkeitsmetriken

Die Vektorsuche (Vector Search oder semantische Suche) ist das mathematische Verfahren, mit dem eine Vektordatenbank relevante Dokumente für ein RAG-System ermittelt. Im Gegensatz zur klassischen lexikalischen Suche, die auf dem exakten Abgleich von Wörtern basiert, vergleicht die Vektorsuche die Positionen von Texten in einem mehrdimensionalen Raum. Dadurch versteht das System die inhaltliche Bedeutung einer Anfrage.

Grundlage dafür sind Embeddings: numerische Repräsentationen, die die Bedeutung eines Textes als Punkt im Vektorraum kodieren. Die Qualität der Vektorsuche steht und fällt deshalb mit dem Embedding-Modell und einem sinnvollen Chunking der Quelldokumente.

Stichwortsuche vs. Vektorsuche: Ein Vergleich

Klassische Suchmaschinen (wie sie auf älteren Websites oder in Standard-Datenbanken integriert sind) nutzen die Stichwortsuche (Lexical Search).

  • Lexikalische Suche (z. B. BM25):
    • Wie sie sucht: Sie zählt, wie oft die eingegebenen Suchbegriffe im Dokument vorkommen und bewertet seltene Wörter höher.
    • Das Problem: Sucht ein Nutzer nach „Wohnung mieten in Zürich“, wird ein Dokument mit dem Satz „Appartement leasen nahe der Limmatstadt“ nicht gefunden, obwohl es inhaltlich perfekt passt, da kein einziges Wort übereinstimmt.
  • Vektorsuche (Semantische Suche):
    • Wie sie sucht: Sie vergleicht den inhaltlichen Vektor der Suchanfrage mit den Dokumenten-Vektoren.
    • Der Vorteil: Da „Wohnung“ und „Appartement“ sowie „Zürich“ und „Limmatstadt“ im semantischen Vektorraum sehr nahe beieinander liegen, findet die Vektorsuche das Dokument problemlos.

Die drei wichtigsten Ähnlichkeitsmetriken

Um festzustellen, welche Dokumente der Suchanfrage am ähnlichsten sind, berechnet die Datenbank den Abstand zwischen den Vektoren. Hierzu nutzt sie eine von drei mathematischen Formeln:

1. Kosinus-Ähnlichkeit (Cosine Similarity)

Die Kosinus-Ähnlichkeit misst den Winkel zwischen zwei Vektoren, die vom Nullpunkt ausgehen.

  • Zeigen beide Vektoren in dieselbe Richtung, beträgt der Kosinus-Wert $1.0$ (maximale Ähnlichkeit).
  • Stehen sie im rechten Winkel (orthogonal) zueinander, ist das Ergebnis $0.0$ (keine semantische Beziehung).
  • Anwendungsfall: Dies ist der Standard für Text- und Dokumentensuchen, da die Metrik die Richtung (Bedeutung) bewertet und nicht durch die Länge des Textes verzerrt wird.

2. Skalarprodukt (Dot Product / Inner Product)

Das Skalarprodukt multipliziert die entsprechenden Komponenten zweier Vektoren und summiert das Ergebnis.

  • Anwendungsfall: Es ist extrem schnell zu berechnen. Wenn die Vektoren normalisiert sind (also alle die Länge 1 haben), liefert das Skalarprodukt exakt dasselbe Ergebnis wie die Kosinus-Ähnlichkeit bei deutlich geringerem Rechenaufwand.

3. Euklidischer Abstand (L2-Distanz)

Misst die direkte Luftlinie (den Abstand) zwischen zwei Punkten im Raum.

  • Hierbei gilt: Je kleiner der Abstand (nahe an 0), desto ähnlicher sind sich die Daten.
  • Anwendungsfall: Häufig verwendet bei Bildverarbeitungen oder wenn die absolute Magnitude der Daten (z. B. Häufigkeitswerte) eine Rolle spielt.

Grenzen der reinen Vektorsuche

Obwohl die Vektorsuche extrem mächtig ist, stösst sie bei bestimmten Szenarien an Grenzen:

  • Exakte IDs: Die Suche nach einer Seriennummer wie „SN-9823-X“ scheitert oft, da solche Codes keine inhärente semantische Bedeutung besitzen und im Vektorraum unvorhersehbar platziert werden.
  • Fachjargon und Abkürzungen: Erkennt das verwendete Embedding-Modell eine branchenspezifische Abkürzung nicht, kann die Vektorsuche falsche Dokumente zurückliefern.
  • Lösung: Moderne Enterprise-Systeme kombinieren Vektorsuche und Stichwortsuche zu einer sogenannten Hybrid-Suche (Hybrid Search).

Die drei Metriken im direkten Vergleich

Welche Ähnlichkeitsmetrik die richtige ist, hängt vom Anwendungsfall und davon ab, ob die Vektoren normalisiert sind:

MetrikMisstStärkeTypischer Einsatz
Kosinus-ÄhnlichkeitWinkel zwischen VektorenLängenunabhängig, robustStandard für Textsuche
SkalarproduktProjektion / Richtung + LängeSehr schnell (bei normalisierten Vektoren)Performance-kritische Suchen
Euklidischer AbstandLuftlinie im RaumBerücksichtigt MagnitudeBild-/Sensordaten

In der Praxis arbeiten die meisten Text-RAG-Systeme mit der Kosinus-Ähnlichkeit oder – bei normalisierten Vektoren – dem rechengünstigeren Skalarprodukt.


Vektorsuche vs. Stichwortsuche: Stärken und Schwächen

Keines der beiden Verfahren ist universell überlegen. Die folgende Gegenüberstellung zeigt, wann welches gewinnt:

SzenarioVektorsucheStichwortsuche (BM25)
Synonyme & UmschreibungenSehr gutSchwach
Exakte IDs / SeriennummernSchwachSehr gut
Fachjargon / AbkürzungenMittel (modellabhängig)Gut
Tippfehler-ToleranzGutSchwach
Mehrsprachige AnfragenGut (mit passendem Modell)Schwach

Genau deshalb kombinieren produktive Systeme beide Welten zu einer Hybrid-Suche, die die semantische Stärke der Vektorsuche mit der Präzision von BM25 verbindet.


Praxisbeispiel: dieselbe Frage, zwei Suchverfahren

Ein Mitarbeiter sucht in einer Wissensdatenbank nach: «Wie storniere ich eine Bestellung?» Das passende Dokument trägt den Titel «Auftrags-Annullierung rückgängig machen».

  • Stichwortsuche: findet das Dokument nicht, da kein gemeinsames Wort vorkommt («stornieren» ≠ «Annullierung»).
  • Vektorsuche: findet das Dokument problemlos, weil «stornieren» und «Annullierung» im Vektorraum nahe beieinanderliegen.

Dieses Beispiel zeigt den Kernvorteil der semantischen Suche – und zugleich, warum sie bei einer Suche nach der exakten Auftragsnummer «ORD-2024-8841» der Stichwortsuche unterlegen wäre.

[!TIP] Die Vektorsuche ermöglicht es Firmen-KIs, Kundenanfragen inhaltlich zu verstehen und präzise Fachdokumente zuzuordnen. Testen Sie die Vektorsuche in Aktion auf allerate.dev in unserer RAG-Demo.

Häufig gestellte Fragen (FAQ)

Ist die Vektorsuche immer besser als die klassische Stichwortsuche?

Nicht zwingend. Vektorsuche ist hervorragend für das Verstehen von Konzepten und Synonymen. Bei der Suche nach exakten Artikelnummern, Produktcodes oder Fachabkürzungen ist die klassische Stichwortsuche (Lexical Search) oft überlegen.

Was versteht man unter dem Begriff „k-NN“?

k-NN steht für k-Nearest Neighbors (die k-nächsten Nachbarn). Es beschreibt die Aufgabe, zu einem Suchpunkt exakt die k ähnlichsten Datenpunkte im Vektorraum zu finden.

Welche Ähnlichkeitsmetrik soll ich wählen?

Für Textsuche ist die Kosinus-Ähnlichkeit der Standard, weil sie die Bedeutung (Richtung) bewertet und nicht durch die Textlänge verzerrt wird. Sind die Vektoren bereits normalisiert, liefert das schnellere Skalarprodukt dasselbe Ergebnis. Den euklidischen Abstand nutzt man vor allem dann, wenn die absolute Magnitude der Daten eine Rolle spielt.

Wie viele Treffer (k) sollte die Vektorsuche zurückgeben?

In RAG-Systemen sind typischerweise 3 bis 8 Treffer sinnvoll. Zu wenige Treffer riskieren, dass die relevante Stelle fehlt; zu viele füllen das Kontextfenster mit Rauschen und verschlechtern die Antwort. Oft kombiniert man ein grösseres k mit anschliessendem Reranking, das die besten Treffer nach oben sortiert.