Cross-Encoder Re-Ranker
Ein Cross-Encoder Re-Ranker ist ein Re-Ranking-Modell, das eine Suchanfrage (Query) und ein Dokument gemeinsam in einem einzigen Modell-Durchlauf bewertet und daraus einen Relevanz-Score berechnet. Dadurch liefert er oft deutlich präzisere Trefferlisten als reine Vektor-Ähnlichkeit, ist aber rechenintensiver und wird deshalb typischerweise erst nach einem ersten Retrieval-Schritt eingesetzt.
Was bedeutet „Cross-Encoder Re-Ranker“?
„Cross-Encoder“ beschreibt die Architektur: Query und Dokument werden nicht getrennt eingebettet, sondern als gemeinsames Textpaar in ein Transformer-Modell gegeben (z. B. „[QUERY] … [SEP] [DOKUMENT] …“). „Re-Ranker“ bedeutet, dass das Modell nicht das gesamte Korpus durchsucht, sondern eine bereits vorselektierte Kandidatenliste neu sortiert (neu rankt).
Wie funktioniert ein Cross-Encoder Re-Ranker?
- 1) Kandidaten finden (Recall): Zuerst holt ein Retriever schnell z. B. Top-50 bis Top-200 Kandidaten über Vector Search (Vektorsuche) / Semantic Search oder BM25 (Keyword Retrieval) (oft als Hybrid Search (BM25 + Vektor)).
- 2) Paarweise Bewertung: Für jeden Kandidaten liest der Cross-Encoder Query und Dokument zusammen und berechnet einen Relevanz-Score (Klassifikation oder Regression).
- 3) Neu-Rangordnung: Die Kandidaten werden nach Score sortiert; häufig werden nur Top-3 bis Top-10 an das nachgelagerte System weitergegeben.
- 4) Nutzung im Downstream: In RAG (Retrieval-Augmented Generation) fließen die bestbewerteten Passagen als Kontext in ein Large Language Model (LLM), um Antworten genauer und mit weniger Halluzinationen (Hallucinations) zu erzeugen.
Warum ist das wichtig (und wann lohnt es sich)?
Cross-Encoder sind stark, weil sie feine Bedeutungsunterschiede und Interaktionen zwischen Query und Text direkt modellieren (z. B. Negationen, Bedingungen, Zahlen, Entitäten). Ein Bi-Encoder mit Embeddings kann zwar schnell ähnliche Texte finden, übersieht aber manchmal, warum etwas relevant ist. Der Cross-Encoder „liest“ wirklich beide Seiten zusammen – ähnlich wie ein Mensch, der eine Frage und einen Absatz gleichzeitig beurteilt.
Typische Einsatzfälle:
- Enterprise Search: präzisere Treffer in Wissensdatenbanken, Policies, Handbüchern.
- RAG für Support/Docs: bessere Kontextauswahl → weniger falsche Antworten.
- Q&A mit langen Dokumenten: Re-Ranking von Chunking (Text-Chunking)-Passagen, bevor sie ins Kontextfenster kommen.
Beispiel aus der Praxis
Query: „Wie lange muss ich Kundendaten speichern?“ Kandidaten enthalten Absätze zu „Aufbewahrungsfristen“, „Löschkonzept“ und „Marketing-Opt-in“. Ein Cross-Encoder Re-Ranker kann den Absatz zur rechtlichen Aufbewahrung (z. B. Rechnungen/Verträge) höher bewerten als allgemeinen Datenschutz-Text, weil er die konkrete Frage (Speicherdauer) mit passenden Begriffen, Bedingungen und Kontext verknüpft.
Grenzen & Trade-offs
- Latenz & Kosten: Er muss pro Query-Kandidat-Paar rechnen; bei 100 Kandidaten sind das 100 Forward-Passes (relevant für Latency (Latenz) & Throughput).
- Skalierung: Nicht als „First-stage Retrieval“ geeignet, sondern als zweite Stufe nach schnellem Retrieval.
- Textlänge: Begrenzung durch Token-Limits (siehe Kontextfenster (Context Window) und Token (Tokens) & Tokenisierung (Tokenization)).
Was kostet ein Cross-Encoder Re-Ranker?
Die Kosten hängen vor allem von (a) Anzahl Kandidaten pro Anfrage, (b) Modellgröße, (c) Hardware/Hosting und (d) Latenzanforderungen ab. Praktisch gilt: Re-Ranking ist „teurer als Embeddings“, lohnt sich aber oft, wenn du die Kandidatenliste klein hältst (z. B. Top-50) und dadurch die Antwortqualität in RAG (Retrieval-Augmented Generation) spürbar steigt.