DI kūrimo terminai

Embedding (vektorinis įterpinys)

Dar vadinama: embeddings, vektorinis įterpinys, teksto vektorius, vector embeddings, įterpinys, embedding modelis

Embedding (vektorinis įterpinys) – tai teksto pavertimas skaičių vektoriumi, kuriame panašios prasmės tekstai yra arti vienas kito. Jis leidžia ieškoti pagal prasmę, o ne pagal žodžius, ir yra RAG, semantinės paieškos bei rekomendacijų pagrindas.

Atnaujinta 2026 m. spalio 13 d.

Kas yra Embedding (vektorinis įterpinys)

Svarbiausia trumpai
  • OpenAI text-embedding-3-small grąžina 1 536, text-embedding-3-large – 3 072 skaičių vektorių; abu priima iki 8 192 žetonų ir leidžia vektorių trumpinti.
  • Anthropic savo embedding modelio neturi ir dokumentacijoje rekomenduoja Voyage AI modelius, kurių voyage-4 šeima palaiko daug kalbų ir 32 000 žetonų įvestį.
  • Mūsų 2026-10-13 bandyme lietuviškam klausimui text-embedding-3-small sinonimais perrašytą atsakymą įvertino 0,335, o nesusijusį tekstą su tais pačiais žodžiais – 0,546.
  • Tame pačiame bandyme text-embedding-3-large abu teisingus lietuviškus atsakymus iškėlė į viršų (0,727 ir 0,666).
  • 2 000 prekių katalogo (5 mln. lietuviškų simbolių) indeksavimas su text-embedding-3-small kainuoja apie 0,04 €, su text-embedding-3-large – apie 0,28 €.

Embedding (vektorinis įterpinys) išsamiai

Lietuviško klausimo panašumas su dokumentais pagal du embedding modelius Klausimas: „Kada grąžinsite pinigus už grąžintą prekę?“ Kosinusinis panašumas su 5 dokumentais. Mūsų bandymas 2026-10-13, OpenAI API. text-embedding-3-large (3072)text-embedding-3-small (1536) Pinigai už grąžintas prekes – per 14 d.0.7270.564Lėšų sugrąžinimas – per dvi savaites0.6660.335Grąžinimo forma: atsisiųskite…0.5890.546Siuntas į paštomatus – per 1–2 d.0.4950.292Refunds … within 14 days (EN)0.4050.184 Mažesnis modelis „grąžinimo formą“ (tie patys žodžiai, kita prasmė) įvertino aukščiau nei sinonimais perrašytą teisingą atsakymą; didesnis modelis surikiavo teisingai. Tarpkalbinis atitikmuo – silpniausias.
Mūsų bandymas 2026-10-13: lietuviško klausimo kosinusinis panašumas su penkiais dokumentais pagal OpenAI text-embedding-3-large ir text-embedding-3-small.

Embedding, lietuviškai – vektorinis įterpinys, yra teksto (ar vaizdo) pavertimas skaičių sąrašu – vektoriumi, kuriame panašios prasmės tekstai atsiduria arti vienas kito. Sakiniai „Pinigai už grąžintas prekes pervedami per 14 dienų“ ir „Lėšų sugrąžinimas atliekamas per dvi savaites“ neturi bendrų žodžių, bet jų vektoriai artimi. Būtent tai leidžia kompiuteriui ieškoti pagal prasmę, o ne pagal raides: tai RAG sistemų, semantinės paieškos el. parduotuvėje ir rekomendacijų pagrindas.

Kaip veikia embedding modelis

Embedding modelis – specializuotas neuroninis tinklas, kuris tekstą ne tęsia, kaip LLM, o paverčia fiksuoto ilgio vektoriumi. OpenAI text-embedding-3-small grąžina 1 536 skaičius, text-embedding-3-large – 3 072, Voyage 4 šeimos modeliai – numatytai 1 024. Kiekvienas skaičius atskirai nieko nereiškia; prasmę turi visų skaičių kryptis daugiamatėje erdvėje.

