Вопрос с собеседования · AI и LLM

Как работает токенизация в LLM и что такое BPE?

MiddleНейросети и трансформеры
Ещё спрашивают так:
  • Почему русский текст «дороже» английского в токенах?
  • Почему LLM плохо считает буквы в слове?
Коротко

BPE (byte-pair encoding) строит словарь подслов: начинает с байтов или символов и многократно объединяет самую частую соседнюю пару в новый токен. Частые слова становятся одним токеном, редкие разбиваются на части. Модель видит номера токенов, а не буквы.

  • Словари обучены в основном на английском — русский текст разбивается на больше токенов, а значит дороже и занимает больше контекста
  • Посимвольные задачи (посчитать буквы, перевернуть слово) трудны, потому что буквы спрятаны внутри токенов
  • Числа режутся непредсказуемо — одна из причин ошибок в арифметике

А ещё У каждой модели свой токенизатор — считать токены нужно её инструментом

Подробно

Обучение BPE:

  1. Исходный словарь — все байты (byte-level BPE) — поэтому неизвестных символов не бывает.
  2. Подсчитать частоты соседних пар в корпусе.
  3. Объединить самую частую пару в новый токен, добавить в словарь.
  4. Повторять до нужного размера словаря (десятки — сотни тысяч).

Варианты: WordPiece (BERT), Unigram/SentencePiece (T5, Llama).

Следствия для инженера:

  • стоимость и лимиты считаются в токенах; для русского — в 1,5–3 раза больше токенов на тот же смысл, чем для английского;
  • контекстное окно заполняется быстрее на «неудобных» языках и в коде с длинными идентификаторами;
  • буквы и цифры — модель не «видит» отдельных символов, поэтому ошибки в подсчёте букв, рифмах, арифметике с длинными числами;
  • пробел перед словом часто часть токена — «кот» и « кот» разные токены.

Практика: оценивать стоимость промпта реальным токенизатором модели (tiktoken, токенизатор из библиотеки transformers или счётчик токенов API).

Что хотят услышать

  • Алгоритм BPE.
  • Почему язык влияет на число токенов.
  • Следствия: стоимость, контекст, ошибки с буквами и числами.

Проверьте себя

Один верный вариант. Подумайте, потом откройте ответ.

Показать варианты и ответ
  • ✗Каждое слово всегда — ровно один токен
  • ✗Модель видит отдельные буквы, поэтому легко считает их в словах
  • ✓Начинают с байтов и сливают самую частую пару; русский дороже
  • ✗Словарь BPE составляют вручную лингвисты

Связанные вопросы

Партнёр платформы

Разбор собеседования с sotto

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

Разбор собеседования