Модель и прайс
- какая модель используется;
- какая цена входных токенов;
- какая цена выходных токенов;
- есть ли кэшированные токены;
- есть ли Batch-режим;
- есть ли платные инструменты.
AI API стоит не «за сообщение». Он стоит за токены, которые вы отправили модели, и за токены, которые модель вернула в ответ.
Пользователь видит чат: написал вопрос, получил ответ. Система видит другое: системную инструкцию, историю диалога, найденные документы, данные из CRM, правила ответа, вызовы инструментов и итоговую генерацию.


Поэтому вопрос «сколько стоит AI-бот» нельзя считать по принципу «ну там же просто чат». Просто чат — это когда два человека переписываются в Telegram. В AI-продукте за каждым ответом может стоять несколько API-запросов и отдельный счётчик токенов.
Разберём, как посчитать стоимость одного API-запроса, как перейти к месячному бюджету и почему два одинаковых на вид чат-бота могут стоить по-разному.
Сначала нужно развести три сущности.
Сообщение пользователя — то, что человек написал в интерфейсе.
API-запрос — полный пакет данных, который система отправила модели: сообщение пользователя, системный промпт, история, контекст, документы, служебные инструкции.
Сценарий — вся цепочка действий после обращения пользователя. В простом случае это один API-запрос. В сложном — несколько: классификация, поиск по базе знаний, генерация, проверка, форматирование.
Деньги считаются по токенам и API-запросам. Месячный бюджет — по сценариям и нагрузке.
Вот здесь обычно и начинается ошибка. Бизнес считает сообщение. Разработчик считает вызовы. Провайдер считает токены. Платит, как обычно, бизнес.
Стоимость запроса обычно состоит из нескольких частей: входные токены, кэшированные входные токены, выходные токены и дополнительные вызовы модели.
У OpenAI в прайсе отдельно указаны input, cached input и output tokens; также есть Batch-режим со скидкой 50% для асинхронной обработки. Например, на актуальной странице OpenAI для GPT-5.4 mini указаны $0.75 за 1 млн input tokens, $0.075 за 1 млн cached input tokens и $4.50 за 1 млн output tokens.
Входные токены — это всё, что вы отправляете модели.
Сюда входит:
текст пользователя; системный промпт; инструкция по роли ассистента; история диалога; фрагменты базы знаний; данные из CRM; текст документа; правила безопасности; требования к формату ответа.
Главная ошибка — считать только вопрос пользователя. Пользователь написал 10 слов, но модель могла получить 3 000 токенов контекста. Иногда больше. Особенно если работает RAG, база знаний или CRM-ассистент.
Кэшированные токены — это повторяющаяся часть входа, которую провайдер может обработать дешевле.
Например, у вас есть длинная системная инструкция, которая повторяется в каждом запросе. Или один и тот же контекст используется в серии обращений. Если провайдер поддерживает кэширование, эта часть может стоить меньше обычного входа.
У разных провайдеров кэш считается по-разному. У Anthropic в pricing отдельно выделены base input tokens, cache writes, cache hits and refreshes и output tokens; cache write и cache read имеют разные ставки. У Gemini API есть context caching, а в некоторых моделях отдельно считается ещё и storage price за хранение кэша.
Кэш помогает там, где есть повторяемость. Если каждый запрос полностью новый, экономия будет скромной. Физику пока не отменили, даже в API.
Выходные токены — это ответ модели.
Это может быть короткая фраза, список, JSON, письмо, отчёт, резюме документа, коммерческое предложение или длинная инструкция.
Выходные токены часто дороже входных. Поэтому короткий вопрос и длинный ответ — не обязательно дешёвый сценарий.
Если бот пишет отчёты, письма, инструкции, аналитические сводки или несколько вариантов текста, стоимость часто растёт именно на выходе.
Один пользовательский запрос может запускать несколько внутренних шагов.
Например, AI-ассистент в CRM может сначала определить тип задачи, затем получить данные клиента, найти релевантные документы, сгенерировать рекомендацию, проверить ответ и только потом показать результат пользователю.
| Часть стоимости | Что входит | Как влияет на цену | Где часто ошибаются |
|---|---|---|---|
| Входные токены | Вопрос, системный промпт, история, документы, данные из CRM | Чем больше контекста, тем дороже запрос | Считают только текст пользователя |
| Кэшированные токены | Повторяющиеся инструкции и контекст | Могут стоить дешевле обычного входа | Думают, что кэш сработает всегда |
| Выходные токены | Ответ модели | Длинные ответы быстро увеличивают стоимость | Не ограничивают длину результата |
| Дополнительные вызовы | Классификация, поиск, проверка, форматирование | Один сценарий превращается в несколько API-вызовов | Считают только финальный ответ |
Базовая формула простая:
стоимость = количество токенов / 1 000 000 × цена за 1 млн токенов
Если у вас 10 000 входных токенов, а цена входа — $1 за 1 млн токенов, расчёт будет таким:
10 000 / 1 000 000 × 1 = $0.01
То есть 10 000 таких токенов стоят один цент.
Но один API-запрос обычно состоит из нескольких частей. Поэтому считаем каждую отдельно:
стоимость API-запроса = входные токены + кэшированные токены + выходные токены
Точнее:
стоимость API-запроса = стоимость входа + стоимость кэша + стоимость выхода
Если сценарий включает несколько обращений к модели:
стоимость сценария = сумма всех API-вызовов
А месячный бюджет считается уже по нагрузке:
месячный бюджет = стоимость сценария × количество сценариев в месяц
Перед расчётом нужно проверить:
Цены нельзя брать из старого скриншота. API-прайсы живут своей жизнью. Перед запуском или пересчётом бюджета нужно сверять ставки на официальных страницах провайдера. У OpenAI, Anthropic и Google структура тарификации различается: вход, выход, кэш, Batch, инструменты и хранение могут считаться отдельно.
Возьмём условный запрос к модели уровня GPT-5.4 mini. По актуальному прайсу OpenAI для этой модели указаны: $0.75 за 1 млн input tokens, $0.075 за 1 млн cached input tokens и $4.50 за 1 млн output tokens.
Допустим, один API-запрос выглядит так:
| Категория | Количество токенов | Цена за 1 млн токенов | Расчёт | Стоимость |
|---|---|---|---|---|
| Обычный вход | 2 000 | $0.75 | 2 000 / 1 000 000 × 0.75 | $0.0015 |
| Кэшированный вход | 1 000 | $0.075 | 1 000 / 1 000 000 × 0.075 | $0.000075 |
| Выход | 700 | $4.50 | 700 / 1 000 000 × 4.50 | $0.00315 |
| Итого | — | — | — | $0.004725 |
Один такой API-запрос стоит примерно $0.0047.
Меньше одного цента. На одном запросе выглядит спокойно. Но API редко используют по одному запросу. Счёт приходит не за красивую арифметику, а за нагрузку.
Если таких запросов 10 000 в месяц:
$0.004725 × 10 000 = $47.25 в месяц
Если 100 000 запросов:
$0.004725 × 100 000 = $472.50 в месяц
Если сценарий использует не один вызов модели, а три, стоимость может вырасти кратно. И это ещё без учёта серверов, хранения, поиска, интеграций, логирования, разработки и поддержки.
В рублях такой бюджет лучше считать отдельно: по текущему курсу оплаты, комиссии банка и условиям конкретного провайдера. Сами API-прайсы обычно публикуются в долларах.

