A hibaosztály, ami miatt ez a cikk létezik
Kezdjük a legerősebb méréssel. Egy lektorált vizsgálat 24 Wikidata-relációból épített kérdéseket — nagyjából 24 ezer kérdést olyan tényekről, amiknek tulajdonnév a tárgya.
| Kérdéssablon | Vektoros keresés | Kulcsszavas keresés | Különbség |
|---|---|---|---|
| „Ki [X] gyermeke?" | 19,2% | 82,9% | 63,7 pont |
| „Hol született [X]?" | 25,4% | 75,2% | 49,8 pont |
| „Hol tanult [X]?" | 26,4% | 73,0% | 46,6 pont |
| A teljes adathalmazon | 49,7% | 71,2% | 21,5 pont |
És most a kontraszt, amitől ez igazán érdekes. Ugyanez a két módszer egy másik, általánosabb kérdéssorozaton:
| Módszer | Pontosság |
|---|---|
| Vektoros keresés | 80,1% |
| Kulcsszavas keresés | 64,5% |
Ugyanaz a két technika, két kérdéstípus, és teljesen megfordul a sorrend. Az egyik helyen a vektor 15,6 ponttal jobb, a másikon a kulcsszó 21,5 ponttal.
A szerzők magyarázata két pontban:
- Népszerűségi torzítás. A vektoros keresés jól teljesít a gyakori entitásokon, és gyorsan romlik a ritkábbakon. A kulcsszavas keresés érzéketlen arra, hányszor fordult elő valami.
- Mintafüggőség. A vektoros modell nek látnia kell a kérdésmintát a tanításnál. Amikor kifejezetten ráhangolták a „hol született" mintára, felzárkózott — 73,9%-ra a kulcsszavas 75,2%-a mellé.
Vagyis a vektoros keresés a jelentést érti, de a ritka nevet nem ismeri fel. A cégneved, a cikkszámod, a hibakódod és az ügyfeled neve pontosan ilyen. Erről, hogy egyáltalán hogyan működik a jelentés szerinti keresés, az embedding és a vektoros keresés című írás szól.
Mit ad a hibrid keresés?
A hibrid keresés a két találatlistát egyesíti. A számok egy nagy szolgáltató saját méréséből, három adatsoron:
| Lépés | Ügyfél-adathalmazok | Nyilvános benchmark | Többnyelvű adathalmaz |
|---|---|---|---|
| kulcsszó → vektor | +3,2 | +4,4 | +8,7 |
| vektor → hibrid | +4,6 | +3,4 | +0,5 |
| hibrid → újrarangsorolás | +11,7 | +1,6 | +13,2 |
Itt van a cikk kellemetlen igazsága, és ki kell mondani: a hibrid önmagában szerény javulást ad. Három-öt pont, a többnyelvű adathalmazon pedig gyakorlatilag semmit.
A nagy nyereséget az újrarangsorolás hozza — ugyanezeken az adatokon +11,7 és +13,2 pont.
Ezt egy másik gyártó lépcsőzetes mérése is megerősíti, a visszakeresés hibaarányán:
| Lépés | Hibaarány | Mennyit szüntet meg a maradékból |
|---|---|---|
| Alap | 5,7% | — |
| + kontextus a darabokhoz | 3,7% | — |
| + kulcsszavas ág (hibrid) | 2,9% | a maradék 21,6%-a |
| + újrarangsorolás | 1,9% | a maradék 34,5%-a |
Két független mérés, ugyanaz a sorrend.
Akkor minek a hibrid? Mert a két lépés más problémát old meg. A hibrid azt éri el, hogy a jó találat bekerüljön a jelöltek közé. Az újrarangsorolás azt, hogy felülre kerüljön. Ami be sem került a jelöltek közé, azt az újrarangsorolás nem tudja visszahozni — és pont ez a helyzet a fenti tulajdonneves kérdéseknél.
Az újrarangsorolás: miért működik, és miért drága
A különbség egyetlen mondatban: a keresésnél a kérdés és a dokumentum külön-külön kap vektort, és a kettőt utólag hasonlítjuk. Az újrarangsorolásnál a kérdés és a dokumentum együtt megy be a modellbe, ami egyetlen pontszámot ad rá.
Ez sokkal pontosabb — és sokkal lassabb. A hivatalos dokumentáció példája ezt tökéletesen mutatja: tízezer mondat összehasonlításához nagyjából 50 millió párt kell pontozni.
| Módszer | Idő |
|---|---|
| Együttes pontozás | ~65 óra |
| Külön vektorok | ~5 másodperc |
Nagyjából negyvenhétezerszeres különbség. Ezért kétlépcsős minden komoly rendszer: a gyors módszer behozza a legjobb 100-150 jelöltet, és csak azokat pontozza újra a lassú, pontos módszer.
És van egy hibaosztály, amit csak ez old meg. A tagadást mérő vizsgálatban a különálló vektorok 11,1%-ot értek el, az együttes pontozás 50,6%-ot — négy és félszeres különbség. Ha a kérdésed az, hogy „melyik szerződésben nincs versenytilalmi kikötés", a puszta vektoros keresés gyakorlatilag vaktában válaszol.
Hol NEM javít a hibrid?
Ez a fejezet a legfontosabb, mert három dokumentált eset mutatja, hogy a hibrid keresés nem mindig segít — és tud rontani is.
1. Ha a felhasználóid kulcsszavakat gépelnek. Ugyanabból a szolgáltatói mérésből, a „kulcsszavas lekérdezés" sor:
| Kulcsszó | Vektor | Hibrid | Hibrid + újrarangsorolás |
|---|---|---|---|
| 79,2 | 11,7 | 61,0 | 66,9 |
A hibrid 18,2 ponttal rosszabb, mint a puszta kulcsszavas keresés — és az újrarangsorolással együtt sem éri utol. Az ok érthető: a vektoros ág itt 11,7-en teljesít, vagyis zajt ad hozzá, és a fúzió ezt a zajt beengedi a jó lexikai rangsorba.
Ugyanennek a táblának a „pontos szövegrészlet" sorában: kulcsszó 51,1, hibrid 51,0. Semmit nem tett hozzá.
2. Ha a fúzió súlyozása rossz. Egy lektorált vizsgálat egy nehéz adathalmazon:
| Beállítás | Eredmény |
|---|---|
| Csak kulcsszavas | 0,682 |
| Alapértelmezett fúzió | 0,675 |
| Másik adathalmazon behangolt fúzió | 0,621 |
| Jól súlyozott fúzió | 0,699 |
Az alapértelmezett fúzió rosszabb, mint a puszta kulcsszavas keresés. A máshol behangolt paraméterekkel pedig hat ponttal rosszabb. A szerzők megfogalmazása: a behangolt fúzió rosszul általánosít más adathalmazokra.
3. Többnyelvű adaton. A fenti táblázatban a többnyelvű adathalmazon a hibrid +0,5 pontot adott. Az egész javulás az újrarangsorolásból jött.
(Ez magyar szemmel külön érdekes lenne, de magyar nyelvre vonatkozó mérést nem találtam — sem a többnyelvű adathalmaz magyar részére, sem magyar szótövezésre. Fogalmi szinten annyi mondható, hogy a kulcsszavas ág érzékeny a szótövezésre, a magyar pedig agglutináló nyelv — de ez nem mérés, csak várakozás.)
A helyes sorrend
Ebből egyenesen következik egy döntési sor, ami eltér attól, amit a legtöbb útmutató mond:
1. NÉZD MEG, MIT GÉPELNEK BE VALÓJÁBAN
Ez az egyetlen lépés, ami nem kihagyható.
Száz valódi lekérdezés elolvasása.
2. HA KULCSSZAVASAK (cikkszám, hibakód, név)
-> KULCSSZAVAS keresés, esetleg újrarangsorolással.
A hibrid itt mérhetően RONT.
3. HA FOGALMI JELLEGŰEK ("hogyan mondjam fel")
-> VEKTOROS keresés + újrarangsorolás.
4. HA VEGYESEK
-> HIBRID + újrarangsorolás. És MÉRD LE, mert
a te adatodon lehet, hogy nem javít.
5. HA CSAK EGYRE VAN ERŐFORRÁSOD
-> ÚJRARANGSOROLÁS. A mérések szerint az adja
a nagyobb javulást.
KIVÉVE, ha a hibaosztályod a pontos azonosító:
azt az újrarangsorolás nem hozza vissza, ha
be sem került a jelöltek közé.
Az ötödik pont kivétele a legfontosabb finomság az egészben. Az újrarangsorolás csak azt tudja felülre tenni, ami már ott van a listán. Ha a cikkszámra keresve a jó dokumentum a századik hely mögé esett, akkor hiába a legjobb rangsoroló.
Mennyit ér a fúzió maga?
Egy lektorált vizsgálat nyolc adathalmazon hasonlította össze a fúziós módszereket. Két dolog olvasható ki belőle:
Az egyik: a kulcsszavas keresés nem elavult. Két adathalmazon jobb volt, mint a vektoros — az egyiken 0,682 a 0,520 ellenében, a másikon 0,689 az 0,558 ellenében.
A másik: a fúzió mindig javít valamennyit, de nem sokat. Az első adathalmazon a legjobb egyedi módszer 0,682, a legjobb fúzió 0,699 — plusz 1,7 pont. Ugyanakkor a tökéletes fúzió elméleti felső korlátja 0,767 lenne. Vagyis a fúziós függvény megválasztásán még van mit nyerni — ha van kapacitásod mérni.
Tipikus félreértések
- „A hibrid keresés a legnagyobb javulás egy RAG-rendszeren." A mérések ezt nem támasztják alá: négyből három összehasonlításban az újrarangsorolás adott többet. A hibrid egy konkrét hibaosztályt old meg — de azt drámaian.
- „A kulcsszavas keresés elavult." Két lektorált mérésben verte a vektorosat, tulajdonneves kérdéseken 21,5 ponttal — pedig évtizedekkel régebbi.
- „Bekapcsolom a hibridet, és jobb lesz." Kulcsszavas lekérdezéseknél a mérésben 18 ponttal rontott. A rossz súlyozás pedig a fúzió nélküli állapotnál is rosszabb.
- „Átveszem a máshol bevált fúziós paramétereket." Bizonyítottan nem általánosít: a behangolt beállítás hat ponttal a puszta kulcsszavas alá esett egy másik adathalmazon.
- „Az újrarangsorolás mindent megold." Csak azt tudja felülre tenni, ami bekerült a jelöltek közé. Ami kimaradt, az elveszett.
- „Az újrarangsorolás olcsó." Nagyjából negyvenhétezerszer lassabb művelet, mint a vektor-összehasonlítás. Ezért csak a legjobb 100-150 jelöltre futtatják.
Amit érdemes elvinni
A vektoros keresés a jelentést érti, de a ritka nevet és a pontos azonosítót nem. Ez nem hangolással javítható hiba, hanem a módszer természete — ezért létezik egyáltalán a hibrid keresés.
De a hibrid nem a legnagyobb nyereség. Két független gyártói mérésben ugyanaz a sorrend jött ki: a hibrid pár pontot ad, az újrarangsorolás a gyártói adatokban tíz pont fölöttit — a lektorált vizsgálatok pedig a fúzió szerény hasznát erősítik meg. Ha egy dolgot építesz be, azt építsd be.
És a leghasznosabb dolog, amit ma megtehetsz, nem technológiai: olvass el száz valódi lekérdezést a rendszeredből. Ha többségük cikkszám és hibakód, akkor a hibrid keresés bekapcsolása rontani fog — és ezt egy délelőtt alatt megtudod, nem egy negyedév alatt. A darabolás oldaláról a chunking című írás szól, a mérésről pedig a RAG-rendszer ellenőrzése témájú poszt.