Kontekstuaalne manus kuldsest lõigust kaugemale

Uus treenimismeetod, mudel ja võrdlustest vastuste ning nende toetava konteksti otsimiseks.

AutoridPerplexity Research & turbopuffer

Sissejuhatus

Kontekstuaalsed manused tabavad iga lõigu või katkendi tähendust kogu dokumendi kontekstis. Nende treenimine ja hindamine eeldavad tavaliselt ühte asjakohast katkendit päringu kohta, mida tuntakse „kuldse lõiguna“. Kuid kuldne lõik ei ole praktikas sageli piisav. See võib sisaldada vastust, kuid selle mõistmiseks või kontrollimiseks vajalik toetav kontekst võib puududa, jättes selle eraldatuna mitmetähenduslikuks.

Tutvustame mudelit pplx-embed-v2-context-9b-preview, mis on meie uus kontekstuaalse manuse mudel. Mudel on treenitud uudse lähenemisviisiga, mis kasutab õpetajana Perplexity konteksti tihendamise mudelit. Koondame selle tokenitaseme ennustused katkenditaseme asjakohasusskoorideks, õpetades manusemudelit tooma välja nii vastusekatkendeid kui ka toetavat konteksti, mitte ainult ühte kuldkatkendit. Mudel toodab ühe manuse katkendi kohta ilma täiendava järelduskuluta ning toetab 1024-mõõtmelisi ja int8-manuseid.

See saavutab tipptasemel tulemused context-bench-il (uuel kontekstiteadliku otsingu võrdlustestil, mille on loonud ja mida hoiab privaatsena turbopuffer) ja laialdaselt kasutataval avalikul võrdlustestil ConTEB. Meie mudel töötati välja sõltumatult context-bench-ist ja seda hinnati pimesi esitatud esildisena.

Context-bench koosneb 2099 päringust 38 894 pikas dokumendis 21 domeenis ning hindab kontekstuaalsete manuste kolme võimekust: dokumentide eristamist peaaegu identsete dokumentide hulgast, kuldkatkendite otsingut, mille tähendus sõltub kaugejõulisest kontekstist, ja vastuse kontrollimiseks vajalike tõendusmaterjalide meeldetuletamist.

Mudeli eelvaade on avalikult saadaval platvormil Hugging Face. Võrdlustesti hoiab turbopuffer privaatsena, et vähendada treeningu saastumise ohtu ja säilitada selle väärtus edusammude mõõtmisel. Hindamise taotlemiseks võtke ühendust turbopufferiga aadressil contextbench@turbopuffer.com.

Joonis 1: Answer@K, Document@K, Evidence Recall@K ja All-Evidence@10 context-bench-il, võrreldes Perplexity v2 eelvaadet 9B mudeliga Voyage Context 4, Voyage 4 Large ja Perplexity context v1 4B.

Miks on kontekst otsingu jaoks oluline

Otsingusüsteemid jagavad pikad dokumendid tavaliselt väiksemateks katkenditeks, mida saab indekseerida ja iseseisvalt otsida. Katkenditeks jaotamine on praktikas mugav, kuid see eemaldab konteksti, milles iga katkend algselt ilmus, luues kompromissi teabe tihendamise granulaarsuse ja kodeerimise ajal kasutatava konteksti vahel. Katkend võib viidata varem tutvustatud üksusele, pärida oma tähenduse jaotise pealkirjast või tugineda dokumendi mujal asuvatele määratlustele. Pärast eraldamist ei pruugi see enam sisaldada piisavalt teavet, et seda usaldusväärselt päringuga sobitada. Kogu dokumendi kodeerimine ühe vektorina ei lahenda seda, kuna üks ühendatud esitus ei suuda ustavalt tabada pika dokumendi iga tahku.

Kontekstuaalse manuse mudelid lahendavad selle piirangu, esindades iga katkendit selle ümbritseva sisu kontekstis, kõige sagedamini hilisplokkide (late chunking) kaudu: dokument kodeeritakse ühe käiguga ja katkendi esitused koondatakse hiljem, nii et iga katkendi vektor arvutatakse kogu dokumenti vaadeldes. Varasemad tööd, nagu ConTEB ja meie oma pplx-embed-context-v1, on näidanud, et kontekstualiseeritud katkendi esitused parandavad märkimisväärselt otsingut iseseisvalt kodeeritud katkendite ees, eriti pikkade dokumentide puhul.

Kuldkatkendi järelevalve piirangud

Kontekstuaalse manuse mudelite treenimine nõuab järelevalvet, mis tuvastab, mitu dokumendi osa on antud päringu jaoks asjakohased. Tavaline lähenemisviis on kuldkatkendi annotatsioonid: iga päringu jaoks tuvastab annotaator, tavaliselt suur keelemudel (LLM), dokumendi katkendi, mis sellele vastab.

Treenimine ühendab tavaliselt kaks kontrastset kadu: dokumentidevahelise kao, mis vastandab kuldkatkendi teiste dokumentide katkenditele, ja dokumendisisese kao, mis vastandab selle sama dokumendi teistele katkenditele.

