Pressemitteilungen
Modelle
Produkte
keyboard_arrow_down
DeepSearch
Suchen, lesen und überlegen, bis die beste Antwort gefunden ist.
Leser
Lesen Sie URLs und suchen Sie im Internet nach fundierteren LLMs.
Einbettungen
Multimodale und mehrsprachige Einbettungen von Weltklasse.
Reranker
Neural Retriever der Weltklasse zur Maximierung der Suchrelevanz.
Mehr
keyboard_arrow_down
Klassifikator
Zero-Shot- und Few-Shot-Klassifizierung für Bild und Text.
Segmentierer
Schneiden Sie langen Text in Abschnitte und führen Sie eine Tokenisierung durch.

API-Dokumente
Automatische Codegenerierung für Ihre Copilot-IDE oder LLM
open_in_new


Unternehmen
keyboard_arrow_down
Über uns
Kontaktieren Sie unseren Vertrieb
Praktikantenprogramm
Begleiten Sie uns
open_in_new
Logo herunterladen
open_in_new
Terms & amp; Bedingungen


Einloggen
login
Was ist Query-Expansion?
LLM Query-Expansion
Praktische Erprobung
Ergebnisse
Verwendung aufgabenspezifischer Prompts
Wichtige Überlegungen zur Query-Expansion
Zukünftige Richtungen
Tech-Blog
Februar 18, 2025

Query-Expansion mit LLMs: Bessere Suchergebnisse durch ausführlichere Anfragen

Die Suche hat sich seit der Einführung von Embedding-Modellen stark verändert. Gibt es in der KI noch eine Rolle für lexikalische Techniken wie Query Expansion? Wir denken schon.
Michael Günther
Scott Martens
Michael Günther, Scott Martens • 9 Minuten gelesen

Die Query-Expansion war lange Zeit eine bewährte Technik zur Verbesserung von Suchsystemen, trat aber in den Hintergrund, als semantische Embeddings auf den Plan traten. Auch wenn einige sie im aktuellen Umfeld von RAG und Agent-basierter Suche für überholt halten könnten, sollte man sie nicht vorschnell abschreiben. In dieser ausführlichen Analyse untersuchen wir, wie die Kombination von automatischer Query-Expansion mit jina-embeddings-v3 und LLMs Ihre Suche verbessern und zielgenauere Ergebnisse liefern kann.

tagWas ist Query-Expansion?

Query-Expansion wurde für Suchsysteme entwickelt, die Relevanz durch den Abgleich von Wörtern aus Anfragen mit Dokumenten ermitteln, die diese enthalten, wie tf-idf oder andere "Sparse Vector"-Verfahren. Das hat einige offensichtliche Einschränkungen. Unterschiedliche Wortformen beeinträchtigen den Abgleich, wie "lief" und "laufen" oder "optimieren" vs. "optimiert". Sprachbewusste Vorverarbeitung kann einige dieser Probleme mildern, aber nicht alle. Fachbegriffe, Synonyme und verwandte Wörter sind viel schwieriger zu behandeln. Eine Suche nach medizinischer Forschung über "Coronavirus" identifiziert zum Beispiel nicht automatisch Dokumente, die über "COVID" oder "SARS-CoV-2" sprechen, obwohl dies sehr gute Treffer wären.

Query-Expansion wurde als Lösung erfunden.

Die Idee ist, zusätzliche Wörter und Phrasen zu Anfragen hinzuzufügen, um die Wahrscheinlichkeit zu erhöhen, gute Treffer zu identifizieren. So könnte eine Anfrage nach "Coronavirus" um die Begriffe "COVID" und "SARS-CoV-2" erweitert werden. Dies kann die Suchleistung dramatisch verbessern.

Abbildung 1: Query-Expansion Flussdiagramm mit Thesaurus

Es ist nicht einfach zu entscheiden, welche Begriffe zu einer Anfrage hinzugefügt werden sollen, und es gab viel Arbeit daran, wie man gute Begriffe identifiziert und wie man sie für tf-idf-artige Abrufe gewichtet. Übliche Ansätze umfassen:

  • Verwendung eines manuell gepflegten Thesaurus.
  • Data-Mining großer Textkorpora für verwandte Wörter.
  • Identifizierung anderer Begriffe aus ähnlichen Anfragen in Query-Logs.
  • Lernen, welche Wörter und Phrasen sich gut für Query-Expansion eignen durch Nutzer-Feedback.

