Загрузка...

Токены нейросети (Tokens)

Токены нейросети (Tokens) — это базовые фрагменты текста (отдельные символы, слоги, слова или их части), на которые искусственный интеллект разбивает входящую и исходящую информацию для ее анализа, обработки и генерации.

Когда мы общаемся с современными языковыми моделями, такими как ChatGPT, Claude или YandexGPT, нам кажется, что они понимают человеческую речь так же, как мы. Однако компьютеры не умеют читать слова в нашем привычном понимании — они работают исключительно с числами. Чтобы перевести человеческий язык на язык математики, нейросети используют процесс, называемый токенизацией.

Как работают токены?

Представьте, что вы собираете сложную конструкцию из конструктора Lego. Каждая отдельная деталь — это токен. Нейросеть берет ваш текстовый запрос, разбирает его на такие детали, переводит каждую в уникальный числовой идентификатор (вектор) и только потом начинает анализировать смысловые связи между ними.

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

  • Целое слово: короткие и часто употребляемые слова (например, «кот», «дом», «apple») обычно становятся одним токеном.
  • Часть слова: длинные или сложные слова разбиваются на слоги, приставки или морфемы (например, слово «невероятный» может разбиться на «не», «вероят», «ный»).
  • Один символ: редкие знаки препинания, эмодзи, иероглифы или буквы из незнакомых нейросети алфавитов могут кодироваться посимвольно.
  • Пробелы: они тоже учитываются системой и часто прикрепляются к началу следующего слова.

Примеры токенизации на практике

Чтобы лучше понять, как это выглядит, давайте посмотрим на разницу в восприятии текста человеком и машиной. В среднем для английского языка один токен равен примерно 0,75 слова (или 4 символам).

Возьмем простую фразу на английском языке: "I love artificial intelligence". Для нейросети это будет 4 или 5 токенов: ["I"], [" love"], [" artificial"], [" intelligence"].

А теперь возьмем длинное русское слово: "Достопримечательность". Из-за особенностей морфологии русского языка и того факта, что большинство популярных моделей (например, от OpenAI) обучаются преимущественно на англоязычных текстах, это слово может быть разбито на 5-6 отдельных токенов: ["Дост"], ["опри"], ["меч"], ["атель"], ["ность"].

Почему токены так важны для пользователей?

Понимание концепции токенов необходимо каждому, кто активно работает с нейросетями, пишет промпты (запросы) или внедряет ИИ в бизнес. Вот главные причины:

  • Контекстное окно (память нейросети): У каждой языковой модели есть строгий лимит токенов, которые она может «держать в уме» за один разговор. Например, если лимит составляет 8 000 токенов, то как только ваша беседа превысит этот объем, искусственный интеллект начнет постепенно забывать самую раннюю часть диалога.
  • Ценообразование: Разработчики, использующие API нейросетей, платят именно за количество обработанных (входящих) и сгенерированных (исходящих) токенов. Из-за особенностей токенизации использование ИИ на русском языке часто обходится дороже, чем на английском, так как на один и тот же смысл уходит больше токенов.
  • Специфика генерации текста: Из-за того, что нейросеть предсказывает текст строго токен за токеном, она иногда не может справиться с задачами, требующими посимвольного анализа. Например, ИИ часто ошибается, если попросить его написать слово задом наперед или точно посчитать количество букв «р» в слове «террариум», так как он «видит» не буквы, а целые блоки.

Интересный факт: Аномалия SolidGoldMagikarp

В процессе обучения ранних версий GPT исследователи столкнулись с забавной и пугающей аномалией, получившей название «непроизносимые токены». Оказалось, что в словарь модели случайным образом затесались странные слова, такие как SolidGoldMagikarp (это был никнейм одного из активных пользователей платформы Reddit).

Поскольку это слово встречалось в тренировочных данных достаточно часто, чтобы стать отдельным неделимым токеном, но слишком редко, чтобы нейросеть поняла его реальный смысл и контекст, алгоритм при встрече с ним буквально «сходил с ума». Когда пользователи просили ИИ просто повторить слово SolidGoldMagikarp, модель начинала выдавать бессмысленный набор символов, галлюцинировать или отвечать совершенно не связанным словом «distribute». Этот забавный сбой наглядно показал разработчикам, насколько сильно «мышление» нейросети зависит от того, как именно сформирован ее базовый словарь токенов.