Написать в Telegram@Odilient
ИИ и автоматизация

Никогда не позволяйте ИИ называть цену

Oybek Odil 31 июля 2026 г. 10 минут чтения

Бизнес губят не галлюцинации. Его губят полномочия — когда вероятностной системе дают право брать на себя обязательства от вашего имени. Решение здесь архитектурное.

Любой разговор о рисках ИИ в бизнесе застревает на галлюцинациях, а бояться стоит совсем не их.

Модель, которая сказала неправду в окне чата, — это неловко. Модель, которая сказала неправду, обязывающую вашу компанию, — цену, скидку, дату доставки, подтверждённую запись, возврат денег, — это событие совсем другого класса. Первое — плохой ответ. Второе — договор, на который ваш бизнес не соглашался, заключённый системой, у которой нет полномочий соглашаться на что бы то ни было.

Разница не в точности. Разница в полномочиях, и из неё вытекает правило, которое мы применяем к каждой ИИ-системе, которую строим:

ИИ может находить, составлять и предлагать. Но он никогда не должен быть последним звеном перед обязательством.

Одно это предложение определяет архитектуру. Всё, что ниже, — о том, как это правило обеспечивается на практике, на примерах систем, которые у нас работают в продакшне.

Шаблон 1: не запрещайте возможность — уберите её

Самая слабая форма контроля — сказать модели чего-то не делать. Промпт — это рекомендация, а не система прав доступа, и инструкция, которая выдерживает тысячу разговоров, провалится на том единственном, который важен.

Сильная форма — убрать саму возможность.

В нашем голосовом ИИ-администраторе, который записывает клиентов на узбекском и русском, ни один инструмент не принимает цену. Не «модели сказано не торговаться», а во всей схеме инструментов нет ни одного параметра, через который цена могла бы попасть внутрь. Услуги, свободное время и данные о заведении берутся из собственных записей бизнеса, и это единственный путь.

Точно так же бот поддержки Bronjoy не имеет вообще ни одного инструмента, который что-то меняет. Он может найти и объяснить. Изменить аккаунт, перенести запись или что-то оформить он не может. Худший возможный его сбой — неправильное объяснение, а это поправимо.

Вопрос при проектировании звучит не как «как мне запретить ему делать X». Он звучит так: какой минимальный набор инструментов позволит ему делать свою работу и что худшего этот набор допускает?

Шаблон 2: изменение состояния требует токена, который модель не может выдумать

Если ИИ может действовать, действие должно быть заперто на что-то, чего он не мог сочинить.

Администратор не может записать клиента на время напрямую. hold_slot резервирует конкретное время и возвращает hold_token, а book_appointment без него не запустится. Модель не может записать на слот, который календарь никогда не предлагал, а двум звонящим не может достаться один и тот же слот.

Та же идея работает в MCP-серверах Bronjoy, которые позволяют ассистентам вроде Claude искать и записываться по всему маркетплейсу из 23 727 заведений. Чтобы создать запись, нужен шестизначный код, отправленный на собственный телефон или почту клиента, — он действует пять минут и годится для одной записи. Ассистент этот код никогда не видит. Его диктует сам пользователь.

Шаблон обобщается: модель предлагает действие; отдельная детерминированная система выдаёт разрешение; действие требует разрешения. Уверенность модели выпадает из причинно-следственной цепочки.

Шаблон 3: сверяйте утверждение с тем, что произошло на самом деле

Этот шаблон почти никто не строит, а он самый важный.

Модель может вызвать инструмент, получить ошибку — и после этого сообщить клиенту, что всё прошло успешно. Она не врёт: она просто заканчивает предложение самым вероятным образом. Но клиент теперь уверен, что записан.

Поэтому у администратора есть страж утверждений. Каждая фраза, в которой говорится о записи, отмене или переносе, — на русском, узбекском или английском — до того, как будет произнесена, сверяется с вызовами инструментов, которые действительно прошли успешно. Если совпадения нет, фраза переписывается в уточняющий вопрос, а перехват записывается в лог.

Общее правило: никогда не позволяйте модели быть источником истины о её собственных действиях. Сравнивайте её вывод с записями вашей системы и вмешивайтесь при расхождении. Если в этом году вы построите только один защитный механизм — постройте этот.

Шаблон 4: разделите риски по уровням и отправьте дорогую половину в очередь

Не каждое решение требует человека, а если требовать его для всего, получится система настолько медленная, что ей никто не будет пользоваться.

Nomadeo — ИИ-агент по продажам, который мы делаем для WhatsApp и Telegram на русском, узбекском и казахском, — решает это явными уровнями. Факты и обязательства извлекаются из переписки, распределяются по уровням риска и сверяются с более ранними. Факты с низким риском подтверждаются автоматически. Факты с высоким риском — всё, что обязывает бизнес деньгами: цена, скидка, срок — ждут в очереди решений, где менеджер подтверждает или отклоняет их одним касанием или свайпом, с возможностью отмены. Дальше, в CRM, уходят только подтверждённые факты — через вебхук с подписью HMAC.

