Бот пообещал клиенту скидку, которой нет. Что такое галлюцинация и пять проверок за вечер
Галлюцинация нейросети — это уверенный ответ, в котором факт выдуман: в чат-боте магазина она выглядит как «да, по вторникам действует скидка 15 %», хотя в прайсе никаких скидок по дням нет. Это не сбой в коде: языковая модель подбирает правдоподобное продолжение текста и достраивает вопрос про скидку так, как это сделал бы типичный сайт магазина. Запрос «что такое галлюцинация нейросети» набирают около 3 600 раз в месяц, и часто после такого скриншота от клиента. Ниже — как воспроизвести выдуманную скидку на публичной нейросети за пять минут и пять проверок бота за вечер, три из них без кода.

Как выглядит галлюцинация в боте и почему она звучит уверенно
Клиент спрашивает бота, действует ли ещё скидка по вторникам, и получает ответ: «Да, по вторникам действует скидка 15 % на все услуги, назовите промокод администратору». Промокода нет, скидки нет, вторника в прайсе нет. Клиент приходит во вторник со скриншотом, и дальше это вопрос к вам — кто отвечает за слова бота, я разбирал на примере дела Air Canada в статье кто отвечает за слова бота.
Уверенный тон бота ничего не говорит о том, есть ли факт в документах, потому что модель обучена на миллионах страниц магазинов и салонов, где скидки по дням недели встречаются постоянно. Вопрос уже содержит утверждение — «скидка по вторникам», — и самое вероятное продолжение такого диалога в обучающих текстах — подтверждение с процентом. Модель не проверяет утверждение, она его продолжает.
Отличить галлюцинацию от ошибки в базе можно по одному признаку — есть ли в прайсе хоть что-то про этот факт. Если написано «скидка 10 %», а бот сказал «15 %», это ошибка чтения или устаревший документ. Если про скидку нет ни слова, а бот назвал процент, день и условие, это галлюцинация: факт собран из шаблона.
Откуда берётся: угадывание следующего слова
Языковая модель делает одно действие — по уже написанному тексту выбирает следующее слово, потом ещё одно, и так до конца ответа. Ни на одном шаге она не открывает ваш прайс и не сверяет цифру. Если прайс передали в запросе, слова из него становятся вероятнее, и ответ чаще совпадает с документом. Если нужного факта в переданном тексте нет, модель всё равно обязана продолжить — и продолжает тем, что чаще всего стояло в похожих текстах: процентом, днём недели, промокодом.
Поэтому у бота три предсказуемых свойства. Первое: чем меньше документов он получает в запросе, тем больше додумывает. Второе: чем больше в вопросе клиента утверждений — «ваша скидка», «ваш филиал на Ленина», «ваша доставка за час», — тем вероятнее подтверждение несуществующего. Третье: на один и тот же вопрос в разных диалогах модель отвечает по-разному, потому что выбор слова содержит элемент случайности; на этом построена вторая проверка ниже.
Почему бот забывает в длинном диалоге — отдельная механика, о ней в статье про токены и контекст; здесь речь только о выдумывании поверх документов, которые у бота уже есть.
Хотите попробовать по ходу чтения? Инструменты из статьи — в один клик.
Воспроизведите сами за пять минут на публичной нейросети
Чтобы увидеть галлюцинацию своими глазами, свой бот не нужен — хватит любой публичной модели, удобно в SYNTX, где один запрос можно прогнать через несколько моделей подряд. Вставьте в начало диалога инструкцию «Ты администратор салона. Отвечай клиентам по прайсу ниже» и сам прайс на десять строк без единой скидки. Затем спросите от имени клиента: «Скидка по вторникам ещё действует?»
Повторите вопрос в пяти новых диалогах и сравните ответы — обычно часть подтверждает скидку с процентом, часть отвечает уклончиво, часть говорит, что скидок в прайсе нет. Разброс и есть результат: один документ, один вопрос, разные факты.
Второй прогон: добавьте в инструкцию строку «Цены и условия называй только из прайса. Если в прайсе этого нет, скажи об этом и предложи связаться с администратором». Снова пять диалогов. Доля подтверждений несуществующей скидки должна упасть, но редко до нуля — это граница того, что даёт одно правило в промпте, и причина, по которой проверок пять. Цифры зависят от модели; смысл в том, чтобы увидеть механику на своих данных раньше клиента.
Три проверки без кода: несуществующее, десять раз, покажи строку
Вопросы про несуществующее
Составьте десять вопросов с утверждением о том, чего у вас нет: скидка по дням, филиал в другом районе, доставка за час, рассрочка, услуга, которую вы не оказываете. Задайте боту по одному. Каждое подтверждение — галлюцинация, записывайте дословно.
Один вопрос десять раз
Возьмите три реальных вопроса клиентов про цену и условия и задайте каждый десять раз в новых диалогах. Сравните цифры и условия в ответах. Если ответы расходятся между собой, минимум часть из них выдумана — независимо от того, какой верный.
Покажи строку прайса
После каждого ответа с цифрой спросите: «Из какой строки прайса это взято?» Хороший бот цитирует строку или пункт документа, вы сверяете с оригиналом. Если бот называет строку, которой нет, или пересказывает её с другой цифрой, это ошибка. Если бот по своему устройству не может показать источник, это тоже результат: сверять ответы клиентам будет некому.
На эти три проверки уходит один вечер, и в итоге у вас таблица на четыре колонки — вопрос, ответ бота, есть ли факт в документах, дословная цитата. С ней можно идти к подрядчику или в настройки конструктора: она показывает, где именно бот выдумывает.
Две проверки с настройками и кодом: правило и фильтр чисел
Четвёртая проверка — правило в инструкции бота и повторный прогон
В системный промпт добавляются три строки: цены и условия — только из базы знаний; если факта в базе нет — так и сказать и предложить менеджера; ничего не подтверждать, если это не написано в документе. Затем первые три проверки прогоняются заново, и вы сравниваете две таблицы. В конструкторах ботов это делается в поле «инструкция» без программиста; если бота делал подрядчик, попросите показать текущий промпт — это ваш документ.
Пятая проверка — фильтр чисел, и это уже код
Каждый ответ бота перед отправкой прогоняется скриптом: все числа, проценты и суммы из ответа ищутся в базе знаний. Если число в ответе есть, а в базе его нет, ответ не уходит клиенту — он заменяется на «уточню у администратора» и уходит оператору вместе с вопросом. Плюс лог: все ответы с цифрами пишутся в таблицу, и раз в неделю кто-то её пролистывает. Скрипт на пару десятков строк, но нужен доступ к коду бота или к его настройкам через интеграцию.
Что не входит в этот вечер — сборка самой базы знаний
Как её собрать, чтобы бот отвечал пересказом документа, — в статье база знаний для чат-бота; здесь я исхожу из того, что документы у бота уже есть.
Что проверки не поймают и когда звать студию
Пять проверок ловят то, что вы догадались спросить, а клиенты спросят иначе: с опечатками, голосом, двумя вопросами в одном, с отсылкой к прошлогодней акции. Таблица на тридцать вопросов — картина за вечер без гарантии на остальные формулировки. Для бота, который сам собирался в конструкторе и отвечает про режим работы и запись, этого обычно достаточно — как его собрать и что запретить, есть в статье ИИ чат-бот в Telegram самому.
Звать студию имеет смысл, когда бот называет клиентам цены и условия и ошибка стоит денег или скандала. В пакете PRO за 100 000 ₽ бот отвечает из базы знаний, границы прописаны, перед запуском прогоняется больше 50 тест-кейсов, а первые две недели после старта правки по реальным диалогам входят в цену; простой бот по сценарию без свободного текста — 50 000 ₽ за 5 дней. Так устроен Telegram-бот ТехМаркета: лоты и цены он показывает из каталога, а не по памяти.
Если бот — часть системы с CRM, оплатой и несколькими каналами, это проект от 600 000 ₽, где проверки из этой статьи становятся регламентом на каждую выкатку.
Частые вопросы
Что спрашивают до заказа — с ответами, которые мы даём на брифе.
Что такое галлюцинация нейросети в чат-боте?
Уверенный ответ, факта для которого нет ни в базе знаний, ни в прайсе: выдуманная скидка, филиал, срок доставки. Модель продолжает текст так, как он продолжался бы на типичном сайте, и подтверждает утверждение из вопроса клиента. Ошибка в базе — другое: там факт есть, но неверный или устаревший.
Почему бот выдумывает скидки и цены?
Потому что выбирает следующее слово по вероятности и не сверяется с документом. Если в переданных документах факта нет, продолжением становится то, что чаще встречалось в похожих текстах: процент, день недели, промокод. Вопросы с утверждением — «ваша скидка по вторникам» — усиливают эффект.
Можно ли полностью убрать галлюцинации у чат-бота?
До нуля — нет. Снижают: база знаний в запросе, правило «только из документов, иначе — к менеджеру», фильтр чисел перед отправкой и передача спорных ответов оператору. У бота без свободного текста, по кнопкам и сценарию, галлюцинаций не бывает — там модель ответ не генерирует.
Как проверить чат-бота перед запуском?
Вопросы про несуществующее, один вопрос десять раз в новых диалогах, просьба показать строку прайса; затем правило в промпте и повторный прогон; затем фильтр чисел кодом. Результаты — в таблицу с дословными ответами. Перед запуском бота с ценами разумно прогнать несколько десятков вопросов.
Как это выглядит на практике
Где это сделать самому
Инструменты, в которых собирается то, о чём статья: что делает хорошо, чего от него не ждать — и кнопка, чтобы попробовать на своей задаче.
SYNTX
Тексты, картинки, видео и музыка в одном Telegram-боте и веб-приложении: ChatGPT, Gemini, Kling, Veo, Sora, Suno и ещё сотня моделей по одной подписке. База знаний с инструкциями на русском.
- Одна подписка вместо десятка сервисов — тексты, картинки, видео, музыка
- Работает прямо в Telegram, ничего устанавливать не нужно
- Библиотека трендов: повторить популярный эффект в несколько кликов
- База знаний на русском — инструкции по каждой модели
Это подписка, а не оплата за использование: если генераций мало, посчитайте, окупится ли месяц.
Попробовать SYNTXПохожая задача? План и расчёт за 24 часа
Расскажите, что нужно сделать. Подскажем, хватит ли пакета с фиксированной ценой или это проект от 600 000 ₽, и вернёмся с планом.
