Search API: parem ekstraheerimine, dünaamilised võrdlused

Meie Search API katkendite kvaliteeti on optimeeritud kahes mõõtmes: asjakohasus ja suurus.

Septembris avaldasime Perplexity Search API arhitektuuri tehnilise ülevaate ja andsime välja search_evals'i, meie avatud lähtekoodiga hindamisraamistiku otsingu API-de võrdlusuuringuteks agentuursetes töövoogudes. Sellest ajast peale on kõige olulisem investeering tehtud katkendite kvaliteeti, mida on optimeeritud kahes mõõtmes: asjakohasus ja suurus. Õige sisu tagastamine õiges koguses määrab otseselt lõpptulemuse täpsuse ja tokenite tõhususe. Selle saavutamiseks tuli luua uued süsteemid eraldamiseks, ulatuse tasemel märgistamiseks ja hindamiseks, eelkõige ulatuse märgistamise torujuhe, mis tuvastab, millised lähtedokumendi segmendid on antud päringule vastavad.

Katkendite hindamine ulatuse tasemel

Katkendite süstemaatiliseks parandamiseks lõime uue hindamissüsteemi. Antud päringu ja dokumendi jaoks tuvastab süsteem dokumendis olevad vahemikud ja märgistab need vastavalt nende suhtele päringuga: "elulised" vahemikud, mis tuleb katkendisse kaasata, mitmesugused "ebaseotud" vahemikud, mis tuleks välja jätta, duplikaadid ja muud kategooriad. See vahemiku tasemel märgistamine võimaldab meil hinnata katkendite kvaliteeti sellise täpsusega, mis varem polnud võimalik, mõõtes nii seda, mis kaasati õigesti, kui ka seda, mis jäeti õigesti välja.

Praktikas võimaldavad need täiustused luua väiksemaid katkendeid, mis on päringu jaoks asjakohasemad. Meie iseennast täiustav sisu mõistmise torujuhe käsitleb nüüd laiemat valikut struktureeritud andmevorminguid, sealhulgas tabeleid, pesastatud loendeid ja dünaamiliselt renderdatud sisu, mida varasemad reegistikud ei suutnud usaldusväärselt sõeluda.

Need parandused tulenesid meie endi tootmissüsteemidest. Kuna meie sisemine teadus- ja arendustegevus viis katkendite asjakohasuse ja suuruse edasi, näitasid sisesed hinnangud, et väiksemad sisubüžeed andsid pärast mitmeid kvaliteediparandusi tegelikult täpsemaid tulemusi. Tegime oma vaikekonfiguratsioonides mõned muudatused, et kajastada oma leide, vähendades vastuse kasuliku koormuse suurust ja latentsusaega ning pakkudes tulemuse kohta rohkem kasulikku sisu. Arendajate jaoks tähendavad väiksemad ja asjakohasemad katkendid otseselt madalamaid tokeni kulusid ja paremat kontekstihaldust allavoolu LLM-ide jaoks.

SEAL: ajatundliku hankimise võrdlusuuringud

SEAL-i võrdlusuuring testib, kas otsingusüsteem suudab vastata küsimustele, mille õige vastus aja jooksul muutub. Usaldusväärseks vastamiseks on vaja reaalajas indeksi värskust, nutikamat katkendite eraldamist erinevatest pidevalt uuendatavatest andmeallikatest ja sõelumist, mis suudab ajaloolise väärtuse asemel tuvastada praeguse väärtuse.

Kui käivitasime search_evals'i 22. veebruari SEALi väljalase vastu, kasutades Claude Sonnet 4.5, siis Perplexity tulemused kasvasid, samas kui teiste pakkujate tulemused SEAL-Hardis langesid:

Oleme laiendanud oma search_evals'i raamistikku, et lisada SEAL lisaks meie septembri postituses teatatud võrdlusuuringutele. Uuendatud tulemused ja metoodika on saadaval GitHubi uuendatud hoidlas.

Mitme päringu tugi

API toetab nüüd ühes päringus kuni 5 päringut. Tulemused tagastatakse päringute kaupa rühmitatult samas järjekorras, nagu need esitati. See vähendab edasi-tagasi päringute arvu rakenduste jaoks, mis peavad esitama seotud otsingud paralleelselt, näiteks agendid, mis jagavad keerulise küsimuse mitmeks allalaadimise alamülesandeks.

Laiendatud filtreerimine

Lisaks domeenifiltreerimisele (lubatud ja keelatud loend, kuni 20 domeeni) ja värskuse filtreerimisele toetab API nüüd keelefiltreerimist ISO 639-1 koodi järgi ja piirkondlikku otsingut ISO riigikoodi järgi. Neid saab kombineerida tulemuste täpseks piiramiseks, näiteks piirates tulemused ingliskeelsete tulemustega Saksamaa domeenidest.

SDK ja kättesaadavus

Python SDK (pip install perplexityai) pakub nüüd natiivset tuge Search API-le lisaks Agent API-le ja Sonar API-le.

Täielik dokumentatsioon on aadressil docs.perplexity.ai