Semantische Embedding-Modelle sollen jedoch die Notwendigkeit für Query-Expansion eliminieren. Gute Text-Embeddings für "Coronavirus", "COVID" und "SARS-CoV-2" sollten im Embedding-Vektorraum sehr nahe beieinander liegen. Sie sollten natürlich ohne Erweiterung übereinstimmen.

Während dies theoretisch zutreffen sollte, bleiben reale Embeddings von realen Modellen oft hinter den Erwartungen zurück. Wörter in Embeddings können mehrdeutig sein, und das Hinzufügen von Wörtern zu einer Anfrage kann sie zu besseren Treffern führen, wenn man die richtigen Wörter verwendet. Ein Embedding für "Hautausschlag" könnte zum Beispiel Dokumente über "vorschnelles Handeln" und "Hautcreme" identifizieren, während ein medizinischer Fachartikel über "Dermatitis" übersehen wird. Das Hinzufügen relevanter Begriffe wird das Embedding wahrscheinlich von unverwandten Treffern weg zu besseren hinführen.

tagLLM Query-Expansion

Anstatt einen Thesaurus zu verwenden oder lexikalisches Data-Mining zu betreiben, haben wir untersucht, wie ein LLM für Query-Expansion eingesetzt werden kann. LLMs haben einige wichtige potenzielle Vorteile:

  • Breites lexikalisches Wissen: Da sie auf großen, vielfältigen Datensätzen trainiert wurden, gibt es weniger Bedenken hinsichtlich der Auswahl eines geeigneten Thesaurus oder der richtigen Daten.
  • Urteilsvermögen: Nicht alle vorgeschlagenen Erweiterungsbegriffe sind notwendigerweise für eine spezifische Anfrage geeignet. LLMs treffen vielleicht keine perfekten Urteile über die Themenzugehörigkeit, aber die Alternativen können überhaupt keine Urteile fällen.
  • Flexibilität: Sie können Ihren Prompt an die Anforderungen der Abrufaufgabe anpassen, während andere Ansätze starr sind und viel Arbeit erfordern können, um sie an neue Domänen oder Datenquellen anzupassen.

Sobald das LLM eine Liste von Begriffen vorgeschlagen hat, funktioniert die Query-Expansion für Embeddings genauso wie traditionelle Query-Expansion-Schemata: Wir fügen Begriffe zum Anfragetext hinzu und verwenden dann ein Embedding-Modell, um einen Query-Embedding-Vektor zu erstellen.

Abbildung 2: Query-Expansion von Embeddings mit einem LLM

Um dies umzusetzen, benötigen Sie:

  • Zugang zu einem LLM.
  • Eine Prompt-Vorlage, um Erweiterungsbegriffe vom LLM anzufordern.
  • Ein Text-Embedding-Modell.

tagPraktische Erprobung

Wir haben einige Experimente durchgeführt, um zu sehen, ob dieser Ansatz einen Mehrwert für die Textinformationssuche bietet. Unsere Tests verwendeten:

  • Ein LLM: Gemini 2.0 Flash von Google.
  • Zwei Embedding-Modelle, um zu sehen, ob LLM Query-Expansion über Modelle hinweg generalisiert: jina-embeddings-v3 und all-MiniLM-L6-v2.
  • Eine Teilmenge der BEIR Benchmarks für Information Retrieval.

Wir führten unsere Experimente unter zwei Prompt-Bedingungen durch:

  • Verwendung einer allgemeinen Prompt-Vorlage zur Anforderung von Erweiterungsbegriffen.
  • Verwendung aufgabenspezifischer Prompt-Vorlagen.

Schließlich formulierten wir unsere Prompts so, dass sie unterschiedliche Anzahlen von hinzuzufügenden Begriffen anforderten: 100, 150 und 250.

Unser Code und die Ergebnisse sind auf GitHub zur Reproduktion verfügbar.

GitHub - jina-ai/llm-query-expansion: Query Expension for Better Query Embedding using LLMs
Query Expension for Better Query Embedding using LLMs - jina-ai/llm-query-expansion
GitHubjina-ai

