AI Chat¶
AI Chat — узел для многоходового диалога между клиентом и AI-ассистентом. AI отвечает сам, опираясь на базу знаний, и сам решает, когда передать разговор живому оператору.
Как работает¶
- Клиент пишет сообщение в мессенджере (Telegram, WhatsApp, MAX).
- AI-ассистент отвечает, используя базу знаний (RAG).
- Если AI не может помочь или клиент просит оператора — автоматическая эскалация, оператор видит всю историю диалога.
Настройка¶
| Параметр | Описание |
|---|---|
| Приветствие | Первое сообщение клиенту при старте диалога |
| Системный промпт | Инструкция для AI: роль, стиль, темы, правила эскалации |
| База знаний | AI ищет ответы в загруженных документах (RAG) |
| Max раундов | Лимит обменов сообщениями — при превышении автоэскалация |
| Таймаут неактивности | По умолчанию 10 минут. Если клиент молчит N минут — процесс автоматически завершается с exit_type=timeout. Значение 0 отключает таймаут (использовать с осторожностью). |
Эскалация¶
AI анализирует контекст диалога и сам решает:
- Продолжить — отвечать самостоятельно
- Эскалировать — передать оператору при негативе, сложном вопросе или прямой просьбе («позовите менеджера»)
- Завершить — клиент получил ответ, диалог закрыт
После эскалации в inbox оператора появляется задача с полной историей диалога. Оператор продолжает общение в том же канале — клиент не замечает переключения.
Webchat-виджет: момент отправки приветствия¶
Для webchat-канала (встраиваемый JS-виджет) приветствие из поля Приветствие отправляется в момент открытия чата клиентом, до того как он напечатает первое сообщение. Клиент видит приветствие сразу, а не после своего первого сообщения.
Под капотом: POST /widget/{token}/init создаёт ConversationBinding
и стартует процесс. AI Chat узел активируется, его greeting сохраняется
в outbound — виджет получает его обычным polling'ом /messages.
Для остальных каналов (Telegram, MAX, Wazzup, Instagram, Viber) старт процесса происходит на первое входящее сообщение клиента — там нет события «открытие чата». Greeting тоже отправляется, но после первого сообщения клиента.
При webchat-сценарии обязательно настраивайте таймаут неактивности (дефолт — 10 минут): если клиент откроет виджет и уйдёт, процесс автоматически закроется и не будет висеть в БД.
Выходные переменные¶
exit_type—escalate/resolved/timeout/max_roundstranscript— полная история диалогаsummary— краткое содержание (если включено)
exit_type удобно использовать в Exclusive Gateway: эскалация → User Task,
resolved → End Event, timeout → Service Task с напоминанием.
Пример использования¶
Бот поддержки: клиент спрашивает про тарифы → AI отвечает из базы знаний → клиент уточняет нюанс, которого нет в документах → AI эскалирует → оператор подключается и видит весь контекст.
Ограничения¶
- AI Chat требует активного диалога с клиентом. После Timer Event и других асинхронных узлов без сообщения клиенту AI Chat недоступен — нет канала для ответа.
- Для работы нужна хотя бы одна настроенная LLM-модель в AI-провайдерах.