Mis on IBM Granite Embedding 97M Multilingual R2?
IBM Granite-Embedding-97M-Multilingual-R2 on avatud kaaludega tihe kaksikkodeerija, mis teisendab teksti ja koodi vektor-esitusteks ehk embedding'uteks. Embedding on tähenduse fikseeritud pikkusega arvuline esitus. Kui rakendus teisendab otsingupäringu ja dokumendikogu embedding'uteks, saab ta võrrelda saadud vektoreid – tavaliselt koosinussarnasuse abil –, et leida sisuliselt seotud lõike isegi siis, kui neis ei kasutata samu sõnu.
Seetõttu toimib mudel otsingukomponendina, mitte vestlusrobotina. See ei genereeri loomulikus keeles vastuseid, pilte, heli ega videot. Tüüpiline otsinguga täiendatud genereerimise (RAG) süsteem võiks kasutada Granite Embedding 97M R2 mudelit asjakohaste lõikude leidmiseks ja saata need seejärel eraldi generatiivsele mudelile, mis kirjutab lõpliku vastuse.
Mudelit pakub IBM Granite Embeddingu mudeliperekonna osana. Selle kompaktne suurus peaks vähendama järeldamise kulusid ja latentsust võrreldes suuremate embedding'u-mudelitega, säilitades samal ajal mitmekeelsuse ja koodiotsingu võimekuse.
Peamised näitajad lühidalt
| Spetsifikatsioon | Üksikasjad |
|---|---|
| Pakkuja | IBM |
| Mudeli tüüp | Avatud kaaludega mitmekeelne embedding'u-mudel |
| Parameetrid | Ligikaudu 97 miljonit |
| Embedding'u suurus | 384 dimensiooni |
| Sisendi maksimaalne pikkus | 32 768 tokenit |
| Keelte katvus | Aluseks oleva kodeerija kaudu rohkem kui 200 keelt; täiustatud otsingutugi 52 keelele |
| Kooditugi | Täiustatud otsingutreening Pythonile, Gole, Javale, JavaScriptile, PHP-le, Rubyle, SQL-ile, C-le ja C++-ile |
| Liitsents | Apache 2.0 |
| Väljund | 384-mõõtmelised embedding'ud |
| Majutuse hind | Allalaaditava mudeli pakkuja-poolset tokenipõhist hinda ei ole avaldatud |
Milleks see on loodud?
Mudeli peamine eesmärk on semantiline otsing: teksti või koodi leidmine tähenduse, mitte täpsete märksõnade põhjal. 384-mõõtmeline väljund on piisavalt väike, et vektorindekseid oleks suhteliselt soodne hallata. See on kasulik rakendustes, mis peavad salvestama ja otsima suurest dokumendikogust.
Toetatud kasutusjuhtumid hõlmavad semantilist saidiotsingut, ettevõtte dokumentide otsingut, küsimustele vastamise töövooge, soovitusi ja sarnasuse võrdlemist, mitmekeelseid teadmistebaase ning RAG-i. Mudelit saab kasutada ka pikkade dokumentide otsinguks, sest selle maksimaalne järjestuse pikkus on 32 768 tokenit – see on oluliselt rohkem kui varasema Granite'i mitmekeelse embedding'u-versiooni 512-tokenine piirang, mida kirjeldatakse esitatud uuringus.
Teine konkreetne fookus on koodiotsing. Arendaja võiks teisendada loomulikus keeles päringu, näiteks „leia JSON Web Tokenit valideeriv kood”, embedding'uks ja võrrelda seda lähtefailide, funktsioonide või dokumentatsiooni embedding'utega. Täiustatud kooditreening hõlmab mitut levinud programmeerimiskeelt, kuid mudel on endiselt otsingumudel, mitte koodigeneratsiooni süsteem.
Keeled, sisendid ja konteksti piirang
Aluseks olev mitmekeelne kodeerija toetab rohkem kui 200 keelt. IBM-i sõnul on täiustatud otsingutreening tehtud 52 nimetatud keele jaoks, hõlmates peamisi Euroopa, Aasia, Lähis-Ida ja Aafrika keeli. Näidetena võib tuua inglise, hispaania, prantsuse, saksa, araabia, hiina, jaapani, korea, hindi, vene, türgi, ukraina ja vietnami keele.
Laiema toe ja täiustatud toe eristamine on oluline. Mudel võib küll võtta vastu teksti paljudes keeltes, kuid otsingukvaliteet ei pruugi nende vahel olla ühtlane. Tootmiskeskkonna otsingu jaoks on täiustatud toe hulka kuuluvad keeled parem valik, samas kui väiksema ressursiga keeled võivad sõltuda rohkem keeltevahelisest ülekandest. Neid tuleks hinnata esinduslike päringute ja dokumentidega.
Iga sisend võib sisaldada kuni 32 768 tokenit. Pikemad sisendid kärbitakse, mistõttu peaksid suuri dokumente töötlevad rakendused siiski kaaluma mõistlikku tükeldamist. Kogu pika dokumendi embedding'uks teisendamine võib muuta otsingu ebatäpsemaks, kui dokument sisaldab mitut omavahel mitteseotud teemat. Sisu jagamine tähenduslikeks jaotisteks võib aidata indeksil tagastada sihitumaid lõike, samal ajal kui pikk kontekstilimiit pakub paindlikkust ebatavaliselt pikkade lõikude või dokumentide korral.
Arhitektuur ja juurutusvõimalused
Granite-Embedding-97M-Multilingual-R2 kasutab ModernBERT-il põhinevat kodeerijat, millel on 12 transformer-kihti, 12 tähelepanupead, 180 000 tokenist koosnev sõnavara, SiLU-aktivatsioonid, pöörlevad positsioonembedding'ud ja vahelduva pikkusega tähelepanuaknad. IBM lõi kompaktse mudeli suurema Granite-Embedding-311M-Multilingual-R2 mudeli kihtide kärpimise ja sõnavara valiku abil ning rakendas seejärel teadmiste destilleerimist ja kontrastiivset peenhäälestust.
Need valikud muudavad 97M mudeli sobivaks juurutusteks, kus on oluline läbilaskevõime, mälukasutus ja töökorralduse lihtsus. Kaalud on avaldatud Apache 2.0 litsentsi alusel, mistõttu sobib mudel selle litsentsi tingimusi järgides nii teadus- kui ka ärikasutuseks.
IBM dokumenteerib juurutusviise Sentence Transformersi ja Hugging Face Transformersi abil. ONNX-i ja OpenVINO variandid on ONNX Runtime'i kaudu saadaval protsessorite, graafikaprotsessorite ja muu ühilduva riistvara jaoks. Mudelit saab teenindada ka vLLM-iga, kasutades embedding'u ülesannet. Esitatud uuringu järgi ei toeta Ollama praegu selle mudeli ModernBERT-i arhitektuuri, mistõttu ei tohiks Ollamat käsitleda kontrollitud juurutusviisina.
Jõudlus ning kiiruse ja täpsuse kompromissid
IBM teatab Multilingual MTEB Retrievali etalonis tulemuseks 60,3 ning avaldatud etaloni konfiguratsioonis ligikaudu 2534 dokumenti sekundis. Need on pakkuja teatatud tulemused ja tegelik läbilaskevõime sõltub riistvarast, paketisuurusest, järjestuste pikkusest, tarkvaraversioonidest ning indekseerimise või eeltöötluse lisakulust.
Mudeli peamine praktiline kompromiss on väiksem parameetrite arv. Võrreldes suurema embedding'u-mudeliga, nagu Granite-Embedding-311M-Multilingual-R2, on 97M versioon loodud kasutama vähem ressursse ja pakkuma suuremat läbilaskevõimet, kuid see ei ole igas keeles ega valdkonnas maksimaalse otsingutäpsuse saavutamiseks parim valik. Sobivaim variant sõltub vastamata jäänud tulemuste hinnast, olemasolevast riistvarast ning korpuse suurusest ja keelelisest koosseisust.
384-mõõtmeline väljund vähendab samuti vektorite salvestamise ja sarnasuse otsingu kulusid võrreldes mudelitega, mis toodavad palju suuremaid vektoreid. Väiksemad vektorid ja väiksem kodeerija võivad aga tähendada kompromissi täpsuses. Meeskonnad peaksid mudelit katsetama oma otsingupäringute, dokumenditüüpide, keelte ja asjakohasushinnangutega, mitte käsitlema avaldatud etaloni garantiina.
Võimekused ja piirangud
- Embedding'u väljund: Mudel tagastab teksti ja koodi jaoks 384-mõõtmelised vektorid.
- Mitmekeelne otsing: Kodeerija kaudu toetab see rohkem kui 200 keelt; täiustatud otsingutreening on tehtud 52 keele jaoks.
- Pikad sisendid: Mudel võtab vastu kuni 32 768 tokenit; seda piiri ületavad sisendid kärbitakse.
- Koodiotsing: Mudelil on spetsiaalne otsingutreening Pythonile, Gole, Javale, JavaScriptile, PHP-le, Rubyle, SQL-ile, C-le ja C++-ile.
- Generatiivne arutlemine: See ei paku vestluslikku arutlemist ega loomulikus keeles vastuste genereerimist. Selle rolli jaoks on vaja eraldi generatiivset mudelit.
- Tööriistade kasutamine: Dokumenteeritud sisseehitatud funktsioonikutsete ega tööriistakasutuse võimekust ei ole. Rakendus võib kasutada selle vektoreid suuremas otsingu- või agendisüsteemis, kuid orkestreerimine tuleb eraldi rakendada.
- Modaalsused: Esitatud spetsifikatsioonides on sisenditena nimetatud tekst ja kood ning väljundina embedding. Kontrollitud pildi-, heli- või videosisendi ega -väljundi võimekust ei ole.
- Peenhäälestus ja majutatud funktsioonid: Esitatud uuring ei kinnita selle allalaaditava mudeli jaoks pakkuja majutatud peenhäälestusteenust, voogedastusrežiimi, partiiliidest, vahemällu salvestamise funktsiooni ega hallatavat tokenipõhist lõpp-punkti.
Hinnad ja kasutuskulud
IBM ei avalda esitatud uuringu kohaselt Granite-Embedding-97M-Multilingual-R2 jaoks pakkuja majutatud tokenipõhist hinda. Tegemist on allalaaditava avatud kaaludega mudeliga, mistõttu ei ole mudeli enda kohta võimalik teatada kontrollitud tavapärast kuu- ega päringupõhist hinda.
Selle kasutamisega kaasnevad siiski taristukulud. Ise majutatud juurutus võib nõuda protsessori- või graafikaprotsessoriressurssi, salvestusruumi, vektorandmebaasiressursse, seiret ja arendustööd. ONNX, OpenVINO ja kompaktne 97M parameetri suurus võivad aidata organisatsioonidel kasutada soodsamat riistvara, kuid tegelik kulu sõltub läbilaskevõime nõuetest, paketisuurustest, järjestuste pikkusest, saadavuse sihttasemest ja valitud järeldusplatvormist. Kui mudelit kasutatakse kolmanda osapoole teenuse kaudu, rakendub selle teenuse hind, mitte IBM-i avaldatud mudelihind.
Millal seda mudelit valida?
Vali Granite-Embedding-97M-Multilingual-R2, kui projekt vajab suhteliselt väikest mitmekeelset embedding'u-mudelit, mida saab juurutada Apache 2.0 litsentsi alusel. See sobib eriti hästi siis, kui rakendus vajab:
- Väikese latentsusega semantilist otsingut kulutundlikus taristus.
- Mitmekeelset otsingut keeltes, mis kuuluvad mudeli täiustatud toe hulka.
- RAG-otsingut ettevõtte dokumentide, juhendite, eeskirjade või teadmistebaaside jaoks.
- Pikemate sisendite töötlemist kui tavapäraste 512-tokeniste embedding'u-mudelite puhul.
- Keeltevahelist otsingut, kus päring ja asjakohane dokument võivad olla eri keeltes.
- Teksti tähendusel põhinevat sarnasuse võrdlemist või soovitusi.
- Lähtekoodi ja loomulikus keeles programmeerimisdokumentatsiooni otsingut.
- Ise majutatud, protsessori-, graafikaprotsessori-, ONNX-i või OpenVINO-põhist juurutust, mitte sõltuvust tasulisest majutatud lõpp-punktist.
See sobib vähem olukordadesse, kus rakendus vajab võimalikult suurt otsingutäpsust ja suudab endale lubada suuremat mudelit, kus ülesanne nõuab genereeritud vastuseid või kus sisend koosneb peamiselt piltidest, helist või videost. Samuti ei asenda see ümberjärjestajat, generatiivset keelemudelit, kõnemudelit ega multimodaalset kodeerijat. Suuremat sõsarmudelit tasub hinnata siis, kui sihtkeelte etalontulemused näitavad, et 97M mudel jätab liiga palju asjakohaseid dokumente leidmata.
Kuidas seda pärisrakenduses hinnata?
Alusta esinduslike päringute ja dokumentidega, mitte ainult üldiste mitmekeelsete etalonidega. Kaasa lühikesed märksõnapäringud, loomulikus keeles küsimused, pikad lõigud, koodipäringud, õigekirjavariandid ja päringud kõigis olulistes keeltes. Mõõda otsingu taastäpsust praktiliste väärtuste juures, näiteks 5, 10 või 20 parima tulemuse seas, ning kontrolli, kas tagastatud lõigud sisaldavad allavoolu rakenduse jaoks vajalikku teavet.
Mõõda ka töökorralduslikku käitumist: embedding'ute töötlemise läbilaskevõimet, mälukasutust, indeksi suurust, päringu latentsust ja jõudlust kavandatud paketisuuruse juures. RAG-i puhul hinda kogu töövoogu, sest veidi kiirem embedder ei pruugi kogu süsteemi parandada, kui latentsuses domineerivad tükeldamine, vektorotsing, ümberjärjestamine või vastuse genereerimine.
Kokkuvõttes tuleks Granite-Embedding-97M-Multilingual-R2 mõista eelkõige kompaktse otsingumootorina. Selle 384-mõõtmeliste vektorite, pikkade sisendite toe, mitmekeelse katvuse, koodiotsingu treeningu ja avatud litsentsi kombinatsioon muudab selle praktiliseks valikuks meeskondadele, kes peavad oluliseks juurutuse tõhusust. Sama oluline on mudeli selge piir: see leiab ja esitab teavet, kuid ei arutle vestluse käigus ega kirjuta lõplikku vastust.