Sellel lähenemisel on mõned piirangud:

  1. Ainult üks katkend on asjakohane. See kohtleb kõiki teisi dokumendi katkendeid negatiivsetena, sealhulgas neid, mis sisaldavad kasulikku toetavat teavet. Dokumenditaseme järelevalve toimib teises äärmuses. See tuvastab dokumendi asjakohasena ilma täpsustamata, millised selles olevad katkendid on olulised. Praktikas jääb asjakohasus sageli nende äärmuste vahele. Vastust sisaldav katkend võib sõltuda mõnest toetavast katkendist, mis tutvustavad üksust, lahendavad viite või annavad täiendava fakti, samas kui ülejäänud dokument ei puutu asjasse. Seetõttu peab mudel õppima õige valikulisuse taseme: laiem kui üksainus kuldkatkend, kuid fokuseeritum kui dokument tervikuna.
  2. Jäme järelevalve. Kuna iga annotatsioon tuvastab ühe kuldkatkendi, selle asemel et hõlmata asjakohasuse astmeid kogu dokumendi ulatuses, pakub see piiratud treeningtsoone selle tootmisele kulutatud arvutusmahule.
  3. Kulukas skaleerida. Iga treeningpaar nõuab LLM-ilt dokumendi lugemist ja asjakohase katkendi valimist, mistõttu annotatsioonikulu kasvab lineaarselt treeningkomplekti suurusega ja seab piirid sellele, kui palju ja kui mitmekesised võivad treeningandmed olla.
  4. Tundlik katkendite piiride suhtes. Sildid on seotud ka annotatsiooni ajal kasutatud katkendite piiridega. Fikseeritud tokeni suurusega aknale määratud kuldsilt ei täpsusta, mitu lühemat lauset või pikemat lõiku on asjakohased. Katkendite strateegia muutmine või treenimine mitme katkendi vahel, et parandada vastupidavust dokumentide jagamisele indekseerimise ajal, võib seetõttu nõuda korpuse uuesti märgistamist.

Uudne lähenemisviis kontekstuaalsele õppimisele

Käsitleme kuldkatkendi järelevalve piiranguid, destilleerides asjakohasushinnanguid päringuteadlikust konteksti tihendamise mudelist. See mudel toimib õpetajana: see loeb päringu ja dokumendi koos ning määrab igale dokumendi tokenile asjakohasusskoori. Selle ennustused pakuvad kontekstuaalsete manuste treenimiseks mitmeid eeliseid:

  1. Paindlikud katkendite piirid. Tokenitaseme asjakohasusskoore saab koondada mis tahes valitud katkendite piiridesse, võimaldades samadel õpetaja ennustustel juhendada erinevat katkenditeks jaotamist ilma ümbermärgistamiseta.
  2. Pidev asjakohasus. Erinevalt binaarsetest kuldkatkendi siltidest pakub õpetaja pidevaid skoore, mis kajastavad asjakohasuse astmeid, mis eristavad loomulikult vastust sisaldavaid katkendeid, toetavat konteksti ja ebaolulist sisu.
  3. Madalam annotatsioonikulu. Õpetaja on kompaktne ja spetsialiseerunud asjakohasuse hindamisele, mistõttu on seda mastaapselt järelevalves hoida palju odavam kui üldotstarbelist LLM-i.

Treenime oma mudelit dokumenditaseme kontrastse kao ja katkenditaseme destilleerimiskao kaalutud summana päringu-dokumendi paaride partiide üle. Iga päringu puhul toimib paarisdokument positiivsena, samas kui ülejäänud dokumendid samas partiis toimivad negatiivsetena.

Iga partii jaoks valime juhuslikult katkestusstrateegia, jagame dokumendid vastavalt sellele ja sisestame katkendite vahele eraldusmärgid. Seejärel töötleme iga dokumenti ühe edasisuunamisega ja keskmistame tokeni esitused igas katkendis, et saada kontekstuaalsed katkendimanused. Päringud kodeeritakse eraldi, tehes nende tokeni esituste üle keskmistamise. Lõpuks arvutame koosinussarnasuse iga päringu manuse ja iga katkendi manuse vahel partiis.

Kaofunktsioon

Dokumenditaseme kontrastne kadu

Kuigi meie manusemudel toodab ainult katkenditaseme sarnasusi, saame neist loomulikult tuletada dokumenditaseme sarnasused. Peame dokumenti d päringu q jaoks sama asjakohaseks kui selle kõige asjakohasem katkend. See hindamisreegel on inspireeritud ColBERT-i MaxSim-operatsioonist, mida siin on rakendatud katkenditele tokenite asemel.

Täpsemalt, arvestades päringut q manusega q ja dokumenti d katkendite c järjestatud loendina manustega c, määratleme dokumenditaseme sarnasuse järgmiselt:

s(q,d):=max⁡c∈dq⊤c.s(q,d):=\max_{c\in d}\mathbf{q}^{\top}\mathbf{c}.

Arvestades neid dokumenditaseme sarnasusi, saame sõnastada dokumenditaseme InfoNCE eesmärgi paketisiseseid negatiivseid näiteid kasutades.

Päringu q jaoks tähistagu d⁺ selle asjakohast dokumenti ja 𝒟 partii dokumente. Kontrastne kadu on järgmine, jättes loetavuse huvides temperatuurid välja:

Ldoc(q,d+)=−log⁡exp⁡(s(q,d+))∑d∈Dexp⁡(s(q,d))\mathcal{L}_{\mathrm{doc}}(q,d^{+})=-\log\frac{\exp(s(q,d^{+}))}{\sum_{d\in\mathcal{D}}\exp(s(q,d))}

Katkenditaseme destilleerimiskadu

Kontrastne kadu õpetab mudelile, milline dokument on päringu jaoks asjakohane. Destilleerimiskadu õpetab, kus asub asjakohasus selles dokumendis, mis on kontekstuaalse mudeli jaoks hädavajalik.

Treenimise ajal edastame iga positiivse päringu-dokumendi paari meie konteksti tihendamise mudelile, mis määrab igale dokumendi tokenile asjakohasusskoori. Nagu ka dokumenditaseme hindamise puhul, tuletame iga katkendi asjakohasuse selle kõige asjakohasemast sisust. Et vähendada tundlikkust erandlike tokenite, sealhulgas katkendi piiridel asuvate tokenite suhtes, määratleme katkenditaseme asjakohasuse katkendi parima n tokeni skoori keskmisena.

Iga päringu jaoks rakendame temperatuuriga skaleeritud softmax-i õpetaja katkenditaseme asjakohasusskooridele positiivses dokumendis, et saada sihtjaotus. Teiste partii dokumentide katkendid saavad sihttõenäosuseks nulli. Treenime manusemudelit selle sihtmärgiga sobituma, minimeerides edasisuunalist KL-divergentsi sihtmärgi ja selle ennustatud jaotuse vahel kõigi partii katkendite seas:

Ldist(q,d+)=KL ⁣(pT∥pS)\mathcal{L}_{\mathrm{dist}}(q,d^{+})=\mathrm{KL}\!\left(p^{\mathrm{T}}\parallel p^{\mathrm{S}}\right)
pT(cj)=exp⁡(rj)∑ck∈d+exp⁡(rk)p^{\mathrm{T}}(c_j)=\frac{\exp(r_j)}{\sum_{c_k\in d^{+}}\exp(r_k)}
pS(c)=exp⁡(q⊤c)∑d∈D∑ck∈dexp⁡(q⊤ck)p^{\mathrm{S}}(c)=\frac{\exp(\mathbf{q}^{\top}\mathbf{c})}{\sum_{d\in\mathcal{D}}\sum_{c_k\in d}\exp(\mathbf{q}^{\top}\mathbf{c}_k)}

Siin tähistavad ülaindeksid T ja S õpetajat ning õpilast ning rⱼ on õpetaja asjakohasusskoor katkendile cⱼ positiivses dokumendis d⁺. Õpetaja sihtjaotus määrab nulltõenäosuse partiis kõigi teiste dokumentide katkenditele.

Erinevalt ühest kuldkatkendi sildist tabab see sihtmärk asjakohasuse astmeid. Toetavad katkendid saavad kaalu vastavalt õpetaja skooridele, selle aemel et neid koheldaks negatiivsetena, õpetades mudelit hankima nii toetavat konteksti kui ka vastust.

Kombineeritud kadu

Meie kombineeritud treeningeesmärk on dokumenditaseme kontrastse kao ja katkenditaseme destilleerimiskao kaalutud summa. Keskmistame selle kaalutud kao päringu-dokumendi paaride partii üle.

Joonis 2 illustreerib meie treenimise lähenemisviisi. Konteksti tihendaja toimib õpetajana ainult treenimise ajal. Järelduse ajal toodab manusemudel ühe kontekstuaalse manuse katkendi kohta ilma täiendava tihendamise või ümberjärjestamise etapita. See lähenemisviis parandab kontekstuaalsete manuste õppimist ilma indeksi salvestusruumi suurendamata või õpetajamudeli latentsust otsinguajal lisamata.

Joonis 2: Meie mudeli treenimishäälestus. Kontekstuaalne kodeerija (õpilane, vasakul) töötleb dokumente, millest igaüks koosneb mitmest katkendist. Iga katkend manustatakse selle ümbritseva dokumendikonteksti suhtes. Päring A on Dokument A teadaolev vaste ja seda hinnatakse kõigi dokumentide katkendite suhtes, et saada ennustatud sarnasused. Need katkenditaseme skoorid viiakse maksimumi alusel dokumenditaseme skoorideks. Treenime katkenditaseme ennustusi ja dokumenditaseme ennustusi sobituma sihtjaotustega (paremal). Katkenditaseme sihtmärk arvutatakse treenimise ajal konteksti tihendaja ennustusena teadaolevas asjakohases dokumendis ja seatakse teadaolevates ebaolulistes dokumentides nulliks. Dokumenditaseme sihtjaotus seatakse teadaoleval asjakohasel dokumendil ühe kuumaga (one-hot).

Treenimisandmed

Treenimisandmed koosnevad umbes 430 avalikust ja ettevõttesisesest päringu-dokumendi andmestikust, mis hõlmavad üle 50 keele.

