Токен

Токен — единица представления текста, используемая языковой моделью при обработке информации. Токеном может быть слово, часть слова, знак препинания или другой фрагмент текста.

Как работает токенизация

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

Этот процесс называется токенизацией (tokenization). Модель работает с последовательностью полученных идентификаторов, преобразуя их во внутренние числовые представления.

Разные языковые модели могут использовать разные токенизаторы. Поэтому один и тот же текст не обязательно будет разбит на одинаковые токены в GPT, Qwen и других LLM.

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

Чем токен отличается от слова и символа

Токен не равен одному слову или одному символу. В зависимости от словаря и алгоритма токенизации:

  • распространенное слово может соответствовать одному токену;
  • длинное или редкое слово может разделяться на несколько токенов;
  • знаки препинания и пробелы могут входить в отдельные токены либо объединяться с другими фрагментами;
  • числа, элементы программного кода и специальные символы также могут разбиваться на несколько частей.

Например, слова «программа» и «программирование» не обязательно будут обрабатываться как две неделимые единицы. Токенизатор может выделить в них повторяющиеся фрагменты.

Конкретное разбиение зависит от модели. Поэтому универсального коэффициента перевода слов или символов в токены не существует.

Почему количество токенов важно

В современных LLM количество токенов используется для измерения объема входных и выходных данных.

Входные токены — это данные, переданные модели: пользовательский запрос, системные инструкции, история переписки, документы и другой контекст.

Выходные токены — это последовательность, которую модель генерирует в ответ.

С количеством токенов связаны несколько практических ограничений:

  1. Размер контекстного окна. Модель может одновременно обрабатывать ограниченное количество токенов. Если доступный контекст заполнен, приложению приходится сокращать историю, удалять часть данных или применять другие способы управления контекстом.
  2. Длина ответа. Для генерации может существовать отдельный предел выходных токенов.
  3. Стоимость использования. В API языковых моделей тарификация часто зависит от количества обработанных входных и сгенерированных выходных токенов. Их стоимость может различаться.
  4. Вычислительные ресурсы. Обработка длинных последовательностей требует ресурсов и может влиять на задержку ответа.

Большая языковая модель (Large Language Model)

LLM (Large Language Model) — большая языковая модель, обученная на огромных объёмах данных, которая способна анализировать и генерировать текст, включая программный код, на основе переданного запроса и доступного контекста. LLM используются как основа многих современных чат-ботов, AI-помощников и инструментов для программирования.

Посмотреть термин

Контекстное окно (Context window)

Контекстное окно (context window) — максимальный объем информации, который языковая модель может учитывать при обработке запроса и формировании ответа. Обычно его размер измеряется в токенах.

Посмотреть термин

Промпт (Prompt)

Промпт (prompt) — запрос или инструкция, которую пользователь передаёт языковой модели или другой ИИ-системе, чтобы описать задачу, передать необходимый контекст и получить ожидаемый результат.

Посмотреть термин
Токен – что это такое в LLM и нейросетях