token

Vojtěch Bruk Vojtěch Bruk 7 min čtení

Co je token v AI a proč na něm záleží

Token je základní jednotka textu nebo jiného vstupu, na kterou AI model rozděluje data před jejich zpracováním. Token nemusí být celé slovo. Může jít o krátké slovo, část delšího slova, číslo, interpunkční znaménko nebo jiný úsek znaků. Jazykový model tedy nečte věty stejným způsobem jako člověk. Nejprve je převede na posloupnost tokenů a teprve s ní dále počítá. Počet tokenů ovlivňuje, kolik textu se vejde do kontextového okna, jak dlouhou odpověď může model vytvořit i kolik může stát jeho použití přes API.

Jak tokeny a tokenizace fungují:

Než jazykový model zpracuje prompt, projde text tokenizerem. To je část systému, která text rozdělí podle slovníku a pravidel konkrétního modelu. Výsledkem není seznam slov, ale seznam menších jednotek. Každá z nich dostane číselné ID, se kterým už umí neuronová síť pracovat.

  • Rozdělení vstupu: Tokenizer rozdělí větu na části. Běžné krátké slovo může zůstat celé, zatímco dlouhé nebo neobvyklé slovo se může rozpadnout na několik tokenů.
  • Převod na čísla: Každému tokenu odpovídá identifikátor ve slovníku modelu. Model nepracuje přímo s písmeny a slovy, ale s číselnými reprezentacemi.
  • Zpracování kontextu: Model porovnává vztahy mezi tokeny v celém dostupném kontextu. Díky tomu dokáže odhadnout význam věty, navázat na předchozí informace a zvolit další vhodný token.
  • Generování odpovědi: Výstup vzniká postupně. Model vždy odhadne pravděpodobné pokračování, vybere další token a proces opakuje, dokud odpověď nedokončí nebo nenarazí na limit.
  • Převod zpět na text: Vygenerovaná číselná ID se dekódují na slova, mezery a znaménka, která vidí uživatel.

Tokenizace je kompromis mezi zpracováním jednotlivých znaků a celých slov. Kdyby model používal pouze znaky, posloupnosti by byly zbytečně dlouhé. Kdyby používal jen celá slova, obtížně by zvládal nové názvy, překlepy, skloňování nebo složené výrazy. Části slov mu dovolují pracovat efektivně a zároveň si poradit i s výrazem, který v trénovacích datech neviděl přesně v dané podobě.

Token není totéž co slovo:

Pravidlo „jeden token rovná se jedno slovo“ neplatí. Jednoduché slovo může představovat jeden token, ale složitější české slovo se často rozdělí na několik částí. Samostatným tokenem nebo jeho součástí může být také mezera, čárka, emoji, část URL adresy nebo úsek zdrojového kódu. Přesné rozdělení závisí na tokenizeru daného modelu, takže stejná věta může mít u dvou modelů odlišný počet tokenů.

To je důležité zejména v češtině. Máme skloňování, časování, diakritiku a mnoho tvarů jednoho slova. Tokenizery navíc bývají velmi dobře optimalizované pro často zastoupenou angličtinu. Český překlad proto nemusí spotřebovat stejný počet tokenů jako anglický originál, i když obě verze sdělují totéž. Univerzální převod mezi počtem slov, znaků a tokenů neexistuje. Pro přesné číslo je potřeba použít tokenizer konkrétního modelu.

Vstupní a výstupní tokeny:

U AI služeb se běžně rozlišují vstupní a výstupní tokeny. Vstupní tokeny zahrnují vše, co model dostane před vytvořením odpovědi: systémové instrukce, uživatelský prompt, historii konverzace, vložené dokumenty, výsledky vyhledávání i popisy dostupných nástrojů. Kvalitní prompt engineering proto není jen o přidávání dalších instrukcí. Důležité je předat modelu relevantní kontext bez zbytečného balastu.

Výstupní tokeny jsou ty, které model postupně vygeneruje. Poskytovatelé API často účtují vstup a výstup odděleně, protože generování odpovědi má jiné výpočetní nároky než načtení vstupu. V běžném chatovacím rozhraní uživatel počet tokenů většinou přímo neplatí, ale může narazit na omezení délky konverzace, dokumentu nebo odpovědi.

