Як мовна модель бачить текст: токени, а не букви

Перш ніж ChatGPT чи інший ШІ-чат відповість, він ріже ваш текст на токени — шматки слів зі свого словника. Спробуйте на власному тексті й подивіться, скільки токенів виходить.
Коли ви пишете запит у ChatGPT, Gemini чи Claude, модель не читає його літера за літерою, як людина. Спочатку текст ріжуть на токени — шматки зі словника моделі: цілі слова, частини слів, окремі пробіли чи розділові знаки. Лише після цього модель починає щось «розуміти» — точніше, передбачати, який токен має йти далі.
Спробувати це на власному тексті можна одразу під статтею — інтерактивний токенізатор нижче.
Що таке токен
Токен — не те саме, що слово. Коротке поширене слово часто є одним токеном цілком, а рідкісне чи складне слово токенізатор ріже на кілька шматків. Цифри, пробіли й розділові знаки — теж окремі токени.
У словнику токенізатора, яким користується ChatGPT на моделях GPT-4o і новіших (він називається o200k_base), приблизно 200 тисяч таких шматків. У старіших моделей OpenAI словник був меншим — близько 100 тисяч токенів. Інші компанії використовують власні токенізатори зі своїми словниками, тож однаковий текст у ChatGPT, Gemini та Claude може розбитися на дещо іншу кількість токенів — принцип той самий, конкретні числа відрізняються.
Чому це взагалі важливо
- Ціна. Платний доступ до моделей через API зазвичай рахується за токенами, а не за символами чи словами — більше токенів означає вищу вартість запиту.
- Ліміт контексту. Кожна модель «пам’ятає» розмову в межах фіксованої кількості токенів. Довгий текст швидше впирається в цей ліміт, ніж здається, якщо рахувати на слова.
- Українська мова часто обходиться дорожче за англійську. Словники токенізаторів навчають здебільшого на англомовних текстах, тому звичайне англійське слово частіше стає одним токеном, а українське — розпадається на кілька. Той самий зміст українською може зайняти помітно більше токенів, ніж англійською, — а отже, і коштувати дорожче, і швидше заповнювати контекст. Нові, більші словники (на кшталт
o200k_base) цю різницю трохи зменшили, але не прибрали повністю.
Що відбувається після токенізації
Коротко, без зайвої математики: кожен токен модель перетворює на список чисел (його називають ембедінгом) — щось на кшталт координат токена в уявному просторі значень. Далі механізм, який називають увагою (attention), дає змозі моделі враховувати, які інші токени в тексті пов’язані між собою, перш ніж передбачити наступний токен. Це повторюється десятки разів поспіль (через десятки «шарів» мережі), і лише в самому кінці модель обирає, яке слово написати далі.
Саме тому ChatGPT, по суті, не «знає» фактів у людському розумінні — він дуже добре передбачає, який токен природно йде за попередніми, навчившись цьому на величезній кількості тексту.
Джерело і дякую
Словник o200k_base, який використовує демонстрація вище, — той самий токенізатор, яким офіційно користуються моделі OpenAI родини GPT-4o (бібліотека tiktoken, офіційний токенізатор OpenAI). Натхненням для цієї статті став чудовий український проєкт LLM Atlas, який показує внутрішню будову мовних моделей ще детальніше — радимо глянути, якщо тема зацікавила.
Цікаво, які ШІ-чати спробувати на практиці? Дивіться нашу добірку ШІ-чатів і каталог інструментів.
Спробуйте самі
Словник токенізатора — той самий, що в GPT-4o/GPT-5 (o200k_base, ~200 тис. токенів). У Claude, Gemini та інших моделей словники інші й дадуть трохи інші числа, але загальний принцип — той самий. Клацни на будь-який токен вище, щоб побачити його ембединг нижче.
Шлях токена через модель
Клацай на кроки, щоб побачити коротке пояснення.
1. Токенізація
Текст ріжуть на токени зі словника (те, що ти щойно побачив вище).
2. Ембединг
Кожен токен перетворюють на вектор чисел — координати його «значення» у величезному уявному просторі.
3. Позиція
До вектора додають інформацію про місце токена в реченні — без цього модель не відрізнила б «собака вкусила людину» від «людина вкусила собаку».
4. Увага (attention)
Модель «дивиться» на інші токени тексту й вирішує, які з них найважливіші для розуміння поточного.
5. MLP-шар
Невелика нейромережа обробляє результат уваги, додаючи ще більше «розуміння» контексту.
6. Повторити × десятки разів
Кроки 3–5 повторюються в десятках послідовних блоків (у великих моделей — до сотні) — кожен уточнює розуміння ще трохи.
7. Ймовірності наступного токена
Останній крок переводить результат у список ймовірностей: який токен зі словника природно йде далі.
8. Токен обрано → повторити
Модель додає обраний токен до тексту й починає все заново для наступного — так, по одному токену, народжується вся відповідь.