tagErgebnisse

tagVerwendung eines allgemeinen Prompts

Nach einigem Experimentieren stellten wir fest, dass der folgende Prompt mit Gemini 2.0 Flash gut genug funktionierte:

Please provide additional search keywords and phrases for 
each of the key aspects of the following queries that make 
it easier to find the relevant documents (about {size} words 
per query):
{query}

Please respond in the following JSON schema:
Expansion = {"qid": str, "additional_info": str}
Return: list [Expansion]

Dieser Prompt ermöglicht es uns, unsere Anfragen in Bündeln von 20-50 zu verarbeiten, jeder eine ID zuzuweisen und einen JSON-String zurückzuerhalten, der jede Anfrage mit einer Liste von Erweiterungsbegriffen verbindet. Wenn Sie ein anderes LLM verwenden, müssen Sie möglicherweise experimentieren, um einen Prompt zu finden, der dafür funktioniert.

Wir wendeten dieses Setup mit jina-embeddings-v3 unter Verwendung des asymmetrischen Retrieval-Adapters an. Bei diesem Ansatz werden Anfragen und Dokumente unterschiedlich kodiert - unter Verwendung desselben Modells, aber verschiedener LoRA-Erweiterungen - um die resultierenden Embeddings für Information Retrieval zu optimieren.

Unsere Ergebnisse für verschiedene BEIR-Benchmarks sind in der folgenden Tabelle aufgeführt. Die Scores sind nDCG@10 (normalisierter Discounted Cumulative Gain für die zehn besten abgerufenen Elemente).

Benchmark Keine Expansion 100 Begriffe 150 Begriffe 250 Begriffe
SciFact
(Faktencheckaufgabe)
72,74 73,39 74,16 74,33
TRECCOVID
(Medizinische Suchaufgabe)
77,55 76,74 77,12 79,28
FiQA
(Finanzoptionen-Suche)
47,34 47,76 46,03 47,34
NFCorpus
(Medizinische Informationssuche)
36,46 40,62 39,63 39,20
Touche2020
(Argumentationssuche)
26,24 26,91 27,15 27,54

Wir sehen hier, dass die Query-Expansion in fast allen Fällen zu einer verbesserten Abrufleistung geführt hat.

Um die Robustheit dieses Ansatzes zu testen, wiederholten wir dieselben Tests mit all-MiniLM-L6-v2, einem deutlich kleineren Modell, das kleinere Embedding-Vektoren erzeugt.

sentence-transformers/all-MiniLM-L6-v2 · Hugging Face
We're on a journey to advance and democratize artificial intelligence through open source and open science.

Die Ergebnisse sind in der folgenden Tabelle dargestellt:

Benchmark No Expansion 100 terms 150 terms 250 terms
SciFact
(Fact Checking Task)
64.51 68.72 66.27 68.50
TRECCOVID
(Medical Retrieval Task)
47.25 67.90 70.18 69.60
FiQA
(Financial Option Retrieval)
36.87 33.96 32.60 31.84
NFCorpus
(Medical Information Retrieval)
31.59 33.76 33.76 33.35
Touche2020
(Argument Retrieval Task)
16.90 25.31 23.52 23.23

Hier sehen wir eine noch größere Verbesserung der Retrieval-Scores. Insgesamt profitierte das kleinere Modell mehr von der Query-Expansion. Die durchschnittliche Verbesserung über alle Aufgaben ist in der folgenden Tabelle zusammengefasst:

Model 100 terms 150 terms 250 terms
jina-embeddings-v3 +1.02 +0.75 +1.48
all-MiniLM-L6-v2 +6.51 +5.84 +5.88

Der große Unterschied in der Netto-Verbesserung zwischen den beiden Modellen liegt wahrscheinlich daran, dass all-MiniLM-L6-v2 von einem niedrigeren Leistungsniveau startet. Die von jina-embeddings-v3 im asymmetrischen Retrieval-Modus erzeugten Query-Embeddings sind besser in der Lage, wichtige semantische Beziehungen zu erfassen, wodurch weniger Raum für Query-Expansion bleibt, um Informationen hinzuzufügen. Aber dieses Ergebnis zeigt, wie sehr Query-Expansion die Leistung kompakterer Modelle verbessern kann, die in manchen Anwendungsfällen großen Modellen vorzuziehen sind.

