Query Expansion

Query Expansion erweitert oder reformuliert eine Suchanfrage automatisch – mit Synonymen, Umformulierungen oder LLM-generiertem Kontext – um mehr relevante Treffer zu finden.

Fortgeschritten2 Min Lesezeit

Erklärung starten

Auf einen Blick

5 Punkte

  1. Erweitert Suchanfragen mit Synonymen, verwandten Begriffen oder Umformulierungen
  2. LLM-basiertes Query Rewriting erzeugt mehrere Varianten einer Anfrage
  3. HyDE generiert ein hypothetisches Dokument als Suchvektor statt der Anfrage selbst
  4. Multi-Query Retrieval führt mehrere Anfragevarianten parallel aus und kombiniert die Ergebnisse
  5. Verbessert Recall in RAG-Systemen signifikant bei geringem Mehraufwand

Sofortantwort

Query Expansion einfach erklärt

Suchanfragen werden automatisch erweitert oder umformuliert, damit mehr relevante Dokumente gefunden werden.

Kurz gesagt
Erweitert Suchanfragen mit Synonymen, verwandten Begriffen oder Umformulierungen
Typischer Einsatz
RAG-Systeme, Enterprise-Suche, Chatbots
Wichtig zu wissen
Verbessert Recall in RAG-Systemen signifikant bei geringem Mehraufwand

Query Expansion im Überblick

Wenn ein Nutzer in einem KI-System nach etwas sucht, ist die ursprüngliche Anfrage oft zu kurz, zu vage oder nutzt andere Begriffe als die gespeicherten Dokumente. Query Expansion löst genau dieses Problem: Die Anfrage wird automatisch erweitert oder umformuliert, bevor die eigentliche Suche startet.

Ein einfaches Beispiel: Die Anfrage „Kosten senken” wird zu „Kosten senken, Ausgaben reduzieren, Budget optimieren, Effizienz steigern” – all das beschreibt dasselbe Ziel, aber mit unterschiedlichen Wörtern. Das System findet damit deutlich mehr relevante Dokumente.

Die vier wichtigsten Techniken:

TechnikWie es funktioniertBestes für
Synonym ExpansionKlassische Thesaurus-SucheEinfache Keyword-Systeme
Query RewritingLLM formuliert Anfrage umVage Nutzerfragen
Multi-QueryLLM erzeugt 3–5 VariantenRAG mit hohem Recall-Bedarf
HyDELLM generiert hypothetisches DokumentTechnische Wissensbasen

Technisch betrachtet

Multi-Query Retrieval

Das LLM erzeugt mehrere Varianten der ursprünglichen Anfrage, jede wird separat ausgeführt, die Ergebnisse werden dedupliziert und zusammengeführt:

from langchain.retrievers.multi_query import MultiQueryRetriever
from langchain_openai import ChatOpenAI

llm = ChatOpenAI(model="gpt-4o-mini", temperature=0)
retriever = MultiQueryRetriever.from_llm(
    retriever=vectorstore.as_retriever(),
    llm=llm
)

# Intern generiert das LLM z.B.:
# 1. "Wie funktioniert Gradient Descent?"
# 2. "Erklärung Optimierungsalgorithmus neuronale Netze"
# 3. "Backpropagation Gewichtsanpassung Schritt für Schritt"
docs = retriever.get_relevant_documents("Gradient Descent erklären")

HyDE (Hypothetical Document Embeddings)

Statt der kurzen Nutzeranfrage wird ein hypothetisches Antwortdokument generiert und als Suchvektor verwendet:

from langchain.chains import HypotheticalDocumentEmbedder
from langchain_openai import OpenAIEmbeddings, ChatOpenAI

base_embeddings = OpenAIEmbeddings()
llm = ChatOpenAI(model="gpt-4o-mini")

# HyDE-Embedder generiert erst ein hypothetisches Dokument,
# dann wird dessen Embedding für die Vektorsuche genutzt
hyde_embeddings = HypotheticalDocumentEmbedder.from_llm(
    llm=llm,
    base_embeddings=base_embeddings,
    custom_prompt="Schreibe einen kurzen Fachtext, der folgende Frage beantwortet: {question}"
)

# Die Suchanfrage wird intern zu einem ~200-Wort-Text expandiert
results = vectorstore.similarity_search_by_vector(
    hyde_embeddings.embed_query("Was ist Overfitting?")
)

