ДалееСледующее руководство
Кодирование парами байтов
Языковой ИИ
Техническое РУКОВОДСТВО
Токенизация разбивает текст на небольшие блоки, которые фактически читает языковая модель, а кодирование пар байтов (BPE) является популярным методом создания этого словаря.
Прослушайте это руководствоОзвучено ИИ · ~2 min
Он балансирует наличие управляемого словарного запаса и обработки любого слова, которое может встретить модель.
Языковые модели не видят необработанных символов или целых слов — они видят токены, целочисленные идентификаторы, сопоставленные с фрагментами текста. Выбор этих частей — это компромисс: словари на уровне слов огромны и переполнены невидимыми или написанными с ошибками словами, в то время как словари на уровне символов делают последовательности очень длинными. Кодирование пар байтов занимает золотую середину. Заимствованный из алгоритма сжатия данных 1990-х годов, BPE начинается с отдельных символов (или необработанных байтов) и неоднократно объединяет наиболее часто встречающуюся соседнюю пару в новый токен, расширяя словарный запас за счет общих подслов. Часто встречающиеся слова становятся отдельными токенами, а редкие слова разбиваются на фрагменты, которые можно использовать повторно. BPE на уровне байтов, используемый моделями GPT, работает с необработанными байтами, поэтому он может представлять любой текст в Юникоде, включая смайлы и любой язык, без ошибок, связанных с выходом за пределы словаря.
Модели GPT и Llama используют токенизаторы в стиле BPE для преобразования запросов в идентификаторы токенов, обрабатываемых сетью.
Цены на API и ограничения контекстных окон измеряются в токенах, поэтому токенизация напрямую влияет на стоимость и объем текста.
Грамотная обработка смайлов, кода и редких слов путем разделения их на повторно используемые подслова или байтовые фрагменты.
Поддержка множества языков в одной модели без отдельного словаря для каждого языка посредством кодирования на уровне байтов.
Токенизация находится в стадии активного переосмысления. Модели на уровне байтов и символов, такие как ByT5, а также новые архитектуры без токенов или «скрытые байты» направлены на полный отказ от фиксированных словарей, чтобы модели единообразно обрабатывали любой ввод и любой язык. Исследователи также борются за справедливость токенизации — многие неанглийские и малоресурсные языки в настоящее время стоят гораздо больше токенов за предложение, что повышает цену и сужает эффективный контекст. Ожидайте, что токенизаторы будут настроены на код, математику и многоязычный баланс, а также продолжатся эксперименты, чтобы расширить границы до необработанных байтов.
Бесплатная рассылка
Три проверенных AI-истории каждое утро буднего дня, написанные простым английским. Бесплатно навсегда, без рекламы.
Одно электронное письмо каждый будний день. Отписаться в один клик. Мы никогда не продаем и не передаем ваш адрес.
Проверьте себя
Мгновенная обратная связь по каждому ответу и общий сертификат с проверяемым идентификатором после прохождения курса.
Поддержите бесплатное образование в области искусственного интеллекта. AI Understanding — это некоммерческая организация 501(c)(3). Никакой рекламы и платного доступа. Сделать пожертвование
Токенизация разбивает текст на небольшие блоки, которые фактически читает языковая модель, а кодирование пар байтов (BPE) является популярным методом создания этого словаря. Он балансирует наличие управляемого словарного запаса и обработки любого слова, которое может встретить модель.
Модели работают с токенами — целочисленными идентификаторами, обозначающими символы, подслова или слова, — а не с необработанными текстовыми строками.
BPE начинается с символов или байтов и жадно объединяет наиболее часто встречающиеся соседние пары, постепенно образуя общие токены подслов.
Словари на уровне слов не справляются с невидимыми словами; Токенизация подслов разбивает редкие слова на известные части, избегая проблем с нехваткой словарного запаса, сохраняя при этом словарный запас управляемым.
Работа с необработанными байтами означает, что можно закодировать все возможные входные данные, поэтому не существует действительно неизвестных символов, независимо от языка или символа.
Токенизация подслов может разбить одно слово на несколько фрагментов и чувствительна к пробелам и регистру, поэтому количество токенов редко равно количеству слов.
Продолжайте учиться
Другие руководства, выбранные по этой теме
ДалееСледующее руководство
Кодирование парами байтов
Языковой ИИ