Что такое токены в AI и как работают языковые модели
Ключевые тезисы:
Компьютер не работает с буквами, только с числами.
Токен — это не буква и не слово, а статистически частый "кусок" текста, которым оперирует модель.
Большая языковая модель (LLM) — это огромный файл с числами (параметрами) и программа, которая их перемножает.
"Понимание" смысла в модели — это побочный эффект обучения угадывать следующее слово, а не запрограммированное знание.
Плата за токены взимается потому, что это реальная единица вычислений для модели.
Как компьютер видит текст
Внутри компьютера нет букв, только числа. Процессор работает с транзисторами, которые могут быть в состоянии 0 или 1.
- UTF-8 — это международная таблица, где каждой букве, знаку препинания или символу присвоено своё число.
- Например, слово "CAT" в памяти компьютера — это числа 909, 907 и 116, которые в двоичном коде занимают байты (по 8 нулей и единиц).
Что такое токен и зачем он нужен
Работать с текстом по байтам (буквам) для модели неэффективно — слишком мелко, долго и дорого.
- Токен — это блок текста, который модель считает одной единицей. Его размер определяется статистикой частоты.
- Токенизатор — это отдельная программа перед моделью, которая режет входящий текст на эти кусочки.
Как хранятся токены
Токены физически хранятся на серверах в двух файлах:
- Словарь токенов (обычно в формате JSON): Список всех "кусочков" и их уникальных номеров.
- Правила слияния (текстовый файл): Алгоритм, по которому буквы склеиваются в токены на основе частоты совпадений.
Эти файлы создаются один раз при подготовке модели и больше не меняются.
История алгоритма: от сжатия файлов до AI
Алгоритм создания токенов — очень старый и был придуман не для AI.
- 1994 год: Американский инженер Филип Гейдж опубликовал алгоритм Pair Encoding (BPE) для сжатия данных. Идея: находить частые пары байтов и заменять их одним значком.
- 2012 год: Инженеры Google независимо переоткрыли идею для голосового поиска в японском и корейском (где нет пробелов между словами).
- 2015 год: Учёные из Эдинбургского университета применили BPE наоборот — не для сжатия, а для создания словаря частых кусков слов для машинного перевода.
- 2019 год: OpenAI доработала BPE и встроила его в GPT-2, после чего этот подход стал стандартом для всех больших языковых моделей.
Что такое "модель" на самом деле
- Модель — это просто большой файл на сервере (сотни гигабайт), содержащий миллиарды чисел с плавающей точкой (так называемые веса или параметры).
- К этому файлу прилагается программа (обычно на Python, ~1000 строк кода), которая умеет только одно: брать числа из файла и перемножать их по математическим формулам.
Embedding (Векторное представление)
Каждому токену в модели соответствует не одно число, а набор из тысяч чисел (например, 4000).
- Embedding (вектор, эмбеддинг) — это набор чисел, представляющий токен в многомерном пространстве.
- Одно число само по себе ничего не значит. Смысл слова "прячется" в положении точки этого слова относительно точек других слов в этом многомерном пространстве.
- Например, точки слов "кот" и "собака" в пространстве будут близко, потому что у них много общих "соседей" (лапа, хвост, миска), а точка "самолёт" будет далеко.
Как модель "учится" и откуда берётся "понимание"
- Начало: Таблица эмбеддингов заполняется абсолютно случайными числами. Модель ничего не умеет.
- Обучение: Модели подают гигантские объёмы текста и заставляют угадывать следующее слово в последовательности (например, "Чёрный кот сидит на ...").
- Коррекция: Когда модель ошибается, программа вычисляет, как нужно чуть-чуть сдвинуть каждое из миллиардов чисел в файле, чтобы ответ стал ближе к правильному.
- Формирование смысла: Слова, которые встречаются в похожем контексте (например, "кот" и "собака"), получают похожие корректировки. Их точки в пространстве начинают двигаться в одном направлении и сближаются.
Ключевой вывод: Модель никто не учил понимать язык. Её учили только угадывать следующее слово. Смысл, связи и "понимание" появились сами собой, как геометрический побочный эффект этой оптимизации. Это не сознание, а математическая структура, похожая на понимание.
Почему платят за токены
- Токен — это единственная единица, которой модель оперирует внутри. Все вычисления (перемножения векторов) происходят над токенами.
- Input токены (вопрос) — это цена за обработку вашего запроса.
- Output токены (ответ) — всегда дороже, потому что генерация каждого следующего слова — это полный цикл вычислений через всю модель.
- Кириллица vs. Латынь: Из-за кодировки UTF-8 русский текст (и любой нелатинский) на ту же мысль требует примерно в 2 раза больше токенов, чем английский, поэтому и стоит дороже.
Выводы
- LLM — это не "супермозг", а сложная, но понятная математическая система.
- "Интеллект" или "понимание" модели — это эмерджентное свойство, возникшее из простой задачи предсказания следующего слова.
- Токен — фундаментальная единица вычислений в AI, что и объясняет модель монетизации.
- Разобравшись в устройстве, можно спокойнее и интереснее относиться к технологии, не мифологизируя её.