Prehľad: čo je vektorová databáza a prečo je kľúčová pre LLM/SEO
Vektorová databáza je špecializované úložisko na ukladanie a dotazovanie embeddingov – vysokodimenzionálnych reprezentácií textu, obrázkov či multimodálnych objektov. Umožňuje vyhľadávanie podobnosti (k-NN) podľa sémantiky namiesto presnej zhody reťazcov. V praxi je základom pre RAG (Retrieval-Augmented Generation), interné vyhľadávanie, deduplikáciu obsahu, odporúčanie a moderné SEO/AEO (Answer/AI Engine Optimization), kde je nutné zodpovedať dopyty „podľa významu“.
Embeddingy: význam, typy a vlastnosti
- Definícia: vektor reálnych čísel (napr. d=384–4096), ktorý zachytáva význam jednotky obsahu (slovo, veta, odstavec, dokument, obrázok).
- Typy: sentence a passage embeddingy pre text; multimodal (text↔obraz); domain-specific (kód, právne, medicína).
- Normalizácia: L2-norma na jednotkovú dĺžku je bežná pri kosínovej podobnosti a uľahčuje metrické porovnávanie.
- Stabilita v čase: zmeny modelov generujú odlišné embeddingy; vyžadujú versioning a migračné stratégie.
Metriky podobnosti: kosín, dot-product a euklidovská vzdialenosť
- Kosínová podobnosť: mierka uhla medzi vektormi; robustná voči škálovaniu, preferovaná pri L2-normalizovaných embeddingoch.
- Dot-product (inner product): citlivý na dĺžku vektora; používa sa s učením, ktoré optimalizuje skóre priamo.
- L2 vzdialenosť: vhodná pre niektoré knižnice a kvantizačné indexy; pri normovaní konverguje ku kosínu.
Indexovanie: presné vs. aproximované vyhľadávanie k-NN
- Presné (brute-force): 100 % recall, ale nákladné (O(N·d)). Vhodné pre malé kolekcie, re-ranking alebo offline dávky.
- ANN indexy (Approximate Nearest Neighbors): HNSW (graf), IVF (k-means cluster-listy), PQ/OPQ (kvantizácia), ScaNN (anizotropné vyhľadávanie). Umožňujú výmenou recall↔latencia↔pamäť.
- Parametre ladenia: efSearch/efConstruction pre HNSW, nlist/nprobe pre IVF, bitová hĺbka PQ; všetky ovplyvňujú presnosť a rýchlosť.
Štruktúra záznamu: vektor + metadáta + obsah
- Primárny kľúč: stabilný
id(URI/UUID) na mapovanie späť na zdroj (URL, dokument, entitu). - Vektor: pole
float32/float16/int8(podľa kompresie); voliteľne viac vektorov pre viac pohľadov (title/body/anchor). - Metadáta: filterable vlastnosti (jazyk, dátum, autor, téma, region, prístupové práva).
- Payload: skrátený text/HTML snippet, odkaz, checksum, verzia embeddingu a zdroja.
Kompresia a náklady: PQ, SQ a zmiešaná presnosť
- Product Quantization (PQ/OPQ): redukuje RAM/SSD nároky, znižuje latenciu za cenu miernej straty presnosti.
- Scalar Quantization (SQ/int8): jednoduchšia, lacná kompresia; pozor na citlivosť pri slabších modeloch.
- Float16/BF16: kompromis medzi presnosťou a nákladmi pri GPU akcelerácii.
Filtre a hybridné vyhľadávanie: BM25 + vektor + re-ranking
- Vektor + metadátové filtre: obmedzenie priestoru (jazyk, časové okno, región) zvyšuje relevanciu a rýchlosť.
- Hybrid: kombinácia lexikálneho skóre (BM25) a vektorového skóre (napr. vážený súčet alebo učiteľom naučený fúzny model).
- Re-ranking: cross-encoder (drahší, presnejší) re-zoradí top-k kandidátov; často prináša najväčší zisk kvality.
- MMR/Diversity: penalizuje redundanciu, vracia rozmanitý set pasáží pre RAG.
Chunkovanie a granularita: ako „krájať“ obsah
- Pasáže 200–400 tokenov: dobrý kompromis pre QA a RAG; udržujte prekrývanie 10–20 % na súvislosť.
- Viacúrovňové embeddingy: nadpis (title), zhrnutie (summary), pasáž (passage) – dotaz môže vážiť jednotlivé jednotky inak.
- Tabuľky a kód: používajte špecifické tokenizéry a zachovajte štruktúru (CSV/JSON ukotvenie v metadátach).
RAG pipeline: kde sa vektorová DB zapája
- Indexácia: extrakcia → chunk → embed → upsert do vektorovej DB (s metadátami, verziou, checksumom).
- Retrieval: dotaz → embed → vektorové + hybridné vyhľadávanie → filtre → top-k.
- Orchestrácia: re-ranking, MMR, zlúčenie s pravidlami (kompliancia), zostavenie kontextu.
- Generovanie: prompt s kontextom, citácie/zdroje, post-procesing (overenie, redakcia).
Správa verzií a migrácie embeddingov
- Verzia modelu:
embed_model=v3.2v metadátach; umožní koexistenciu viac generácií. - Dvojitý index: paralelné budovanie nového indexu; prepnutie read-path po validácii.
- Tombstones a TTL: označte zastarané pasáže; plánované čistenie šetrí náklady a zlepšuje kvalitu.
Škálovanie, latencia a SLO
- Horizontálne škálovanie: shardovanie podľa
idalebo témy; repliky pre čítanie. - Teplé cache: cache najčastejších query embeddings a top-k výsledkov; zníži medzipamäťové skoky.
- SLO: cieľ P95 latencie (napr. < 150 ms pre top-k=20) a error rate; backoff pri špičkách.
Evaluácia kvality: ako merať relevanciu
- Recall@k / Precision@k: základné metriky návratu relevantných pasáží.
- nDCG@k, MRR: zohľadňujú poradie; vhodné pri re-rankovaní.
- Answerability: percento dopytov, kde RAG vie spolehlivo odpovedať s poskytnutým kontextom.
- Human-in-the-loop: kurátorské hodnotenia, porota, prípadové denníky (judgements) na kalibráciu.
Bezpečnosť, práva a compliance
- Autorizácia na úrovni záznamu: Attribute-Based Access Control v metadátach (tenant, třída dokumentu, región).
- PII a GDPR: maskovanie/šifrovanie payloadu, právo na výmaz (kaskádové tombstones) a audit prístupov.
- Izolácia tenantov: per-tenant indexy alebo namespace; minimalizácia „úniku“ kontextu pri RAG.
Najčastejšie antivzory a chyby
- Miešanie verzií embeddingov: znižuje relevanciu a konzistenciu výsledkov.
- Príliš veľké chunky: rozmazanie signálu → horšia presnosť a zbytočné náklady.
- Nefiltrované zdroje: zastarané alebo duplicitné pasáže vedú k halucináciám v RAG.
- Ignorovanie re-rankingu: samotné ANN často nestačí na špičkovú kvalitu.
- Bez metadát: nemožnosť „privacy“ filtrov, regionálnych pravidiel a časovej relevancie.
Výber platformy: open-source, cloud a manažované služby
- Open-source core: FAISS/HNSW (knižnice) zabudované do databáz (napr. Postgres+pgvector) – dobré pre kontrolu a integráciu.
- Vektorové DB: systémy navrhnuté pre vektory (napr. grafové/ANN jadro) s nativnym filtrom metadát, šardovaním a replikáciou.
- Manažované služby: rýchly štart, SLA, automatické škálovanie, ale vendor lock-in a nákladové obmedzenia.
Operatíva a observabilita
- Telemetria: latencia, hit rate cache, pamäť, stav indexov, drift query embeddings.
- Drift detekcia: zmeny distribúcie dopytov/obsahu vyžadujú re-embedovanie alebo úpravu chunkovania.
- Incident runbook: degradácia recallu, rozpad indexu, zlyhania shardu – definujte postupy a SRE kontakty.
Multimodálne a viacjazyčné scenáre
- Cross-lingual: jednotný embedding priestor pre viaceré jazyky; metadátové filtre bránia miešaniu nesúvisiacich jazykov v odpovediach.
- Multimodálne: vyhľadávanie obrázok→text, text→obrázok; záznamy nesú typ modality a odkaz na pôvodný asset.
Integrácia s moderným SEO/AIO/AEO
- Semantické klastre: skupiny URL/odpovedí reprezentované centrálnym vektorom; umožňujú topical-authority analýzu.
- FAQ a answer-first bloky: embeddingy Q/A zvyšujú šancu na presné odpovede v Chat/AI rozhraniach.
- De-dup a kanibalizácia: podobnostné prahy odhaľujú interné duplicity, ktoré znižujú CTR a ranking.
- Personalizácia: re-ranking podľa profilu/segmentu s rešpektovaním privacy metadát.
Praktický checklist pred nasadením
- Definované granularity (title/summary/passage) a pravidlá chunkovania s prekrývaním.
- Vybraný ANN index (HNSW/IVF+PQ) a metrika (cosine/dot/L2) s odôvodnením.
- Metadátové filtre (jazyk, región, čas, access) a hybrid s BM25.
- Implementovaný re-ranking a MMR pre diverzitu.
- Versioning embeddingov, plan migrácie a tombstones.
- SLO pre latenciu/recall, observabilita a alerty.
- Bezpečnostná vrstva: ABAC, PII ochrana, audit.
- Benchmark: Recall@k, nDCG@k, answerability s kurátorským šetrením.
Vektorová databáza ako infraštruktúra sémantickej relevancie
Vektorová databáza je chrbticou sémantického vyhľadávania a základným stavebným prvkom RAG a moderného SEO/AEO. Jej hodnota sa naplno prejaví až vtedy, keď sa skombinuje správny embeddingový model, dobre navrhnuté chunkovanie, vhodný ANN index, metadátové filtre, hybridné skórovanie a re-ranking. S jasnou správou verzií, bezpečnostnými politikami a kvalitnou observabilitou poskytuje konzistentnú relevanciu pri udržateľných nákladoch a škálovaní.