Narazili ste na situáciu, keď váš RAG systém vráti relevantné fragmenty, ale odpoveď stále nie je správna? Pýtate sa, kto schválil zmluvu č. 2024-0034, a systém nájde dokument o schvaľovacích procesoch aj dokument obsahujúci číslo zmluvy — ale nespojí, že schvaľovateľom bola konkrétna osoba uvedená v treťom dokumente. Každý krok má odpoveď niekde inde. Problém nie je vo vyhľadávaní, problém je v chýbajúcich vzťahoch.
Práve na tento typ otázok vznikol GraphRAG — rozšírenie klasického retrieval-augmented generation o znalostný graf (knowledge graph). Nie je to drop-in upgrade, ktorý stačí zapnúť. Je to architektonická voľba so skutočnými nákladmi a reálnym prínosom — ale len pre určitú triedu problémov. V tomto článku sa pozrieme na to, čo GraphRAG rieši, ako funguje technicky, aká je reálna cena, a pre aké prípady sa skutočne oplatí.
Čo klasický RAG nevie
Štandardný RAG pipeline funguje dobre, keď odpoveď na otázku leží v jednom alebo dvoch blízkych fragmentoch textu. Vezmete otázku, prekonvertujete ju na embedding, nájdete k-najbližšie chunky v vektorovej databáze, podáte ich modelu a dostanete odpoveď.
Tento prístup má slepú škvrnu: vzťahy medzi entitami naprieč dokumentmi. Klasický RAG netuší, že osoba spomínaná v dokumente A je tá istá ako v dokumente C, že udalosť popísaná v správe je príčinou problému analyzovaného v inej správe, alebo že dodávateľ z faktúry je vlastnícky prepojený s firmou z reklamácie. Vektorová podobnosť matchuje text, nie sémantické prepojenia.
Presne tu vstupuje do hry GraphRAG. Namiesto izolovaných fragmentov pracuje s grafom — uzlami (entity: osoby, firmy, produkty, procesy, lokality) a hranami (vzťahy: schválil, dodáva, zodpovedá za, spôsobil, patrí do). Retrieval potom nie je len "nájdi podobný text", ale "nájdi cestu alebo podgraf relevantný pre túto otázku".
Ako GraphRAG technicky funguje
Originálna implementácia od Microsoftu, ktorá tento termín popularizovala, pozostáva z dvoch fáz: indexácie a dopytovania.
Indexačná fáza
Ide o najdrahší krok. Pre každý dokument v korpuse sa volá LLM (alebo séria LLM volaní), ktorý extrahuje entity a vzťahy. Z viet ako *"Inžinier Novák schválil výmenu čerpadla P-12 na linke 3 dňa 14. januára"* extrahuje uzly Novák (osoba), P-12 (zariadenie), Linka 3 (lokácia) a hrany schválil → výmena, nachádza sa na → Linka 3.
Nad takto extrahovaným grafom sa potom aplikuje komunitná detekcia (algoritmy ako Leiden alebo Louvain), ktorá zoskupí súvisiace entity do komunít — napríklad všetky entity týkajúce sa linky 3, alebo všetky transakcie s konkrétnym dodávateľom. Pre každú komunitu sa vygeneruje súhrnný popis (tzv. community report), ktorý slúži ako high-level context pri odpovedaní na globálne otázky.
Dopytovacia fáza
Pri príchode otázky sa rozhoduje medzi dvoma stratégiami:
Local search — otázka sa týka konkrétnych entít alebo lokálnych vzťahov. Systém nájde relevantné uzly a prechádza subgrafom v ich okolí. Vhodné pre otázky typu "kto schválil túto objednávku" alebo "aké zariadenia sú prepojené s touto poruchou".
Global search — otázka vyžaduje syntetizovanie informácií naprieč celým korpusom. Systém pracuje s community reports namiesto raw dokumentov. Vhodné pre otázky ako "aké sú hlavné vzory porúch na linkách za posledný rok" alebo "identifikuj dodávateľov s opakovane neskoreným dodaním".
Oproti klasickému RAG teda GraphRAG pridáva celú vrstvu sémantickej štruktúry — ale táto vrstva nie je zadarmo.
Reálna cena indexácie
Tu mnohých záujemcov o GraphRAG prekvapí realita. Microsoft vo svojom výskume reportoval, že indexácia veľkých datasetov pomocou pôvodnej implementácie stála v rade desiatok tisíc USD — v závislosti od veľkosti korpusu a zvoleného modelu. Dôvod: každý dokument (alebo každý chunk) vyžaduje LLM volanie na extrakciu entít. Pri stovkách tisíc dokumentov sa počet tokenov rýchlo vyšplhá do astronomických čísel.
To má konkrétny dôsledok: indexácia nie je jednorazová. Keď sa zmení alebo pribudne dokument, treba aktualizovať graf. Na rozdiel od vektorovej DB, kde stačí re-embedovať nové chunky, aktualizácia grafu môže vyžadovať opätovné priechodenie okolia zmeneného uzla.
Toto je fundamentálny dôvod, prečo GraphRAG nie je vhodný pre dynamické korpusy s vysokou frekvenciou aktualizácií.
LazyGraphRAG a open-source alternatívy
Microsoft si bol vedomý cenového problému a vydal LazyGraphRAG — variantu, ktorá oneskoruje LLM extrakciu entity a vzťahov. Namiesto toho, aby extrahoval entity pre každý dokument pri indexácii, buduje základný graf lacnejšími metódami (NLP extrakcia, keyword extraction) a LLM volania robí až pri čase dopytovania, len pre relevantnú podmnožinu. Výsledok: výrazne nižšie indexačné náklady pri porovnateľnej kvalite odpovedí pre mnoho typov otázok.
Komunita medzičasom vytvorila viaceré alternatívne implementácie s rôznymi trade-off:
- LightRAG — kladie dôraz na efektivitu, menej LLM volaní pri indexácii, dobré výsledky na technických dokumentoch
- HippoRAG — inšpirovaný hippokampálnou pamäťou, zaujímavý pre long-term knowledge retention
- Fast-GraphRAG — zameraný na rýchlosť pri zachovaní grafovej štruktúry
Žiadna z týchto alternatív nie je "výhra vo všetkom" — každá robí iné kompromisy medzi nákladmi na indexáciu, kvalitou grafu a rýchlosťou dopytovania. Pre produkčné nasadenie odporúčame otestovať konkrétnu alternatívu na vašom reálnom korpuse, nie na benchmarkových datasetoch.
Kedy sa GraphRAG oplatí
Toto je kľúčová otázka, ktorú si treba položiť pred akýmkoľvek rozhodnutím o adopcii.
GraphRAG má reálny prínos pri:
- Multi-hop otázkach — odpoveď vyžaduje prepojenie informácií z troch a viac dokumentov pozdĺž reťazca vzťahov. "Ktorý technológ zodpovedá za zariadenie, ktoré spôsobilo poruchu na linke s najvyšším OEE?" — tri entity, dve hrany, tri dokumenty.
- Analýze vplyvu — "aké procesy budú ovplyvnené, ak vymeníme dodávateľa X?" — vyžaduje prechádzanie grafu závislostí.
- Sumarizácii naprieč entitami — "zhrň všetky incidenty súvisiace s výrobkom Y za posledné dva roky" — komunity v grafe to zvládnu lepšie ako chunky z vektorovej DB.
- Detekcia vzorcov — "identifikuj opakujúce sa vzory v reklamáciách podľa dodávateľa a kategórie zariadenia" — globálny search cez community reports.
- Compliance a audit trails — "preukáž reťazec schválení pre zmluvu Z" — priama úloha pre grafový traversal.
GraphRAG pravdepodobne nepotrebujete, ak:
- Vaše otázky sú prevažne faktické a odpoveď leží v jednom fragmente ("aká je maximálna teplota pre čerpadlo P-12?").
- Váš korpus sa mení denne alebo viackrát denne — náklady na re-indexáciu budú prohibitívne.
- Máte menej ako niekoľko tisíc dokumentov — klasický hybrid search s rerank-om zvládne väčšinu prípadov za zlomok ceny a zložitosti.
- Nemáte jasne definovanú ontológiu entít a vzťahov — graf extrahovaný z neštruktúrovaného textu bez doménového kontextu bude obsahovať veľa šumu.
Reportovaná číslo od Microsoftu — GraphRAG dosahuje okolo 80 % správnych odpovedí na multi-hop otázkach vs okolo 50 % pre naivný RAG — je orientačné a platí pre konkrétny typ syntetických benchmark otázok. Skutočné zlepšenie na vašom korpuse môže byť iné. Vždy merajte na vlastných dátach.
Integrácia s existujúcim RAG stack-om
GraphRAG nie je náhrada za vektorovú databázu — je to doplnok. Moderné produkčné systémy, ktoré ho adoptujú, typicky prevádzkujú hybridnú architektúru:
- 1.Vektorová DB (napr.
Qdrant) pre dense retrieval — rýchle, lacné, vhodné pre faktické otázky. - 2.Grafová vrstva (neo4j, Amazon Neptune, alebo in-memory graf pre menšie korpusy) pre vzťahové dopyty.
- 3.Router/orchestrátor — klasifikuje prichádzajúcu otázku a rozhoduje, ktorú vrstvu použiť (alebo obe kombínovať).
Orchestrácia takéhoto systému je komplexnejšia. LangGraph (framework pre stavové grafy agentov) je pre tento pattern prirodzená voľba — umožňuje definovať rozhodovacie uzly, ktoré dynamicky rozhodujú, či dopyt pôjde cez vektorovú DB, cez grafovú vrstvu, alebo potrebuje obe. Pre evaluáciu výsledkov sa oplatí pozrieť na RAGAS metriky — viď ako evaluovať RAG.
Dôležitá poznámka k nástrojom: LlamaIndex má v aktuálnych verziách natívnu podporu pre GraphRAG indexáciu, čo výrazne znižuje implementačnú bariéru oproti manuálnemu zostavovaniu pipeline.
Kde GraphRAG vidíme v priemyselnej praxi
Z nasadení, ktoré riešime u zákazníkov z výrobnej a inžinierskej sféry, sa GraphRAG alebo hybridné grafové prístupy ukazujú ako opodstatnené v týchto scenároch:
Správa technickej dokumentácie — veľké podniky s tisíckami technických manuálov, SOP-ov, servisných správ a revíznych protokolov. Otázka "aký je postup pri poruche čerpadla typu X v zóne ATEX II?" vyžaduje prepojenie manuálu zariadenia, ATEX protokolu zóny, bezpečnostnej SOP a histórie servisných zásahov. Klasický RAG to nedá spoľahlivo.
Compliance a regulačné audit trails — v regulovaných odvetviach (farmácia, energetika, potravinárstvo) treba preukázať reťazec zodpovednosti a schválení. Graf je prirodzená dátová štruktúra pre "kto schválil, kedy, na základe čoho, s odkazom na aký predpis".
Analýza dodávateľského reťazca — prepojenia medzi dodávateľmi, komponentmi, reklamáciami a poruchami. "Koľko kritických komponentov pochádza od dodávateľov, ktorí mali v poslednom roku meškanie viac ako 10 dní?" — multi-hop cez štyri typy entít.
Naopak, pre interné chatboty nad FAQ dokumentáciou alebo vyhľadávanie v produktovom katalógu je GraphRAG zbytočná komplexnosť. Viď aj agentic RAG architektúry, kde sa grafová vrstva prirodzene kombinuje s agent-controlled retrieval.
Praktický postup: ako začať
Ak ste sa rozhodli vyskúšať GraphRAG, odporúčame inkrementálny prístup:
- 1.Definujte ontológiu — pred akoukoľvek implementáciou explicitne zadefinujte, aké typy entít a vzťahov chcete v grafe mať. Bez tohto kroku dostanete hlučný graf plný irelevantných uzlov.
- 2.Začnite s malým korpusom — 1 000–5 000 dokumentov stačí na overenie, či grafová štruktúra zodpovedá vašim otázkam. Indexácia bude zvládnuteľná aj s LazyGraphRAG.
- 3.Porovnajte s baseline — pre každý typ otázky (faktická, multi-hop, sumarizácia) merajte presnosť GraphRAG vs hybridný search. Ak GraphRAG nepridáva >15 % na vašich reálnych otázkach, zvážte, či je komplexnosť opodstatnená.
- 4.Plánujte aktualizačný cyklus — rozhodnite, ako budete udržiavať graf aktuálny. Batch re-indexácia raz za týždeň? Inkrementálna aktualizácia pri pridávaní dokumentov? Toto rozhodnutie ovplyvní celkovú architektúru.
- 5.Nezabúdajte na fallback — v produkčnom systéme vždy majte klasický vector retrieval ako zálohu pre prípady, keď grafový dopyt nevráti dostatočne dôveryhodné výsledky.
Časté otázky
Je GraphRAG lepší ako klasický RAG?
Závisí od typu otázok. Pre multi-hop otázky vyžadujúce prepojenie entít naprieč dokumentmi — áno, výrazne. Pre jednoduché faktické otázky s odpoveďou v jednom fragmente je GraphRAG zbytočne drahý a pomalší. Vždy merajte na svojom konkrétnom use case.
Ako drahá je indexácia GraphRAG v praxi?
Originálna Microsoft implementácia reportuje náklady v rade desiatok tisíc USD pre veľké korpusy. LazyGraphRAG a open-source alternatívy (LightRAG, Fast-GraphRAG) výrazne znižujú tieto náklady. Presná cena závisí od veľkosti korpusu, zvoleného LLM a granularity extrakcie entít.
Musím mať špeciálnu grafovú databázu?
Nie nevyhnutne. Pre menšie grafy (do rádovo miliónov uzlov) funguje in-memory reprezentácia alebo knižnice ako networkx. Pre väčšie produkčné nasadenia sú Neo4j, Amazon Neptune alebo TigerGraph štandardné voľby. Niektoré implementácie (napr. LlamaIndex GraphRAG) abstrahujú storage vrstvu a umožňujú výber backendu.
Funguje GraphRAG pre slovenské dokumenty?
Extrakcia entít závisí od kvality LLM, ktorý ju robí. Frontier modely (Claude, GPT, Gemini) zvládajú slovenčinu dobre. Pri použití menších lokálnych modelov treba overiť kvalitu extrakcie na vzorke slovenského textu pred nasadením. Grafová štruktúra samotná je language-agnostic.
Kedy sa GraphRAG rozhodne nepoužívať?
Ak sa váš korpus mení denne, ak máte menej ako niekoľko tisíc dokumentov, ak vaše otázky sú prevažne jednohopové, alebo ak nemáte kapacitu definovať a udržiavať ontológiu entít. V týchto prípadoch vám klasický hybrid search s rerank-om dá 90 % výsledku za 10 % nákladov a komplexnosti.
*GraphRAG nie je pre každý projekt — ale pre projekty, kde vzťahy medzi entitami rozhodujú o správnosti odpovede, je to nástroj bez alternatívy. V MP Industrial Solutions pomáhame firmám posúdiť, či ich konkrétny use case je GraphRAG kandidátom, navrhnúť ontológiu a odhadnúť reálne náklady indexácie ešte pred akýmkoľvek záväzkom. Ak riešite komplexné dokumentačné alebo compliance otázky, začnite posúdením.*
