Než se pustíme do tokenů, neuronových sítí a GPT, podívejme se, odkud se vlastně představa umělého člověka a inteligentního stroje vzala.
16. století
Golem
Pražská legenda o hliněné bytosti vytvořené člověkem. Nejde o technologii, ale o velmi starou představu, že člověk může vytvořit bytost, která se mu podobá.
1920 / 1921
R.U.R. a slovo robot
Karel Čapek ve hře R.U.R. (Rossumovi univerzální roboti) představil umělé dělníky. Slovo „robot“ vychází z českého robota; za jeho vznikem je tradičně uváděn i Čapkův bratr Josef.
1940s
2. světová válka a zrození výpočetní techniky
Válka výrazně urychlila vývoj automatického počítání. Alan Turing pracoval na luštění německých šifer a vznikaly elektromechanické i elektronické počítače. Tady se začíná rodit svět, ve kterém mohou stroje provádět stále složitější výpočty.
1950
Turingův test
Alan Turing položil otázku: „Mohou stroje myslet?“ A navrhl místo toho praktickou zkoušku založenou na rozhovoru. Pokud člověk nedokáže spolehlivě poznat, zda komunikuje s člověkem nebo strojem, je stroj podle této zkoušky úspěšný.
1956
Vznik oboru AI
Na konferenci v Dartmouthu se začal používat termín artificial intelligence. Vznikla představa, že některé schopnosti spojované s lidskou inteligencí lze popsat tak, aby je mohl provádět počítač.
1966
ELIZA
Program ELIZA od Josepha Weizenbauma dokázal vést jednoduchý textový rozhovor pomocí pravidel a rozpoznávání vzorů. Přesto někteří lidé měli pocit, že s nimi skutečně někdo rozmlouvá.
1980
Čínský pokoj
Filozof John Searle představil myšlenkový experiment: člověk uvnitř místnosti může podle pravidel manipulovat se symboly v čínštině, aniž by čínsky rozuměl. Otázka zní: je správné zpracování symbolů totéž jako porozumění?
1997
Deep Blue
Počítač Deep Blue porazil mistra světa Garriho Kasparova v šachu. Ukázalo se, že počítač může v úzce vymezené oblasti překonat člověka.
2012
Deep learning
Velké neuronové sítě, data a výkonné grafické procesory začaly přinášet výrazné skoky v rozpoznávání obrazu, řeči a dalších úlohách. Moderní AI dostává nový impuls.
2017
Transformer
Výzkumníci představili architekturu Transformer založenou na mechanismu attention. Právě z této linie později vyrostly moderní jazykové modely.
2018 → dnes
GPT a generativní AI
Velké jazykové modely ukázaly, že neuronová síť může po natrénování generovat text, překládat, shrnovat, programovat a pracovat s mnoha dalšími úlohami. V roce 2022 se ChatGPT stal široce dostupným veřejnosti.
Vybrané milníky vývoje jazykových a multimodálních AI modelů.
Dva klasické myšlenkové experimenty spojené s otázkou, zda může stroj skutečně rozumět,
nebo pouze přesvědčivě napodobovat porozumění.
A tím se dostáváme k dnešní AI. Moderní jazykový model dokáže pracovat s jazykem způsobem, který působí velmi inteligentně. V dalších kapitolách se proto nebudeme ptát jen na to, co AI umí, ale také jak to technicky dělá — od tokenů přes embeddingy a neuronové sítě až po Transformer.
Chatbot bez LLM
Chatbot, který simuluje rozhovor pomocí pravidel, klíčových slov a jednoduchého kontextu.
Rozhovor
Dobrý den. Jak se dnes máte?
Co se děje uvnitř?
Chatbot nejprve upraví vstup, hledá známá slova nebo vzory a podle jednoduchých pravidel vybere předem připravenou odpověď. Nepoužívá LLM.
Chatbot s LLM
Stejný typ rozhovoru, ale tentokrát odpověď nevzniká podle předem napsaných pravidel. Generuje ji jazykový model běžící lokálně v LM Studiu.
● Lokální modelLM StudioGoogle Gemma 4 E4B
Než začnete: Tato ukázka funguje jen při připojení k lokálnímu modelu. Spusťte LM Studio, načtěte model Google Gemma 4 E4B a zapněte jeho API server. Bez běžícího serveru a načteného modelu chatbot neodpoví.
Rozhovor s jazykovým modelem
Ahoj. Jsem jazykový model běžící lokálně na vašem počítači. Zkuste se mě na něco zeptat.
Připojení: zatím neověřeno
Co se děje uvnitř?
Váš text se z prohlížeče odešle na lokální API LM Studia. To ho předá načtenému jazykovému modelu. Model následně vygeneruje odpověď a ta se vrátí zpět do této stránky.
Váš text→LM Studio→LLM→generovaná odpověď
Tokeny a BPE
Nejdřív si ukážeme jednoduchý princip, jak lze text rozdělit na menší jednotky. K tomu poslouží algoritmus BPE.
Co je BPE?
BPE (Byte Pair Encoding) je algoritmus původně vytvořený pro kompresi textu. V roce 1994 ho popsal Philip Gage. Později se začal používat také při zpracování přirozeného jazyka, protože umožňuje pracovat s menšími částmi slov místo toho, aby model potřeboval samostatnou jednotku pro každé možné slovo.
Princip: algoritmus hledá nejčastější dvojici sousedních symbolů a spojí ji do jedné jednotky. Tento postup opakuje znovu a znovu.
Jak BPE hledá opakující se části textu?
Každá věta má vlastní ukázku. Začneme jednotlivými znaky a v každém příkladu zvlášť budeme spojovat nejčastější dvojici sousedních symbolů.
Příklad 1 · anglickyPrague is the capital city of the Czech Republic.
Nejčastější dvojice v anglickém příkladu
Příklad 2 · českyPraha je hlavní město České republiky.
Nejčastější dvojice v českém příkladu
Proč to děláme?
Kdyby měl model samostatný token pro každé možné slovo, potřeboval by obrovský slovník. Pomocí menších částí textu může stejné jednotky znovu používat v různých slovech.
Pozor: zjednodušená ukázka
Tato animace názorně ukazuje slučování znaků, ale nepředstavuje skutečný tokenizer jazykového modelu. Počty částí v angličtině a češtině proto nelze brát jako skutečné počty tokenů. Skutečný tokenizer používá naučený slovník a češtinu často rozdělí na více tokenů než angličtinu. Níže si můžete vyzkoušet tokenizer OpenAI.
Tokenizer OpenAI (GPT‑4o)
Zadejte text a prohlédněte si jeho skutečné tokeny a ID podle kódování používaného modelem GPT‑4o.
Tokenizer OpenAI se připravuje.
Tokenizace textu probíhá v prohlížeči bez API klíče nebo lokálního modelu. Pro načtení knihovny je potřeba internet. Zobrazené počty platí pro tokenizer GPT‑4o; formátovací tokeny celého API požadavku nejsou zahrnuté.
Token má své ID, ale pro neuronovou síť je důležitá hlavně jeho číselná reprezentace – embedding.
Od textu k číslům
LLM nakonec nepracuje přímo se slovy. Tokenizer převede text na posloupnost tokenů a každý token nahradí jeho ID. Model pak dostane něco, co vypadá například takto: [18423, 742, 9217, 3154, 6382, 13].
Podívejme se, co skutečně dostane model
Napište vlastní větu. Použijeme tokenizer GPT‑4o a ukážeme tokeny i jejich ID.
Tokenizer OpenAI je připraven.
Používáme kódování GPT‑4o. Tokenizace běží v prohlížeči; nevyžaduje API klíč ani lokální model. Pro první načtení knihovny je potřeba připojení k internetu. Otevřít OpenAI Tokenizer ↗
Důležité:
ID samo o sobě nemá význam jako „Praha“ nebo „pes“. Je to jen číslo, kterým model označuje konkrétní token ve své slovní zásobě. Teprve další části modelu s těmito čísly dále pracují.
Od tokenu k embeddingu a dál
Od tokenu k embeddingu
ID tokenu je jen identifikační číslo. Pro další práci se token převede na embedding – dlouhý vektor čísel, který zachycuje mnoho vlastností a vztahů, které se model během učení naučil s daným slovem nebo pojmem spojovat.
Embedding si můžeme představit jako číselný popis. Neznamená to, že každé číslo odpovídá jedné konkrétní vlastnosti. Informace je rozložená napříč mnoha rozměry.
Příklad: slovo KING
Slovo se převede na dlouhý seznam čísel. Tato čísla společně tvoří jeho embedding – číselnou reprezentaci toho, co se model o pojmu během učení naučil.
Co si můžeme pod čísly představit?
Pro představu si můžeme jednotlivé rozměry představit jako různé naučené souvislosti.
Od tokenu k embeddingu [kočka] → token → ID → embedding → vektor čísel
Teprve s touto číselnou reprezentací může neuronová síť s tokenem dál pracovat – například porovnávat jeho podobnost s jinými reprezentacemi nebo ho použít jako vstup pro další výpočty.
Odkud se vezmou čísla? Embedding jako místo v prostoru
ID tokenu je jen identifikační číslo. Samo o sobě neříká, co token znamená. Pro práci neuronové sítě se token převede na číselnou reprezentaci – embedding.
Začneme jednoduše ve 2D prostoru. Každý token si můžeme představit jako bod se dvěma souřadnicemi.
Vektor jako souřadnice bodu
Vzdálenost mezi tokeny0,00
Vektor je jednoduše seznam čísel. V 2D může například vypadat jako (0,82; 0,71) – dvě čísla určují souřadnice bodu. Čím jsou dva body blíž, tím podobnější jsou jejich číselné reprezentace.
Jak zjistíme, jak daleko jsou dva tokeny?
Nejdřív oba vektory odečteme. Tím získáme vektor rozdílu, který říká, o kolik se musí jeden bod posunout, aby se dostal k druhému.
vektor rozdílu = A − B
Potom zjistíme, jak dlouhý tento vektor je. Tato délka nám v našem jednoduchém 2D příkladu udává vzdálenost mezi tokeny.
Pythagorova věta nám v tomto 2D příkladu říká, že délku přepony pravoúhlého trojúhelníku můžeme spočítat z jeho dvou odvěsen. Tady jsou odvěsnami právě rozdíl v ose X a rozdíl v ose Y.
Jinými slovy: vezmeme rozdíl v ose X, rozdíl v ose Y a z nich spočítáme délku vektoru rozdílu.
token A → token B → rozdíl vektorů → jeho délka → vzdálenost
Skutečný embedding má ale mnohem více rozměrů – často stovky až tisíce. 2D prostor používáme jen proto, abychom si princip dokázali představit.
Důležitý rozdíl ID tokenu je jen adresa ve slovníku. Embedding je vektor – číselná reprezentace tokenu, ve které se mohou zachytit vztahy mezi tokeny.
token → ID → vektor / embedding → neuronová síť
Jak se embedding vůbec naučí? Word2Vec
Word2Vec je jednoduchý způsob, jak se z velkého množství textu naučit vektorové reprezentace slov. Základní myšlenka je jednoduchá: slova, která se objevují v podobných kontextech, získají podobné vektory.
Nejdřív si představme člověka jako vektor
Představme si, že osobnost člověka popíšeme několika čísly – například otevřenost, svědomitost, společenskost, citlivost a přátelskost. Každé číslo představuje jednu osu a dohromady tvoří vektor.
Otevřenost 0,79
Svědomitost 0,42
Společenskost 0,55
Citlivost 0,31
Přátelskost 0,74
Takový vektor nám neřekne všechno o člověku, ale umožní jeho vlastnosti číselně reprezentovat a porovnávat. Stejný princip používáme u slov a dalších objektů.
U slov ale tyto vlastnosti nepojmenováváme ručně. Model je získává z toho, jak se slova používají v textu. Jak říká známá myšlenka lingvisty J. R. Firtha: „Slovo poznáme podle společnosti, kterou udržuje.“ “You shall know a word by the company it keeps.” — J. R. Firth
Skip-gram
Zná jedno slovo a snaží se předpovědět slova, která se objevují v jeho okolí.
kočka → sedí, gauči, …
CBOW
Zná okolní slova a snaží se předpovědět chybějící slovo.
sedí + na + gauči → ?
text → kontext → předpověď → chyba → úprava parametrů
Model tento proces opakuje nad obrovským množstvím textu. Postupně upravuje své parametry tak, aby lépe rozlišoval, která slova spolu souvisejí. Výsledkem jsou vektory, ve kterých se slova s podobným používáním v textu často dostanou blízko sebe.
pes ↔ kočka ↔ kotě
Podobné kontexty → podobné vektorové reprezentace
Vektory nejsou jen čísla. Můžeme s nimi i počítat.
U klasických embeddingů lze některé vztahy přibližně zachytit pomocí sčítání a odečítání vektorů.
Podívejme se na embeddingy jako na barevnou tabulku
Pro názornost tady používáme jen tři dimenze – stejné tři, se kterými hned pod tabulkou počítáme.
1
2
3
KING
0,8
0,2
0,9
MAN
0,7
0,2
0,3
WOMAN
0,7
0,8
0,3
QUEEN
0,8
0,8
0,9
Barevná tabulka je pouze ilustrace. Ve skutečném embeddingu mají vektory obvykle stovky rozměrů a jednotlivé dimenze nemají takto jednoduše pojmenovaný význam.
Ukázka počítání s vektory
Pro názornost použijeme jen tři rozměry. Čísla jsou ilustrační; nejde o skutečné embeddingy těchto slov.
KING[0,8; 0,2; 0,9]
−
MAN[0,7; 0,2; 0,3]
+
WOMAN[0,7; 0,8; 0,3]
KING − MAN = [0,1; 0,0; 0,6]
[0,1; 0,0; 0,6] + WOMAN = [0,8; 0,8; 0,9]
Výsledek se může nacházet blízko embeddingu QUEEN. Neznamená to, že výpočet vytvoří přesně stejný vektor jako QUEEN.
Word2Vec vznikl v roce 2013. Je to historicky důležitý příklad toho, jak lze z textu naučit vektorové reprezentace slov. Moderní GPT modely používají mnohem složitější mechanismy.
Perceptron
Začneme úplně od základu: jedním jednoduchým neuronem – perceptronem.
Co je neuron?
Neuron přijme několik vstupů, každému přiřadí určitou váhu, hodnoty sečte a podle výsledku rozhodne. V nejjednodušším případě může být výsledkem pouze 0 nebo 1.
Perceptron jako jednoduché rozhodnutí
Máme dva vstupy. Perceptron podle nich rozhoduje, zda bude výstup 0, nebo 1.
x₁
vstup
→
× w₁
+
x₂
vstup
→
× w₂
→
Σ + práh
→
0 / 1
Jednoduše řečeno:
neuron se podívá na vstupy, zkombinuje je podle jejich vah a rozhodne.
výstup = 1, pokud w₁ × x₁ + w₂ × x₂ + b > 0
jinak výstup = 0
Váha
Jak moc tento vstup ovlivňuje výsledek?
Perceptron má pro každý vstup vlastní váhu. Váha určuje, jak silně se daný vstup projeví ve výsledku. Během učení se tyto váhy upravují podle toho, jak se neuron mýlí.
Bias
Jak přísný má neuron být?
Bias je číslo, které se k součtu přičte. Funguje jako posunutí rozhodovací hranice. Může být záporný, kladný i nulový — podle toho, co se neuron během učení naučí.
záporný bias → hranice se posune jedním směrem kladný bias → hranice se posune opačným směrem
Zapamatuj si jednoduchou představu: váhy říkají „jak moc na tom kterém vstupu záleží“ a bias říká „jak moc musí být celkový signál silný, aby neuron reagoval“.
Bias nemusí být záporný. Je to jen další parametr neuronu. Při učení může vyjít záporný, kladný nebo blízký nule.
Praktický příklad: perceptron jako AND
Topení zapne jen tehdy, když platí obě podmínky.
Představ si chytré topení.
Má dva vstupy: x₁ = je venku zima? a x₂ = je někdo doma?.
Jde o zjednodušené výukové pravidlo: topení zapni pouze tehdy, když je venku zima a zároveň je někdo doma.
je zima (x₁)
někdo doma (x₂)
topení
0
0
0
0
1
0
1
0
0
1
1
1
Co se zde děje?
Obě podmínky převede na čísla 0 nebo 1 a sečte je. Protože mají vstupy v tomto příkladu stejnou váhu, může součet vyjít 0 (neplatí žádná podmínka), 1 (platí jedna) nebo 2 (platí obě). Práh určuje, od jakého součtu neuron vrátí 1. Pro AND musí ležet mezi 1 a 2: součet 1 ještě nestačí, součet 2 už ano.
x₁ = „je zima“, x₂ = „někdo je doma“
výstup = 1, když x₁ + x₂ − 1,5 > 0
jinak výstup = 0
Proč právě 1,5? Je to pohodlný střed mezi 1 a 2. Fungovalo by i jiné číslo mezi nimi, například 1,2. Práh 0,5 by naopak zapnul výstup už při součtu 1 — tedy když platí jen jedna podmínka — a pravidlo by se změnilo na OR. V zápisu výše se práh 1,5 objeví jako bias −1,5: neuron vrátí 1, když x₁ + x₂ − 1,5 > 0.
Jak se perceptron učí?
Dostává příklady se správným výsledkem a porovnává je se svou předpovědí. Když spamový e-mail označí jako běžný, váhy důležitých znaků zvýší. Když běžný e-mail označí jako spam, jejich vliv sníží. Takto postupuje přes příklady opakovaně, dokud je nerozděluje správně — pokud je lze oddělit přímkou.
Rozšíření: složitější rozhodování o spamu
V praxi může perceptron zohlednit více znaků e-mailu, nejen dvě podmínky z příkladu AND.
✉
Nová zpráva„Vyhráli jste 1 000 000 Kč!“
„výhra“vstup x₁
podezřelý odkazvstup x₂
neznámý odesílatelvstup x₃
→
Σ váhy
perceptron
→
SPAMvýstup = 1
Co se zde děje?
Text se nejdřív převede na příznaky, například zda obsahuje slovo „výhra“, podezřelý odkaz nebo neznámého odesílatele. Každý příznak je jeden vstup. Perceptron jim přiřadí různé váhy, zkombinuje je a rozhodne, zda zprávu označí jako spam.
Interaktivně: co dělají váhy a bias?
Teď už neposouváme vstupy. Vstup představuje konkrétní e-mail a zůstává stejný. Posouvej váhy a bias a sleduj, jak se mění rozhodovací hranice.
Tohle je důležité: během učení se nemění samotný e-mail. Mění se parametry neuronu – jeho váhy a bias. Tím se posouvá hranice, podle které neuron rozhoduje.
A co když vstupem není slovo, ale token?
Perceptron neumí pracovat přímo se slovem „kočka“. Potřebuje čísla. Tady navážeme na předchozí kapitolu: token dostane své ID a potom svou číselnou reprezentaci – embedding.
Token„kočka“
→
Embedding[0,82 ; 0,71 ; 0,34]
→
Perceptrončíselné vstupy × váhy
0,82 × 0,5 = 0,41
0,71 × 0,8 = 0,568
0,34 × −0,2 = −0,068
Perceptron čísla zkombinuje
0,41 + 0,568 − 0,068 − 0,4 = 0,51
Pokud je výsledek nad prahem, například nad 0, dostaneme 1.
Tohle je hlavní spojení: embedding říká, jak token reprezentujeme čísly. Váhy neuronu říkají, jak důležité jsou jednotlivé vstupy pro konkrétní rozhodnutí. Skutečné LLM samozřejmě používají obrovské množství neuronů a vrstev; tento příklad je zjednodušený, aby byl princip vidět.
A tady už jsme velmi blízko tomu, jak funguje LLM
Představ si začátek věty: „Kočka sedí na …“. Z tokenů vytvoříme embeddingy a neuronová síť z nich počítá, jaký další token by mohl následovat. Jeden perceptron je na takovou úlohu příliš jednoduchý – umí jen jednoduché rozhodnutí. Ale stejný základní princip čísla → váhy → výpočet → výstup se ve velkých neuronových sítích opakuje mnohokrát.
Perceptron tedy není ChatGPT. Je to jeden z jednoduchých stavebních principů, na kterých můžeme pochopit, jak se později dostaneme k předvídání dalšího tokenu.
K čemu je to dobré?
Perceptron může dělat jednoduchá rozhodnutí typu ano/ne, 0/1 nebo patří/nepatří do skupiny. Jeden neuron ale zvládne jen jednoduché úlohy.
A co když jeden neuron nestačí?
Pak můžeme spojit více neuronů dohromady. Vznikne neuronová síť. Více vrstev a více neuronů umožňuje řešit stále složitější úlohy.
perceptron→více neuronů→neuronová síť→hluboká síť
Neuronová síť
Jeden perceptron zvládne jednoduché rozhodnutí. Co když je problém složitější? Spojíme více neuronů dohromady.
Od perceptronu k síti
Každý neuron sám o sobě provede jednoduchý výpočet. Když je ale spojíme, výstup jednoho neuronu se může stát vstupem pro další neuron. Tím vzniká neuronová síť.
Jednoduchá neuronová síť
Změňte vlastnosti konkrétního e-mailu a sledujte, jak informace prochází jednotlivými vrstvami.
Co zde měníme? Slidery představují vstupy – tedy vlastnosti konkrétního e-mailu. Váhy a bias jsou zde pevné, aby bylo vidět, jak stejná síť reaguje na různé e-maily. Při skutečném učení se naopak upravují právě váhy a bias - e-maily se mění samy o sobě a neuron se učí z jejich výsledků.
Konkrétní příklad: Představme si e-mail „Vyhráli jste iPhone, klikněte zde!“.
Vstupy mohou být například: výhra = 1, podezřelý odkaz = 1, neznámý odesílatel = 0. Tyto hodnoty pošleme do sítě. Váhy a bias zůstávají stejné, takže sledujeme, jak síť zpracuje právě tento e-mail.
Když potom nastavíme vstupy například na 0 / 0 / 1, simulujeme jiný e-mail. Síť je stále stejná, ale protože dostala jiné vstupy, může dojít k jinému výsledku.
Při učení je situace opačná: ukazujeme síti mnoho různých e-mailů a říkáme jí, jestli jde o SPAM nebo NE-SPAM. Síť potom postupně upravuje své váhy a bias, aby se její výsledky zlepšovaly.
VSTUPY
„výhra“x₁
podezřelý odkazx₂
neznámý odesílatelx₃
SKRYTÁ VRSTVA
h₁
h₂
h₃
VÝSTUP
y
SPAM / NE-SPAM
Vyzkoušejte konkrétní e-mailKliknutím nastavíte vstupy sítě podle jeho vlastností.
1. VstupyDo sítě přijdou vlastnosti konkrétního e-mailu.
→
2. Skrytá vrstvaNeurony kombinují vstupy pomocí svých vah.
→
3. VýstupSíť udělá rozhodnutí.
Jak neuron rozhoduje? Úplně jednoduše
Neuron dostane několik informací a každé z nich přikládá jinou důležitost. Této důležitosti říkáme váha.
U našeho e-mailu může být například „výhra“ jen malý signál, „podezřelý odkaz“ větší signál a „neznámý odesílatel“ ještě větší. Neuron tyto vlivy spojí a podle výsledku pošle dál svůj výstup.
výhra malý vlivpodezřelý odkaz větší vlivneznámý odesílatel velký vliv→ NEURON →SPAM?
A protože máme více neuronů, každý se může naučit dívat se na vstupy trochu jinak. Jeden může více reagovat na odkazy, jiný na slova a další na informace o odesílateli.
Jak se to opravdu počítá?
Neuron vezme každý vstup, vynásobí ho jeho vahou, všechno sečte a výsledek převede na číslo mezi 0 a 1.
vstup × váha + vstup × váha + vstup × váha → výsledek neuronu
Například: 0,1 × 5 + 0,4 × 4 + 1,0 × 2 − 5 = −0,9. Potom aktivační funkce (sigmoid) převede −0,9 přibližně na 0,29. Neuron tedy reaguje jen slabě.
Důležité: v tomto demu jsou váhy nastavené ručně jen pro názornou ukázku. Ve skutečné neuronové síti se váhy během učení postupně upravují podle toho, jak moc se síť spletla.
Co se změnilo oproti perceptronu?
Už nemáme jeden neuron. Máme více neuronů propojených dohromady. Každý neuron ve skryté vrstvě dostává informace ze všech vstupů a výstupní neuron zase dostává informace ze všech neuronů před sebou.
Proč jsou neuronové sítě tak důležité?
Přidáním dalších neuronů a dalších vrstev dokážeme postupně řešit mnohem složitější úlohy – například rozpoznávání obrazu, řeči nebo textu. Právě na podobném principu stojí i moderní modely.
07 — JAK SE MODEL UČÍ
Jak se neuronová síť naučí pracovat s jazykem?
U moderního jazykového modelu nejde o jedno jediné „učení“. Model prochází několika různými fázemi, které postupně mění jeho schopnosti a chování.
Jednoduchá představa:
nejdřív model nasává obrovské množství textu → potom se ladí na konkrétní úkoly → učí se lépe reagovat na lidské požadavky → nakonec se systematicky hledají jeho slabá místa.
1
Pretraining — model nasává svět
Model dostane obrovské množství textů a učí se jejich statistické souvislosti. Nikdo mu ručně neoznačuje každý podmět, sloveso nebo význam věty.
„Mám rád čokoládový …“ Model se z mnoha podobných příkladů učí, jaké tokeny mají v daném kontextu následovat.
Důležité: u LLM se přesněji mluví o self-supervised learning (samoučení), ne o klasickém učení bez učitele. Správná odpověď vzniká z textu samotného — například z dalšího tokenu.
↓
2
Fine-tuning — model se učí poslouchat instrukce
Model dostává připravené příklady typu instrukce → žádoucí odpověď. Jeho parametry se dále upravují, aby lépe zvládal konkrétní způsob používání.
Uživatel: „Shrň tento text do tří vět.“ Ukázková odpověď: stručné a relevantní shrnutí.
↓
3
RLHF — učení z lidské zpětné vazby
Lidé porovnávají nebo hodnotí různé odpovědi modelu. Model se potom ladí tak, aby jeho chování lépe odpovídalo požadovaným vlastnostem.
Helpfulnápomocný
Harmlessneškodný
Honestupřímný
Tři H jsou užitečná zkratka pro představu cílového chování. Konkrétní tréninkové postupy moderních modelů se mohou lišit.
↓
4
Red teaming — zkoušíme model rozbít
Specializovaní testeři hledají problematické situace, ve kterých by model mohl vytvořit nebezpečnou, nevhodnou nebo jinak nežádoucí odpověď.
Tester: hledá hraniční a neočekávané scénáře. Cíl: odhalit slabá místa a následně je řešit dalšími úpravami, daty nebo ochrannými mechanismy.
Celý proces tedy není jen „naučení slov“.
Základ vzniká při pretrainingu. Fine-tuning a další metody potom model postupně přizpůsobují tomu, jak má reagovat na člověka. Red teaming a testování hledají místa, kde se chová problematicky.
A co se při tom matematicky mění?
Během trénování se upravují parametry neuronové sítě — především váhy a biasy. Model porovnává svůj výsledek s požadovaným cílem a pomocí optimalizačních metod postupně upravuje parametry tak, aby se chyba snižovala. U hlubokých sítí se k výpočtu podílu jednotlivých parametrů používá například backpropagation.
PRAKTICKÁ ČÁST
Příklady z praxe
Prompty, reálné situace a soubory, na kterých si vyzkoušíte práci s AI.
K vyzkoušení zdarma
Dvě krátké ukázky, do kterých se můžete pustit hned.
Analýza e-mailuVolně přístupné
Shrnutí e-mailu s AI
Nechte AI vytáhnout podstatné informace z nabídky kurzu a navrhnout odpověď. Potom společně rozeberte, co model pochopil správně a co záviselo na vašem zadání.
⏱ 10 minut · úroveň: začátečník
Otevřít zadání
Postup: Otevřete si nový chat a vložte do něj následující zadání i e-mail.
Vytvořte shrnutí e-mailu.
Klíčové body uveďte ve formě odrážek.
Identifikujte úkoly nebo otázky, které je potřeba zodpovědět.
Nechte AI navrhnout možnou odpověď na tento e-mail.
E-mail od Honzy
Ahoj Petře,
doufám, že se máš fajn. Už je to nějaký pátek, co jsme se neviděli. Vzpomněl jsem si na Tebe, protože jsem nedávno dokončil nový kurz o základech umělé inteligence a myslím, že by Tě to mohlo zajímat.
Kurz je navržený pro začátečníky a pokrývá všechno od strojového učení až po neuronové sítě. Myslím, že by to mohlo být super pro Tvůj tým, zvlášť když jste nedávno mluvili o tom, že chcete AI více využívat.
Mám naplánované termíny na 15. a 16. července, pak další 22. a 23. srpna. Každý běh trvá dva dny, vždy od 9 do 17 hodin. Cena je 12 000 Kč za osobu, ale když pošleš víc lidí, můžu Ti dát slevu. Třeba při 5 a více účastnících by to vyšlo na 10 500 Kč za osobu.
Místo konání je v našem novém školicím centru v Praze na Vinohradech, ale kdybys chtěl, můžu to udělat i u vás ve firmě. To by pak vyšlo o něco dráž kvůli cestovním nákladům, řekněme plus 5000 Kč za celý kurz.
Co ty na to? Myslíš, že by to pro vás mohlo být zajímavé? Jestli jo, dej mi vědět a můžeme to probrat detailněji. Klidně mi zavolej na 123 456 789 nebo odpověz na tento email.
Jinak doufám, že se Ti daří dobře a že se třeba brzy potkáme na pivko!
Měj se, Honza
PS: Skoro bych zapomněl - když se přihlásíte do konce měsíce, dostanete zdarma přístup k online materiálům v hodnotě 3000 Kč. Jen tak mimochodem.
Otevřete si nový chat.
Vytvořte shrnutí e-mailu.
Klíčové body uveďte ve formě odrážek.
Identifikujte úkoly nebo otázky, které je potřeba zodpovědět.
Nechte AI navrhnout možnou odpověď na tento e-mail.
E-mail:
Ahoj Petře,
doufám, že se máš fajn. Už je to nějaký pátek, co jsme se neviděli. Vzpomněl jsem si na Tebe, protože jsem nedávno dokončil nový kurz o základech umělé inteligence a myslím, že by Tě to mohlo zajímat.
Kurz je navržený pro začátečníky a pokrývá všechno od strojového učení až po neuronové sítě. Myslím, že by to mohlo být super pro Tvůj tým, zvlášť když jste nedávno mluvili o tom, že chcete AI více využívat.
Mám naplánované termíny na 15. a 16. července, pak další 22. a 23. srpna. Každý běh trvá dva dny, vždy od 9 do 17 hodin. Cena je 12 000 Kč za osobu, ale když pošleš víc lidí, můžu Ti dát slevu. Třeba při 5 a více účastnících by to vyšlo na 10 500 Kč za osobu.
Místo konání je v našem novém školicím centru v Praze na Vinohradech, ale kdybys chtěl, můžu to udělat i u vás ve firmě. To by pak vyšlo o něco dráž kvůli cestovním nákladům, řekněme plus 5000 Kč za celý kurz.
Co ty na to? Myslíš, že by to pro vás mohlo být zajímavé? Jestli jo, dej mi vědět a můžeme to probrat detailněji. Klidně mi zavolej na 123 456 789 nebo odpověz na tento email.
Jinak doufám, že se Ti daří dobře a že se třeba brzy potkáme na pivko!
Měj se, Honza
PS: Skoro bych zapomněl - když se přihlásíte do konce měsíce, dostanete zdarma přístup k online materiálům v hodnotě 3000 Kč. Jen tak mimochodem.
Otevřít otázky k diskusi
Diskuse po cvičení
Jak přesný byl model v analýze e-mailu? Které důležité informace případně přehlédl?
Jaký model jste použili?
Z jakého pohledu jste e-mail analyzovali — jako příjemce, nebo jako odesílatel?
Jaký tón jste zvolili pro návrh odpovědi — formální, nebo neformální?
Jaké další instrukce jste zadali? Měl návrh nabídku přijmout, odmítnout, nebo si nejprve vyžádat další informace?
LLM × vyhledáváníVolně přístupné
Je na Letišti Praha pošta?
Jednoduchá otázka, u které se informace v čase změnila. Porovnejte odpověď LLM s aktuálním oficiálním zdrojem.
⏱ 10 minut · úroveň: začátečník
Otevřít zadání
Cíl: Zjistit, odkud odpověď pochází a zda je stále aktuální.
1. Zeptejte se LLM bez vyhledávání
Otevřete nový chat a vypněte vyhledávání na webu, pokud ho asistent nabízí. Vložte dotaz:
Je na Letišti Václava Havla Praha pobočka České pošty? Pokud ano, kde ji najdu a jaká je otevírací doba? Odpověz podle svých znalostí.
2. Ověřte odpověď vyhledávačem
Zadejte stejnou otázku do vyhledávače. Otevřete oficiální stránku Letiště Praha a zjistěte, co uvádí nyní. Všímejte si také data zdroje.
Letiště Praha pošta
Otevřít vysvětlení a otázky k diskusi
Co zjistíme z aktuálních zdrojů?
Aktuální FAQ na oficiálním webu Letiště Praha na otázku, zda je na letišti pošta, odpovídá, že nejbližší pobočka je v OC Šestka. Starší zpráva České pošty z roku 2017 naopak uvádí pobočku Praha 68 v prostoru mezi Terminály 1 a 2. Starší informace tak může stále působit věrohodně, ale nemusí popisovat současný stav.
Jak to souvisí s LLM a vyhledávačem?
LLM bez webového nástroje vytváří odpověď z naučených vzorců a z kontextu chatu; jeho informace se při každém dotazu samy neobnoví z webu. Vyhledávač prohledává svůj index stránek a nabídne odkazy, které je potřeba posoudit podle důvěryhodnosti a aktuálnosti. Některé asistenty mohou vyhledávač použít jako nástroj a nalezené informace následně shrnout.
Otázky k diskusi
Co odpověděl LLM bez vyhledávání? Uvedl zdroj nebo datum informace?
Co říká aktuální oficiální stránka letiště?
Proč může starší oficiální stránka vést k jiné odpovědi?
Jak byste ověřili, zda se informace nezměnila?
Co se změnilo, když jste použili asistenta s webovým vyhledáváním?
Pro účastníky školení
Rozšířené ukázky, soubory a pracovní postupy určené účastníkům.
Práce s daty🔒 Pro účastníky
Z textu do přehledné tabulky
Převeďte nestrukturované informace do sloupců a ověřte, co AI správně vytáhla a co si domyslela.