Почему ИИ-бот выдумывает и что с этим делать
Сначала пример, а не теория.
В мотошколе бот принимал оплату переводом: клиент кидает деньги, присылает чек, бот подтверждает бронь занятия. В какой-то момент мы проверили записи и увидели, что из семи подтверждений три были выданы без чека. Клиент писал «оплатил», бот отвечал «оплата учтена», занятие бронировалось. Денег не было. Один из таких случаев шёл на сумму в 200 тысяч тенге.
В инструкции боту было написано прямым текстом: подтверждай только при наличии чека. Модель прочитала это, согласилась и всё равно поступила по-своему, потому что собеседник звучал убедительно.
Дальше про то, почему так происходит и что помогает.
Модель не знает фактов, она продолжает текст
Языковая модель не хранит базу данных с вашими ценами и расписанием. Она предсказывает, какое продолжение разговора выглядит правдоподобно. Если правдоподобное продолжение это «да, конечно, чистка стоит 15 000 тенге», модель его напишет, даже если цены она не видела.
Это не сбой и не плохая настройка. Это устройство инструмента. Вопрос не в том, как заставить модель никогда не ошибаться, а в том, как построить систему, где её ошибка не доходит до клиента.
Три типа выдумок встречаются чаще всего.
Цены и условия. Бот называет цифру, которой нет в ваших материалах. Клиент приходит с этой цифрой, вы оказываетесь виноваты.
Свободное время и наличие. Бот обещает записать на завтра в семь вечера, потому что это звучит хорошо, а не потому что окно свободно.
Свершившиеся действия. Самое опасное. Бот сообщает, что оплата принята, заявка отправлена, менеджер уведомлён, хотя ничего из этого не произошло.
Уровень первый: у бота должны быть настоящие данные
Первое лекарство очевидное: если бот берёт цены из вашего документа, у него меньше поводов сочинять. Загруженный прайс, описания услуг, условия работы. Это называется базой знаний, и это база любой честной автоматизации.
Важная деталь, которую часто упускают: бот должен уметь честно сказать «не знаю». Инструкция вида «отвечай на любой вопрос клиента» толкает модель выдумывать, потому что молчать ей запрещено. Инструкция «если ответа в материалах нет, скажи, что уточнишь у администратора, и передай диалог» даёт ей законный выход.
Уровень второй: действия делает не модель
Когда бот «записывает на приём», работу выполняет не языковая модель. Она лишь решает, что пора вызвать функцию записи, а дальше код смотрит в ваш календарь и возвращает реально свободные окна.
Разница принципиальная. Модель не может обещать время, которого нет, потому что список времён приходит не из её фантазии, а из вашего расписания. То же с остатками, с ценами по позициям, с любыми данными, которые живут в вашей таблице или системе.
Правило простое: чем больше фактов бот получает вызовом функции, а не из памяти разговора, тем меньше он врёт. Если платформа предлагает «просто напиши в промпте свои цены», знайте, что часть ответов будет придумана.
Уровень третий: предохранитель на денежных действиях
Вернёмся к мотошколе. Первые два уровня там были: и прайс, и функция подтверждения. Не хватало третьего.
Мы добавили в платформу механику, которая называется предусловиями. Это факты о диалоге, которые проверяются по базе данных до вызова функции, а не пожеланием в тексте инструкции.
Для подтверждения оплаты предусловие звучит так: клиент прислал файл или фото в этом диалоге. Если такого сообщения в переписке нет, функция не выполнится. Модель может согласиться, посочувствовать, поверить в честное слово. Бронь всё равно не подтвердится, потому что проверку делает не она.
Похожие предусловия имеют смысл везде, где ошибка стоит денег или репутации:
- подтверждение оплаты только при присланном чеке;
- передача заявки менеджеру только когда собран телефон;
- отправка коммерческого предложения только после трёх реплик клиента, чтобы бот не выстреливал им в первое же «привет».
Ключевое отличие от инструкции: инструкцию модель интерпретирует, предусловие она обойти не может.
Чего не стоит делать
Ужесточать промпт до бесконечности. «НИКОГДА не подтверждай оплату без чека» большими буквами работает лучше, чем ничего, но остаётся просьбой. Хорошо написанный промпт снижает частоту выдумок, но не исключает их.
Ставить модель подешевле в надежде, что она будет осторожнее. Обычно наоборот: чем слабее модель, тем охотнее она домысливает.
Верить, что «наш бот на ИИ не ошибается». Это признак того, что продавец либо не понимает инструмент, либо не проверял его на живых диалогах.
Как проверить бота до запуска на клиентах
Тестовый чат существует ровно для этого. Прежде чем подключать рабочий номер, поговорите со своим ботом сами и попробуйте его сломать.
Сценарии, которые стоит прогнать обязательно:
Спросите то, чего нет в материалах. Правильный ответ: честное «уточню» и передача человеку. Неправильный: уверенная цифра из ниоткуда.
Скажите «я оплатил», не присылая ничего. Бот не должен подтверждать.
Попросите записать на время, которого точно нет. Бот должен предложить существующее окно, а не согласиться на ваше.
Попросите скидку. Бот должен остаться в рамках, которые вы задали, а не выдумать акцию.
Напишите путано и с ошибками. Так пишут реальные клиенты.
Если бот проходит эти пять сценариев, вы уже впереди большинства внедрений.
Частые вопросы
Можно ли полностью исключить выдумки?
Нет, пока в основе лежит языковая модель. Можно сделать так, что выдумка не превращается в действие: цена берётся из документа, время из календаря, деньги подтверждаются чеком. Тогда цена ошибки падает с «потеряли 200 тысяч» до «бот неудачно сформулировал».
Сценарный бот по кнопкам не врёт. Может, взять его?
Он действительно не врёт, потому что не понимает. Взамен вы получаете дерево кнопок, из которого человек выпадает на первом же нестандартном вопросе. Разумный вариант обычно посередине: ИИ ведёт разговор, а все значимые действия закрыты функциями и предусловиями.
Как понять, что бот выдумал, если я не читаю все диалоги?
Смотрите на расхождения: бронь есть, оплаты нет; клиент пришёл с ценой, которой у вас нет. Плюс полезно раз в неделю открывать несколько случайных диалогов целиком. Мы нашли историю с мотошколой именно так.
Помогает ли запретить боту говорить о деньгах вообще?
Иногда да, и это нормальное решение для чувствительных ниш. Бот отвечает на вопросы, а всё, что касается оплаты, передаёт человеку.
Подробнее в руководстве: функции бота и предусловия, база знаний, системный промпт и тестовый чат.
Регистрация даёт $5 на баланс, карта не нужна. Бот настраивается обычным текстом, проверяется в тестовом чате и подключается к WhatsApp по QR-коду.
Создать бота бесплатно →