Agenti a vlastní AI · Vaše data · Díl 02 · Pokročilé · 5 min čtení
Vlastní znalostní báze: RAG bez mýtů
Nahrát modelu tisíc dokumentů a čekat, že je bude znát, nefunguje. Jak vyhledávání nad vlastními materiály doopravdy pracuje, proč nejčastěji selhává na špatných datech a co udělat, aby odpovídalo správně.
Naposledy ověřeno:
#Vaše data#Lokální AI#Orchestrace
Obsah článku
„Nahraju tam všechny firemní dokumenty a AI je bude znát.“ Tahle věta se pronáší denně a je v ní zabalené nedorozumění, které pak stojí týdny zklamání. Pojďme si to rozebrat.
Co se doopravdy stane
RAG (vyhledáváním doplněné generování) funguje v pěti krocích:
- 1RozsekáníKaždý dokument se rozdělí na kousky, typicky několik set slov. Jeden dokument = desítky až stovky kousků.
- 2VektoryKe každému kousku se spočítá číselný otisk, který zachycuje význam. Ukládá se do databáze.
- 3DotazVaše otázka se převede na stejný typ otisku.
- 4VyhledáníNajde se několik kousků s nejpodobnějším otiskem. Obvykle tři až deset.
- 5OdpověďJen tyhle kousky se pošlou modelu spolu s vaší otázkou. Model odpoví z nich.
Zásadní důsledek: model vaši sbírku nezná. Nikdy ji celou neviděl. Vidí pár odstavců, které mu vyhledávání podstrčilo. Když vyhledávání sáhne vedle, model odpoví vedle — a bude si tím naprosto jistý.
Druhý důsledek: RAG není trénink. Model se nic nenaučil. Zítra bez té databáze neví nic. To je dobrá zpráva pro soukromí (nic se nikam nezapeklo) a špatná zpráva pro očekávání.
Proč to nejčastěji nefunguje
Když si lidé postaví znalostní bázi a nefunguje, hledají chybu v modelu. Skoro nikdy tam není. Pořadí příčin podle četnosti:
1. Naskenované PDF bez textové vrstvy. Nejčastější příčina vůbec. Dokument vypadá jako text, ale je to obrázek. Nástroj z něj vytáhne prázdno a vy se divíte, že o něm model nic neví. Test: zkuste v PDF vyhledat slovo. Když to nenajde nic, nemá textovou vrstvu a je potřeba rozpoznání znaků.
2. Špatné rozsekání. Když se dokument nakrájí uprostřed tabulky nebo se odstavec rozdělí na půl, kousky ztratí smysl. Sazba na tři sloupce, hlavičky a patičky na každé stránce a poznámky pod čarou dokážou udělat z čistého dokumentu nesmyslnou kaši.
3. Chybějící kontext v kousku. Kousek textu „platnost je 24 měsíců“ je sám o sobě k ničemu, když z něj není poznat, o které smlouvě se mluví. Dobré nástroje ke každému kousku přidávají nadpis dokumentu a sekce.
4. Otázka, na kterou v datech není odpověď. RAG neumí syntézu přes celou sbírku. „Kolik máme celkem klientů“ nenajde, protože tahle věta nikde nestojí. Umí jen najít, kde už napsaná je.
5. Málo kousků, nebo naopak moc. Tři kousky u složité otázky nestačí. Dvacet kousků model zahltí a začne v nich plavat.
Co s tím prakticky udělat
Připravte vstup, ne model. Tohle je devadesát procent práce a nikdo o tom nemluví.
- Naskenované dokumenty proženěte rozpoznáváním znaků a výsledek si přečtěte. Ne celý, ale namátkou.
- Dejte dokumentům pořádné nadpisy a názvy souborů. „smlouva-acme-2026-udrzba.pdf“ je nesrovnatelně lepší než „scan_0043.pdf“.
- Vyhoďte duplicity a staré verze. Když má báze tři verze téže směrnice, model bude odpovídat z náhodné.
- Dlouhé dokumenty rozdělte podle kapitol, ne na náhodné bloky.
Zvolte rozumnou velikost kousku. Několik set slov s malým překryvem mezi sousedy je dobrý začátek. Menší kousky = přesnější vyhledání, ale roztrhaný kontext. Větší = celistvější, ale hůř se trefují.
Vyžádejte si citace. Nechte nástroj u každé odpovědi ukázat, ze kterých kousků čerpal. Bez toho nemáte jak poznat halucinaci od pravdy — a s tím ji odhalíte za pět vteřin. Je to stejná disciplína, kterou popisuje návod na ověřování faktů.
Testujte na otázkách, které znáte. Napište si dvacet otázek, u kterých víte správnou odpověď, a projeďte je po každé změně nastavení. Bez téhle sady si jen tak povídáte.
Kdy RAG a kdy něco jiného
| Situace | Řešení |
|---|---|
| Sbírka dokumentů, hledáte v nich odpovědi | RAG |
| Jeden dlouhý dokument, chcete o něm mluvit | Vložte ho celý do kontextu, RAG je zbytečný |
| Data v tabulce, ptáte se na počty a součty | Databáze a dotaz, ne RAG |
| Živá data, která se mění každou hodinu | Konektor do zdroje |
| Chcete, aby model psal vaším stylem | Instrukce a příklady, ne RAG |
Ten poslední řádek je častý omyl. Nahrání dvaceti vlastních textů do znalostní báze vám nezmění styl modelu. Na to jsou instrukce a ukázky přímo v zadání — viz návod na projekty a kontext.
Lokálně, nebo v cloudu
Znalostní báze je disciplína, kde lokální řešení vyhrává častěji než jinde:
- Dokumenty jsou obvykle to nejcitlivější, co máte.
- Výpočet otisků je nenáročná úloha, kterou zvládne i slabší stroj.
- Vyhledávání běží lokálně a je rychlé.
- Modelu se posílá jen několik odstavců, ne celá sbírka.
Praktické nastavení: index i dokumenty doma, generování odpovědi buď lokálním modelem (u citlivých věcí), nebo přes bránu tím lepším (u obecných). Přesně tohle rozdělení popisuje díl o směrování.
Na co si dát pozor
- Kdo má přístup k bázi, má přístup ke všem dokumentům v ní. Nemíchejte do jedné báze věci s různým stupněm důvěrnosti.
- Aktualizace není automatická. Když dokument změníte, musíte ho v indexu obnovit. Jinak báze odpovídá ze staré verze.
- Otisky nejsou šifra. Z vektorů se dá o obsahu leccos zjistit; nepovažujte je za bezpečné uložení citlivých dat.
- Model bude odpovídat i tehdy, když nic nenašel. Do zadání proto napište, ať výslovně řekne „v podkladech to není“ — a otestujte, že to opravdu dělá.
Pro tip
Než postavíte znalostní bázi nad tisícem dokumentů, postavte ji nad deseti. Projděte na nich svých dvacet testovacích otázek. Když to na deseti dokumentech nefunguje, na tisíci to nebude fungovat taky — jen to bude trvat déle, než na to přijdete.
Další díl je o tom, jak modelu dát ruce na vlastním disku, aniž byste mu dali celý domovský adresář.
Zdroje
Pomohlo vám to?
Další díl vám dojde
Nové díly seriálu a to podstatné ze světa agentů posílám v týdenním newsletteru.
E-book Top 30 tipů zdarma — pošlu vám ho hned.
Pak 1 tip týdně · žádný spam · odhlášení jedním klikem
Radši systém než jednotlivé tipy? E-mailový kurz zdarma — sedm dní, sedm e-mailů, každý den jedna dovednost.