Вокруг этого стоят девять проверок каждого черновика перед отправкой: опора на факты, полномочия на скидку, запрещённые утверждения, промпт-инъекции, персональные данные, устаревшие факты, ночной режим, лимиты запросов и бюджет. Заблокированный черновик пересобирается или передаётся человеку.

Та же схема есть в ИИ-ассистенте админки Knigopoisk, у которого есть реальные инструменты для работы с заказами, товарами, контентом и пользователями. Когда он предлагает действие, требующее согласования, выполнение приостанавливается, предложение фиксируется, и работа продолжается только после того, как администратор его одобрит или отклонит, — остаётся журнал аудита: что было предложено и что было сделано.

Обратите внимание на разницу между паузой в процессе и вопросом заранее. Вопросы заранее вызывают усталость от согласий. Пауза в точке решения оставляет запись.

Шаблон 5: пусть модель предлагает, а решает что-то детерминированное

Самая полная версия принципа — и та, у которой больше всего плюсов.

Чтобы её проверить, мы сделали Keystone на AMD Developer Hackathon. Задача — составление графика смен для персонала с жёсткими правилами вроде «никогда не ставить неквалифицированную медсестру на смену в реанимации». Попросите чат-бота составить график — и получите план, который хорошо читается, часто стоит дешевле и тихо нарушает правило, за которое кто-то несёт юридическую ответственность.

Архитектура делит одно решение на три роли:

  1. Gemma читает данные, правила на запутанном естественном языке и цель — и предлагает формальную целочисленную модель.
  2. Google OR-Tools CP-SAT решает эту модель с доказанной оптимальностью — или возвращает минимальный набор конфликтующих правил.
  3. Независимый верификатор перепроверяет каждое жёсткое ограничение точной целочисленной арифметикой и выдаёт сертификат, который можно проверить машинно.

LLM делает то, в чём она действительно сильнее всего, — превращает размытые человеческие правила в структуру. Она никогда не принимает решение и никогда не ручается за ответ. Тот же верификатор параллельно оценивает план, составленный «голой» LLM, так что разницу видно наглядно.

Это самое ценное применение языковой модели в бизнес-процессе: как переводчика в то, что можно проверить, а не как оракула.

То же правило — в работе с доказательствами

Ещё два наших инструмента применяют этот принцип не к действиям, а к утверждениям, и на это стоит посмотреть, потому что большинству компаний нужна именно такая версия.

Testify проверяет записи звонков по взысканию долгов на соответствие правилам FDCPA и TCPA. Требование считается выполненным, только если есть дословная цитата с таймкодом. Отсутствие доказательств не превращается ни в провал, ни в успех — оно превращается в статус «недостаточно доказательств» и уходит на проверку человеку.

Legible адаптирует документы для экранных дикторов. Когда визуальная модель не может считать значение с графика, значение остаётся пустым и помечается флагом, потому что в процессе, за который кто-то отвечает юридически, уверенная неверная цифра хуже, чем никакой.

Оба инструмента закрепляют одну и ту же идею: вывод с тремя состояниями — да, нет, не знаю — вот что делает ИИ-систему пригодной для регулируемого процесса. Вывод с двумя состояниями вынуждает сочинять.

Один инцидент через все пять шаблонов

С абстрактными принципами легко согласиться и трудно их применить, поэтому вот один правдоподобный сбой — и то, где каждый шаблон его остановил бы.

Исходные данные. Мебельный магазин запускает ИИ-ассистента в WhatsApp. Клиент спрашивает про диван, упоминает распродажу у конкурента и говорит, что купит сегодня, если цена будет такой же. Ассистент, стараясь быть полезным, отвечает: «Могу сделать вам скидку 15% сегодня — и отложу один на складе».

Никакой галлюцинации в этом сообщении нет. Каждое слово правдоподобно, хорошо написано и ровно то, что мог бы сказать хороший продавец. А ещё это скидка, которую никто не утверждал, на товар, который никто не резервировал, — и теперь у клиента это есть в письменном виде.

Где это ломается и где каждый шаблон это ловит:

ШаблонОстановил бы он это?
1. Уберите возможностьДа, в корне. Если ни один инструмент и ни один путь через промпт не может выдать процент, такую фразу просто не составить. Это самое дешёвое исправление, и большинство команд его пропускает, потому что оно кажется слишком жёстким.
2. Запирайте на токенДа, в части резерва. «Отложу один» — правда, только если удержание было оформлено. Нет токена удержания — нет и утверждения.
3. Сверяйте утверждениеДа, в обеих частях. Исходящая проверка сравнивает «скидку 15%» и «отложу» с вызовами инструментов, которые действительно прошли, не находит ни того, ни другого и переписывает фразу в вопрос: «Сейчас уточню, что могу сделать по цене и можно ли отложить один экземпляр, — минутку».
4. Уровни и очередьДа, и это та версия, которая всё равно закрывает продажу. Скидка распознаётся как денежное обязательство, уходит в очередь менеджеру и за несколько минут возвращается одобренной или со встречным предложением — а клиенту сообщают, что подтверждает живой человек.
5. Предложение, потом детерминированное решениеДа, на уровне структуры. Модель предлагает «дать скидку»; движок ценовых правил решает, допускают ли её этот клиент, этот товар и эта маржа.