Loome ettevõttesiseseid paariandmestikke PII-filtriga tootmisandmetest ja sünteesides asjakohaseid päringuid pikkade dokumentide põhjal. Iga edasisuunamise korral valime ühe andmestiku ja võtame sellest terve pakettvalimi, et suurendada paketisiseste negatiivsete näidete keerukust ja vältida otseteedel õppimist. Ühelgi meie treeningandmestikul ei ole katkenditaseme annotatsioone: kogu dokumendisene järelevalve pärineb tihendusmudelilt ning treenimiseks ei kasutata ühtegi ConTEB-i andmepunkti. Lisaks polnud mudeli väljatöötamise ajal saadaval ühtegi context-bench-i andmepunkti.

Treenimishäälestus

Mudel põhineb ettevõttesisesel 9 miljardi parameetriga ColBERT-i otsingumudelil ja toodab lineaarse projitseerimiskihi kaudu 2048-mõõtmelisi manuseid. Märgime katkendite piirid õpitud <|chunk_sep|>-märgiga ja moodustame iga katkendi manuse, keskmistades selle märgimanused. Päringud kodeeritakse sama mudeliga ning nende märgimanused keskmistatakse üheks vektoriks.

Kasutame Matryoshka treenimist, et toetada nii 1024- kui ka 2048-mõõtmelisi manuseid, ning kvantimisteadlikku treenimist, et toetada kohalikke int8-manuseid. Treenimise ajal suurendame õppimiskiirust järk-järgult, hoiame seda konstantsena ja vähendame seejärel.

Välja antud mudel on mudelisupp, mis keskmistab mitme sama treeningjooksu kontrollpunkti kaalud.

Uus võrdlustest katkenditaseme otsinguks

Avalikud kontekstuaalse otsingu võrdlustestid, nagu ConTEB, jagavad kuldkatkendi järelevalve taga olevat eeldust: igal päringul on üksainus asjakohane katkend ja mudelit premeeritakse ainult selle katkendi esimeseks reastamise eest. Samuti pärivad nad selle piirangud.

Esiteks testib ConTEB otsingut ülesannetes, kus katkend on ilma seda ümbritseva kontekstita mitmetähenduslik. Nendes ülesannetes edestasid kontekstuaalsed mudelid mudeleid, mis kodeerivad iga katkendi iseseisvalt. Siiski ei küsi see, kas mudel toob nähtavale ka dokumendi teised osad, mis muudavad katkendi arusaadavaks.

Teiseks ei testi see süstemaatiliselt, kas õige dokument leitakse siis, kui samas korpuses olevad peaaegu identsed dokumendid erinevad ainult konteksti poolest, mis ümbritseb muidu identset lauset.

Mõlemad võimekused on olulised, kui otsinguagent või kasutaja peab mõistma ja kontrollima vastust mõne toodud lause, mitte terve dokumendi põhjal. Seetõttu ehitasime context-bench-i – kontrollitud võrdlustesti pikkade dokumentide otsinguks, mis on loodud eristama dokumendikonteksti kasutamist üldisest otsingukvaliteedist. See testib, kas kontekstuaalsed manused kasutavad dokumendi mujalt pärit teavet kolme võimekuse toetamiseks:

  1. Dokumentide eristamine: Õige dokumendi tuvastamine peaaegu identsete alternatiivide hulgast.
  2. Vastuseotsing: Vastust sisaldavate katkendite otsimine, mille tähendus sõltub dokumendi mujal asuvatest üksikasjadest.
  3. Tõendusmaterjali otsing: Toetavate katkendite otsimine, mis selgitavad või põhjendavad vastust.

Context-bench sisaldab 2099 päringut ja 38 894 dokumenti. Kasutatakse lausepikkuseid katkendeid, mille tulemuseks on kokku 2 458 072 katkendit. Päringud katavad 21 domeeni, sealhulgas ettevõtete aruanded, kliinilised uuringud, reisimine, meelelahutus, haridus, valitsus, juriidilised lepingud ja tarkvara dokumentatsioon.

Iga päring on loodud kaheteistkümnest kontekstuaalsest võimekusest ühe testimiseks. Peamised siirdokumendid on meelega pikad: 1061 dokumenti 1197 erinevast peamisest siirdokumendist sisaldavad vähemalt 200 lauset ja nende mediaanpikkus on umbes 6100 tokenit. Igal päringul on korpuses täpselt üks õige vastus. Kui sama fakti on kulddokumendis mainitud rohkem kui kord, näiteks kokkuvõtvaluses ja tabelireas, aktsepteeritakse vastustena kõiki neid lauseid.

Vastuse teekond on vastusekatkendi ja selle tõlgendamiseks või kontrollimiseks vajaliku tõendusmaterjali üks kehtiv kombinatsioon. 2099 päringu seas on peamisel siirdokumendi vastuse teekonnal 964 päringu jaoks üks tõendirühm, 735 jaoks kaks, 332 jaoks kolm või rohkem ja 68 jaoks mitte ühtegi. Alternatiivsed kehtivad vastuse teekonnad võivad nõuda erinevaid tõendirühmi.

Tabel 1: Võrdlustesti statistika.

Statistika

Väärtus

Päringud

2099

Dokumendid

38 894

Lausekatkendid