Dennoch brachte Query-Expansion auch bei leistungsstarken Modellen wie jina-embeddings-v3 eine bedeutende Verbesserung beim Retrieval, wobei dieses Ergebnis nicht bei allen Aufgaben und Bedingungen völlig konsistent ist.

Für jina-embeddings-v3 war das Hinzufügen von mehr als 100 Begriffen zu einer Query bei den FiQA- und NFCorpus-Benchmarks kontraproduktiv. Wir können nicht sagen, dass mehr Begriffe immer besser sind, aber die Ergebnisse der anderen Benchmarks zeigen, dass mehr Begriffe zumindest manchmal besser sind.

Für all-MiniLM-L6-v2 war das Hinzufügen von mehr als 150 Begriffen immer kontraproduktiv, und bei drei Tests brachte das Hinzufügen von mehr als 100 keine Verbesserung der Scores. Bei einem Test (FiQA) führte das Hinzufügen von selbst 100 Begriffen zu deutlich schlechteren Ergebnissen. Wir glauben, dass dies daran liegt, dass jina-embeddings-v3 semantische Informationen in langen Query-Texten besser erfasst.

Beide Modelle zeigten bei den FiQA- und NFCorpus-Benchmarks weniger Reaktion auf Query-Expansion.

tagVerwendung aufgabenspezifischer Prompts

Das oben beschriebene Ergebnismuster legt nahe, dass Query-Expansion zwar hilfreich ist, aber die Verwendung von LLMs riskiert, unbrauchbare Query-Begriffe hinzuzufügen, die die Leistung reduzieren. Dies könnte durch die generische Natur des Prompts verursacht sein.

Wir nahmen zwei Benchmarks — SciFact und FiQA — und erstellten domänenspezifischere Prompts, wie den folgenden:

Please provide additional search keywords and phrases for 
each of the key aspects of the following queries that make
it easier to find the relevant documents scientific document 
that supports or rejects the scientific fact in the query 
field (about {size} words per query):
{query}
Please respond in the following JSON schema:
Expansion = {"qid": str, "additional_info": str}
Return: list [Expansion]

Dieser Ansatz verbesserte die Retrieval-Leistung fast durchgehend:

Benchmark Model No Expansion 100
terms
150
terms
250
terms
SciFact jina-embeddings-v3 72.74 75.85 (+2.46) 75.07 (+0.91) 75.13 (+0.80)
SciFact all-MiniLM-L6-v2 64.51 69.12 (+0.40) 68.10 (+1.83) 67.83 (-0.67)
FiQA jina-embeddings-v3 47.34 47.77 (+0.01) 48.20 (+1.99) 47.75 (+0.41)
FiQA all-MiniLM-L6-v2 36.87 34.71 (+0.75) 34.68 (+2.08) 34.50 (+2.66)

Die Scores verbesserten sich unter allen Bedingungen, außer beim Hinzufügen von 250 Begriffen zu SciFact-Queries mit all-MiniLM-L6-v2. Darüber hinaus reichte diese Verbesserung nicht aus, damit all-MiniLM-L6-v2 seine eigene Baseline bei FiQA übertraf.

Bei jina-embeddings-v3 sehen wir, dass die besten Ergebnisse mit 100 oder 150 hinzugefügten Begriffen erzielt wurden. Das Hinzufügen von 250 Begriffen war kontraproduktiv. Dies unterstützt unsere Intuition, dass man zu viele Begriffe zu einer Query hinzufügen kann, besonders wenn deren Bedeutung vom Ziel abzudriften beginnt.

tagWichtige Überlegungen zur Query-Expansion

Query-Expansion kann eindeutig Verbesserungen für das Embedding-basierte Suchen bringen, kommt aber mit einigen Einschränkungen:

tagKosten

Die Interaktion mit einem LLM fügt dem Information Retrieval Latenz und Rechenkosten hinzu und kann bei Verwendung eines kommerziellen LLM tatsächliche Kosten verursachen. Die moderate Verbesserung rechtfertigt möglicherweise nicht die Kosten.

tagPrompt Engineering