Заметьте: четыре из пяти не останавливают разговор. Ленивое прочтение этой статьи — «закрутить ассистенту гайки, пока от него не останется толку». Точное прочтение — ассистенту с чёткими границами можно доверить больше самостоятельности, потому что дорогие исходы для него структурно недоступны.

Заметьте и цену сбоя, если ничего из этого нет. Дело не в 15%, а в прецеденте, в клиенте, который расскажет трём друзьям, что такая скидка бывает, и в том, что узнаете вы об этом через несколько недель из вопроса бухгалтерии, а не из лога.

Чек-лист перед запуском чего угодно

  1. Перечислите все инструменты. Для каждого: что худшего случится, если он сработает неправильно?
  2. Уберите все инструменты, для которых ответ на этот вопрос неприемлем. Не смягчайте — убирайте.
  3. Для оставшихся изменений состояния: каким детерминированным токеном они заперты?
  4. Что сверяет утверждения модели с записями вашей системы?
  5. Какие выводы обязывают вас деньгами? Они идут в очередь на согласование, с журналом аудита.
  6. Является ли «я не знаю» допустимым выводом? Если нет, вы спроектировали систему, которая обязана выдумывать.
  7. Как разговор передаётся человеку и передаётся ли вместе с ним контекст?
  8. Где потолок расходов и что происходит, когда он достигнут?

Последний пункт — не вопрос безопасности, пока вдруг не становится им. Nomadeo ограничивает расходы глобально и отдельно для каждого клиента платформы, а после лимита агент деградирует ступенями — модель подешевле, потом только ответы из кеша, потом человек, — вместо того чтобы сломаться посреди разговора.

Почему это коммерческий аргумент, а не осторожность

Всё это не про то, чтобы притормозить ИИ. Ровно наоборот.

Системе с жёсткими границами можно дать гораздо больше самостоятельности внутри них, потому что радиус поражения известен. Bronjoy может открыть запись любому ИИ-ассистенту в интернете без всякого аккаунта именно потому, что проверка, лимиты и сверка утверждений живут за интерфейсом. Ограничения — это то, что делает открытость безопасной.

Меньше всего от ИИ в ближайшие три года получат компании, которые либо отказываются его внедрять, либо внедряют без всякой архитектуры, а после первого инцидента отступают. Оба пути ведут в одно и то же место.

Наши проекты по внедрению ИИ и автоматизации стоят от $299 со сроком 1–3 недели, и первый этап — аудит процессов, ровно по этой причине: вопрос не в том, что умеет ИИ, а в том, какие из ваших шагов он может безопасно взять на себя.

Расскажите, что вам нужно. В ответ вы получите фиксированную цену и дату сдачи — бесплатно и без обязательств продолжать.

Частые вопросы

Разве хороший промпт с этим не справится?

Промпт снижает частоту сбоя. Но не ограничивает последствия. Для всего, что вас обязывает, нужен механизм, который невозможно уговорить изменить поведение хитро составленным сообщением, — см. также про промпт-инъекции.

Все эти согласования не замедляют агента?

Только там, где и должны. В этом и смысл уровней: частая работа с небольшими последствиями идёт на полной скорости, и в очередь попадают только обязательства. На практике клиенты видят быстрого ассистента, который иногда говорит «давайте я уточню это у коллеги», — ровно так поступает хороший младший сотрудник.

Кто отвечает, если ИИ пообещал что-то не то?

Исходите из того, что вы, и проектируйте соответственно. Именно из-за этого допущения очередь согласований и журнал аудита важнее любого выбора модели: вы должны быть в состоянии показать, что было предложено, что одобрено и кем.

Это актуально только для регулируемых отраслей?

Нет. Любой бизнес, который называет цены, принимает записи, обещает сроки или оформляет возвраты, берёт на себя обязательства. Регулирование меняет размер штрафа, а не архитектуру.

Какую ошибку вы видите чаще всего?

Ассистенту в первый же день дают право изменять данные в боевой системе, потому что на демо он показал себя хорошо. Такие системы ломаются не на демо. Они ломаются на нестандартном разговоре, через три месяца, когда никто не смотрит.

Давайте обсудим

Читать об этом — самое простое

Если вы и правда решаете такую задачу, расскажите о ней. Мы скажем, что бы сделали, сколько это стоит и сколько займёт времени.

Бесплатная консультация Без обязательств Быстрый ответ