szójegyzékbejegyzés
Reranking
- Kategória
- RAG, Embeddings & Search
- Nehézség
- Középhaladó
Meghatározás
A reranking egy kétlépcsős információ-visszakeresési folyamat, ahol a jelölt dokumentumok kezdeti halmazát egy számításigényesebb modell finomítja a végeredmény pontosságának javítása érdekében.
Működés és összefüggések
A modern kereső- és Retrieval-Augmented Generation (RAG) rendszerekben a lekérdezési folyamatot gyakran két fázisra osztják a sebesség és a pontosság egyensúlyának megteremtése érdekében. Az első fázis, amelyet gyakran „lekérdezésnek” vagy „bi-encodingnak” neveznek, vektoros beágyazásokat használ a potenciálisan releváns dokumentumok nagy számának gyors lekérésére egy hatalmas adatbázisból. A vektoros hasonlóság azonban néha figyelmen kívül hagyhatja az árnyalt szemantikai kapcsolatokat. A reranking a második fázisként működik, ahol egy „cross-encoder” modell részletesebben megvizsgálja az első fázisból származó top-k eredményeket. A lekérdezés és a dokumentum együttes feldolgozásával a reranker képes megragadni a köztük lévő komplex interakciókat, amelyeket az egyszerű vektoros matematika figyelmen kívül hagy. Bár a pontosság növelésében rendkívül hatékony, a reranking számításigényes, ezért általában csak a jelöltek egy kis, előszűrt listájára alkalmazzák, nem pedig a teljes adatbázisra.
Miért fontos
A reranking elengedhetetlen a kiváló minőségű RAG-rendszerekhez, mivel jelentősen csökkenti a „zajt” a lekért kontextusban. Azzal, hogy biztosítja a legpontosabb és legrelevánsabb információk továbbítását a nagy nyelvi modellnek (LLM), a reranking közvetlenül javítja a generált válasz tényszerű pontosságát és minőségét, minimalizálva a hallucinációkat és biztosítva, hogy a rendszer a legfontosabb adatpontokra összpontosítson.
Gyakorlati példa
Képzeljen el egy jogi kutatási platformot, amely több millió ügyiratot tárol. A felhasználó rákeres az „autonóm járműbalesetekkel kapcsolatos felelősség” kifejezésre. A kezdeti vektoros keresés 100 dokumentumot kér le az általános kulcsszó és szemantikai hasonlóság alapján. Egy reranker ezután kifejezetten a felhasználó lekérdezéséhez való relevanciájuk alapján elemzi ezt a 100 dokumentumot, a jogilag legpontosabb és kontextuálisan legmegfelelőbb eseteket az első 5 helyre emelve, amelyeket aztán összefoglalnak a felhasználó számára.
Gyakori hibák
- A teljes adatbázis újrarendezésére tett kísérlet a top-k jelöltek helyett, ami tiltó késleltetéshez vezet.
- Azt feltételezni, hogy egy reranker képes kijavítani a rossz kezdeti lekérdezést; ha a releváns dokumentum nincs a kezdeti top-k-ban, a reranker nem találja meg.
- A reranking összekeverése az egyszerű kulcsszó-kiemeléssel; a reranking mély szemantikai megértést használ a gyakorisági számlálások helyett.
Gyakori kérdések
Miben különbözik a reranking a bi-encodingtól?
A bi-encoding (a kezdeti lekérdezésnél használatos) a lekérdezéseket és a dokumentumokat egymástól függetlenül dolgozza fel a sebesség érdekében, míg a reranking (cross-encoding) együtt dolgozza fel őket, hogy mélyebb szemantikai kapcsolatokat rögzítsen a magasabb késleltetés árán.
Mikor érdemes rerankert implementálni a RAG-folyamatomban?
Akkor érdemes rerankert implementálni, ha a kezdeti lekérdezési eredmények zajosak, vagy ha az LLM-ed küzd a megfelelő válasz megtalálásával a megadott kontextusablakon belül.
A reranking mindig javítja a teljesítményt?
Javítja a pontosságot, de késleltetést vezet be. Ha az alkalmazásod ezredmásodperces válaszidőt igényel, a reranker többletköltsége elfogadhatatlan lehet.