1 миллион токенов — это много? Разбираемся на простых примерах
Когда человек впервые смотрит на цены нейросетей, цифры могут показаться довольно большими:
300 ₽ за 1 миллион токенов
700 ₽ за 1 миллион токенов
1 500 ₽ за 1 миллион токенов
У человека, который раньше не сталкивался с API нейросетей, легко может возникнуть мысль:
«Получается, один запрос к нейросети стоит несколько сотен рублей?»
Нет.
1 миллион токенов — это не один запрос. Это огромный объём текста, которого может хватить на сотни или даже тысячи обычных запросов.
Разберёмся, что такое токены и насколько велик 1 миллион токенов на практике.
Что такое токен
Нейросеть работает не напрямую со словами и буквами. Перед обработкой текст разбивается на небольшие части — токены.
Токеном может быть:
целое слово;
часть слова;
число;
знак препинания;
несколько символов.
Например, фраза:
«Привет! Как дела?»
Для нейросети она будет состоять не просто из трёх слов, а из нескольких токенов.
Точное количество зависит от конкретной модели, языка и используемого токенизатора. Поэтому правило «одно слово равно одному токену» неверно.
Но для примерного понимания стоимости нам не нужно считать каждый токен вручную.
Насколько велик 1 миллион токенов
1 000 000 токенов — это действительно очень много текста.
Речь идёт о сотнях тысяч слов и объёме, сопоставимом с несколькими большими книгами. При этом обычный пользовательский запрос расходует лишь небольшую часть этого миллиона.
Например, пользователь пишет:
Напиши короткое описание товара для интернет-магазина.
Сам запрос может занимать примерно 30–50 токенов. Нейросеть генерирует ответ объёмом около 200–400 токенов.
Предположим, что весь запрос вместе с ответом потребовал 500 токенов.
1 000 000 ÷ 500 = 2 000
Получается, что 1 миллиона токенов хватит примерно на 2 000 подобных запросов.
А не на один запрос.
Сколько запросов помещается в 1 миллион токенов
Рассмотрим несколько сценариев.
Если небольшой диалог использует около 250 токенов:
1 000 000 токенов ≈ 4 000 запросов
Если запрос вместе с ответом использует около 500 токенов:
1 000 000 токенов ≈ 2 000 запросов
При расходе около 1 000 токенов:
1 000 000 токенов ≈ 1 000 запросов
Если это большой запрос на 5 000 токенов:
1 000 000 токенов ≈ 200 запросов
Если пользователь отправляет большой документ или код и просит подготовить подробный ответ на 10 000 токенов:
1 000 000 токенов ≈ 100 таких запросов
Поэтому фраза «цена за миллион токенов» сама по себе ничего не говорит о стоимости одного запроса.
Всё зависит от размера конкретного запроса и ответа.
Почему цену указывают за миллион токенов
Один токен стоит настолько мало, что указывать его стоимость отдельно было бы неудобно.
Предположим, обработка одного токена стоит:
0,0005 ₽
В таком формате сравнивать модели сложно. Намного понятнее написать:
500 ₽ за 1 000 000 токенов
Миллион токенов в данном случае — просто единица измерения цены.
Это похоже на мобильный интернет. Если оператор пишет:
500 ₽ за 100 ГБ
Это не означает, что открытие одной страницы в браузере стоит 500 ₽. Вы постепенно расходуете доступный объём данных.
С токенами действует похожая логика.
Сколько стоит один обычный запрос
Представим условную модель со стоимостью входящих токенов:
500 ₽ за 1 000 000 токенов
Вы отправили запрос размером 1 000 токенов.
Считаем:
500 × 1 000 ÷ 1 000 000 = 0,5 ₽
Получается, обработка 1 000 входящих токенов будет стоить 50 копеек.
Если запрос содержит только 500 токенов:
500 × 500 ÷ 1 000 000 = 0,25 ₽
То есть 25 копеек.
Именно поэтому цена в несколько сотен рублей за миллион токенов выглядит намного страшнее, чем фактическая стоимость одного небольшого запроса.
Входящие и исходящие токены
Есть ещё один важный момент.
У большинства современных языковых моделей отдельно считаются входящие и исходящие токены.
Входящие токены
Входящие токены, или input tokens, — это информация, которую получает нейросеть:
запрос пользователя;
предыдущая переписка;
системные инструкции;
документы;
исходный код;
другие переданные данные.
Исходящие токены
Исходящие токены, или output tokens, — это текст, который нейросеть генерирует в ответ.
Например, вы отправили нейросети 300 токенов, а она ответила текстом на 700 токенов.
В результате было использовано:
300 входящих + 700 исходящих токенов
При этом стоимость входящих и исходящих токенов может различаться.
Например, условный тариф модели может выглядеть так:
входящие токены — 300 ₽ за 1 миллион;
исходящие токены — 1 200 ₽ за 1 миллион.
Рассчитаем реальную стоимость запроса
Пользователь отправил 300 входящих токенов.
Стоимость:
300 × 300 ÷ 1 000 000 = 0,09 ₽
То есть 9 копеек.
Нейросеть сгенерировала 700 исходящих токенов.
Стоимость:
1 200 × 700 ÷ 1 000 000 = 0,84 ₽
Общая стоимость запроса:
0,09 ₽ + 0,84 ₽ = 0,93 ₽
Весь запрос обошёлся меньше чем в один рубль.
При этом в таблице цен пользователь видел:
300 ₽ за 1 миллион входящих токенов;
1 200 ₽ за 1 миллион исходящих токенов.
Без понимания принципа работы токенов эти цифры действительно могут создавать неправильное впечатление о стоимости нейросети.
Считается ли история переписки
Да. Это один из важных нюансов при работе с нейросетями.
Представьте, что вы уже долго общаетесь с моделью, а затем пишете:
А теперь сделай второй вариант.
Новое сообщение очень короткое. Но сама фраза «сделай второй вариант» ничего не означает без предыдущего контекста.
Чтобы понять запрос, нейросети может потребоваться получить часть предыдущей переписки. Поэтому фактический расход может быть больше, чем количество токенов в последнем сообщении.
В расход также могут попадать:
предыдущие сообщения диалога;
системные инструкции;
большие документы;
исходный код;
данные приложения;
результаты работы инструментов;
дополнительный контекст, передаваемый модели.
Именно поэтому два внешне одинаковых сообщения не обязательно будут стоить одинаково.
Короткий запрос и большой документ — разные вещи
Рассмотрим небольшой запрос:
Как удалить элемент из списка в Python?
Для его обработки потребуется сравнительно мало токенов.
А теперь другой пример:
Вот проект на несколько тысяч строк кода. Найди причину ошибки, проанализируй архитектуру и предложи исправление.
Это уже совершенно другой объём информации. Во втором случае нейросети сначала необходимо прочитать весь переданный код.
Поэтому правильнее считать стоимость нейросетей не по количеству запросов, а по объёму обработанной информации.
Простая формула расчёта
Если известна цена за миллион токенов, примерную стоимость можно посчитать по формуле:
Количество токенов ÷ 1 000 000 × стоимость 1 миллиона токенов
Например:
цена — 600 ₽ за 1 миллион токенов;
размер запроса — 2 000 токенов.
Получаем:
2 000 ÷ 1 000 000 × 600 = 1,2 ₽
Обработка 2 000 токенов будет стоить примерно 1 рубль 20 копеек.
Если входящие и исходящие токены имеют разную цену, их стоимость рассчитывается отдельно, а затем складывается.
Так много ли это — 1 миллион токенов
Да. Миллион токенов — это большой объём.
Для обычного общения с нейросетью его может хватить на огромное количество обращений.
Средний расход на запрос | Примерное количество запросов |
|---|---|
250 токенов | около 4 000 |
500 токенов | около 2 000 |
1 000 токенов | около 1 000 |
2 000 токенов | около 500 |
5 000 токенов | около 200 |
10 000 токенов | около 100 |
Это приблизительные значения, но они хорошо показывают масштаб.
Главное, что нужно запомнить
Если вы видите цену:
1 000 ₽ за 1 миллион токенов
Это не означает, что один запрос к нейросети стоит 1 000 ₽.
Это означает, что 1 000 ₽ стоит суммарная обработка миллиона токенов.
Один небольшой запрос может использовать всего несколько сотен токенов и стоить буквально копейки или несколько рублей.
Поэтому при сравнении стоимости нейросетей важно смотреть не только на цену за миллион токенов, но и понимать, сколько токенов реально расходуется в вашем сценарии.
Если совсем просто
1 миллион токенов — это не один запрос.
Это единица измерения объёма работы нейросети.
Для обычных небольших запросов миллиона токенов может хватить на тысячи обращений.