2 458 072

Peamise siirdokumendi mediaanpikkus

6100 tokenit

Domeenid

21

Tõendirühmi päringu kohta (peamise siirdokumendi vastuse teekond)

1: 964; 2: 735; 3+: 332; pole ühtegi: 68

Tabel 2: Kaksteist context-bench-i testitud kontekstuaalset võimekust koos näitlike näidetega.

Võimekus

Näidispäring

Vastusekatkend

Nõutav dokumendikontekst

1. Üksuse identiteet

Kui palju kulutas Northlake aktsiate tagasiostmisele?

Ettevõte ostis tagasi aktsiaid 12,8 miljardi dollari väärtuses.

Sissejuhatus määratleb Northlake’i kui „ettevõtte“. Sarnane Southlake’i aruanne ei ole asjakohane.

2. Periood või versioon

Milline kassett sobib M40 redaktsioonile B?

Paigaldage kassett KC-42.

Kohaldatavuse jaotis ütleb, et need juhised hõlmavad B-redaktsiooni, mitte C-redaktsiooni.

3. Definitsioonid ja aliased

Milline oli 15 mg grupi ärajätumäär?

Zeta ärajätumäär oli 12,7%.

Aruanne määratleb Zeta kui 15 mg rühma. Ilma selle määratluseta ei tuvasta katkend soovitud rühma.

4. Tabeli struktuur

Milline on Max mudeli aku mahutavus?

Tüüpiline mahutavus: 4250 | 4700 | 5150.

Tabeli päis määratleb Mini | Base | Max, mõõdetuna mAh-des. Vastus on seega 5150 mAh.

5. Tingimused ja erandid

Kui pikk on akude garantii ärikasutusel?

Akude garantii kestus on 18 kuud.

Jaotise sissejuhatus piirab selle katvuse äripindade paigaldustega; kodumajapidamiste paigaldustel kehtib teine garantii.

6. Viited ja asesõnad

Millal sai Marast aselinnapea?

Ta astus ametisse 2021. aastal.

Eelnev jutustus teeb selgeks, et „ta“ viitab Marale, mitte Elinile, keda samuti käsitletakse.

7. Loendi järjekord ja asukoht

Milline laul avas lisalood?

14. Lantern Road.

Märkus mujal ütleb, et laulud 14–16 moodustasid lisalood. Lugu 14 on seega selle avalaul.

8. Jaotise ulatus

Millist objektiivi kasutati filmi operaatoritöös?

Läbivalt kasutati 35 mm fiksseeritud fookuskaugusega objektiivi.

See lõik kuulub jaotisse „Põhifotograafia“, mitte eraldiseisvasse avalikustamisfotosid käsitlevasse jaotisse.

9. Kõneleja omistamine

Millist taasavamise kuupäeva linnapea lubas?

Avame uuesti 12. juunil.

Transkriptsioon tuvastab kõnelejana linnapea. Samad sõnad töövõtja suust ei kinnitaks linnapea lubadust.

10. Muudatused aja jooksul

Milline etteteatamistähtaeg kehtis pärast maikuu muudatust?

Etteteatamistähtaeg on nüüd 45 päeva.

Muudatuste ajalugu näitab, et see muudatus jõustus mais, asendades varasema 30 päeva reegli.

11. Põhjuslikud seosed

Miks lääne pump peatus?

Seiskumise põhjustas see rike.

Juurdlus tuvastab „selle rike“ lääne pumba kinnikiilunud laagrina ja eristab seda mitteseotud sisselaskeava ummistusest.

12. Piltlik või keeltevaheline tähendus

Piltlik:

Mida sümboliseerib luuletuses „talvetuba“?

Keeltevaheline:

Millise komponendi käsib prantsuskeelne juhend tehnikul eemaldada?

Piltlik:

See tähistab pagulust, mitte füüsilist ruumi.

Keeltevaheline:

Retirez le capot. (Eemaldage kate.)

Piltlik:

Kommentaar tuvastab „selle“ kui luuletuse korduva pildi „talvetuba“.

Keeltevaheline:

Juhendi sõnastik täpsustab, et „capot“ tähendab mootori kaitsekatet, mitte transpordikatet.

Dokumendid ja päringud

Testitavad päringud, dokumendid ja võimekused on inspireeritud vestlustest turbopuffersi klientidega.

Üheks näiteks on kinnisvarahaldusettevõtte otsinguvajadused. Nendel ettevõtetel on sadu, mõnikord tuhandeid rendilepinguid, mis erinevad ainult üürnike nimede, kuupäevade ja mõne muu põhidetaili poolest. Selle andmestiku tavaline päring võib olla „millal lõpeb 5 park avenue rendileping ja milline on praegune üür?“. Rendilepingud võivad samuti olla pikad ning kriitilised eristavad komponendid, mis kinnitaksid õige dokumendi kättesaamist (nagu kuupäev, aadress, üürniku nimi jne), võivad sageli asuda väga kaugel igakuist rendisummat sisaldavast peamisest vastuselausest. Praktikas võivad identsed laused, näiteks „Igakuine üür on $X,XXX.“, esineda paljudes korpuse dokumentides.