Du vektoriai lyginami kosinusiniu panašumu (angl. cosine similarity): kuo kampas tarp jų mažesnis, tuo reikšmė arčiau 1 ir tuo panašesni tekstai. Paieškos sistema klausimą paverčia vektoriumi ir duomenų bazėje suranda artimiausius dokumentų vektorius. Svarbi taisyklė: klausimai ir dokumentai turi būti paversti tuo pačiu modeliu – skirtingų modelių vektoriai tarpusavyje nepalyginami.

Embedding ir lietuvių kalba: mūsų bandymas

Kad pamatytume, kaip embedding modeliai elgiasi su lietuvių kalba, 2026-10-13 per OpenAI API palyginome klausimą „Kada grąžinsite pinigus už grąžintą prekę?“ su penkiais dokumentais. Rezultatai – diagramoje viršuje ir lentelėje:

DokumentasAr atsako į klausimątext-embedding-3-smalltext-embedding-3-large
„Pinigai už grąžintas prekes pervedami per 14 dienų nuo prekės gavimo.“Taip0,5640,727
„Lėšų sugrąžinimas už atsisakytus daiktus atliekamas per dvi savaites.“ (sinonimai)Taip0,3350,666
„Prekės grąžinimo forma: atsisiųskite ją ir užpildykite prieš grąžindami prekę.“Ne0,5460,589
„Siuntas į paštomatus pristatome per 1–2 darbo dienas.“Ne0,2920,495
„Refunds for returned items are transferred within 14 days…“ (angliškai)Taip0,1840,405

Ką tai rodo. Mažesnis modelis teisingą, bet sinonimais perrašytą atsakymą (0,335) įvertino žemiau nei nesusijusį tekstą su tais pačiais žodžiais „grąžinimo“, „prekę“ (0,546) – vadinasi, lietuviškai jis iš dalies elgiasi kaip žodžių paieška. Didesnis modelis abu teisingus lietuviškus atsakymus iškėlė į viršų. Tarpkalbinė paieška (lietuviškas klausimas – angliškas dokumentas) abiem modeliams buvo silpniausia. Tai vienas bandymas su penkiais dokumentais, ne mokslinis palyginimas, bet išvada praktiška: embedding modelį lietuviškam projektui reikia patikrinti su savo 30–50 tikrų klausimų, o ne rinktis pagal bendrą reitingą.

Kokie embedding modeliai yra 2026 m. spalį

ModelisTiekėjasVektoriaus ilgisDidžiausia įvestisPastabos
text-embedding-3-smallOpenAI1 536 (galima trumpinti)8 192 žetonai~62 500 puslapių už 1 USD, MTEB 62,3 %
text-embedding-3-largeOpenAI3 072 (galima trumpinti)8 192 žetonai~9 615 puslapių už 1 USD, MTEB 64,6 %
voyage-4-large, voyage-4, voyage-4-liteVoyage AI (MongoDB)1 024 (256–2 048)32 000 žetonųDaugiakalbiai; Anthropic rekomenduojamas tiekėjas
voyage-context-4Voyage AI1 024 (256–2 048)120 000 žetonųGabalų vektoriai atsižvelgia į viso dokumento kontekstą
gemini-embedding-2Google128–3 0728 192 žetonaiDaugiau nei 100 kalbų

Anthropic savo embedding modelio neturi – dokumentacijoje nurodo Voyage AI. OpenAI kainą skelbia puslapiais už dolerį; perskaičiavus pagal OpenAI prielaidą apie 800 žetonų puslapiui, text-embedding-3-small kainuoja apie 0,02 USD, o text-embedding-3-large – apie 0,13 USD už 1 mln. žetonų. Kitų tiekėjų kainas žr. jų kainoraščiuose; generatyvinių modelių kainas rodome įrankyje DI modelių API kainos.

Kiek vietos užima vektoriai ir kaip juos saugoti

Vienas 1 536 skaičių vektorius standartiniu 4 baitų formatu užima 6 144 baitus (apie 6 KB), 3 072 skaičių – apie 12 KB. 10 000 dokumentų gabalų su text-embedding-3-small – apie 61 MB, su text-embedding-3-large – apie 123 MB, neskaitant indeksų. Tai mažai, todėl daugumai MVĮ užtenka esamos PostgreSQL duomenų bazės su pgvector plėtiniu – nereikia atskiro brangaus produkto. OpenAI text-embedding-3 modeliai leidžia sutrumpinti vektorių parametru dimensions, nepraradus pagrindinių savybių; taip galima sutaupyti vietos ir paspartinti paiešką, bet kiekvieną sutrumpinimą verta patikrinti su lietuviškais pavyzdžiais.

