🎧 Poslouchej epizodu:
Filip mi během natáčení řekl větu, kterou si od té doby opakuju: lidi, se kterými řeší, jak začít stavět Knowledge Base, to strašně překombinovávají. Přemýšlí, jestli tady má být podsložka, jak se má soubor jmenovat, do jakého detailu jít. A skončí u tak složité struktury, že jim pak přijde jeden dokument a oni nevědí, kam ho zařadit. 🤔
Mě na tom zaujalo něco jiného. Že za tím podle mě nestojí technický problém, ale psychologie. Řekneš “Knowledge Base” a v hlavě se ti postaví ultimátní inženýrské dílo, které musíš nejdřív navrhnout. Ve skutečnosti je to složka. S pár dokumentama.
Tenhle díl jsme natočili proto, že tipy ke Knowledge Base jsme za posledních třicet epizod rozsypali do různých dílů. Tak jsme je dali na jedno místo. 👇 Tady je z toho článek.
Knowledge Base: proč je kontext jediná páka, kterou máš 🎯
Začnu tím, co mě z celého dílu překvapilo nejvíc, i když to Filip řekl skoro mimochodem. Modely od OpenAI, Anthropicu a Googlu jsou dneska výkonnostně dost podobné. Jsou tam nuance, ale ten rozdíl není takový, aby vysvětlil, proč jeden člověk dostává z umělé inteligence skvělé výsledky a druhý průměrné obecné žvatlání.
A když modely nerozhodují, rozhoduje kontext. To je jediná věc, kterou jako uživatel reálně ovlivníš.
Odtud vede přímá cesta k Knowledge Base. 💡 Je to prostě způsob, jak ten kontext posbírat, mít ho co nejvíc, relevantní a ideálně předzpracovaný.
Ta druhá výhoda je technická a stojí za to ji říct nahlas: agent si po souborech sáhne, kdykoli je potřebuje. Nemusí je mít nacpané v kontextovém okně. Což znamená, že Knowledge Base může být násobně větší než cokoli, co se do okna vejde. Prakticky neomezená. 📌
Filip k tomu přidal jeden rozdíl oproti tomu, jak jsme si data organizovali dřív. Já jsem měl na vysoké škole složku se skripty a přednáškami a fungovalo to, protože kontext kolem, co studuju a proč, jsem měl v hlavě. Agent ho v hlavě nemá. Takže mu ho musíš dát taky. Čím víc obohaceného kontextu tam je, tím líp se s tím pracuje.
O kontextu jako takovém jsme mluvili podrobněji v #18 - tenhle díl je jeho praktické rozpracování.
Od projektů v ChatGPT k lokální složce: čtyři stupně 🪜
Filip to rozdělil na úrovně a mně to přijde jako nejužitečnější část celého dílu, protože ti to řekne, kde přesně jsi.
Úroveň nula: projekty v chatu. 👉 Otevřeš si projekt v ChatGPT nebo Claudovi, nahraješ soubory, napíšeš vlastní instrukce a jsi hotový. Technicky nejjednodušší varianta, jaká existuje. A já jsem se v epizodě nebál říct, že tohle ti dá devadesát procent hodnoty. Fakt. Nemáš-li nic, začni tady.
Navíc se to zrovna zlepšilo. Když Anthropic sloučil Cowork a chat do jednoho, můžeš oba nástroje používat nad jedním kontextem. Jedno místo s tvými informacemi a je jedno, jestli si vybereš chat nebo Cowork. ⚡
Úroveň jedna: lokální složka. Místo projektu uvnitř nástroje použiješ obyčejnou složku na disku a agentovi do ní dáš přístup, aby v ní mohl číst a zapisovat. Chováš se k ní úplně stejně.
A tady jsme se s Filipem trochu chytili. On tvrdil, že cloudové projekty znamenají vendor lock-in, že jsi zamčený a nemůžeš odejít. Já jsem namítl, že to tak úplně není: Cowork stejně pracuje s lokální složkou a když si necháš agentem vydestilovat chaty do souborů, přenositelnost máš. Filip pozici korigoval a doťukli jsme se ke skutečné pointě:
Problém není, že bys z toho nástroje neutekl. Problém je, že nemůžeš používat dva nástroje najednou nad jednou bází.
Filip nad svou složkou běžně pouští Clauda i Codex zároveň. To s cloudovým projektem neuděláš. 🔍
Mimochodem, pojmenování je v tom pěkný zmatek. ChatGPT říká “projekty” cloudovým projektům, kam nahráváš soubory, a stejně tak říká “projekty” lokální složce ve work módu. Google to udělal podobně. Takže když někdo řekne projekt, radši se zeptej který.
Git nebo Google Drive: čím bázi zálohovat 💾
Jakmile máš složku, přijde otázka zálohy. My v Deeplink Show používáme Git a Filip pro to má tři argumenty, které mi dávají smysl i mimo vývojářský svět.
Git vznikl v roce 2005 kvůli vývoji linuxového jádra a řeší problém, který se dnes hodí na agenty skoro doslova. Vznikly větve, protože si programátoři navzájem sahali do práce. Přesně to potřebuješ u paralelních agentů. Máš historii, takže se kdykoli vrátíš. A hlavně: 📌
Git, i když smažeš soubor, ho jakoby nesmaže. Jakmile byl jednou v commitu, je to jako save ve hře. Už o něj nepřijdeš.
To ti dá klid na duši, o kterém Filip mluvil. Když se agent trochu zblázní a něco ti promaže, jenom řekneš “vrať se do předchozího kroku” a ten soubor tam je. 🚀
Já jsem ale v epizodě dělal advokáta druhé strany a pořád si za tím stojím. Git je trošku advanced. Ano, dneska ti ho obslouží agent a nemusíš znát git commit z terminálu, ale stejně musíš tušit, co Git je a jak funguje. A to není každý.
Takže moje varianta: namountovaný disk. Když máš nainstalovaný Google Drive, iCloud nebo Dropbox, chová se to jako úplně obyčejná lokální složka. Já to tak mám a dovolím si tvrdit, že to bude stačit pětadevadesáti procentům lidí. 💡 Je to ten perfektní poměr toho, co ti Knowledge Base má dát, a toho, kolik do toho musíš investovat.
Filip k tomu doplnil detail, na který podle svých zkušeností lidi narážejí. Na Drive nemusíš nic nahrávat ručně. Je na to desktopová aplikace pro Mac i Windows, nastavíš si mirroring souborů a co se změní v lokální složce, se samo promítne do cloudu a naopak. Nikam nic netaháš.
Ingest: jak data dostat dovnitř a kdy to automatizovat ⚙️
Tady se podle nás lidi zasekávají nejčastěji. Máš složku, máš agenta, a teď co s tím. 🤔
Nejjednodušší cesta je ruční. Filip měl vždycky složku RAW, kam soubory prostě házel, já mám složku TO_PROCESS. Princip je stejný. Řekneš agentovi, ať se podívá, co to je za soubor, a probereš s ním, jak ho do báze zařadit. Filip tomu říká ingest a překládá to hezky doslova: strávit. Agent soubor stráví, rozpadne ho do báze a originál se uloží do archivu, aby se k němu šlo vrátit. 🔍
U mě už to dneska ani nemusím vysvětlovat. Řeknu Coworku “zpracuj to” a on ví, protože zpracoval několik předchozích. Dokonce tam házím rovnou hovory: vytáhni si zvukovou stopu, udělej transkript, zpracuj ho tak, jak jsi zvyklý.
A přesně to “jak je zvyklý” je místo, kde do hry vstupují skilly. Když jsi jednou s výstupem spokojený, udělej si z toho recept. Skill “zpracuj mi meeting” popíše, co se má s nahrávkou stát, přes kterou službu, kam se to zařadí. Agent pak nehádá, ale má postup napsaný před sebou. 👉
Kdy to automatizovat? Já to měřím počtem. Když potřebuju zpracovat přepis jednou za tři dny, zvládnu to přes Cowork. Když mám nabitý kalendář schůzek a hromadu materiálů, už to chce automat. Filip ale přidal druhé kritérium, které mi přijde lepší: automatizuj to, na co zapomínáš nebo se ti to nechce dělat. Ingest epizody do naší báze není kreativní práce, dělá se pokaždé stejně, a i když běží dvakrát týdně, dává obrovský smysl ho nechat běžet samo.
Ještě jedna věc, která mě baví: pipeline nemusí data jenom třídit. Může je i opravovat. Než se přepis roztřídí, může model spravit přeslechy z mluveného slova, přeformátovat text nebo u entit ověřit fakta proti webu. ⚡ A pokud jde o formát, do báze pošleš prakticky cokoli. Filip radši screenshotuje, než kopíruje, protože kopírováním se ztratí grafické rozložení, které multimodální model přečte i s tučným zvýrazněním.
Největší chyba začátečníka: překombinovat to 🤔
Vrátím se k tomu, čím jsem začal, protože tohle je podle Filipa ta jedna myšlenka, kterou by sis měl odnést.
Nesnaž se na začátku vymyslet všechny možné podoby dat, které tam někdy budou. Prostě začni bázi tvořit a iteruj. 🎯 Dřív předělat strukturu dat byl problím, dělalo se to ručně a zabralo to den. Dneska to dáš agentovi, jdeš spát a ráno to máš překompilované v jiné, optimalizovanější podobě.
Filip k tomu má jeden trik, který stojí za převzetí: odděl si dvě vrstvy. Vrstvu surových dat, co jsi tam nahrál, a vedle ní wiki, kam agent kompiluje znalosti. Když pak měníš strukturu, vždycky se máš o co opřít a nic se při zpracování neztratí. 📌 Mimochodem, ve světě datových skladů je to zavedený pattern: surová vrstva se nikdy nepřepisuje, odvozené vrstvy se dají kdykoli přestavět.
A proč se ta kompilace vůbec dělá? Filip to ukázal na nás. Máme přepisy epizod a z nich vydestilované entity. Když se chci zeptat, kde jsme mluvili o OpenAI, agent nemusí číst všechny podcasty. Podívá se do jednoho markdownu, který si historicky vygeneroval, a tam je napsáno, v jakých dílech a v jakém kontextu to zaznělo. Rychleji, s menším kontextem a levněji, protože to stojí míň tokenů. 💡
Poslední tip patří mně a je to zvyk, který podle mě spousta lidí nemá. Bázi se vyplatí čas od času nechat učesat. Já to používám jako osobní benchmark nových modelů: vezmu svou největší Knowledge Base, pošlu na ni nový model a řeknu mu, ať to projde celé, revaliduje informace proti zdrojům co najde online a učeše to. Když mám bázi zpracovanou starším modelem, je hodně pravděpodobné, že to ten novější udělá líp. 🚀
TL;DR - co si z toho vzít 📌
Kontext je tvoje jediná páka. 🎯 Modely od OpenAI, Anthropicu a Googlu jsou výkonnostně srovnatelné. Rozdíl mezi skvělým a průměrným výstupem děláš ty tím, co jim dodáš.
Začni u projektů v chatu. 👉 Projekt v ChatGPT nebo Claudovi ti dá devadesát procent hodnoty a nastavíš ho za deset minut. Lokální složka je až druhý krok, když chceš nad bází pustit víc nástrojů naráz.
Zálohuj tím, čemu rozumíš. 💾 Git dá historii a jistotu, že smazaný soubor nezmizí. Namountovaný Google Drive se chová jako obyčejná složka a stačí pětadevadesáti procentům lidí.
Odděl surová data od wiki. ⚡ Originály si nech, ať můžeš bázi kdykoli překompilovat, aniž bys o cokoli přišel.
Nepřekombinovávej to. 🤔 Strukturu můžeš kdykoli předělat, agent to zvládne přes noc. Cenná jsou data, ne systém kolem nich.
Líbí se ti Deeplink Show?
👉 Sleduj nás na YouTube - video verze každé epizody
🎧 Followni Deeplink Show na Spotify - pro poslech kdekoli
🌎 Mrkni na náš web - pro další detaily podcastu
📸 Sleduj nás na Instagramu - zkratky, tipy a zákulisí
Nebo nám napiš co si myslíš: studio@deeplink.show ✉️