Step-Back Prompting

Eine weniger bekannte, aber effektive Variante: Die Anfrage wird auf eine abstraktere Ebene gehoben, bevor gesucht wird.

step_back_prompt = """
Du bist ein hilfreicher Assistent. Formuliere eine allgemeinere Frage,
die hilft, die folgende spezifische Frage zu beantworten.

Spezifische Frage: {question}
Allgemeinere Frage:"""

# "Welche Lernrate soll ich für GPT-2 Fine-Tuning nehmen?"
# → "Wie wählt man Hyperparameter beim Fine-Tuning von Sprachmodellen?"

Wann welche Methode?

  • Synonym Expansion: Einfach, deterministisch, kein LLM nötig – gut für Produktsuche
  • Query Rewriting: Wenn Nutzersprache stark von Dokumentsprache abweicht
  • Multi-Query: Wenn Recall wichtiger ist als Latenz (akzeptiert 3–5× mehr LLM-Calls)
  • HyDE: Wenn Anfragen sehr kurz sind und Dokumente ausführliche Texte sind
  • Step-Back: Wenn Anfragen sehr spezifisch sind und allgemeines Hintergrundwissen benötigt wird

01Einsatzbereiche

Wann ist Query Expansion sinnvoll?

Geeignet für

  • RAG-SystemeMehr relevante Chunks finden, auch wenn der Nutzer ungenaue Begriffe verwendet
  • Enterprise-SucheInterne Dokumente besser auffindbar machen trotz unterschiedlicher Fachbegriffe
  • ChatbotsVage Nutzerfragen in präzise Suchanfragen für die Wissensbasis übersetzen
  • E-CommerceProduktsuche verbessern durch Synonyme und verwandte Begriffe

↑ Inhalt

02Werkzeuge

Womit Query Expansion umgesetzt wird

↑ Inhalt

Merksatz

Query Expansion ist wie ein guter Assistent beim Bibliotheksbesuch

Du fragst nach 'Bücher über Autofahren', er sucht zusätzlich unter 'Führerschein', 'Straßenverkehr' und 'Fahrtechnik' – und findet so deutlich mehr Relevantes.

  1. Erweitert Suchanfragen mit Synonymen, verwandten Begriffen oder Umformulierungen
  2. LLM-basiertes Query Rewriting erzeugt mehrere Varianten einer Anfrage
  3. HyDE generiert ein hypothetisches Dokument als Suchvektor statt der Anfrage selbst

04Redaktion

Herkunft und Stand

Redaktion und Aktualität

Ebenex RedaktionRedaktion

Veröffentlicht
Aktualisiert

Dieses Feld entwickelt sich schnell. Oben stehen Veröffentlichung und letzte Änderung; ein Prüfdatum kommt dazu, sobald die Erklärung nach ihrer letzten Änderung geprüft wurde.

↑ Inhalt

05FAQ

Häufige Fragen zu Query Expansion

Was ist der Unterschied zwischen Query Expansion und Query Rewriting?

Query Expansion fügt der ursprünglichen Anfrage weitere Terme hinzu (Synonyme, verwandte Begriffe). Query Rewriting ersetzt die gesamte Anfrage durch eine oder mehrere neue Formulierungen. In der Praxis werden beide Begriffe oft synonym verwendet – LLM-basierte Ansätze nutzen meist Rewriting.

Wann lohnt sich Query Expansion in einem RAG-System?

Immer wenn Nutzer kurze, vage oder umgangssprachliche Anfragen stellen. Wenn die Wissensbasis viele Fachbegriffe enthält, die sich von der Nutzersprache unterscheiden, kann Query Expansion den Recall deutlich verbessern – oft mit nur einem zusätzlichen LLM-Aufruf.

Was ist HyDE?

HyDE (Hypothetical Document Embeddings) ist ein spezieller Query-Expansion-Ansatz: Statt der Nutzeranfrage wird ein LLM gebeten, ein hypothetisches Antwortdokument zu generieren. Dieses wird dann als Suchvektor verwendet. Oft trifft es die relevanten Chunks besser als die ursprüngliche kurze Anfrage.

↑ Inhalt

06Weiterlernen

Was möchtest du als Nächstes verstehen?

↑ Inhalt