Одна из частых ошибок — считать «один запрос» одинаково для всех продуктов.
Для простого чат-бота один запрос — это реплика пользователя и ответ модели.
Для RAG-бота один сценарий включает вопрос, поиск по базе знаний, подстановку найденных фрагментов и генерацию ответа.
Для суммаризации один документ может превратиться в несколько API-вызовов, если он большой.
Для CRM-ассистента один сценарий может включать данные клиента, сделку, историю заявок, комментарии менеджеров и регламент ответа.
Поэтому сначала нужно определить единицу расчёта.
| Продукт | Единица расчёта | Что увеличивает вход | Что увеличивает выход |
|---|---|---|---|
| Чат-бот поддержки | Одно обращение или диалоговая сессия | История диалога, системный промпт | Развёрнутые ответы |
| RAG-бот и AI-поиск | Один вопрос с подбором контекста | Фрагменты базы знаний, документы | Ответ с цитатами и пояснениями |
| Суммаризация документов | Один документ или один фрагмент | Объём документа | Длина резюме |
| CRM-ассистент | Одна задача менеджера | Данные клиента, история, статусы, регламенты | Рекомендации, письма, отчёты |
| Генератор текстов | Один готовый результат | Бриф, примеры, требования | Длинный текст, структура, варианты |
Бот поддержки, который отвечает на короткие вопросы, и AI-ассистент в CRM, который анализирует карточку клиента и готовит письмо менеджеру, — это разные нагрузки.
В интерфейсе оба могут выглядеть как чат. Для бюджета это две разные машины.
Чтобы посчитать месячный бюджет, нужно пройти четыре шага.
Не стоит считать «AI-бота вообще».
Лучше разделить его работу на сценарии:
У каждого сценария будет своя стоимость.
Для каждого сценария нужно посчитать:
Например, короткий вопрос в поддержке может стоить доли цента. А суммаризация большого документа может включать несколько вызовов модели и стоить заметно дороже.
Формула:
месячный бюджет = стоимость сценария × количество сценариев в месяц
Если сценариев несколько, считаем каждый отдельно и складываем:
месячный бюджет = расходы на сценарий А + расходы на сценарий Б + расходы на сценарий В
Пример:
короткие вопросы: 8 000 обращений × $0.001 = $8;
RAG-вопросы: 2 000 обращений × $0.006 = $12;
суммаризация документов: 500 документов × $0.04 = $20;
генерация отчётов: 300 отчётов × $0.08 = $24.
Итого:
$8 + $12 + $20 + $24 = $64 в месяц
Это не универсальная цена. Это шаблон расчёта. В реальном проекте нужно подставлять свои сценарии, модель, длину входа, длину выхода и нагрузку.
Расчёт без запаса выглядит красиво только до первого живого пользователя.
В реальности появляются длинные ответы, повторные вопросы, тесты сотрудников, рост базы знаний, пиковые дни и пользователи, которые любят вставить в чат пол-романа с вопросом: «Ну что думаешь?»
Поэтому бюджет лучше считать с запасом. Минимум — лёгкий, обычный и тяжёлый сценарий. Если продукт критичный, нужен отдельный расчёт пиков.
Средний запрос удобен. И опасен.
Он сглаживает тяжёлые сценарии. А бюджет часто съедают именно они.
Например, в среднем бот отвечает на 500 токенов. Но 10% запросов требуют длинного ответа, подстановки документов и нескольких API-вызовов. В отчёте всё выглядит нормально, пока эти 10% не начинают повторяться каждый день.
Лучше считать три сценария.
| Сценарий | Что отправляется модели | Почему растёт стоимость | Как ограничить риск |
|---|---|---|---|
| Лёгкий | Короткий вопрос, короткий промпт, короткий ответ | Нагрузка минимальная | Не тянуть лишний контекст |
| Обычный | Вопрос, системный промпт, немного истории, 1–2 фрагмента контекста | Добавляется история и база знаний | Считать типовой контекст |
| Тяжёлый | История, несколько документов, длинный промпт, несколько вызовов, большой ответ | Растут вход, выход и число вызовов | Вводить лимиты, кэш, маршрутизацию и отдельные правила |
Если считать только средний сценарий, можно сильно ошибиться. Особенно в RAG, CRM-ассистентах, аналитических отчётах и агентных цепочках.
Средний пользователь — удобная фикция. Живой пользователь всегда приходит со своим файлом, странным вопросом и прекрасной идеей «а давайте ещё вот это добавим».
Ниже не точные цены для всех случаев, а логика расчёта. Конкретные цифры зависят от модели, прайса, длины входа, длины выхода, кэша и количества вызовов.
Единица расчёта: одно обращение или диалоговая сессия.
Главный риск: история диалога и длинные ответы.
Если бот отвечает на короткие вопросы, не тянет всю историю и не подключает базу знаний к каждому сообщению, стоимость одного обращения может быть низкой.
Расходы растут, если:
Для поддержки важна дисциплина контекста. Не нужно каждый раз отправлять модели всё, что пользователь сказал за последние три дня. Модель прочитает. Счётчик тоже.
Единица расчёта: вопрос с подбором контекста.
Главный риск: большой вход.
Пользователь может спросить одну строку:
«Как оформить возврат?»
Но система найдёт 3–5 фрагментов базы знаний, добавит их в промпт и попросит модель сформировать ответ.
В этом сценарии главный источник расходов — не вопрос пользователя, а документы, которые система подкладывает в запрос.
Расходы растут, если:
Для RAG важно считать весь контекст, который система отправляет модели.
Единица расчёта: один документ или один фрагмент документа.
Главный риск: объём входа и несколько вызовов модели.
Если документ короткий, всё просто. Если документ длинный, его приходится разбивать на части. Каждая часть может стать отдельным API-вызовом. Потом может понадобиться ещё один вызов — чтобы собрать итоговое резюме.
Особенно аккуратно нужно считать:
Нельзя оценивать стоимость суммаризации по одному тестовому абзацу. Один абзац не равен документу на 80 страниц. Бюджет это быстро объяснит.
Единица расчёта: одна задача менеджера.
Главный риск: служебные данные.
CRM-ассистент может подготовить ответ клиенту, оценить заявку, подсказать следующий шаг, проверить данные или собрать краткую сводку по сделке.
В модель могут уходить:
Если отправлять всё без отбора, запрос быстро раздувается.
Хорошая архитектура CRM-ассистента не кормит модель всей базой. Она выбирает нужные данные. Иначе это не ассистент, а дорогой читатель CRM.
Единица расчёта: один готовый результат.
Главный риск: длинный выход.
Вход может быть умеренным: бриф, параметры, примеры, требования к структуре. Но выход часто большой: письмо, отчёт, коммерческое предложение, описание услуги, карточка товара, сценарий, план публикаций.
Если модель генерирует 3–5 вариантов, стоимость растёт ещё быстрее.
В таких сценариях нужно заранее задавать:
Генерация текста — это не бесплатно, даже если текст выглядит как «просто слова». В API слова идут через кассу.
| Сценарий | Главный источник расходов | Что считать | Риск перерасхода |
|---|---|---|---|
| Чат-бот поддержки | История диалога и длина ответа | Обращение или сессию | Бот тянет лишнюю историю |
| RAG-бот | Фрагменты базы знаний | Вопрос с контекстом | В запрос попадает слишком много документов |
| Суммаризация | Объём документа | Документ или фрагмент | Документ режется на несколько вызовов |
| CRM-ассистент | Служебные данные | Одну задачу менеджера | В модель уходит слишком много данных |
| Генератор отчётов | Длинный выход | Один готовый результат | Модель пишет слишком длинно или в нескольких вариантах |
Два чат-бота могут выглядеть одинаково.
Оба стоят на сайте. У обоих поле ввода. У обоих кнопка «Отправить». Оба отвечают текстом.
Но внутри они могут работать по-разному.
| Вариант | Что происходит внутри | Почему стоимость отличается |
|---|---|---|
| Простой бот | Короткий промпт, короткий ответ, один API-вызов | Мало входа, мало выхода |
| Сложный бот | История, RAG, CRM-данные, проверки, длинный ответ | Много входа, много выхода, несколько вызовов |
Поэтому вопрос «сколько стоит чат-бот на API» без описания сценариев почти бесполезен.
Правильный вопрос звучит так:
какие данные бот отправляет модели, сколько модель отвечает, сколько раз вызывается API и сколько таких сценариев будет в месяц?
Вот тогда уже можно считать.
Формула расчёта простая. Ошибки начинаются не в математике, а во входных данных.
| Ошибка | Что ломает в расчёте | Как считать правильно |
|---|---|---|
| Считают только текст пользователя | Занижается вход | Добавлять системный промпт, историю, контекст и служебные данные |
| Забывают системный промпт | Не видно постоянной части запроса | Считать инструкцию в каждом обращении или учитывать кэш |
| Не учитывают историю диалога | Каждый следующий ответ может становиться дороже | Ограничивать историю и считать её объём |
| Не считают RAG-контекст | База знаний исчезает из бюджета | Добавлять найденные фрагменты документов |
| Забывают выходные токены | Недооценивают длинные ответы | Считать среднюю и максимальную длину ответа |
| Не учитывают дополнительные вызовы | Один сценарий ошибочно считают как один API-вызов | Считать все этапы цепочки |
| Не ограничивают длину ответа | Модель пишет сколько хочет | Задавать лимиты и формат результата |
| Не закладывают пики | Бюджет ломается при росте нагрузки | Считать обычные и пиковые периоды |
| Не пересчитывают после изменения промпта | Новый промпт может быть дороже старого | Проверять расход после изменений |
| Смотрят только на цену модели | Игнорируют архитектуру сценария | Считать модель вместе с контекстом и процессом |
Самая опасная ошибка — выбирать модель по цене за 1 млн токенов и не считать сценарий.
Дешёвая модель с раздутым контекстом может стоить дороже, чем более дорогая модель в аккуратно спроектированной цепочке.
Перед запуском AI-функции нужно собрать не вдохновение, а входные данные.
Если этих данных нет, разработчик или подрядчик может назвать только примерный порядок. Не бюджет.
Это как спросить: «Сколько стоит ремонт?» — и не сказать, квартира это, склад или театр оперы и балета. В теории ответить можно. Но лучше не надо.
API-токены — важная часть расходов. Но не вся стоимость продукта.
Кроме токенов, в смете могут быть: разработка; сервер; база данных; векторная база; хранение документов; интеграции с CRM; поиск по базе знаний; логирование; мониторинг; модерация; тестирование; администрирование; обновление базы знаний; техническая поддержка.
У OpenAI, например, отдельные встроенные инструменты и сервисы могут иметь собственную стоимость: web search, containers, file search storage и tool calls указаны отдельно от базовой стоимости токенов. У Gemini также отдельно указаны цены и условия для инструментов вроде Google Search grounding, Maps, URL context и File Search.
Поэтому API-счёт — это строка эксплуатационных расходов. Иногда крупная. Иногда небольшая. Но точно не единственная.
Если вы считаете бюджет AI-продукта, токены — только одна часть. Ещё есть архитектура, данные, интеграции и поддержка. Печальная новость: всё это тоже не живёт на энтузиазме.
Дорогой расчёт не всегда означает, что от AI-функции нужно отказаться.
Часто это значит, что её нужно нормально спроектировать.
Что можно проверить:
Batch API у OpenAI даёт 50% скидку для асинхронной обработки, а у Gemini API платный тариф также указывает Batch API как режим с 50% cost reduction.
Но Batch подходит не для всех задач. Если пользователю нужен ответ прямо сейчас, асинхронная обработка может быть неуместна.
Оптимизация расходов — отдельная тема. Здесь важно другое: сначала нужно увидеть, где именно возникает стоимость. Без расчёта оптимизация превращается в гадание.

Стоимость токенов — это не абстрактная техническая деталь. Это часть себестоимости AI-функции.
Если вы строите AI-бота, CRM-ассистента, RAG-поиск, генератор отчётов или инструмент суммаризации, считать нужно не сообщения, а сценарии.
В расчёте важно учитывать:
изменения промптов и логики после запуска.
До запуска бюджет считают по гипотезам. После запуска — по логам.
В логах уже видно, сколько токенов реально уходит на вход, сколько генерируется на выходе, какие сценарии самые дорогие, где промпт слишком длинный, где база знаний подкладывает лишнее, а где один красивый пользовательский сценарий запускает пять API-вызовов.
Хороший API-бюджет — это не таблица, которую сделали один раз и забыли. Это рабочий инструмент проектирования.
Сначала считаем. Потом запускаем. Потом смотрим логи. Потом уточняем.
Скучно? Да.
Зато дешевле, чем внезапно узнать, что ваш «маленький AI-бот» питается как взрослый дата-центр.