Kur verslui naudingi embedding vektoriai

  • Semantinė paieška svetainėje. Klientas rašo „neperšlampami batai vaikui“, o paieška randa prekes, kurių aprašyme parašyta „vandeniui atspari avalynė vaikams“.
  • RAG ir pokalbių robotai. Surandamos aktualios taisyklių ir katalogo ištraukos, kurias LLM panaudoja atsakymui.
  • Klasifikavimas be mokymo. Laiškas priskiriamas kategorijai, kurios aprašo vektorius jam artimiausias.
  • Dublikatų paieška. Randami pasikartojantys prekių aprašai, klientų įrašai ar klausimai.
  • Rekomendacijos. „Panašios prekės“ pagal aprašymo prasmę, ne tik pagal kategoriją.

Hibridinė paieška: vektoriai ir žodžiai kartu

Vektorinė paieška gerai randa prasmę, bet silpnai – tikslius dalykus: prekės kodą „AB-1042“, modelio numerį, dydį „42“ ar retą prekės ženklą. Žodžių paieška (pvz., BM25 algoritmas ar duomenų bazės pilno teksto paieška) – atvirkščiai. Hibridinė paieška paleidžia abi ir sujungia rezultatus, dažniausiai pagal abiejų sąrašų pozicijas (angl. reciprocal rank fusion). Lietuvių kalbai žodžių paieškos dalyje verta normalizuoti diakritikus (kad „grazinimas“ rastų „grąžinimas“) ir, jei įmanoma, naudoti žodžių kamienus. Po sujungimo 20–50 kandidatų galima perrikiuoti pertvarkymo modeliu (angl. reranker), kuris klausimą ir dokumentą vertina kartu ir yra tikslesnis nei vien vektorių palyginimas.

Vaizdų ir teksto embedding

Yra ir daugiamodalių embedding modelių, kurie tekstą ir vaizdus perkelia į tą pačią vektorių erdvę. Anthropic dokumentacijoje minimas voyage-multimodal-3.5 modelis su 32 000 žetonų įvestimi. El. parduotuvei tai leidžia ieškoti prekių pagal nuotrauką („rask panašią suknelę“) arba pagal aprašymą rasti tinkamas nuotraukas. Tokiems projektams kokybę taip pat reikia tikrinti su savo katalogu, nes rezultatą stipriai lemia nuotraukų fonas ir kokybė.

Kada perskaičiuoti vektorius

  • Pasikeitus turiniui. Nauja prekė, pakeistas aprašymas ar taisyklės – perskaičiuojamas tik pasikeitęs įrašas, ne visas indeksas.
  • Pakeitus skaidymą. Jei keičiate gabalų dydį ar pridedate antraščių kontekstą, perskaičiuojami visi gabalai.
  • Pakeitus modelį. Visas indeksas kuriamas iš naujo; kol jis kuriamas, paieška turi veikti su senu.
  • Ištrynus duomenis. Kai klientas paprašo ištrinti duomenis, ištrinami ir iš jų sukurti vektoriai.

Embedding ar LLM klasifikavimui: kurį rinktis

Laiškus ar prekes į kategorijas galima skirstyti dviem būdais. Su embedding: kiekvienai kategorijai sudaromas aprašas ar keli pavyzdžiai, o naujas tekstas priskiriamas artimiausiai kategorijai. Tai labai pigu ir greita, bet jautru kategorijų aprašų kokybei ir silpnai tvarkosi su niuansais („grąžinimas“ ir „skundas dėl grąžinimo“). Su LLM: modelis perskaito laišką ir instrukcijas bei pasirenka kategoriją – brangiau, bet lanksčiau ir lengviau paaiškinama. Praktiškai, kai kategorijų daug (šimtai prekių kategorijų), embedding naudojamas kandidatams atrinkti, o LLM – galutiniam pasirinkimui iš 5–10 kandidatų.