Tokeny v praxi:

Představte si, že chcete pomocí AI shrnout sto stran smluv. Samotný pokyn „shrň dokument“ zabere jen několik tokenů, ale přiložený text jich může obsahovat desítky tisíc. Do stejného limitu se přitom musí vejít instrukce, dokument i prostor pro výsledek. Pokud se vše nevejde, aplikace musí dokument rozdělit na části, vybrat pouze relevantní úseky nebo použít jiné kontextové řešení.

Podobně funguje firemní chatbot. Každý dotaz může do modelu odesílat systémové instrukce, historii chatu a vyhledané pasáže z interní znalostní báze. Čím více materiálu aplikace bez rozmyslu přikládá, tím více tokenů spotřebuje a tím více roste cena i prodleva. Delší kontext navíc automaticky nezaručuje lepší odpověď. Nepodstatné informace mohou důležitý pokyn naopak utopit.

Tokeny hrají roli také u AI agentů. Agent může v jednom úkolu opakovaně číst instrukce, volat nástroje a vracet jejich výsledky zpět modelu. Každý takový krok přidává další tokeny. Dobře navržený workflow proto průběžně zkracuje historii, ukládá trvalá data mimo prompt a načítá jen to, co model právě potřebuje.

Dalším příkladem je práce se zdrojovým kódem. Krátký soubor s běžnými funkcemi může být pro tokenizer úspornější než stejně dlouhý blok plný identifikátorů, hashů, JSON dat nebo URL adres. Při odhadu nákladů proto nestačí spočítat stránky či slova. Rozhoduje skutečná tokenizace obsahu.

Proč jsou tokeny důležité:

Pro běžného uživatele token vysvětluje hlavně tři věci. Zaprvé, proč AI někdy zapomene starší část dlouhé konverzace. Zadruhé, proč se do jednoho požadavku nevejde libovolně velký dokument. Zatřetí, proč stručnější a lépe vybraný kontext často funguje lépe než obrovský prompt se vším, co bylo po ruce.

Pro vývojáře a firmy jsou tokeny navíc jednotkou kapacity a nákladů. Při tisících nebo milionech požadavků se projeví každá opakovaná instrukce, zbytečně přiložený dokument i příliš dlouhá odpověď. Optimalizace však neznamená pouze škrtat text. Cílem je dodat modelu dost informací pro spolehlivý výsledek a neplatit za obsah, který k rozhodnutí nepotřebuje.

Znalost tokenů pomáhá také při porovnávání modelů. Nestačí se podívat na maximální délku kontextu nebo cenu za milion tokenů. Dva modely mohou tentýž český text rozdělit odlišně a zároveň poskytovat jinou kvalitu výstupu. Smysluplné srovnání proto vychází z reálného úkolu: kolik stojí jeho úspěšné dokončení, jak dlouho trvá a jak často je potřeba výsledek opravovat.

Časté otázky:

Kolik slov je jeden token?

Pevný převod neexistuje. Jeden token může být celé slovo, část slova, interpunkce nebo jiný úsek znaků. Přibližné poměry se liší podle jazyka, obsahu a konkrétního tokenizeru. Přesný počet zjistíte pouze nástrojem určeným pro daný model.

Počítá se do tokenů i odpověď AI?

Ano. Služby obvykle sledují vstupní tokeny i tokeny vygenerované ve výstupu. Do vstupu se může započítat také historie konverzace, systémové instrukce, dokumenty a výsledky nástrojů.

Proč delší prompt stojí více?

Protože model musí zpracovat více vstupních tokenů. Pokud dlouhý prompt vede také k delší odpovědi, roste i počet výstupních tokenů. U API se obě části obvykle promítají do ceny.

Je méně tokenů vždy lepší?

Ne. Příliš krátký prompt může postrádat důležitý kontext a vést ke špatné odpovědi. Smyslem je odstranit opakování a nerelevantní obsah, ale zachovat informace, které model skutečně potřebuje.