Hea kontekstuaalse manuse mudel peaks kasutama konteksti kogu dokumendist, et tuvastada õige dokument ning otsida välja nii vastus kui ka seda toetavad laused. See võimaldab kasutajal või otsinguagendil vastuse kiiresti kontrollida ja kinnitada, et see pärineb õigest dokumendist.

Vastuse ja tõendusmaterjali sildid

Iga päringu jaoks märgistame siirdokumendis „vastuse“ ja „tõendusmaterjali“ laused. Mudel läbib meie „lugeja piisavuse“ testi, kui see toob välja vastuselause koos vähemalt ühe lausega igast tõendirühmast. Need laused pakuvad lugejale piisavalt konteksti, et vastust toetavate tõenditega kontrollida.

Kui kontekstuaalse manuse mudelid teevad seda hästi, saavad nad märkimisväärselt vähendada tokenite arvu, mida otsinguagendid peavad läbi vaatama, samuti muuta inimesel palju lihtsamaks kiiresti kinnitada, et nad on leidnud oma algsele päringule õige vastuse ilma tervet dokumenti lugemata.

Iga tõendirühm tuleb taastada, kuid rühma mis tahes alternatiiv on selle taastamiseks piisav. Nendes pikkades dokumentides on tavaline näha sama fakti mitmes kohas. Vaid ühe lause toomine igast tõendirühmast täidab lugeja piisavuse kriteeriumid ja aktsepteeritakse seetõttu täiusliku tõendite meeldetuletusena.

Mõõdikud

Iga dokument jagatakse lauseteks ja kõigi mudelite jaoks kasutatakse samu piire. Mittekontekstuaalsete manusemudelite puhul testitakse kahte tingimust: ühte, kus iga lause manustatakse iseseisvalt, ja teist, kus terve dokument manustatakse ühe katkendina.

Kasutame lausetaseme tingimust vastuste ja tõendite meeldetuletamise mõõtmiseks. See testib, kas mittekontekstuaalne mudel suudab tuvastada õige vastuse ja toetavad tõendid, kui iga lause manustatakse ilma juurdepääsuta ümbritsevale dokumendile. See on teadlikult keeruline. Paljude päringute puhul puuduvad vastuselausel endal üksikasjad, mis on vajalikud selle eristamiseks sarnastest lausetest mujal korpuses.

Kasutame dokumenditaseme tingimust dokumendi meeldetuletuse lähtetasemena. See testib, kas peeneteralised lausemanused pakuvad piisavalt otsingukasu, et õigustada nende täiendavat salvestuskulupõhist kulu võrreldes ühe vektori salvestamisega dokumendi kohta. Lausepõhine indeks loob oluliselt rohkem vektoreid kui dokumentidepõhine indeks, seega peaks see selle kulu õigustamiseks ületama ühe vektori dokumendi kohta lähtetaseme.

Kõikides hindamistes kasutatakse ammendavat järjestust kõigi 2 458 072 katkendi suhtes. Mudelitevahelised erinevused kajastavad seega esitusi, mitte indeksi konfiguratsiooni. Keskendume kolmele põhimõõdikule:

Document@K on määratletud kui:

Document@K=1[rank⁡(d∗)≤K]\text{Document@K}=1[\operatorname{rank}(d^{*})\le K]

kus d∗d^{*} on kõrgeima reitinguga dokument alal DqD_q.

Answer@K on määratletud kui:

Answer@K=1[Aq∩CK(q)≠∅]\text{Answer@K}=1[A_q\cap C_K(q)\ne\varnothing]

kus CK(q)C_K(q) on parimad KK katkendid kogu korpuses ja AqA_{q} on aktsepteeritud vastusekatkendite hulk.

Evidence Recall@K mõõdetakse d∗d^{*} raames järgmiselt: Reastage d∗d^{*} laused sarnasuse alusel, eemaldage kõrgeima reitinguga vastuselause ja olgu RK(q)R_K(q) ülemised KK, mis jäävad järele. Tõendirühmade Gq={g1,…,gm}G_q=\{g_1,\ldots,g_m\} puhul loetakse rühm gjg_j taastatuks, kui mõni alternatiiv E∈gjE\in g_j rahuldab tingimust E⊆RK(q)E\subseteq R_K(q), ja

EvidenceRecall@K=1[rank⁡(d∗)≤10]⋅1m∑j=1m1[gj recovered].\text{EvidenceRecall@K}=1[\operatorname{rank}(d^{*})\le10]\cdot\frac{1}{m}\sum_{j=1}^{m}1[g_j\ \text{recovered}].

Document@K küsib, kas kontekstualiseerimine võimaldab õigel dokumendil edestada oma sõsardokumente ja segajaid, mis jagavad selle sõnavara.

Answer@K küsib, kas vastuselause ise reastub tippkatkendite hulka.

Evidence Recall@K küsib, kui suur osa toetavast kontekstist taastatakse õige dokumendi K parima katkendi hulgast pärast kõrgeima reitinguga vastusekatkendi välistamist. Vastuse eemaldamine hoiab ära tõendite meeldetuletuse topeltarvestamise selle üle, mida Answer@K juba mõõdab, ning jätab toetava konteksti jaoks kõik KK kohad. Nõue, et kulddokument peab olema 10 parima hangitud dokumendi hulgas, tähendab, et ükski mudel ei saa tõendite eest krediidid dokumendi eest, mida see poleks pinnale toonud. Samuti raporteerime mõõdikut All-Evidence@K, mis on nende päringute osa, mille puhul iga rühm taastati.

