Phone icon Связаться с нами

ИИ и машинное обучение

Что такое токен в AI и сколько их в одном слове?

Токен (token) — это наименьший фрагмент текста, с которым работает языковая модель: слово, часть слова или знак препинания. Модель не видит букв и слов напрямую — она читает и создаёт именно последовательность токенов.

Текст на токены делит токенизатор. Короткое английское слово обычно занимает один токен, а длинное или редкое делится на несколько частей. Для украинского и русского языков токенов обычно нужно больше, чем для английского текста того же содержания.

Токены — это ещё и единица оплаты. Стоимость запросов к API языковой модели считают за тысячу токенов, отдельно за входные и выходные. Поэтому длинные промпты и большие документы прямо влияют на цену и скорость ответа.

Где применяется

Токены — единица учёта в работе с моделями. По ним считают стоимость запроса, отдельно для входных и выходных, и ими же задают лимит длины ответа. Поэтому оценка бюджета любого AI-решения начинается с подсчёта, сколько токенов уходит на типичную операцию.

Понимание токенов объясняет и странное поведение модели. Украинские и русские слова делятся на большее количество токенов, чем английские, поэтому тот же текст стоит дороже. А задачи вроде «посчитай буквы в слове» модель решает плохо именно потому, что видит не буквы, а фрагменты текста.

Пример

Для ориентира: примерно 1000 токенов — это 700–750 английских слов, то есть чуть больше страницы обычного текста.

import tiktoken

encoder = tiktoken.get_encoding('cl100k_base')
text = 'Привет! Расскажи о курсах программирования.'
tokens = encoder.encode(text)

print(len(tokens))   # сколько токенов уйдёт в запрос
print(tokens[:10])   # идентификаторы фрагментов
Подсчёт токенов перед отправкой: так оценивают стоимость запроса и проверяют, поместится ли он в контекст.

Частые вопросы

Сколько токенов в одном слове?

Для английского — в среднем около 0,75 слова на токен. Для украинского и русского соотношение хуже: слова часто делятся на две-три части из-за окончаний и кириллицы. Вывод простой: тот же текст на английском обходится дешевле.

Почему входные и выходные токены оплачивают отдельно?

Потому что создание ответа требует больше вычислений, чем чтение запроса: каждый новый токен модель предсказывает отдельно. Поэтому выходные токены обычно в несколько раз дороже входных, и длинный ответ стоит больше, чем длинный вопрос.

Как уменьшить расход токенов?

Убирать лишний контекст: не отправлять весь документ, если нужен один раздел, сокращать историю разговора, просить короткий ответ и задавать лимит длины. Для повторяющихся запросов помогает кеширование неизменной части промпта.

Почему модель не может посчитать буквы в слове?

Она не видит букв: текст попадает к ней уже разделённым на токены, и слово может быть одним целым фрагментом. Поэтому подсчёт символов, перестановка букв и похожие задачи получаются ненадёжно — их лучше выполнять обычным кодом.

Обучение программированию в OWU

Освойте профессию в IT на практических курсах с менторами и реальными проектами.

Выбрать курс