Mis on text-embedding-3-large?
text-embedding-3-large on OpenAI suure mahutavusega kolmanda põlvkonna tekstimanuste mudel. Manus on arvude loend, mis esindab teksti või koodi semantilist sisu. Sarnase tähendusega tekstid annavad sobiva sarnasuse mõõdiku kasutamisel üldjuhul vektorid, mis paiknevad üksteisele lähedal.
Seetõttu sobib see mudel rakendustele, mis peavad teavet leidma või võrdlema, mitte proosateksti kirjutama. Näiteks saab tugisüsteem teisendada kliendi küsimuse manuseks ja võrrelda seda abikeskuse artiklite manustega. RAG-süsteem (retrieval-augmented generation) saab sama protsessi abil leida asjakohased tekstilõigud, enne kui edastab need vastuse koostamiseks eraldi keelemudelile.
Mudel on saadaval OpenAI Embeddings API kaudu ja mõeldud arendajarakendustele. See avaldati 25. jaanuaril 2024 ning on OpenAI API kataloogis endiselt loetletud aktiivse mudelina.
Mida mudel teeb ja mida mitte
text-embedding-3-large võtab vastu tekstisisendi ja tagastab arvulise manuste vektori. See ei tagasta vestlusteksti, pilte, heli ega videot. Seetõttu tuleks seda käsitleda pigem otsingu-, soovitus- või masinõppe töövoo komponendina kui vestlusrobotina.
| Spetsifikatsioon | Kontrollitud üksikasjad |
|---|---|
| Pakkuja | OpenAI |
| Modeli tüüp | Tekstimanus |
| Sisend | Tekst, sealhulgas koodi esitamiseks kasutatav tekst |
| Väljund | Arvuline manuste vektor |
| Maksimaalne sisend | 8,192 tokenit |
| Vektori vaikimisi pikkus | 3,072 dimensiooni |
| API lõpp-punkt | /v1/embeddings |
| Eraldi tekstiväljund | Ei |
8,192 tokeni piirang kehtib manustamiseks saadetavale sisendile. See ei ole vestluse kontekstiaken ning maksimaalset väljundtokenite seadistust ei ole, sest väljund on genereeritud keele asemel vektor.
Reguleeritavad vektori dimensioonid
Oluline praktiline võimalus on taotleda parameetri dimensions abil lühemaid vektoreid. Vaikimisi sisaldab väljund 3,072 arvu, kuid OpenAI on dokumenteerinud ka sellised konfiguratsioonid nagu 1,024 ja 256 dimensiooni.
Lühemad vektorid võivad vähendada salvestusvajadust, mälukasutust ja vektoriandmebaasi käitamise kulusid. Samuti võivad need muuta sarnasuspäringud tõhusamaks, kui rakendus töötleb suurt dokumendikogu. Kompromiss seisneb selles, et vektori pikkuse vähendamine võib mõne töökoormuse puhul semantilist täpsust vähendada.
Universaalselt õiget dimensioonide arvu ei ole. Tootekataloog, mitmekeelne teadmistebaas ja koodiotsingu süsteem võivad tihendamisele erinevalt reageerida. Meeskonnad peaksid hindama võimalikke dimensioonide arve tüüpiliste päringute ja tegelike edukriteeriumide põhjal, näiteks asjakohaste dokumentide leidmise täielikkuse või klassifitseerimistäpsuse alusel. Dimensioonide seadistus on tehniline kompromiss, mitte automaatne kvaliteediparandus.
Jõudlus ja kvaliteet
OpenAI teatas mudeli avaldamisel keskmiseks MIRACL-i tulemuseks 54,9% ja keskmiseks MTEB-i tulemuseks 64,6%. Need on pakkuja avaldatud käivitamishetke võrdlustulemused, mitte iga andmekogumi või rakenduse puhul kehtivad garantiid. Nende tulemuste põhjal oli text-embedding-3-large sel ajal OpenAI tugevaim manustemudel.
Võrdlustulemusi tuleks käsitleda ühe võrdluspunktina. Tegelik otsingukvaliteet sõltub ka sellest, kuidas dokumendid lõikudeks jaotatakse, kuidas päringud sõnastatakse, millist kaugusmõõdikut kasutatakse, kas vektorid normaliseeritakse, kuidas metaandmete filtreid rakendatakse ning kas lisatakse ümberjärjestamise etapp. Tugevate võrdlustulemustega mudel võib siiski anda halbu otsingutulemusi, kui algdokumendid on halvasti tükeldatud või otsingutöövoogu ei hinnata.
Seetõttu on mudeli praktilist eelist kõige parem hinnata rakendusepõhise testikomplekti abil. Mõõtke, kas leitud tekstilõigud vastavad tegelikult tüüpilistele kasutajaküsimustele, selle asemel et tugineda ainult üldise võrdlustesti tulemusele.
Hinnakujundus ja käitamiskulud
Loetletud hind on 0,13 dollarit 1 miljoni sisendtokeni kohta. Manuste kasutust arvestatakse sisendtokenite alusel. Eraldi väljundtokenite tasu ei ole, sest mudel tagastab genereeritud proosa asemel vektorid.
API hind on kogu kulu ainult üks osa. Vaikimisi 3,072-dimensioonilist väljundit kasutav süsteem peab neid vektoreid ka salvestama ja indekseerima. Suures mahus võivad oluliseks muutuda vektoriandmebaasi salvestus, indekseerimine, varukoopiad ja otsingutaristu. Lühemate vektorite taotlemine võib neid käitamiskulusid vähendada, kuid kontrollida tuleb, ega otsingukvaliteet selle tõttu ei halvene.
OpenAI loetleb mudeli ka Batch API kaudu kättesaadavana. Pakktöötlus võib olla kasulik siis, kui suur dokumendikogu tuleb manustada asünkroonselt, mitte kohe interaktiivse päringu käigus. Siin kasutatud uurimismaterjal ei täpsusta Batch API eraldi hinda, mistõttu ei tohiks standardset loetletud sisendihinda käsitleda taristukulu täieliku hinnanguna.
Toetatud võimalused ja piirangud
text-embedding-3-large toetab teksti ja koodi semantilist esitamist, kuid ei paku generatiivsete keelemudelitega seotud võimalusi.
- Tekstisisend: Toetatud.
- Koodisisend: Toetatud tekstina esitamiseks, otsinguks või klassifitseerimiseks.
- Tekstiväljund: Ei ole toetatud; mudel tagastab vektorid.
- Pildi-, heli- ja videosisend: Ei ole toetatud.
- Pildi-, heli- ja videoväljund: Ei ole toetatud.
- Arutlus: Ei ole arutlusmudel. See ei analüüsi küsimust ega esita järelduste ahelat.
- Vestluse genereerimine: Ei ole toetatud.
- Tööriista- või funktsioonikutsed: Mudeli loomuliku võimalusena ei ole toetatud.
- Veebiotsing: Ei ole sisse ehitatud.
- Voogedastus: Selle mudeli puhul ei ole toetatuna loetletud.
Need piirangud ei takista rakendusel manuseid teiste teenustega kombineerida. Näiteks võib süsteem kasutada text-embedding-3-large'i otsinguks ja edastada seejärel valitud tekstilõigud eraldi generatiivsele mudelile. Sellises lahenduses tegeleb manustemudel sarnasusega ning teine mudel selgituse või vastuse genereerimisega.
Parimad kasutusjuhud
Mudel sobib hästi siis, kui rakendus vajab kvaliteetset semantilist esitust, mitte kirjalikku vastust.
- Semantiline otsing: Leidke dokumente tähenduse põhjal ka siis, kui päringus ja dokumendis kasutatakse erinevaid sõnu.
- RAG ehk otsinguga täiendatud genereerimine: Leidke asjakohased lähteteksti lõigud enne, kui eraldi keelemudel vastuse genereerib.
- Mitmekeelne otsing: Võrrelge dokumente ja päringuid toetatud keeltes.
- Soovitused: Tuvastage seotud artiklid, tooted või dokumendid nende vektorite võrdlemise abil.
- Duplikaatide ja sarnasuse tuvastamine: Leidke kirjed, mis väljendavad sarnaseid ideid hoolimata erinevast sõnastusest.
- Klasterdamine: Rühmitage dokumente või kasutajate loodud sisu semantilise sarnasuse alusel.
- Klassifitseerimine: Kasutage vektoreid kategoriseerimissüsteemide tunnustena.
- Anomaaliate tuvastamine: Tuvastage üksused, mis erinevad tavapärasest semantilisest mustrist ebatavaliselt palju.
- Koodiotsing: Esitage koodi või koodiga seotud teksti sarnasuspõhiseks leidmiseks, eeldusel et ümbritsev rakendus tegeleb programmeerimiskeelepõhise indekseerimise ja hindamisega.
Millal valida text-embedding-3-large
Valige text-embedding-3-large siis, kui otsingukvaliteet on olulisem kui võimalikult väikese vektori kasutamine ning rakendus saab kasu suure mahutavusega manusest, mille väljundi suurust saab reguleerida. See sobib eriti hästi mitmekeelseks otsinguks, suurte teadmistebaaside, RAG-töövoogude ja sarnasussüsteemide jaoks, kus vaikimisi 3,072-dimensiooniline esitus õigustab oma salvestus- ja indekseerimiskulu.
Mudel on mõistlik valik ka siis, kui rakendus vajab paindlikkust. Arendajad võivad alustada vaikimisi dimensioonide arvust ja katsetada hiljem lühemate vektoritega, ilma et peaksid üle minema täiesti teisele mudeliperekonnale. Nii on võimalik sama API mudeli abil tasakaalustada kvaliteeti, latentsust ja taristukulu.
Väiksem või vähem võimekas manustemudel võib olla sobivam siis, kui salvestus- ja otsingukulu mõjutavad lahenduse ülesehitust kõige rohkem, korpus on väike ja lihtne või testid näitavad, et lühem vektor tagab piisava leidmise täielikkuse. Seevastu vestlus- või arutlusmudel on sobivam siis, kui süsteem peab tulemusi selgitama, juhiseid järgima, tööriistu kasutama või lõpliku vastuse genereerima. text-embedding-3-large peaks tavaliselt täitma otsingukihi rolli, mitte neid mudeleid asendama.
Praktilised kujunduspõhimõtted
Manuste kvaliteet sõltub mudelile saadetavast tekstist. Enne dokumentide saatmist otsustage, kui suur peaks iga lõik olema, kas kaasata pealkirjad ja metaandmed ning kuidas säilitada piisavalt ümbritsevat konteksti, et leitud tekstilõik oleks kasulik. 8,192 tokeni sisendipiirang on ühe manustamispäringu maksimum, mitte soovitus paigutada kogu suur dokument ühte vektorisse.
Otsingukvaliteeti tuleks hinnata ka kogu töövoo tasandil. Võrrelge tegelike kasutajapäringute puhul leitud tulemusi, testige metaandmete filtreerimist, uurige sünonüümide või mitmekeelse sõnastusega seotud tõrkeid ning tehke kindlaks, kas vaja on ümberjärjestamist. Lühemate vektorite kasutamisel võrrelge neid samas hindamiskogumis otse vaikimisi 3,072-dimensiooniliste vektoritega.
Kuna mudel ei tagasta koos vektoriga selgitust, peaksid rakendused säilitama iga manuse juures dokumendi identifikaatorid ja lähteallika metaandmed. See võimaldab süsteemil näidata tulemuse päritolu ning eraldi vastusemudelil leitud sisu turvaliselt kasutada.
Kokkuvõte
text-embedding-3-large on OpenAI spetsialiseeritud mudel, mis teisendab teksti ja koodi otsitavateks arvulisteks esitusteks. Selle peamised eripärad on vaikimisi 3,072-dimensiooniline väljund, kuni 8,192 sisendtokeni tugi, reguleeritavad vektori dimensioonid ja loetletud hind 0,13 dollarit 1 miljoni sisendtokeni kohta. Mudel on kõige tugevam rakenduse semantilise otsingu- või sarnasuskihina, mitte iseseisva vestlussüsteemina.
Selle peamine kompromiss on mahutavuse ja käitamiskulu vaheline tasakaal: vaikimisi vektorid võivad toetada kvaliteetset otsingut, kuid vajavad lühemate esitustega võrreldes rohkem salvestus- ja indekseerimisressursse. Meeskonnad peaksid dimensioonide seadistuse, tükeldamisstrateegia ja ümbritseva otsingutöövoo valima rakendusepõhise hindamise põhjal.