Kaip pasirinkti embedding modelį lietuviškam projektui

  1. Surinkite 30–50 tikrų klientų klausimų lietuviškai, įskaitant parašytus be diakritikų ir su klaidomis.
  2. Kiekvienam pažymėkite teisingą dokumentą ar gabalą.
  3. Paverskite klausimus ir dokumentus 2–3 modeliais ir patikrinkite, kaip dažnai teisingas dokumentas patenka į 5 artimiausius.
  4. Palyginkite su žodžių paieška; dažniausiai geriausia – abiejų derinys (hibridinė paieška).
  5. Įvertinkite kainą ir vektoriaus dydį: pigesnis modelis tinka, jei skirtumas jūsų bandyme nedidelis.
  6. Užfiksuokite pasirinktą modelį: pakeitus modelį, visą indeksą teks perskaičiuoti.

Naujus embedding ir kalbos modelius sekame puslapyje Nauji DI modeliai, o semantinės paieškos ir RAG diegimą aprašome paslaugos puslapyje DI integracijos.

Pavyzdys: semantinė paieška 2 000 prekių el. parduotuvei

Situacija: el. parduotuvė su 2 000 prekių nori semantinės paieškos. Kiekvienos prekės pavadinimas, aprašymas ir savybės – vidutiniškai 2 500 simbolių lietuviškai, iš viso 5 mln. simbolių. Per mėnesį svetainėje atliekama 30 000 paieškų po ~40 simbolių. OpenAI text-embedding-3 modeliai naudoja cl100k_base skaidytuvą; mūsų matavimu, jam lietuviškas tekstas – apie 2,1 simbolio žetonui. Kursas – ECB 2026-10-12 1 EUR = 1,1181 USD, be PVM.

DarbasŽetonaitext-embedding-3-smalltext-embedding-3-large
Viso katalogo indeksavimas (vieną kartą)~2,38 mln.~0,04 €~0,28 €
30 000 paieškų per mėnesį~0,57 mln.~0,01 €~0,07 €
Vektorių saugojimas (2 000 × 1 gabalas)–~12 MB~25 MB

Išvada: embedding sąnaudos el. parduotuvei yra centai per mėnesį, todėl rinktis pigesnį modelį vien dėl kainos neverta – mūsų bandyme text-embedding-3-large lietuviškus sinonimus atpažino gerokai geriau. Tikroji kaina – integracija: katalogo eksportas, automatinis perskaičiavimas pasikeitus prekei, paieškos rezultatų sujungimas su filtrais (kaina, dydis, likutis) ir kokybės testai. Jei paieškų skaičius išaugtų dešimt kartų, embedding sąnaudos vis tiek liktų mažesnės nei vienas euras per mėnesį.

Dažniausios klaidos

  1. Indeksuoti dokumentus vienu modeliu, o klausimus versti kitu. Skirtingų modelių vektoriai nepalyginami, paieška grąžins atsitiktinius rezultatus.
  2. Rinktis embedding modelį pagal bendrą anglišką reitingą. Lietuviškiems tekstams modelius reikia patikrinti su savo klausimais.
  3. Pasikliauti vien vektorine paieška. Prekių kodus, modelių pavadinimus ir tikslius skaičius geriau randa žodžių paieška, todėl reikia hibridinio sprendimo.
  4. Pakeisti modelį neperskaičiavus viso indekso. Seni ir nauji vektoriai tarpusavyje nesuderinami.
  5. Versti ilgus dokumentus vienu vektoriumi. Vienas vektorius 10 puslapių dokumentui suvidurkina prasmę – reikia skaidyti į gabalus.
  6. Pirkti specializuotą vektorių duomenų bazę kelioms tūkstančių įrašų. Tokioms apimtims pakanka PostgreSQL su pgvector.
  7. Pamiršti, kad vektoriai gali būti asmens duomenys. Jei vektorius sukurtas iš kliento teksto, jį reikia ištrinti kartu su originalu.

Embedding (vektorinis įterpinys) Lietuvoje

Lietuvių kalbai embedding modeliai yra svarbesni nei anglų: dėl linksnių, priesagų ir sinonimų žodžių paieška dažnai nesutampa su tuo, ką klientas parašė, o klientai dažnai rašo be diakritikų. Didieji daugiakalbiai modeliai (OpenAI, Voyage, Google) lietuvių kalbą palaiko, bet kokybė tarp jų ir tarp tos pačios šeimos dydžių skiriasi – mūsų bandymas tai parodė net su penkiais sakiniais.

