Token (Токен)
Определение
Токен — это базовая единица обработки текста в LLM. Модели не читают текст по буквам или целым словам; они разбивают его на статистически значимые фрагменты — слоги, части слов, знаки препинания или даже отдельные символы.
🧩 Как работает токенизация?
Процесс превращения текста в числа (вектора) начинается с разбиения на токены.
- Короткие и частые слова (например, “apple”, “и”, “в”) обычно являются одним токеном.
- Длинные или сложные слова (например, “антиутопический”) могут разбиваться на 3–5 токенов.
- Знаки препинания и пробелы также считаются за токены.
[Image of text tokenization in NLP showing how words are split into segments]
📏 Масштаб и конвертация
Для грубой оценки объема данных в вашей базе можно использовать следующую формулу:
Формула (для английского языка)
Или: 1 токен 4 символа.
Для кириллицы (русского языка) ситуация иная: из-за особенностей кодировки один русский символ может занимать больше токенов, чем английский, поэтому 1000 токенов для русского текста обычно превращаются в ~500-600 слов.
💰 Почему это важно знать?
- Стоимость (API Billing): Провайдеры (OpenAI, Anthropic) выставляют счета за количество обработанных и сгенерированных токенов.
- Лимиты (Context Limits): Каждая модель имеет предел окна контекста. Если ваша заметка в базе знаний содержит 10 000 слов, она может занять от 15 000 до 20 000 токенов, что важно учитывать при отправке её на анализ.
- Скорость: Чем больше токенов генерирует модель, тем дольше длится ответ.
🛠 Токены на практике
Зная количество токенов, вы можете оптимизировать свои промпты. Если вы копируете огромную статью в чат и модель обрывает ответ — значит, вы превысили лимит токенов. В таких случаях нужно использовать чанкинг или RAG.
Связанные концепции
- Context Window — физическое ограничение по количеству токенов.
- Менеджмент длинного контекста