Embedding modely: Ako AI premieňa slová na čísla
Embedding modely sú tichý základ väčšiny moderných AI systémov — od vyhľadávania a odporúčacích systémov až po RAG pipeline a detekciu duplicít. Bez pochopenia embeddingov zostáva pochopenie AI neúplné.
1. Čo je embedding a prečo na ňom záleží
Počítač nevie pracovať priamo s textom. Slovo „kráľ" pre neho nie je nič — pokiaľ ho nepretransformujeme na čísla. Embedding je práve táto transformácia: mapovanie textu (alebo obrázku, zvuku, grafu) na hustý vektor čísel s pevnou dĺžkou.
Kľúčová vlastnosť embeddingov nie je len to, že sú číselné. Je to to, že zachovávajú sémantiku — podobné veci majú podobné vektory. Klasický príklad z roku 2013 (Word2Vec):
vektor("kráľ") - vektor("muž") + vektor("žena") ≈ vektor("kráľovná")
Toto nie je trik. Je to dôsledok toho, že model sa naučil, v akých kontextoch sa slová objavujú — a tie kontexty nesú sémantický vzťah.
Moderné embedding modely nepracujú len so slovami. Vedia zakódovať:
- celé vety a dokumenty (sentence embeddings)
- obrázky (CLIP a jeho nasledovníci)
- kód (CodeBERT, StarEncoder)
- audio (Whisper features)
- multimodálne vstupy — text + obrázok do jedného priestoru
2. Ako embedding model funguje
Embedding model je neurónová sieť trénovaná tak, aby podobné vstupy mapovala blízko seba v multidimenzionálnom priestore. „Blízko" sa meria kosínusovou podobnosťou alebo Euklidovskou vzdialenosťou.
Architektúra:
Väčšina moderných embedding modelov stavia na Transformer enkóderi (BERT-like). Vstupný text sa tokenizuje, prejde vrstvami self-attention, a výsledný vektor (zvyčajne reprezentácia špeciálneho [CLS] tokenu alebo priemer všetkých tokenov) sa použije ako embedding.
Tréning:
Modely sa neučia embeddingom priamo — učia sa ich nepriamo cez proxy úlohy:
- Contrastive learning: páry podobných a nepodobných textov, model minimalizuje vzdialenosť podobných a maximalizuje nepodobných
- Masked language modeling: predikcia chýbajúcich tokenov (BERT)
- Next sentence prediction a jeho moderné varianty
- Supervised fine-tuning na NLI alebo STS (Semantic Textual Similarity) datasetoch
Výsledkom je priestor, kde vzdialenosť medzi vektormi zodpovedá sémantickej vzdialenosti medzi textami.
3. Prehľad embedding modelov podľa typu použitia
| Model | Tvorca | Dimenzie | Silná stránka |
|---|---|---|---|
| text-embedding-3-large | OpenAI | 3 072 | Všeobecné, produkčné nasadenie |
| text-embedding-3-small | OpenAI | 1 536 | Rýchlosť, nízke náklady |
| Gemini Embedding | 3 072 | Dlhý kontext, multijazyčnosť | |
| E5-mistral-7b | Microsoft | 4 096 | SOTA na MTEB benchmarku |
| bge-m3 | BAAI | 1 024 | Multijazyčný, hybridné vyhľadávanie |
| nomic-embed-text-v2 | Nomic AI | 768 | Open-source, lokálne nasadenie |
| all-MiniLM-L6-v2 | SBERT | 384 | Ultrarýchly, slabšia kvalita |
MTEB (Massive Text Embedding Benchmark) je štandard, podľa ktorého sa modely porovnávajú naprieč 56 úlohami — klasifikácia, clustering, sémantická podobnosť, vyhľadávanie a ďalšie.
4. Praktické použitie v reálnych systémoch
Embeddingy nie sú akademická kuriozita — sú jadrom mnohých produktov, ktoré používame denne.
RAG pipeline (Retrieval-Augmented Generation): Dokumenty sa pred-zakódujú do embeddingov a uložia do vektorovej databázy (Pinecone, Weaviate, pgvector). Pri otázke sa otázka zakóduje rovnakým modelom, vyhľadajú sa najbližšie dokumenty, a tie sa vložia do kontextu LLM. Kvalita RAG systému závisí priamo od kvality embedding modelu.
Sémantické vyhľadávanie:
Na rozdiel od klasického keyword search embedding vyhľadávanie nájde výsledky aj keď nenastane presná zhoda slov. „Ako opraviť únik pamäte v Go?" nájde dokumenty, ktoré hovoria o goroutine leak alebo memory management — pretože sémanticky sú blízko.
Detekcia duplicít a klastrovanie: E-commerce platforma môže klastrovať produkty podľa sémantickej podobnosti popisov. Zákaznícka podpora môže automaticky identifikovať duplicitné tickety.
Odporúčacie systémy: Spotify, Netflix, Amazon — všetky používajú variácie embedddingov pre obsah aj používateľov. Ak je vektor pesničky blízko vektoru inej pesničky, sú to dobré odporúčania.
Cross-modal retrieval: CLIP a podobné modely mapujú text aj obrázky do jedného priestoru. Výsledok: vyhľadávanie obrázkov textovým dopytom bez tagov — „fotka mesta v daždi v noci" nájde relevantnú fotografiu.
5. Limity, riziká a otvorené otázky
Embeddingy nie sú bezproblémové a ich nasadenie prináša niekoľko reálnych výziev.
Dimenzia prokletia: Sémantický priestor je hustý — ale nie uniformne. Niektoré pojmy sú blízko sebe aj keď nie sú sémanticky príbuzné, pretože zdieľajú kontextové slová. Polysémia (slovo s viacerými významami) je obzvlášť problematická: „jazyk" (reč vs. orgán) dostane jeden vektor, ktorý oba zmysly zmieša.
Zastarávanie embeddingov: Embedding model je zamrznutý v čase trénovania. Nové pojmy, produkty alebo slang po date cutoff model nepozná — alebo ich mapuje nesprávne. Riešením je pravidelné pretrávanie alebo fine-tuning na aktuálnych dátach.
Jazyková nerovnováha: Väčšina modelov je trénovaná prevažne na anglickom texte. Pre slovenčinu sú výsledky horší — menšie trénovacie dáta znamenajú menej presné sémantické vzťahy. Výnimkou sú modely ako bge-m3 a E5 trénované multijazyčne.
Únik citlivých informácií: Embedding modely sa dajú útočiť inverzne — z vektoru sa za určitých podmienok dá rekonštruovať pôvodný text. Pre systémy s citlivými dátami je to bezpečnostné riziko, ktoré si vyžaduje ďalšie opatrenia (šifrovanie, diferenciálna súkromnosť).
Výber modelu záleží: Nie je jeden embedding model pre všetko. Model trénovaný na vedeckých článkoch bude zlý pre právne dokumenty. Fine-tuning na doménovom datasete je v praxi bežnou nevyhnutnosťou.
Zhrnutie: Embedding modely sú fundamentálna infraštruktúra moderného AI — premieňajú neštrukturované dáta na matematický priestor, kde podobnosť je merateľná a vyhľadávanie je sémantické. Každý, kto stavia RAG systém, vektorovú databázu alebo vyhľadávač, pracuje s embeddingmi — vedome alebo nie.