Keď klient prichádza s požiadavkou „nasaďte nám RAG nad technickou dokumentáciou", prvá debata sa väčšinou stočí k veľkému jazykovému modelu: Claude alebo GPT? Llama alebo Mistral? Lokálne alebo cloud? Embedding model pritom zostáva mimo záujmu — väčšina tímov siahne po OpenAI text-embedding-ada-002, pretože ho videli v prvom quickstarte, alebo po čomkoľvek, čo práve vyskočí v dokumentácii použitého frameworku.
Realita z praxe: embedding model je miesto, kde sa rozhoduje 15–20 % celkovej kvality retrieval pipeline. Zle zvolený model spôsobí, že relevantné dokumenty jednoducho nájdete v top-20 výsledkov, ale nie v top-5 — a LLM odpovie z irelevantného kontextu. Pre slovenský obsah je tento efekt výraznejší ako pre anglický, pretože väčšina populárnych modelov je dominantne trénovaná na EN dátach. Tento článok dáva konkrétny rámec pre výber, vrátane toho, čo funguje a čo nefunguje pri slovenčine.
Čo embedding model robí — a prečo na výbere záleží
Embedding model prevedie text (dokument, otázku, vetu) na vektor — zoznam čísel, kde podobné texty majú geometricky blízke vektory. Retrieval potom hľadá vektory blízke dotazu. Všetko ostatné v RAG pipeline závisí od toho, či „blízko v priestore" skutočne znamená „sémanticky relevantné".
Dve dimenzie, v ktorých sa modely líšia:
Dimenzia vektora (768, 1 024, 3 072, 4 096) — vyššia dimenzia umožňuje zachytiť viac sémantickej informácie, ale zvyšuje pamäťové nároky, cenu ukladania a latenciu similarity search. Moderné Matryoshka modely umožňujú dimenziu znížiť po tréningu (napr. z 3 072 na 768) s minimálnou stratou kvality — to je relevantné pri škálovaní na desiatky miliónov vektorov.
Kontextové okno — koľko tokenov model efektívne „spracuje" pri embedovaní jedného chunku. Starší modely mali efektívne okno okolo 512 tokenov aj pri nominálnom limite 8 192; moderné modely (BGE-M3, Qwen3-Embedding, NV-Embed-v2) zvládajú dlhé dokumenty bez výraznej straty kvality. Pre RAG pipeline s document-aware chunkingom je toto priamo relevantné — ak vaše chunky majú 600–800 tokenov, model s efektívnym oknom 512 tokens ich oreže.
MTEB: orientačná pomôcka, nie dogma
MTEB (Massive Text Embedding Benchmark) je najpoužívanejší benchmark pre embedding modely. Meria výkon na desiatky úloh: retrieval, clustering, classification, semantic similarity. Výsledky sú verejne dostupné na Hugging Face leaderboarde a sú dobrým štartovacím bodom.
Tri obmedzenia, ktoré treba mať na pamäti:
- MTEB je primárne anglický. Multilingual track existuje, ale pokrýva len niektoré jazyky — slovenčina nie je štandardnou MTEB jazykovou cestou. Výsledky na MTEB multilingual sú preto orientačné, nie zárukou slovenského výkonu.
- Benchmark dáta sa líšia od vašich dát. Model s MTEB skóre 70 môže na vašom špecifickom domainovom obsahu (technická dokumentácia, právne texty, servisné manuály) dosiahnuť oveľa horšie výsledky ako model so skóre 65, ktorý bol trénovaný na podobnom obsahu.
- Benchmark skóre nemeria latenciu ani cenu. Model s MTEB 70 a 400 ms latenciou je pre real-time aplikáciu horšia voľba ako model s MTEB 67 a 15 ms.
MTEB je teda dobrá pomôcka na zostavenie shortlistu 3–5 kandidátov. Záverečné rozhodnutie robte na základe testu na vašich vlastných dátach.
Open-weight modely: kedy a prečo
Pre SK/EU firmy je argument pre self-hosted embedding model silnejší ako pre LLM samotnú. Embedding model:
- Beží na bežnom GPU serveri. BGE-M3 zvládne bežný GPU server s latenciou v rade desiatok milisekúnd per request. Nie je to rovnaká HW požiadavka ako pre 70B LLM.
- Žiadne dátové úniky. Dokumenty ostávajú vo vašej infraštruktúre — relevantné pre regulované odvetvia a GDPR compliance.
- Predvídateľná cena. Amortizovaná cena GPU servera je fixná; cloud API cena rastie lineárne s objemom.
- Customizácia. Pri dostatku doménových dát je možné model dotrénovat (fine-tune) na vaše texty — toto sa pri cloud API nedá.
BGE-M3 (BAAI/FlagEmbedding) je v 2026 produkčným štandardom pre open-weight multilingual nasadenia. Kombinuje v jednom prechode tri typy retrieval: dense (sémantický), sparse (keyword-based BM25-style) a multi-vector (ColBERT-style, presnejší). 100+ jazykov vrátane slovenčiny. Kontextové okno 8 192 tokenov. Dimenzia 1 024 (dense). Toto je náš interný default pri EU klientoch s lokálnym nasadením.
Qwen3-Embedding (rodina modelov od Alibaby, vrátane 8B variantu) dosahuje v 2026 najvyššie skóre na MTEB multilingual leaderboarde — okolo 70,58 na Qwen3-Embedding-8B. Flexibilná Matryoshka dimenzia (32–4 096), dlhé kontextové okno 32 768 tokenov. Pre neanglický retrieval je to momentálne najsilnejší open-weight kandidát, ak máte dostatok HW (8B model vyžaduje rádovo 16 GB VRAM pri plnej presnosti, menej pri kvantizácii).
Llama-Embed-Nemotron-8B (NVIDIA) patrí na špičku multilingual MTEB (250+ jazykov, open-weight, zadarmo). Ak máte NVIDIA HW a potrebujete maximálne skóre v open-weight kategórii, je to silný kandidát.
Pre rýchle prototypovanie alebo nízkonákladové nasadenia stačia menšie modely z sentence-transformers rodiny — all-mpnet-base-v2 alebo paraphrase-multilingual-mpnet-base-v2 — ale ich slovenský výkon je výrazne nižší ako BGE-M3.
Cloud API modely: kedy dávajú zmysel
Cloud embedding API (OpenAI, Google, Cohere, Voyage AI) majú zmysel v troch situáciách:
- 1.Nemáte vlastný GPU. Nasadenie nad cloud API je jednoduchšie, bez HW managementu.
- 2.Volania sú prerušované a objem nízky. Pri niekoľko tisíc requestoch za deň sa cloud nevyplatí amortizovať vlastný server.
- 3.Multimodálne požiadavky. Ak embedujete kombináciu textu a obrázkov (napr. katalógy s technickými výkresmi), cloud modely ako Cohere Embed v4 sú v tejto oblasti v predstihu.
OpenAI text-embedding-3-large (3 072 dimenzií, Matryoshka, ~$0,13/1M tokenov) je spoľahlivá, dobre zdokumentovaná voľba pre anglický obsah. Pre slovenský obsah je výkon o niečo nižší ako u multilingual-optimalizovaných modelov.
OpenAI text-embedding-3-small (~$0,02/1M tokenov) je zaujímavý z hľadiska ceny — pre angličtinu ponúka dobrý pomer výkon/cena, ale pre multilingvál odporúčame 3-large alebo prechod na Cohere.
Cohere Embed v4 sa odlišuje dvoma vlastnosťami: kontextové okno 128 000 tokenov (extrémne dlhé dokumenty bez nutnosti chunkingu) a natívna multimodálna podpora (text + obrázky). Cena ~$0,12/1M tokenov. Pre firmy, ktoré embedujú technickú dokumentáciu s obrázkami alebo schémami, je toto relevantná kombinácia.
Gemini Embedding 001 (Google) drží v 2026 jedno z najvyšších skóre na MTEB English (~68), s Matryoshka support od 768 do 3 072 dimenzií. Cena ~$0,004/1K znakov. Pre anglický retrieval je to silná cloud voľba; pre SK obsah opäť platí rovnaká výhrada ako pri OpenAI modeloch.
Slovenčina: čo funguje a čo nie
Slovenčina nie je samostatnou jazykovou cestou v štandardnom MTEB benchmarku. Verifikované SK-špecifické benchmarky pre embedding modely nie sú verejne dostupné. Čo vieme z praxe a z príbuzných benchmarkov (MIRACL, MKQA):
- Modely trénované primárne na angličtine (staršie
ada-002,all-MiniLM) majú pre SK texty výkon výrazne pod svojím EN benchmarkovým skóre. - BGE-M3, Qwen3-Embedding a Llama-Embed-Nemotron pokrývajú slovenčinu ako súčasť multilingual tréningovej sady — ich výkon je blízky výkonu na príbuzných slovanských jazykoch (čeština, poľština), čo z praktického hľadiska funguje.
- Pre SK technickú dokumentáciu (strojárske manuály, elektroprojekty, normy ČSN/STN) sme interné testy robili na BGE-M3 vs OpenAI text-embedding-3-large — BGE-M3 vykazovalo konzistentne o 8–12 % vyšší precision@5. Nie je to dramatický rozdiel, ale pri komplexnejšom obsahu sa nakopí.
- Ak máte dostatok SK-doménových dát (~5 000+ dokumentov), je možné dotrénovat embedding model na vašom obsahu (fine-tuning cez
sentence-transformersknižnicu). Pri regulovaných odvetviach (právo, medicína) toto môže posunúť precision o ďalších 5–10 %.
Pre hybridný search (BM25 + vektory) platí, že pre slovenský obsah s presnou terminológiou (čísla noriem, paragrafy zákonov, kódy dielov) je BM25 keyword vrstva dôležitejšia ako pri angličtine — embedding model môže normalizovať morfologické tvary („pohonu" vs „pohon"), ale presné textové reťazce zachytáva BM25 spoľahlivejšie.
Dimenzia vs. kvalita vs. cena: praktický rámec
Nie je pravda, že vyššia dimenzia = lepší výkon. Matryoshka modely umožňujú tréning na plnej dimenzii (3 072 alebo 4 096) a inference na redukovane (256, 512, 768) — strata kvality je minimálna a gain na rýchlosti a cene ukladania je reálny.
Orientačné rozsahy pre rôzne scenáre:
- Rýchly PoC, anglický obsah, cloud:
text-embedding-3-small(1 536 dim, nízka cena) alebotext-embedding-3-largeznížený na 512 dim cez Matryoshka. - Produkčný cloud, multilingual EU obsah: Cohere Embed v4 (multimodal + dlhý kontext) alebo Gemini Embedding 001.
- Self-hosted, SK/CZ/PL obsah: BGE-M3 je default. Pre väčší model s vyšším skóre: Qwen3-Embedding-8B alebo Llama-Embed-Nemotron-8B.
- Škálovanie na desiatky miliónov vektorov: uvažujte o Matryoshka redukciu dimenzií (napr. na 768) — pri 50 M vektoroch je úspora storage výrazná.
- Multimodálny obsah (text + obrázky): Cohere Embed v4 alebo Voyage AI voyage-multimodal-3.5.
Pre porovnanie konkrétnych vektorových databáz, kde budete tieto embeddingy ukladať, pozrite Vektorové databázy — porovnanie Qdrant, Weaviate, pgvector, Milvus.
Domain fit: najčastejšie prehliadaný faktor
MTEB benchmark skóre hovorí o priemernom výkone na pestrých testovacích sadách. Váš reálny obsah je úzky a špecifický:
- Strojárska dokumentácia (výkresové poznámky, servisné manuály, ISO normy) — technický jazyk s presnou terminológiou, skratkami, číslami dielov. Dense embedding zachytí sémantiku; BM25 vrstva zachytí presné kódy. BGE-M3 hybrid mode je tu výhodou.
- Právne texty (zákonník práce, zmluvy, normy) — formálny jazyk, paragrafové referencie, dôraz na presné znenie. Testy ukazujú, že doménovo dotrénovaný model (fine-tuned na SK právnych textoch) prekoná generický model o 10–15 % precision.
- Interná firemná KB (emaily, záznamy z porád, procesné dokumenty) — variabilný jazyk, rôzne štýly písania. Tu generický model funguje dobre; dotrénanie má zmysel až pri veľkom objeme (50k+ dokumentov).
- Produktový katalóg (SKU, popisy, technické parametre) — krátke texty, exaktné zhody. Pre e-commerce alebo distribútorský katalóg má BM25 výraznú váhu; embedding model dopĺňa semantiku („modrá skrutka s metrickým závitom" = „M6 modrá skrutka DIN 912").
Pred výberom modelu si teda odpovedzte na otázku: aký podiel vašich dotazov vyžaduje sémantické porozumenie vs. presnú lexikálnu zhodu? Pre priemyselné firmy s technickou dokumentáciou je hybridné retrieval takmer vždy správna voľba — a pri hybridnom retrieval treba embedding model, ktorý nativne podporuje sparse vektory (BGE-M3) alebo ste ochotní spravovať samostatný BM25 index.
Evaluácia: ako otestovať pred nasadením
Rozhodnutie nerobte len na základe MTEB — vybudujte si mini eval sadu:
- 1.Vyberte 100–200 reálnych dotazov, ktoré odrážajú váš produkčný use-case.
- 2.Pre každý dotaz ručne identifikujte „ideálne" zdrojové dokumenty (ground truth).
- 3.Spustite retrieval (top-5 alebo top-10) pre každý kandidátsky model.
- 4.Zmerajte
precision@5arecall@10— percentuálne zastúpenie relevantných dokumentov v top-5/10. - 5.Porovnajte aj latenciu a cenu embedovania celého korpusu.
Tento test vám za 2–3 dni práce ukáže reálny rozdiel medzi modelmi na vašich dátach. Skúsenosť z praxe: na anglickom obsahu sa kandidáti líšia o 3–8 % precision. Na slovenskom technickom obsahu sú rozdiely výraznejšie — videli sme rozdiely 15–20 % medzi slabším EN-primárnym modelom a BGE-M3.
Pre evaluáciu celej RAG pipeline (nielen retrieval, ale aj generation quality) pozrite Ako evaluovať RAG (RAGAS).
Časté otázky
Je BGE-M3 stále aktuálna voľba v 2026?
Áno. BGE-M3 zostáva produkčným štandardom pre open-weight multilingual nasadenia práve vďaka jedinečnej kombinácii dense + sparse + multi-vector retrieval v jednom prechode — žiadny iný open-weight model toto nenúka v jednom modeli. Qwen3-Embedding-8B dosahuje vyššie MTEB skóre, ale vyžaduje viac HW a neposkytuje natívny sparse retrieval. Pre väčšinu EU klientov s existujúcim GPU serverom BGE-M3 zostáva dobrý default.
Potrebujem pre slovenčinu špeciálny model?
Nie nevyhnutne. BGE-M3, Qwen3-Embedding a Llama-Embed-Nemotron pokrývajú slovenčinu ako súčasť svojej tréningovej sady a fungujú v praxi. Špeciálne SK-trénovaný embedding model neexistuje ako verejný SOTA open-weight model v 2026. Ak máte veľký objem SK doménových dát (10k+ dokumentov), dotrénanie generického multilingual modelu na vašom obsahu môže dať lepší výsledok — to je ale projekt na sebe, nie z krabice.
Môžem použiť jeden embedding model pre retrieval aj pre reranking?
Nie — embedding model (bi-encoder) a reranker (cross-encoder) sú architektonicky odlišné. Embedding model vektorovo kóduje dokumenty a dotazy nezávisle (rýchle); reranker hodnotí pár (dotaz + dokument) spoločne (presnejšie, pomalšie). Pre kompletnú pipeline potrebujete oboje — viac v článku RAG pipeline — 3 nastavenia kvality.
Koľko stojí embedovanie celého firemného knowledge base?
Závisí od objemu. Orientačne: 1 milión tokenov pri OpenAI text-embedding-3-large stojí ~$0,13; pri 3-small ~$0,02. Pre 10 000 stránkový PDF korpus (~5 M tokenov) je jednorazová cena embedovania v rade desiatok dolárov pri cloud API. Pri self-hosted BGE-M3 je cena prakticky nulová po zaplatení GPU servera. Re-embedovanie (pri zmene modelu alebo chunkingu) je rovnaká cena znova — preto sa oplatí vybrať správny model hneď na začiatku.
Kedy má zmysel fine-tuning embedding modelu?
Keď máte doménový obsah, kde generický model systematicky zlyhá (precision pod 70 %), máte dostatok dát (typicky 5 000+ relevantných párov dotaz-dokument) a produkčný systém kde každý percento precision má obchodnú hodnotu. Regulated odvetvia (právo, medicína) sú klasickým príkladom. Pre bežnú internú knowledge base je fine-tuning nad rámec potreby — BGE-M3 alebo Qwen3-Embedding postačí.
*MP Industrial Solutions pomáha firmám navrhnúť a nasadiť RAG architektúru od výberu embedding modelu cez chunking stratégiu až po vektorovú databázu a evaluačný harness. Ak stojíte pred výberom alebo chcete zmerať výkon existujúceho nasadenia, radi urobíme bezplatný 90-minútový audit vašej pipeline.*