Das Entwerfen guter Prompt-Templates ist eine empirische und experimentelle Kunst. Wir machen keine Aussage darüber, dass die von uns für diese Arbeit verwendeten optimal oder auf andere LLMs übertragbar sind. Unsere Experimente mit aufgabenspezifischen Prompts zeigen, dass die Änderung der Prompts sehr signifikante Auswirkungen auf die Qualität des Ergebnisses haben kann. Die Ergebnisse variieren auch erheblich zwischen den Domänen.

Diese Unsicherheiten erhöhen die Entwicklungskosten und untergraben die Wartbarkeit. Jede Änderung am System — Wechsel von LLMs, Embedding-Modellen oder Informationsdomäne — bedeutet eine Überprüfung und möglicherweise Neuimplementierung des gesamten Prozesses.

tagAlternativen

Wir sehen hier, dass Query-Expansion die größte Verbesserung bei dem Embedding-Modell mit der schwächsten Ausgangsleistung brachte. Query-Expansion war, zumindest in diesem Experiment, nicht in der Lage, die Leistungslücke zwischen all-MiniLM-L6-v2 und jina-embeddings-v3 zu schließen, während jina-embeddings-v3 bescheidenere Verbesserungen durch Query-Expansion sah.

Unter diesen Umständen würde ein Benutzer von all-MiniLM-L6-v2 bessere Ergebnisse zu geringeren Kosten erzielen, indem er jina-embeddings-v3 einsetzt, anstatt Query-Expansion zu verfolgen.

tagZukünftige Richtungen

Wir haben hier gezeigt, dass Query-Expansion Query-Embeddings verbessern kann und dass LLMs eine einfache und flexible Möglichkeit bieten, gute Query-Expansion-Begriffe zu erhalten. Aber die relativ bescheidenen Gewinne deuten auf weiteren Forschungsbedarf hin. Wir untersuchen eine Reihe von Richtungen für zukünftige Forschung:

  • Testen des Wertes der terminologischen Erweiterung bei der Generierung von Dokument-Embeddings.
  • Untersuchung der Möglichkeiten für Query-Erweiterung in anderen KI-Suchtechniken wie Reranking.
  • Vergleich der LLM-basierten Query-Expansion mit älteren und rechnerisch weniger aufwändigen Quellen für Begriffe, wie einem Thesaurus.
  • Training von Sprachmodellen speziell für bessere Query-Expansion und Bereitstellung domänenspezifischeren Trainings.
  • Begrenzung der Anzahl der hinzugefügten Begriffe. 100 könnten zum Start zu viele sein.
  • Finden von Wegen zur Identifizierung hilfreicher und unhilfreicher Expansions-Begriffe. Jede feste Anzahl, die wir der Query-Expansion auferlegen, wird nicht perfekt passen, und wenn wir vorgeschlagene Begriffe dynamisch bewerten und nur die guten behalten könnten, würde das Ergebnis wahrscheinlich zu einer Leistungssteigerung führen.

Dies ist eine sehr vorläufige Forschung, und wir sind optimistisch, dass Techniken wie diese weitere Verbesserungen für Jina AIs Search-Foundation-Produkte bringen werden.

Kategorien:
Tech-Blog
rss_feed
Büros
location_on
Sunnyvale, Kalifornien
710 Lakeway Dr, Ste 200, Sunnyvale, CA 94085, USA
location_on
Berlin, Deutschland (Hauptsitz)
Prinzessinnenstraße 19-20, 10969 Berlin, Deutschland
location_on
Peking, China
Ebene 5, Gebäude 6, Nr. 48 Haidian West St. Peking, China
location_on
Shenzhen, China
402 Etage 4, Fu'an Technology Building, Shenzhen, China
Stiftung durchsuchen
DeepSearch
Leser
Einbettungen
Reranker
Klassifikator
Segmentierer
API-Dokumentation
Jina API-Schlüssel abrufen
Ratenbegrenzung
API-Status
Unternehmen
Über uns
Kontaktieren Sie unseren Vertrieb
Pressemitteilungen
Praktikantenprogramm
Begleiten Sie uns
open_in_new
Logo herunterladen
open_in_new
Bedingungen
Sicherheit
Terms & amp; Bedingungen
Privatsphäre
Cookie-Einstellungen
email
Jina AI © 2020-2025.