Что такое токен в GPT?
Анна, Ярославль 542 просм.
Настраиваю через API бота на GPT для сайта и в документации постоянно натыкаюсь на слово "токен" - то ли это про оплату, то ли про сам текст. Объясните, что это такое на самом деле и почему это вообще важно, если я просто хочу подключить чат к сайту?
Дмитрий Волков инженер по машинному обучению
ответил
Токен — это кусочек текста, на которые модель разбивает любое сообщение перед обработкой, что-то среднее между буквой и целым словом. Модель не читает текст по буквам и не по словам целиком: алгоритм токенизации, обычно byte pair encoding, режет текст на частотные куски, и короткое слово может оказаться одним токеном, а длинное или редкое разбиться на два-три.
Для английского языка примерное правило — один токен на 4 символа. С русским хуже: из-за кириллицы и особенностей обучения на русском тексте токенов на то же количество символов уходит в полтора-два раза больше. Это прямо влияет на вашу задачу с ботом для сайта по двум причинам.
Первая — деньги: API считает оплату именно по токенам, а не по символам или запросам, отдельно за то, что вы отправили модели, и за то, что она ответила. Русскоязычный диалог обойдётся заметно дороже английского при том же смысловом объёме текста.
Вторая — лимит контекста: у каждой модели есть максимальное число токенов, которое она может удержать в одном разговоре, промпт плюс история переписки плюс ответ. Если бот должен помнить длинную переписку с клиентом, этот лимит закончится быстрее, чем кажется, особенно на русском.
Прикинуть число токенов заранее можно через библиотеку tiktoken — вставляете туда текст и получаете точное количество, не гадая на глаз. Это стоит сделать до запуска, чтобы понимать порядок затрат и не упереться в лимит контекста на реальных диалогах.
Задать свой вопрос
Вопросы проходят модерацию. Ответ эксперта публикуется на сайте в течение пары дней.
Вопрос отправлен на модерацию. После проверки он появится на сайте вместе с ответом эксперта.