Reranking (auch Neu-Ranking) ist eine zweite Bewertungsstufe in der Suche: Ein präziseres, aber langsameres Modell sortiert die Kandidaten neu, die ein schneller Retriever vorausgewählt hat. Damit verbessert man die Trefferqualität, ohne die gesamte Vektordatenbank durchsuchen zu müssen.
Das Zwei-Stufen-Muster
Ein Top-k-Retrieval mit einem Bi-Encoder ist schnell, aber vergleichsweise ungenau: Query und Dokument werden getrennt in Embeddings umgewandelt und nur die Vektoren verglichen. Ein Reranker prüft anschließend jede Query-Dokument-Paarung gemeinsam:
- Bi-Encoder (Stufe 1): berechnet Ähnlichkeiten per Vektorabstand, liefert viele Kandidaten (z. B. die besten 50) in Millisekunden.
- Cross-Encoder (Stufe 2): verarbeitet Query und Dokument zusammen in einem Modell, bewertet die Relevanz genauer, ist aber pro Paar teuer — darum nur auf der vorausgewählten Menge.
Bekannte Umsetzungen sind Cohere Rerank (als API), ColBERT mit seiner Late-Interaction-Technik und lokal laufende Cross-Encoder-Modelle.
Grenzen
Reranking ordnet nur um, was der Retriever gefunden hat — es kann ein schlechtes Retrieval nicht reparieren. Fehlen relevante Chunks bereits in der Vorauswahl, sortiert auch der beste Reranker sie nicht hinein. Darum gehört das Reranking ans Ende einer sauber aufgebauten RAG-Pipeline: erst Chunking und Vektorsuche, dann Reranking, dann die Antwortgenerierung durch das Large Language Model.
Verwandte Grundlagen: Semantische Suche, Embedding.