Агент-роутер в BotHunter: как настроить маршруты для чат-бота

Агент-роутер в BotHunter — AI-блок, который определяет задачу пользователя по смыслу сообщения и выбирает нужную ветку чат-бота. Чтобы настроить его, добавьте блок к обработке нового входящего сообщения, создайте маршруты, опишите каждый в промпте и соедините выходы с соответствующими действиями. Например, запрос цены, запись и перенос визита должны вести в разные сценарии. Для сообщения без подходящего маршрута и технической ошибки AI настройте отдельные резервные выходы. Роутер выбирает направление диалога; расчёт цены или сохранение записи выполняют следующие блоки сценария.

Схема AI-роутера, который распределяет входящее сообщение по нескольким веткам чат-бота

Как работает Агент-роутер в BotHunter?

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

Раньше для такого сценария приходилось заранее угадывать формулировки и жёстко раскладывать диалог по веткам. Схема работала, пока пользователь не писал чуть иначе, чем задумал автор бота.

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

Пять AI-блоков: кто за что отвечает

В новой версии конструктора доступны пять AI-блоков. У каждого своя задача, а Агент-роутер нужен там, где один входящий запрос должен разойтись по нескольким направлениям.

Сравнение пяти AI-блоков BotHunter
AI-блокЧто он делаетПример
Агент-роутерВыбирает маршрут и запускает связанную с ним веткуОпределяет, хочет клиент записаться, узнать цену или позвать администратора
AI-условиеПроверяет текст по заданному условиюОпределяет, ответил пользователь «да» или «нет»
ИзвлечениеДостаёт нужную информацию из большого текстаИзвлекает из сообщения конкретные сведения
НормализацияПриводит ответ к единому и корректному видуПревращает «СПБ» в «Санкт-Петербург»
СводкаДелает краткое резюме диалогаСобирает сводку по последним сообщениям, от 1 до 30

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

Шаблоны работают по одной логике. Но пустой блок лучше показывает, что происходит внутри: мы сами задаём маршруты, объясняем нейросети критерии выбора и подключаем к каждому выходу нужное действие.

Перед стартом: проверяем новую версию

Сначала зарегистрируйтесь в BotHunter и проверьте, что у вас включена новая версия конструктора. В старой версии AI-блоки не работают.

  1. Создайте чат-бота и подключите нужную площадку: Telegram, MAX или ВКонтакте.
  2. Выберите событие «Новое входящее сообщение».
  3. Добавьте в сценарий AI-блок «Агент-роутер».
  4. Возьмите готовый вариант или откройте пустой роутер для самостоятельной настройки.
  5. Создайте маршруты, напишите для каждого промпт и соедините выходы с нужными действиями.
Выбор события «Новое входящее сообщение» перед добавлением AI-блока.

После настройки любое новое сообщение сначала попадёт в роутер. Тот прочитает текст, сверится с промптами и выберет дальнейшую ветку.

Маршруты: куда бот отправляет пользователя

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

На один промпт доступно до 4000 символов. Если инструкция слишком короткая, нейросети не хватит ориентиров; избыточный текст увеличит время обработки. Опишите намерение клиента достаточно точно и уберите всё, что не помогает выбрать ветку.

Пустой блок «Агент-роутер», в котором создаются маршруты и промпты.

Для примера настроим пять маршрутов для вымышленной стоматологии.

Маршруты и промпты для чат-бота стоматологии
МаршрутПромпт для определения запроса
Новая записьКлиент хочет впервые записаться на приём, консультацию, осмотр или стоматологическую процедуру. Спрашивает о доступной дате или времени.
Цены и услугиКлиент спрашивает о стоимости, видах лечения, процедурах, врачах или о том, оказывает ли клиника конкретную услугу.
Перенос или отмена записиУ клиента уже есть запись, которую он хочет перенести, отменить или уточнить.
Отзыв или жалобаКлиент хочет оставить отзыв, поблагодарить клинику или сообщить о недовольстве лечением, врачом или обслуживанием.
Нужен администраторКлиент прямо просит связать его с живым сотрудником, администратором или просит перезвонить. Этот маршрут выбирается, если просьба о человеке сформулирована явно.

Сохраните настройки и подключите к каждой из пяти веток своё сообщение, следующий блок или передачу обращения администратору. Конкретное действие зависит от задачи бота.

Готовый Агент-роутер с пятью ветками для обращений клиентов стоматологии.

Ни один маршрут не подошёл. Что дальше?

Даже хороший промпт не обязан угадывать всё на свете. Для формулировок, которые мы не предусмотрели, у Агента-роутера есть выход «Не подошло».

Пользователю можно оставить свободный ввод, дать кнопки или совместить оба варианта. Практичный сценарий — добавить кнопку «Нужен администратор», включить опцию «Ожидать ответ пользователя», а следующее сообщение снова отправить в тот же роутер.

