Спор «сценарный или на нейросети» обычно ведут не о том. Речь идёт не о том, какой бот умнее, а о том, чем вы готовы пожертвовать: предсказуемостью ответа или покрытием вопросов. Сценарный бот отвечает ровно то, что вы написали, но только на то, что вы предусмотрели. Нейросетевой отвечает почти на всё, но каждый его ответ — вероятностный, и гарантировать конкретную формулировку нельзя.
Выбор между ними — это выбор, какая ошибка дешевле: «бот не понял вопрос» или «бот ответил не то».
Как устроен каждый
Сценарный бот — это дерево. Узлы, переходы, кнопки. Пользователь идёт по ветке, бот выдаёт заготовленный текст. Никакой модели внутри может не быть вовсе. Поведение полностью детерминировано: одинаковый путь всегда даёт одинаковый результат.
Слабое место известно каждому, кто им пользовался: шаг в сторону от дерева — и бот отвечает «Я вас не понял, выберите один из вариантов». Расширение покрытия означает добавление веток, и трудоёмкость растёт вместе с их числом. Дерево на двести узлов сопровождать тяжелее, чем кажется на этапе, когда их двадцать.
Бот на нейросети получает вопрос в свободной форме, находит подходящие фрагменты в ваших материалах и формулирует ответ. Ветки не нужны: одна и та же связка отвечает и на «сколько стоит доставка», и на «а если я в Крыму и хочу забрать сам». Механика подробно разобрана в статье «Чат-бот по базе знаний».
Слабое место у него ровно противоположное: ответ формулируется каждый раз заново. При хорошей базе знаний и правильной настройке он будет верным, но не будет дословно совпадать с эталоном. А при плохой базе знаний модель способна выдать правдоподобно звучащий вымысел — механизм разобран в статье «Почему нейросеть выдумывает».
Сравнение по тому, что действительно различается
| Сценарный | На нейросети | |
|---|---|---|
| Понимает свободные формулировки | нет | да |
| Ответ воспроизводим дословно | да | нет |
| Что делать с новым вопросом | добавить ветку | обычно ничего |
| Трудоёмкость расширения | растёт с числом веток | зависит от базы знаний, не от числа вопросов |
| Стоимость обращения | нулевая | плата за токены |
| Риск неверного ответа | ошибка автора сценария | ошибка модели или пробел в материалах |
| Где ловится ошибка | на этапе написания | только тестированием и мониторингом |
| Юридически выверенные формулировки | гарантируются | не гарантируются |
Последняя строка решает больше споров, чем все остальные. Если ответ должен звучать дословно так, как согласовал юрист, — это сценарный узел, и никакая модель тут не альтернатива.
Что реально работает: гибрид
Практически все работающие боты, которые я делал, устроены не «или-или».
Схема такая:
- Транзакционные пути — сценарные. Проверить статус заказа, записаться на приём, оставить контакт, оформить возврат. Здесь важна не гибкость формулировок, а надёжность результата. Шаги фиксированы, ответы выверены, ничего лишнего.
- Свободные вопросы — на нейросети. Всё, что не попало в сценарий: условия, сроки, состав услуги, частные случаи. Модель отвечает по базе знаний.
- Маршрутизатор на входе определяет, куда направить обращение. Он же и есть точка, где чаще всего ломается вся конструкция, — об этом ниже.
- Регламентированные темы — жёстко сценарные, с запретом на генерацию. Цены, юридические условия, гарантии, медицинские и финансовые формулировки.
Такое устройство даёт покрытие нейросетевого бота там, где нужна гибкость, и предсказуемость сценарного там, где нужна точность.
Разбор ситуации: запись в клинику
Показательный случай, где выбор виден по шагам.
Задача. Бот принимает обращения от пациентов: вопросы об услугах, ценах, подготовке к процедурам и запись на приём.
Что было предложено изначально. Полностью нейросетевой бот по загруженным документам клиники. Выглядело логично: материалов много, вопросы разнообразные.
Что вскрылось на разборе.
Первое. Часть вопросов — медицинские: «можно ли мне эту процедуру при таком-то диагнозе». Отвечать на них бот не должен вообще, ни верно, ни неверно. Это не задача настройки, это запрет: такие обращения должны распознаваться и переводиться на человека, а не обрабатываться моделью.
Второе. Цены. В прайсе позиции с условиями — «от», «за единицу», «без учёта анестезии». Модель, формулирующая ответ своими словами, регулярно теряла оговорку. Пациент получал сумму без условия и приходил с ожиданием, которое не совпадало с реальностью. Ошибка не в модели — в постановке: цена должна отдаваться неизменяемым фрагментом.
Третье. Запись на приём — многошаговый процесс с проверкой расписания. Он и так фиксирован по шагам: выбрать врача, выбрать время, оставить контакт, подтвердить. Пропускать его через модель незачем.
Что получилось.
| Тип обращения | Обработка |
|---|---|
| Медицинские вопросы | распознавание темы → перевод на регистратуру, ответ не генерируется |
| Цены | сценарный узел, текст из прайса без переформулирования |
| Запись | сценарий с интеграцией в расписание |
| Подготовка к процедурам, режим работы, адреса, документы | нейросеть по базе знаний |
| Всё остальное | перевод на оператора |
Где конструкция ломалась. Не там, где ожидалось. Проблемой оказался не качественный ответ модели, а маршрутизатор — тот самый узел, который решает, куда отправить обращение. Вопрос «сколько стоит удаление зуба мудрости и не опасно ли это при беременности» содержит сразу две темы: одну ценовую и одну медицинскую. Первая версия маршрутизатора выбирала одну и теряла вторую.
Решение — разрешить одновременное срабатывание нескольких правил и ввести приоритет: если сработал запрет, он выигрывает у любого другого правила. Бот отвечает на ценовую часть и тут же переводит диалог на человека по медицинской.
Это общий принцип, а не частность клиники: в гибридной схеме опасное место — не качество ответов, а решение о том, кто отвечает.
Стоимость: у них разная форма, а не просто разный размер
Сценарный дороже в проектировании и почти бесплатен в эксплуатации. Основные затраты — написание и согласование текстов, а они растут вместе с числом веток. Бот на двадцать узлов делается быстро, на двести — это уже отдельный продукт с сопровождением.
Нейросетевой дороже на старте (нужна подготовленная база знаний) и имеет постоянный расход на обращения. Зато его покрытие почти не зависит от числа возможных вопросов: добавление новой темы — это добавление документа, а не новой ветки.
Из этого следует нелинейный вывод: при небольшом числе типовых вопросов сценарный дешевле по совокупности, при большом — нейросетевой. Точка перехода зависит от разнообразия обращений, и её стоит посчитать до проекта — разбор в статьях «Стоимость разработки чат-бота» и «Расчёт окупаемости чат-бота».
Когда сценарный однозначно лучше
Не всякая задача выигрывает от нейросети, и это не вопрос бюджета.
- Ответ должен быть дословным. Юридические формулировки, условия договора, гарантийные обязательства, состав услуги в согласованной редакции.
- Регулируемая сфера. Медицина, финансы, страхование — там, где неточная формулировка имеет последствия за пределами разговора.
- Процесс фиксирован. Оформление возврата, запись, подтверждение заказа. Свобода формулировок тут не нужна, а проверяемость нужна.
- Обращений мало и они однотипны. Пять вопросов на девяносто процентов потока — нейросеть здесь избыточна.
- Нет материалов. Бот на нейросети отвечает по документам. Если документов нет, он не отвечает ни по чему — и начинает выдумывать. Сначала база знаний, потом бот.
Частые вопросы
Чем чат-бот на нейросети отличается от сценарного простыми словами?
Сценарный идёт по заранее нарисованному дереву: пользователь нажимает кнопки, бот выдаёт заготовленные тексты. Нейросетевой понимает вопрос в свободной форме и формулирует ответ по вашим материалам. Первый предсказуем, но отвечает только на предусмотренное. Второй отвечает почти на всё, но каждый ответ формулируется заново и не гарантирован дословно.
Можно ли перевести существующий сценарный бот на нейросеть?
Обычно да, и накопленное дерево при этом не пропадает: тексты веток становятся основой базы знаний, а логи диалогов показывают, что люди спрашивают на самом деле. Транзакционные ветки — запись, оформление, статус заказа — как правило оставляют сценарными: переводить их на модель незачем.
Что дешевле в итоге?
Зависит от разнообразия обращений, а не от размера компании. При небольшом числе типовых вопросов сценарный дешевле по совокупности: он почти ничего не стоит в эксплуатации. При большом разнообразии дешевле нейросетевой, потому что его трудоёмкость не растёт с числом тем. Считать нужно на своём потоке.
Насколько нейросетевой бот надёжен?
Он не даёт гарантии на формулировку — это его свойство, а не дефект настройки. Надёжность повышается качеством базы знаний, обязательным цитированием источника и явным отказом при отсутствии данных. Там, где ответ должен быть дословно определённым, ставится сценарный узел, а не улучшенный промпт.
Бот на нейросети может выдумать?
Может, и чаще всего это следствие не «плохой модели», а пробела в материалах: нужного документа нет, а отвечать надо. Лечится тем, что при отсутствии подходящего фрагмента бот отвечает «не знаю» и передаёт диалог человеку. Разбор механизма — в статье «Почему нейросеть выдумывает».
Нужны ли кнопки, если бот на нейросети?
Нужны. Кнопки — не признак примитивности, а способ сократить путь: по частым сценариям человеку быстрее нажать, чем формулировать. Разумная схема — кнопки для типового и свободный ввод для всего остального.
Что дальше
Если склоняетесь к нейросетевому — начните с материалов: «Чат-бот по базе знаний» и «Подготовка базы знаний для ИИ». Если бот должен ещё и выполнять действия в ваших системах — это уже другой класс решений: «Агент, ассистент или чат-бот».
Определить, какая схема подходит вашему потоку обращений, можно на аудите процессов — это дешевле, чем выяснять это на середине разработки. Сама работа по чат-ботам и ассистентам начинается с такого разбора.