Koos toovad need mõõdikud esile väljakutsed, millega kontekstuaalsed manusmudelid silmitsi seisavad: õige dokumendi leidmine, õige vastuse leidmine ja minimaalse konteksti taastamine, mis näitab, miks vastus on õige.

Joonis 3 illustreerib mõõdikuid kinnisvarahalduse näite varal.

Joonis 3: Context-bench-i mõõdikud, mida on illustreeritud rendipäringu näitel. Document@K testib õige dokumendi otsingut; Answer@K testib selle vastusekatkendi otsingut; Evidence Recall@K mõõdab toetavate tõendirühmade taastamist siirdokumendis. Selles näites nõuab üüri kontrollimine nii aadressi kui ka rendiaasta tõendeid. Tõendite meeldetuletus välistab parima vastusekatkendi ja nõuab siirdokumendi jõudmist 10 parima hulka.

Hindamistulemused

Hindame oma mudelit kontekstuaalsete ja mittekontekstuaalsete manusemudelite suhtes neljal rindel.

Meie kontekstuaalsed lähtetasemed on pplx-embed-context-v1-4B ja voyage-context-4. Meie mittekontekstuaalsed lähtetasemed on voyage-4-large ja NVIDIA Nemotron-3-Embed-8B-BF16, mis kodeerivad katkendid iseseisvalt. Lähtetasemete komplekt varieerub vastavalt katsele, nagu on näidatud igal joonisel.

Alustame context-bench-ist, mis testib otseselt selle töö aluseks olevaid võimekusi, ja raporteerime seejärel tulemused ConTEB-il, mis on kontekstuaalsete manuste standardne avalik võrdlustest. Tagamaks, et need võidud ei tule üldise otsingukvaliteedi arvelt, hindame ka avalikest andmestikest ehitatud domeenipõhiseid dokumendi- ja katkendiotsingu võrdlusteste. Lõpuks uurime kahte juurutamise jaoks praktilist omadust: otsingukvaliteet versus salvestuskulud vektori kohta ning tundlikkus indekseerimise ajal kasutatava katkendi suuruse suhtes. Kõik hindamised kodeerivad kuni 32 768 tokeni pikkuseid dokumente ühe käiguga.

Context-bench

Nagu on näidatud sissejuhatuse joonisel 1, juhib meie eelvaade Answer@K ja Evidence Recall@K tulemusi igal raporteeritud piiril, samuti All-Evidence@10 arvestuses. K = 10 juures saavutab see 45,5% vastuse meeldetuletuse, 40,6% tõendite meeldetuletuse ja 31,1% kõigi tõendite meeldetuletuse. Samuti on see esikohal Document@1 ja Document@10 arvestuses, ulatudes vastavalt 15,2% ja 61,6%-ni. K = 10 juures ületab meie eelvaade mudelit voyage-context-4 vastuste meeldetuletuses 14,4 protsendipunkti ja tõendite meeldetuletuses 5,0 punkti võrra.

ConTEB

Meie eelvaate mudel saavutab ConTEB-i näidatud mudelite seas kõrgeima keskmise nDCG@10 joonisel 4. See ei juhi igas ülesandes: pplx-context-v1-4B skoorib NarrativeQA-s kõrgemalt, samas kui Nemotron-3-8B on COVID-QA-s kõrgeimal kohal. Nagu peamised autorid ConTEB-i artiklis samuti välja tõid, sisaldab COVID-QA enamasti päringu-katkendi paare, mis on väga väljavõtlikud ja mida saab rahuldada lihtsa pinnapealse leksikaalse sobitamisega tehnilistel meditsiiniterminitel. Selle tulemusena on konteksti mõistmine selle ülesande jaoks vähem kasulik ja mittekontekstuaalsed mudelid edestavad tavaliselt kontekstuaalseid.

Joonis 4: Ülesandetaseme nDCG@10 ConTEB-il päringu-katkendi seadistuses. Keskmine on kaheksa ülesande kaalustamata keskmine.

Üldine otsingukvaliteet domeenide lõikes

Lisaks kontekstuaalsetele manustele mõeldud võrdlustestidele hindame oma mudeli domeenispetsiifilist jõudlust.

Meie päringu-katkendi (Q2C) komplekt kasutab MTEB-i ülesandeid, nagu LegalBench ja FinanceBench, ning lisaks otsinguülesandeid, mida kureerisime avalikest andmestikest. Igas asjakohases dokumendis märgitakse katkend asjakohaseks, kui see sisaldab täpset vastusevahemikku (kui ülesanne seda pakub), ja muul juhul LLM-i kaudu, mis hindab selle asjakohasust päringu suhtes. Päringu-dokumendi (Q2D) komplekt kasutab samu ülesandeid ja hindab, kas asjakohane dokument leitakse.

