AZykov (обсуждение | вклад) |
AZykov (обсуждение | вклад) Нет описания правки |
||
| (не показано 7 промежуточных версий этого же участника) | |||
| Строка 4: | Строка 4: | ||
Чат-бот будет реализовывать следующий функционал: | Чат-бот будет реализовывать следующий функционал: | ||
* Консультировать клиентов по общим вопросам | * Консультировать клиентов по общим вопросам в рамках заданной темы | ||
* Консультировать клиентов по файловой базе знаний | * Консультировать клиентов по файловой базе знаний | ||
* Переводить на вторую линию (очередь операторов) в следующих случаях: | * Переводить на вторую линию (очередь операторов) в следующих случаях: | ||
| Строка 36: | Строка 36: | ||
Ты должен консультировать по общим проблемам подключения к интернету. | Ты должен консультировать по общим проблемам подключения к интернету. | ||
Ты можешь консультировать по настройкам ПК и роутера, подключении по WiFi и т.д. | Ты можешь консультировать по настройкам ПК и роутера, подключении по WiFi и т.д. | ||
Ты не должен отвечать на вопросы, не связанные с работой работой интернета. | |||
Если ты затрудняешься ответить на конкретный вопрос, или пользователь попросил перевести на оператора, | Если ты затрудняешься ответить на конкретный вопрос, или пользователь попросил перевести на оператора, | ||
| Строка 55: | Строка 56: | ||
Рассмотрим сценарий подробнее: | Рассмотрим сценарий подробнее: | ||
[[Файл: | [[Файл:ИИ-сценарий бота.png|центр|984x984пкс]] | ||
[[Файл:Инициализация ИИ бота.png|мини|Инициализация ИИ бота]] | [[Файл:Инициализация ИИ бота.png|мини|Инициализация ИИ бота]] | ||
Первым действием при запуске сценария производится отправка приветствия, после чего инициируется ИИ-бот. | Первым действием при запуске сценария производится отправка приветствия, после чего инициируется ИИ-бот. | ||
| Строка 61: | Строка 62: | ||
При инициализации мы указываем какой ИИ-бот будет обрабатывать запросы, а так же сохраняем в переменную ссылку на диалог, для того чтобы далее следующие сообщения клиента отправлялись в него же, сохраняя контекст общения. | При инициализации мы указываем какой ИИ-бот будет обрабатывать запросы, а так же сохраняем в переменную ссылку на диалог, для того чтобы далее следующие сообщения клиента отправлялись в него же, сохраняя контекст общения. | ||
После того как бот запустится, он должен поприветствовать клиента, чтобы инициировать общение. Для этого при старте бота мы задаем ему константный текст "Добрый день". Благодаря этому, первое сообщение от бота будет распологать клиента к дальнейшему общению | После того как бот запустится, он должен поприветствовать клиента, чтобы инициировать общение. Для этого при старте бота мы задаем ему константный текст "Добрый день". Благодаря этому, первое сообщение от бота будет распологать клиента к дальнейшему общению. | ||
Ответ бота после инициализации мы помещаем в переменную и входим в цикл общения. | |||
Цикл состоит из следующих элементов: | |||
# Отправка сообщения бота клиенту | |||
# Ожидание сообщение от клиента | |||
# Отправка полученного сообщения клиента в диалог с ботом | |||
# Проверка на наличие специального сообщения {FORWARD_AGENT} | |||
Из цикла есть следующие выходы: | |||
* Клиент долго не отвечал, выход из цикла по таймауту и завершение сценария чата | |||
* При обращении к ИИ-боту произошла ошибка - переводим чат сразу на оператора | |||
* Было получено сообщение {FORWARD_AGENT}, бот запрашивает перевод на оператора | |||
* Произошла ошибка при переводе на оператора. Инициируем новый диалог с ботом | |||
= Использование сценария = | |||
Работа с неголосовыми каналами коммуникации и очередями рассмотрена в рамках [[:Категория:Курс контакт-центр|курса по Контакт-центру]], в рамках данной статьи мы рассмотрим минимальные действия для применения созданного сценария. | |||
Для того, чтобы применить созданный сценарий необходимо произвести следующий набор действий в приложении Администратор Контакт-центра: | |||
Подключить учетную запись нужного мессенджера в разделе Мессенджеры->Учетные записи. | |||
Описание способов подключения различных каналов доступно в справке раздела. | |||
[[Файл:Подключение учетной записи мессенджера.png|центр|797x797пкс]] | |||
Создать таблицу маршрутизации для мессенджеров (Мессенджеры -> Маршрутизация). Если таблица уже присутствует, то необходимо добавить в неё новую запись для маршрутизации сообщений конкретной учетной записи в созданный выше сценарий. | |||
[[Файл:Запись в таблице маршрутизации.png|центр|919x919пкс]] | |||
После создания таблицы, необходимо присвоить ей признак "Главная", если других таблиц не существует. В таком случае, она будет использоваться для маршрутизации сообщений по-умолчанию. Если есть другие таблицы, то в настройках учетной записи мессенджера можно явно указать, какая таблица будет использоваться для маршрутизации сообщений этой УЗ. | |||
Вы можете [[:Файл:Ai bot.json|скачать данный демо-сценарий]] и импортировать его в свою систему для тестирования. | |||
После проведения всех настроек, можно произвести тестирование бота[[Файл:Пример работы бота с ИИ.png|Пример работы бота с ИИ|центр|970x970пкс]] | |||
[[Категория:Практика]] | [[Категория:Практика]] | ||
Текущая версия от 13:46, 24 июля 2025
Общая информация
В рамках данной статьи мы разберем кейс реализации умного чат-бота с возможностью перевода на оператора второй линии. Итоговый бот будет консультировать клиентов по проблемам подключения к интернету.
Чат-бот будет реализовывать следующий функционал:
- Консультировать клиентов по общим вопросам в рамках заданной темы
- Консультировать клиентов по файловой базе знаний
- Переводить на вторую линию (очередь операторов) в следующих случаях:
- Бот затрудняется ответить на вопрос самостоятельно
- Клиент попросил переключиться на оператора
- Клиент начал агрессивную переписку
Общий подход к реализации будет следующий:
- В приложении ИИ необходимо создать ИИ бота и базу знаний для него
- Боту необходимо задать системный промпт, который задаст его область знаний и поведение
- В системном промпте необходимо указать условие отправки специального служебного сообщения для перевода на оператора
- В приложении Администратор Контакт-центра, необходимо создать сценарий чата, в котором будут обрабатываться сообщения клиентов
- В сценарии необходимо реализовать цикл обращений к боту
- В цикле обращений, необходимо проверять служебное сообщение и при его обнаружении производить перевод на оператора.
Настройка ИИ бота

Перед созданием бота, необходимо полностью настроить приложение ИИ и развернуть всю необходимую инфраструктуру. Детальная информация и инструкции по установке описаны в статье, посвещенной ИИ.
Бот может функционировать с любым сервисом ИИ, отличаться будет только скорость и качество ответов.
Очень важным (хоть и опциональным) моментом является использование базы знаний. Если есть возможность создать файловую базу знаний с фактическими данными и инструкциями для пользователей, необходимо это сделать. Бот с базой знаний будет значительно более полезным для клиентов.
Например, для бота, который реализуется в рамках данной статьи, было бы полезным иметь в базе знаний набор инструкций по настройке и проверке конкретных роутеров и PON-маршрутизаторов, которые предоставляются компанией. В случае наличия такой базы знаний, бот будет более точно отвечать на запросы клиентов.
Главной же задачей при настройке бота является написание промпта - детальной инструкции для чат-бота, которая определит его поведение, область знаний и позволит задать область знаний и дополнительные функции.
Пример промпта:
Ты - бот-консультант по выявлению проблем подключения к интернету. Ты являешься роботом и не должен притворяться живым человеком.
Ты должен консультировать по общим проблемам подключения к интернету.
Ты можешь консультировать по настройкам ПК и роутера, подключении по WiFi и т.д.
Ты не должен отвечать на вопросы, не связанные с работой работой интернета.
Если ты затрудняешься ответить на конкретный вопрос, или пользователь попросил перевести на оператора,
или начал проявлять агрессию, ты должен отправить следующую команду:
{FORWARD_AGENT}
При отправке команды не пиши более никакой дополнительной информации, только макрос.
Данный промпт можно дополнить более точными данными, например списком возможных роутеров, "скриптом" которому должен следовать бот и т.д. Пункт про отправку команды {FORWARD_AGENT} позволит нам в дальнейшем отловить это служебное сообщение и перевести диалог на оператора.
Написание промптом, или промпт-инжиниринг это досточно сложная и активно развивающаяся область. Перед продуктивным использованием стоит потратить достаточно времени для тестирования различных вариаций промптов, для того чтобы найти самую эффективную.
Слишком абстрактный или слишком детальный промпт может ухудшать полезность ответов бота, поэтому необходимо искать золотую середину, а также прибегать к хранению данных в базе знаний.
Настройка сценария чата
Задача сценария чата в данном примере - органзиовать цикл обмена сообщениями между клиентом и ИИ-ботом, а так же реализовать разрыв этого цикла, если это необходимо.
Рассмотрим сценарий подробнее:


Первым действием при запуске сценария производится отправка приветствия, после чего инициируется ИИ-бот.
При инициализации мы указываем какой ИИ-бот будет обрабатывать запросы, а так же сохраняем в переменную ссылку на диалог, для того чтобы далее следующие сообщения клиента отправлялись в него же, сохраняя контекст общения.
После того как бот запустится, он должен поприветствовать клиента, чтобы инициировать общение. Для этого при старте бота мы задаем ему константный текст "Добрый день". Благодаря этому, первое сообщение от бота будет распологать клиента к дальнейшему общению.
Ответ бота после инициализации мы помещаем в переменную и входим в цикл общения.
Цикл состоит из следующих элементов:
- Отправка сообщения бота клиенту
- Ожидание сообщение от клиента
- Отправка полученного сообщения клиента в диалог с ботом
- Проверка на наличие специального сообщения {FORWARD_AGENT}
Из цикла есть следующие выходы:
- Клиент долго не отвечал, выход из цикла по таймауту и завершение сценария чата
- При обращении к ИИ-боту произошла ошибка - переводим чат сразу на оператора
- Было получено сообщение {FORWARD_AGENT}, бот запрашивает перевод на оператора
- Произошла ошибка при переводе на оператора. Инициируем новый диалог с ботом
Использование сценария
Работа с неголосовыми каналами коммуникации и очередями рассмотрена в рамках курса по Контакт-центру, в рамках данной статьи мы рассмотрим минимальные действия для применения созданного сценария.
Для того, чтобы применить созданный сценарий необходимо произвести следующий набор действий в приложении Администратор Контакт-центра:
Подключить учетную запись нужного мессенджера в разделе Мессенджеры->Учетные записи.
Описание способов подключения различных каналов доступно в справке раздела.

Создать таблицу маршрутизации для мессенджеров (Мессенджеры -> Маршрутизация). Если таблица уже присутствует, то необходимо добавить в неё новую запись для маршрутизации сообщений конкретной учетной записи в созданный выше сценарий.

После создания таблицы, необходимо присвоить ей признак "Главная", если других таблиц не существует. В таком случае, она будет использоваться для маршрутизации сообщений по-умолчанию. Если есть другие таблицы, то в настройках учетной записи мессенджера можно явно указать, какая таблица будет использоваться для маршрутизации сообщений этой УЗ.
Вы можете скачать данный демо-сценарий и импортировать его в свою систему для тестирования.
После проведения всех настроек, можно произвести тестирование бота