Vektoriai, sukurti iš klientų laiškų, užsakymų ar CV, BDAR prasme lieka asmens duomenimis, nes iš jų galima susieti įrašą su asmeniu. Todėl jiems taikomi tie patys saugojimo terminai, prieigos ribojimai ir ištrynimo pagal prašymą reikalavimai kaip originaliems duomenims; priežiūros institucija – Valstybinė duomenų apsaugos inspekcija (VDAI). Jei tekstai vektoriams siunčiami į JAV tiekėjo API, reikia duomenų perdavimo pagrindo; OpenAI siūlo EEE duomenų rezidavimą per eu.api.openai.com.

Susiję terminai

Ką darome šioje srityje
  • Išbandome kelis embedding modelius su jūsų tikrais lietuviškais klausimais ir parenkame tinkamiausią.
  • Įdiegiame semantinę ar hibridinę paiešką el. parduotuvėje ar dokumentų bazėje, naudodami esamą PostgreSQL.
  • Sukonfigūruojame automatinį vektorių perskaičiavimą, kai keičiasi prekės ar dokumentai.
  • Sujungiame vektorių paiešką su filtrais ir RAG pokalbių robotu.
Plačiau apie paslaugą

Dažni klausimai

Kas yra embedding paprastais žodžiais?

Tai teksto „koordinatės“ prasmės erdvėje. Panašios prasmės tekstai gauna artimas koordinates, todėl kompiuteris gali rasti atitikmenis net tada, kai žodžiai skiriasi.

Kuo embedding skiriasi nuo LLM?

LLM generuoja tekstą, o embedding modelis tekstą paverčia skaičių vektoriumi ir nieko negeneruoja. Embedding naudojamas paieškai ir palyginimui, LLM – atsakymui parašyti.

Koks embedding modelis geriausias lietuvių kalbai?

Universalaus atsakymo nėra: reikia išbandyti 2–3 daugiakalbius modelius su 30–50 savo klausimų. Mūsų bandyme OpenAI text-embedding-3-large lietuviškus sinonimus atpažino gerokai geriau nei text-embedding-3-small.

Kiek kainuoja OpenAI embeddings?

OpenAI skelbia apie 62 500 puslapių už 1 USD text-embedding-3-small modeliui ir apie 9 615 puslapių – text-embedding-3-large. Perskaičiavus, tai apie 0,02 ir 0,13 USD už 1 mln. žetonų.

Ar Claude turi embedding modelį?

Ne. Anthropic savo embedding modelio nesiūlo ir dokumentacijoje nurodo Voyage AI modelius, kuriuos galima naudoti kartu su Claude RAG sistemose.

Kur saugoti embedding vektorius?

Vektorių duomenų bazėje. Iki šimtų tūkstančių įrašų daugumai įmonių užtenka PostgreSQL su pgvector plėtiniu; specializuotos vektorių bazės verta svarstyti tik esant labai didelėms apimtims.

Ar embedding vektoriai yra asmens duomenys?

Jei sukurti iš tekstų apie asmenį ir gali būti susieti su juo – taip. Jiems taikomi BDAR saugojimo, prieigos ir ištrynimo reikalavimai kaip ir originaliems duomenims.

Ką reiškia vektoriaus dimensijos?

Tai skaičių kiekis vektoriuje, pvz., 1 536 ar 3 072. Daugiau dimensijų gali tiksliau perteikti prasmę, bet užima daugiau vietos; OpenAI text-embedding-3 modeliai leidžia vektorių sutrumpinti.

Šaltiniai

  1. Vector embeddings – OpenAI
  2. Embeddings – Anthropic
  3. Embeddings – Google AI for Developers
  4. Pricing – Voyage AI
  5. pgvector – pgvector (GitHub)
  6. tiktoken – OpenAI (GitHub)
  7. Data controls in the OpenAI platform – OpenAI
  8. Euro foreign exchange reference rates: US dollar – Europos Centrinis Bankas
Reikia pagalbos su projektu?

Pasiūlymas su kaina ir terminais raštu, prieš pradedant darbus.

Gauti pasiūlymą