Meie mudel saavutab joonisel 5 kõrgeima keskmise skoori katkendiotsingus ning on esirinnas õigus-, tehnika- ja tervishoiudomeenis. See ei ole esikohal igas domeenis: voyage-context-4 skoorib kõrgemalt rahanduse ja mitmekeelse otsingu valdkonnas ning Nemotron-3-8B on kõrgeimal kohal vestluste otsingus. Joonisel 6 toodud dokumendiotsingus skoorib meie mudel keskmiselt veidi alla mudeli voyage-context-4, olles samal ajal tehnilises domeenis esikohal. Lähtetase pplx-context-v1-4B skoorib mõlemas komplektis keskmiselt madalamalt, mis on kooskõlas asjaoluga, et seda on treenitud ainult ConTEB-i treeningkomplektis, näidates, et ühe võrdlustesti kuldkatkenditega seotud järelevalve kandub teistesse domeenidesse üle halvasti.

Joonis 5: Keskmine nDCG@10 päringu-katkendi (Q2C) ülesannetes, rühmitatuna domeeni järgi. Domeeni tulbad on selle domeeni ülesandetaseme skoori kaalustamata keskmised; üldine keskmine on kõigi kuvatud ülesannete kaalustamata keskmine.
Joonis 6: Keskmine otsingu skoor päringu-dokumendi (Q2D) ülesannetes, rühmitatuna domeeni järgi. Iga tulp domeenis on selle ülesandetaseme põhiskooride kaalustamata keskmine; üldine keskmine on kõigi kuvatud ülesannete kaalustamata keskmine.

Otsingukvaliteet ja salvestuskulud

Kontekstuaalse manuse mudel toodab ühe vektori katkendi kohta, nii et meie mudeliga ehitatud indeks sisaldab täpselt sama palju vektoreid kui tavaline sama katkestusstrateegiaga katkenditaseme indeks. Kontekstualiseerimine muudab seda, mida iga vektor kodeerib, mitte seda, mitu vektorit salvestatakse. Salvestusruumi määrab seega iga vektori suurus. Mudel pakub selle vähendamiseks kahte võimalust: manuse kärpimist 2048 mõõtmelt 1024 mõõtmeni ja selle kvantimist int8-vormingusse.

Joonis 7 näitab soodsat kompromissi otsingukvaliteedi ja vektorite salvestusruumi vahel. 1024 mõõtme juures kasutavad meie int8-manused 1 KB vektori kohta, ületades samas kergelt mudeli voyage-context-4 katkendiotsingu skoori 2048 mõõtme juures float32-vormingus, mis kasutab 8 KB vektori kohta. Meie manuse suuruse suurendamine 2048 mõõtmeni tõstab otsingukvaliteeti veelgi 2 KB juures vektori kohta. Need salvestusarvud viitavad ainult vektoritele, mitte ülejäänud indeksile.

Joonis 7: Katkendi otsingukvaliteet (keskmine nDCG@10) salvestusruumi funktsioonina vektori kohta. Pürejooned tähistavad float32-t ja katkendlikud jooned int8-t; sildid annavad manuse mõõtme.

Tundlikkus katkendi suuruse suhtes

Joonis 8 näitab otsingukvaliteedis vaid tagasihoidlikku muutust, kui katkendi suurus suureneb 64-lt 512 tokenile: keskmine skoor langeb 81,0%-lt 79,9%-le, mis on 1,1 protsendipunktine langus. See viitab sellele, et mudel püsib testitud katkendi suuruste juures tõhusana, andes indekseerimistorustikele paindlikkuse dokumentide jagamisel.

Joonis 8: Meie mudeli tundlikkus katkendi suuruse suhtes. Iga punkt on 74 MTEB-i ülesande kaalustamata keskmine nDCG@10, kus dokumendid on indekseeritud antud katkendi suurusega.

Väljalase

turbopuffer hoiavad context-bench-i täielikku korpust, päringuid ja silte privaatsena ning avaldavad esitatud mudelite tulemused. Seda tüüpi avalik võrdlustest kutsub esile otsese treenimise selle päringute ja dokumentide põhjal, mis küllastaks seda järk-järgult ja vähendaks selle väärtust aja jooksul edusammude jälgimisel. Kui soovite, et teie mudelit hinnataks võrdlustestis, võtke ühendust turbopufferiga aadressil contextbench@turbopuffer.com.

Meie mudeli eelvaade on saadaval platvormil Hugging Face ning kõigist selle postituse tulemustest on raporteeritud selle eelvaate põhjal. Töötame selle nimel, et teha mudel kättesaadavaks Perplexity API kaudu ning täiustada veelgi pikkade dokumentide otsingut koos turbopufferiga.

Tsitaat

BibTeX
@online{perplexity2026ContextualEmbeddingBeyondTheGoldPassage,
  author = {{Perplexity} and Sarah Eslami and William Barber and Markus Krimmel and Antoine Chaffin and Bo Wang and Louis Milliken and Jarrod Bryan and Claire Beamer and Jeremy Yang},
  title = {{Contextual embedding beyond the gold passage}},
  date = {2026-09-30},
  url = {https://www.perplexity.ai/hub/blog/contextual-embedding-beyond-the-gold-passage}
}