Проверьте, чтобы пользователь не ходил по кругу и на каждом шаге видел понятный выход. Для аудитории старше 40 лет стоит сделать упор на кнопки «Запись», «Стоимость» и «Администратор». Для более молодой аудитории можно оставить свободные сообщения — ориентируйтесь на реальных пользователей бота.

Сначала дайте AI возможность быстро понять запрос. Если не получилось, переключайтесь на более жёсткий и предсказуемый сценарий с подсказками или кнопками.

Резервная ветка «Не подошло», ожидание ответа пользователя и кнопка связи с администратором.

«Не подошло» и «Ошибка AI»: в чём разница

Ветка «Ошибка AI» нужна, когда сообщение по какой-то причине не удалось обработать. С веткой «Не подошло» путать её не стоит: в первом случае нейросеть не выполнила обработку, во втором всё обработала, но подходящего маршрута не нашла.

Разница между резервными ветками Агента-роутера
ВеткаЧто произошлоЧто предложить пользователю
Не подошлоСообщение обработано, но ни один маршрут не соответствует запросуУточняющий вопрос, варианты-кнопки или связь с администратором
Ошибка AIНейросеть не смогла обработать сообщениеПовторный ввод, возврат к роутеру или передача сообщения администратору

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

Второй роутер: уточняем услугу

Первый роутер понимает общую тему обращения. Если клиент написал «Здравствуйте, я хочу записаться», бот выберет маршрут «Новая запись», но ещё не поймёт, какой специалист и какая услуга нужны.

Поставьте второй Агент-роутер в ветку новой записи и задайте более узкий вопрос: на какую услугу хочет записаться клиент?

Второй роутер с маршрутами «Лечение», «Профессиональная гигиена» и «Удаление».
  • Лечение Клиент хочет вылечить зуб, поставить или заменить пломбу, жалуется на боль, кариес или чувствительность зубов.
  • Профессиональная гигиена Клиент хочет записаться на профессиональную чистку зубов, удаление налёта или зубного камня.
  • Удаление Клиент хочет удалить зуб, в том числе зуб мудрости, или записаться к стоматологу-хирургу.

После ответа сообщение снова попадает в роутер выбора услуг. Для каждой найденной ветки подготовьте свой текст.

Ответы чат-бота для трёх стоматологических услуг
УслугаОтвет чат-бота
ЛечениеЗдравствуйте. Поможем подобрать время к стоматологу-терапевту. На какой день и примерно на какое время вам удобно записаться?
Профессиональная гигиенаЗдравствуйте. На профессиональную чистку можно записаться. Скажите, на какой день и время вам было бы удобно записаться?
УдалениеЗдравствуйте. Поможем записаться на консультацию к стоматологу-хирургу. Какой день и время вам удобны?

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

Проверка на живом сообщении

Для начала отправим максимально общее сообщение: «Здравствуйте. Я хочу записаться».

Первый Агент-роутер определит новую запись и передаст сообщение второму. Услуга не названа, поэтому не подойдут ни лечение, ни гигиена, ни удаление — сработает уточняющая ветка.

Затем усложним задачу: «У меня вылез и воспалился зуб мудрости. Хирург посоветовал удалить». Второй роутер отнесёт сообщение к удалению и предложит записаться на консультацию к стоматологу-хирургу.

Тестовый диалог, в котором роутер распознаёт запрос на удаление и предлагает запись к хирургу.

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

Что проверить перед запуском Агента-роутера?

Прогоните сценарий на разных формулировках и проверьте основные точки отказа.

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

Агент-роутер берёт на себя главную развилку диалога. К его выходам можно подключать сообщения, другие AI-блоки или администратора, а несколько роутеров подряд позволяют сначала определить общую тему и только потом уточнить детали.

Следующий AI-блок — условие: с его помощью текст проверяют по смысловому условию. Это тема отдельного материала.

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

О выборе маршрута, ошибках и проверке AI-блока.

Почему клиент попадает не в ту ветку, хотя в промпте есть нужная тема?

Часто маршруты описаны слишком широко и пересекаются. Уточните, какие обращения относятся к каждой ветке, добавьте примеры пограничных случаев и повторите тест на тех же сообщениях.

Что делать, если в одном сообщении клиент задаёт два вопроса?

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

Можно ли доверить роутеру изменение цены или запись клиента?

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

Как проверить роутер до запуска на клиентах?

Соберите реальные формулировки: короткие запросы, опечатки, уточнения и сообщения вне темы. Для каждого заранее укажите ожидаемую ветку. Проверяйте также обработку ошибки и возврат к сотруднику.

Когда лучше оставить обычные кнопки вместо AI-маршрутизации?

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