Reranking
Reranking ist ein Prozess der zweiten Stufe, der eine anfängliche Liste von Suchergebnissen neu anordnet, um die relevantesten zuerst zu platzieren. Ein schneller Retriever der ersten Stufe zieht eine breite Menge an Kandidatenergebnissen heran, und der Reranker bewertet dann jeden Kandidaten sorgfältiger anhand der Query (mithilfe eines langsameren, aber genaueren Modells) und sortiert sie nach dieser Bewertung. Reranking ist der Präzisionsschritt, der auf den Recall-Schritt folgt.
Kurz gesagt: Reranking nimmt eine grobe erste Menge von Ergebnissen und ordnet sie mit einem genaueren Modell neu an, sodass die besten Treffer für eine Query nach oben steigen.
Wie Reranking funktioniert
Reranking ist die zweite Hälfte einer zweistufigen Retrieval-Pipeline:
- Retrieval der ersten Stufe: Eine schnelle Methode wie Schlüsselwortsuche, Vektorsuche oder hybride Suche liefert eine breite Menge an Kandidaten, oft die Top 50 oder 100, wobei Recall vor Präzision bevorzugt wird.
- Bewertung: Ein Reranking-Modell, oft ein Cross-Encoder, liest die Query und jedes Kandidatendokument gemeinsam und gibt einen Relevanzwert aus. Da es das Paar zur Query-Zeit gemeinsam bewertet, kann ein Reranker die Relevanz bei den besten Kandidaten oft genauer beurteilen als das Retrieval der ersten Stufe allein, wobei die Verbesserungen von der Modellqualität, der Domänenpassung und dem Recall der Kandidatenmenge abhängen.
- Neuanordnung: Die Kandidaten werden nach ihren neuen Bewertungen sortiert, und nur die besten wenigen werden beibehalten.
- Verwendung: Die neu angeordneten Ergebnisse werden dem Benutzer zurückgegeben oder an den nächsten Schritt weitergeleitet, wie etwa den Kontext, der einem LLM übergeben wird.
Der entscheidende Kompromiss ist Genauigkeit gegenüber Kosten: Reranking-Tools sind bei vorausgewählten Ergebnissen oft präziser als Retriever der ersten Stufe, können aber auch langsamer sein, weshalb sie nur über eine kleine Kandidatenmenge und nicht über den gesamten Index laufen.
Reranking vs. Retrieval und Ranking
- Retrieval der ersten Stufe wirft schnell ein weites Netz aus, um Kandidatenergebnisse zu finden; Reranking verfeinert diese kleine Menge mit einem aufwändigeren Modell. Retrieval bevorzugt Recall, Reranking bevorzugt Präzision.
- Ein Bi-Encoder (im Retrieval verwendet) kodiert die Query und die Dokumente separat und im Voraus; ein Cross-Encoder (im Reranking verwendet) kodiert jedes Query-Dokument-Paar gemeinsam zur Query-Zeit und tauscht Geschwindigkeit gegen Genauigkeit.
- Anfängliches Ranking ist die Reihenfolge, die ein Suchsystem standardmäßig zurückgibt; Reranking ist ein zusätzlicher Durchlauf, der diese Ergebnisse neu anordnet, oft auf eine bestimmte Anwendung oder Query zugeschnitten.
Wo Reranking verwendet wird
- Suchmaschinen: Reranking ist seit langem Teil des Aufbaus einer Suchmaschine: Der Index und das Retrieval der ersten Stufe optimieren für Geschwindigkeit und Recall, während eine Reranking-Stufe die Präzision der besten Ergebnisse schärft, bevor sie angezeigt werden.
- RAG-Pipelines: Das Reranking abgerufener Chunks, bevor sie das Modell erreichen, bedeutet, dass weniger, hochwertigere Passagen das Kontextfenster füllen, was die Antworten verbessert und Rauschen reduziert.
- Such-APIs: Ergebnisse aus einer Such-API können vor der Verwendung für einen bestimmten Anwendungsfall neu geranked werden, und das Reranking selbst kann als API angeboten werden, die auf vielen Retrieval-Systemen der ersten Stufe aufsetzt und Einschränkungen wie Eingabeformat, Sprach-/Domänenpassung, Längenbeschränkungen, Modalitätsunterstützung und Latenz-/Kostenziele unterliegt.
- Latenzempfindliche Systeme: Da Reranking Latenz hinzufügt, stimmen Teams ab, wie viele Kandidaten neu geranked werden, oder überspringen es, wenn die Präzision der ersten Stufe bereits hoch ist.
Reranking ist am wichtigsten, wenn die erste Menge von Ergebnissen gut, aber nicht perfekt geordnet ist, und wo es sich lohnt, für den allerbesten Treffer auf dem Spitzenplatz einen zweiten, sorgfältigeren Blick zu werfen.
Verwandte Begriffe
Hybride Suche, semantische Suche, Cross-Encoder, Bi-Encoder, zweistufiges Retrieval, Retrieval-Augmented Generation (RAG), Latenz, Chunking, Kontextfenster.