Обвязка для ИИ: цена ответа в рублях и потолок на сутки
Бизнес не может планировать расходы на ИИ, если видит только токены. Разбираю слой между агентом и моделью: цена каждого ответа в рублях, потолок на сутки, смена модели без потери памяти и почему разница между моделями оказалась тринадцатикратной.
Когда бизнесу продают ИИ-ассистента, разговор о деньгах обычно ведётся в токенах: «пакет на два миллиона токенов». Владелец бизнеса не мыслит токенами. Он мыслит категориями «сколько будет стоить, если в месяц придёт тысяча обращений» — и на этот вопрос токены не отвечают.
Проблема: токены ничего не говорят владельцу
Три следствия того, что расход измеряется в токенах.
Нельзя спланировать бюджет. Сколько токенов съест один разговор — заранее неизвестно, зависит от длины переписки и от модели. Владелец узнаёт цифру постфактум.
Нельзя сравнить модели. Цены провайдеров указаны за миллион токенов, отдельно за вход и за выход, в долларах. Чтобы сравнить две модели, нужно посчитать — и никто не считает.
Нельзя ограничить расход. Пакет заканчивается, и агент замолкает посреди рабочего дня. Или не заканчивается, но счёт приходит неожиданный.
Отсюда требование, с которого начиналась работа: наружу должна выходить не абстракция, а рубли, и на них должен быть потолок.
Один слой, за которым прячутся все провайдеры
Архитектурное решение простое и стоит того, чтобы его назвать явно: всё, что находится выше этого слоя, про модели не знает вообще. У него есть одна операция — «ответь на это, зная вот это» — и счётчик потраченного.
Зачем такая изоляция. Провайдеры меняются: один поднимает цены, другой перестаёт работать, третий выпускает модель вдвое дешевле. Если знание о конкретном провайдере расползлось по коду, каждая такая смена превращается в переписывание половины системы. Здесь она превращается в правку одного файла.
Практическая проверка этого решения случилась почти сразу: понадобилось добавить провайдера с принципиально другой схемой обращения — другой заголовок с ключом, другая структура запроса, другой формат ответа. Добавление заняло один класс и не потребовало трогать ничего выше.
Деньги в копейках и почему целым числом
Деталь, которая выглядит педантизмом, пока не столкнёшься с последствиями.
Расход считается в копейках целым числом. Не в рублях с дробной частью. Причина: дробные значения при сложении тысяч мелких сумм расходятся с тем, что придёт в счёте, и объяснить это клиенту нечем. Разница копеечная, но разговор про неё стоит дороже самой разницы.
Вторая деталь того же порядка: курс валюты, по которому цена провайдера переводится в рубли, зафиксирован рядом в настройках и не запрашивается из сети. Причины две. Ответ клиенту не должен зависеть от доступности стороннего сервиса курсов. И месячный отчёт не должен меняться задним числом вместе с курсом — иначе цифра за прошлый месяц завтра будет другой.
Разброс цен оказался тринадцатикратным
Когда всё посчиталось в рублях, картина стала наглядной. Один разговор первой линии — примерно тысяча токенов на вход и двести на выход — обходится по-разному в зависимости от модели: от нескольких копеек на самой дешёвой до примерно рубля на самой сильной. Разница между крайними вариантами больше чем в тринадцать раз.
Это и есть главный аргумент в пользу того, чтобы цифра была видна прямо там, где выбирают модель. Владелец, выбирающий самую сильную модель для ответов по прайсу, должен видеть, что платит за это тринадцатикратную цену — и осознанно решать, нужно ли ему это. В большинстве случаев для первой линии не нужно.
Отсюда же вырос вывод про интерфейс: цену надо показывать рядом с кнопкой выбора, а не на отдельной вкладке со статистикой. Информация, за которой надо идти, не влияет на решение.
Память клиента, а не модели
Ещё одно следствие изоляции провайдеров, и для клиента оно самое ценное.
Документы, правила и примеры удачных ответов хранятся отдельно от модели — в базе клиента. Модель получает их в составе запроса. Поэтому смена модели не требует ничего переобучать: новая получает ровно то же самое.
Это снимает страх, который у заказчиков возникает всегда: «мы настроим, а потом окажется, что привязаны». Привязки нет ни к провайдеру, ни к модели. Есть привязка к своим документам, которые и так свои.
Заглушка, которая честно отказывается
Мелкое решение, которое экономит недели.
Пока модель не выбрана или ключ не настроен, система не притворяется работающей. Она возвращает отказ с причиной, и причина видна в кабинете: «модель ещё не выбрана», «у провайдера нет ключа».
Альтернатива — тихая заглушка, которая отвечает что-нибудь нейтральное. Она кажется удобной на этапе разработки и оборачивается неделей отладки ровно в тот момент, когда подключается настоящая модель и начинают искать, почему ответы странные.
То же правило применено к ошибкам провайдера: наружу отдаётся код и короткое начало ответа, а не полный текст чужой ошибки — в нём бывают и куски ключа, и куски запроса.
Частые вопросы
Можно ли подключить локальную модель вместо облачной? Да, и это отдельный сценарий: адрес своего шлюза задаётся настройкой, схема обращения та же. Для чувствительных данных это единственный правильный вариант.
Что происходит при достижении суточного потолка? Агент останавливается и сообщает об этом в кабинете. Останов лучше неожиданного счёта: владелец узнаёт о проблеме в момент, когда её ещё можно решить.
Откуда берутся цены моделей? Из официальных страниц провайдеров, вносятся руками. Сторонние справочники расходятся между собой в разы, а по этим числам выставляется счёт клиенту — здесь угадывать нельзя.
Как выбрать модель, если разброс такой большой? По задаче, а не по силе. Первая линия отвечает по прайсу — здесь достаточно дешёвой модели, и разница в качестве ответов не окупает тринадцатикратной цены. Сильная модель нужна там, где агент рассуждает и принимает решения. В одной системе спокойно живут обе: дешёвая на потоке, сильная на исключениях.
Что если у модели неизвестна цена? Расход показывается нулём, и рядом честно написано «цена не уточнена». Выдуманное число хуже отсутствующего: на него будут опираться.
Коротко о главном
Обвязка для ИИ — это не про подключение к нейросети, подключение занимает вечер. Это про то, чтобы владелец бизнеса видел расход в понятных ему величинах, мог поставить потолок и мог сменить модель, ничего не потеряв. Изоляция провайдеров за одним слоем даёт последнее, счёт в копейках и зафиксированный курс — предсказуемость отчётов, а честная заглушка вместо тихой — сэкономленные недели отладки.
Если вы внедряете ИИ и не понимаете, во что он обойдётся при росте нагрузки, — разберём вашу схему и сделаем расход видимым до того, как придёт первый большой счёт.
Что я делаю под ключ
- Боты и мини-приложения в Telegram, MAX, VK
- Сайты, лендинги и витрины под ключ
- Автоматизация процессов и учёта
- Интеграции с CRM, площадками и оплатой
- Сопровождение после запуска
Бесплатно: чек-лист «Готов ли ваш бизнес к 152-ФЗ»
12 пунктов, которые проверяют готовность за час: данные, согласия, уведомление в РКН, локализация, защита. Отметьте, что уже сделано, и увидите дыры, за которые сейчас штрафуют.
Готовы обсудить вашу задачу?
Бесплатная консультация — разберём, как внедрить это в вашем бизнесе под ключ. Без форм, пишите напрямую.
Разборы, кейсы и практика — без воды. Выходит регулярно, читать 3–5 минут.


