Как настроить ИИ-агента в amoCRM через BPMN-конструктор "Процессы"

Данная инструкция поможет вам создать нейро-продавцов, квалификаторов, умных ботов поддержки, HR-консультантов и других агентов на основе GPT
Chat AI помогает обслуживать клиентов без вашего участия. Он знает все о вашей компании, услугах, товарах, дает рекомендации и отвечает на вопросы покупателей.

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

Chat AI — это одна из функций BPMN-виджета «Процессы».
Это сильно отличает его от подобных продуктов — это не просто умный чат-бот, а настоящий AI-агент, ему доступны сотни инструментов автоматизации, которые настраиваются без программирования.
Видео-инструкция
Оглавление:
Преимущества Chat AI
Chat AI самостоятельно общается с клиентами используя знания о компании и заложенную в него инструкцию. Он решает широкий спектр задач, от простой первичной квалификации, до сложных ответов с обращением в базу данных или на сайт. Мощный BPMN-редактор может обращаться в сторонние сервисы по API и предоставить релевантный ответ клиенту.

Консультации по продуктам
Агент отвечает на вопросы о продуктах, ценах и наличии товаров, используя данные из Гугл таблиц или информации заложенной в системной инструкции (промпте).

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

Обработка обращений с запросом нужной информации
При необходимости Chat AI сам запрашивает информацию, например: номер заказа или телефон, чтобы найти клиента в amoCRM и сообщить актуальную информацию по заказу.

Передача менеджеру при необходимости
Агент стремится выполнить заложенную в него функцию, используя доступные знания, например: сделать онлайн расчет и отправить ссылку на оплату. Однако, если возникнут сложности с пониманием запроса или клиент запросит менеджера, то Chat AI передаст разговор человеку.
Как это работает
Chat AI — это один из элементов BPMN-виджета «Процессы». Самая базовая настройка — это добавить его в процесс и запустить, после этого он начинает "слушать" входящие сообщения в amoCRM отвечать на них, согласно промпту. В элемент Chat AI можно добавить обработчики (функции), которые запускаются в тот момент, когда что то произошло в чате.
Например: клиент позвал менеджера → запустится функция и процесс пойдет по этой ветке → а на ветку добавляем, постановку задачи.

Таким образом агенту Chat AI доступны множество инструментов автоматизации, которые помогают решать задачи клиента без участия человека.
Работа с данными из CRM

  • Чтение данных. Chat AI знает все о клиенте, узнает его в чате, знает информацию о покупках и т.д. Это позволит вам настроить более релевантную работу с клиентами. Вся необходимая информация о добавляется через переменные в промпте, которые прописываются в настройках Chat AI. Например: Имя клиента, номер забронированного домика, кол-во гостей, особенности данного домика и т.д.
  • Запись данных. Агент может извлекать информацию из диалога и записывать их в поля amoCRM. Причем клиент может написать текст по разному, нейросеть это поймет и запишет правильное написание. Поддерживаются, в том числе, списковые типы полей и даты, в которые необходимо передавать текст в точности как заложено в поле.

Работа с виджетами Команды F5

Испльзуйте решения от F5 для реализации задач любого уровная. Функционал BPMN-редактора расширяется виджетами, которые можно задейстовать для ИИ-агентов. Например:
  • Создать Гугл Документ (договор, счет, билет)
  • Создать ссылку на оплату в ЮKassa или Т-Банк
  • Отправить сообщение в Телеграм
  • Отправить данные в Гугл Таблицу
  • Отправить WEB hook или прочитать данные с сайта
  • Запустить SalesBot в amoCRM и т.д.

Подключение любых каналов источников лидов

Chat AI работает со всеми подключенными каналами в amoCRM, будь то чат на сайте, мессенеджер, соцсеть, Авито и т.д. Вы можете подключить источники лидогенарции через любое стороннее решение: Radist.Online, i2crm, Wazzup, Wahelp, WABABA, amoCRM...
Для более нативной работы с рекомендуем подключить виджет Chatter. В этом случае вы получите дополнительные преимущества:
  • Сообщения от агента будут отображаться как от робота, а не от пользователя
  • В Chatter можно добавить неограниченное кол-во каналов, например несколько Телеграм ботов и прикреплять к ним различных чат-ботов для решения задач в рамках одной воронки
Установка и первичная настройка

  1. Установите виджет Процессы в amoCRM по ссылке и сохраните настройки
  2. Если вы не зарегистрированы на сайте F5AI.RU, зарегистрируйтесь и создайте ключ в разделе API ключи
  3. Перейдите в настройки amoCRM → Левое меню "Процессы" → Вкладка API и вставьте ключ в блоке "Ключи F5AI" и сохраните.
Первичная настройка завершена
Сайт F5AI.RU — продукт Команды F5, предназначенный для интеграции ИИ-функционала в различные решения. Платформа поддерживает биллинг запросов и оплату токенов. Вы можете добавлять несколько ключей для контроля расходов разных агентов.

После регистрации вы получаете 500 руб. на баланс — этого достаточно для тестирования возможностей сервиса.
Создание ИИ бота в amoCRM
Для тестирования работы создадим простейшего бота за 5 минут, который по заранее заданному промпту, квалифицирует клиентов.

Перейдите во вкладку Процессы (настройки amoCRM → Процессы)

  1. Нажмите кнопку "Новый процесс", задайте название, выберите сущность Сделка и сохраните
  2. Добавьте новый элемент Chat AI
  3. В настройках Chat AI выберите ключь F5AI из списка
  4. Добавьте текст промпта (пример ниже)
5. Выберите модель нейросети, например gpt-4o-mini
6. Выберите температуру "1" и максимальную длину "512", подробнее об этих настройках ниже
7. Сохраните настройки Chat AI
8. Сохраните настройки процесса и опубликуйте его

Готово!
Вы только что создали работающего ИИ бота, он уже может отвечать клиентам во всех чатах.

Запуск бота на входящие сообщения

Бот отвечает на входящие сообщения в том случае, если процесс, содержащий элемент Chat AI, запущен. Для теста вы можете вручную запустить процесс в сделке по кнопке, затем написать сообщение в мессенеджер, бот ответит вам приветственным сообщением.

Как стартовать процесс автоматически на все входящие сообщения?
  1. Зайдите в настройки той воронки, где нужно общаться с клиентами через нейро-консультанта;
  2. Добавьте новый триггер на том этапе, где требуется общение, например, на этапе "Новая заявка";
  3. Найдите в списке виджетов "Процессы" и нажмите Добавить
  4. В настройках триггера выберите условие "Выполнить: При создании беседы входящим сообщением в любом источнике"
  5. Выберите пункт "Запустить" и выберите созданный вами процесс
  6. Сохраните настройки воронки цифровой воронки

Готово!
Теперь Chat AI будет отвечать клиентам автоматически.

Обратите внимание, что запуск процесса происходит при Создании беседы. В amoCRM это происходит, когда:
  • клиент написал первое сообщение → создалось неразобранное или новая сделка и новая беседа
  • клиент написал повторное сообщение, однако предыдущая беседа была закрыта кнопкой "Закрыть" или "Не требует ответа", в этом случае создается новая беседа
Если у вас, процесс не стартует на входящее сообщение, убедитесь, что предыдущая беседа закрыта.

Настройки элемента Chat AI: промпты, обработчики, извлечение данных из диалога

Промпт – это набор инструкций для работы нейросети.
В этом поле необходимо описать следующие вещи:
  • добавить любую информацию, о которой должен знать чат-бот в этой конкретной задаче: о компании, о товарах и услугах, ценах, скидках и т.д
  • задать роль боту и какие задач он должен выполнять в переписке: квалифицировать, запрашивать контакты, консультировать по продукту и т.д.
  • как он должен общаться, что должен говорить, и немаловажно, что не должен говорить;
  • через переменные полей можно обогатить промпт данными о клиенте из amoCRM, чтобы общение было более релевантным;
  • можно задать сегодняшнюю дату и время, если это необходимо для задачи, нейросеть по умолчанию не знает в каком времени существует.
Тестирование промпта
  • Вы можете протестировать промпт, написав сообщение и получив ответ от бота. Это поможет понять, насколько хорошо он выполняет поставленные задачи.
  • Если ответы не соответствуют ожиданиям, промпт можно скорректировать: уточнить инструкции, добавить примеры диалогов, изменить стиль общения или дополнить информацию.
  • Постоянное тестирование и доработка помогут добиться оптимального результата.
Полезная статья о том, как правильно писать промт есть здесь.

Следует учитывать, что чем больше промпт, тем больше будет тратиться на каждый запрос в нейросеть. Рекомендуем добавлять в промпт не более 5-10 тыс. символов.
Не старайтесь решать сразу огромный пул задач, задав боту всеовозможные сценарии работы в одном промпте. Двигайтесь последовательно.

Модель — более высокая модель (на данный момент 4-ая) дает более качественные результаты. Запросы отправляются через Open AI.

Температура - при более высокой температуре ответы будут более творческими, при низкой более точными и “сухими”. Слишком высокие значения могут привести к несвязным ответам и галлюцинациям. Рекомендуем от 0.5 до 1, чтобы ответы были более сбалансированными.

Максимальная длина - ответ от GPT всегда будет обрезан на данное количество символов, даже если он будет неполным.
Менеджер перехватил общение - галочка добавляет новую ветку, которая запустится в тот момент, когда менеджер перехватывает инициативу начинает сам отвечать клиенту, на эту ветку, например, можно добавить остановку процесса.

Добавить интервал перед ответом
Функция добавляет задержку на заданное количество секунд перед тем, как бот ответит клиенту. Если за данное время клиент отправит несколько сообщений, бот объединит их и ответит одним сообщением. Это делает диалог более естественным, отражая человеческую манеру общения.
Ограничить историю сообщений - Если переписка затягивается, это может привести к чрезмерной трате токенов, так как в запросе к нейросети уходит вся история переписки. В какой то момент, история может попросту не влезть в запрос. Этого можно избежать, если ограничить длину цепочки. Chat AI будет удалять сообщения начиная с самых первых, это позволит не раздувать контекст сообщений, однако “долговременная память” нейросети будет сокращаться с каждым новым сообщением.
Рекомендуем решать задачи с помощью нейросети разбивая их на отдельные небольшие последовательности, в зависимости от этапа сделки.

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

Обработчики элемента Chat AI

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

У каждого обработчика своя ветвь, по которой проходит процесс, если обработчик сработал. При этом Chat AI продолжает отвечать, пока не завершат его принудительно через Chat AI tool или процесс не завершится самостоятельно. Обработчики могут использовать переменные для сохранения данных из диалога и передачи их по процессу через локальные или процессные переменные.
Название обработчика * – это произвольный текст для себя, для понимания функции обработчика.

Описание обработчика * - здесь нужно кратко, логично и однозначно описать, когда должен запуститься обработчик. Текст может коррелироваться с системным промптом, Chat AI работает с совокупностью этих данных в виде цельной модели поведения и принимает решения о запуске обработчика.
Примеры:
  • “Клиент сообщил номер телефона”
  • “Клиент позвал менеджера”
  • “Разговор зашел в тупик”
  • “Клиент выражает негатив”
  • "Получены все данные для полной квалификации" - например, если в промпте было указано, что для квалификации необходимо запросить конкретно вот эти данные (телефон, email, адрес).

Обработчик может извлекать данные из диалога и передавать их по ветке, если в ней заданы переменные.

Название переменной * - обязательно поле для переменной на латинском. Релевантное название того, что будет храниться в этой переменной. ChatAI на основе ИИ сама понимает, какие данные положить в переменную, исходя из его названия. Например: phone_number, client_name, account_id и т.д.
Для корректной обработки задавайте переменным осмысленные имена латинскими словами:
неправильные переменные: imya, ulitsa, den_rojdeniya
правильные переменные: name, street_address, birthday_date
Тип переменной - не обязательное поле. Можно установить текст, число или флаг.

Флажок “Обязательная переменная” - Если переменную сделать обязательной, то обработчик запустится только в том случае, если переменная известна. Обязательными можно сделать несколько переменных и все они будут влиять на условие запуска.
Пример: для квалификации нам нужно узнать телефон и email. Мы добавляем обработчик “Получены контакты” с двумя этими переменными, и телефон сделаем обязательным. В ходе переписки клиент сообщает email, обработчик не запустится, так как еще нет телефона, бот продолжит общение и попросит телефон, если клиент его сообщает обработчик запускается. Другой клиент сначала сообщает телефон, но не говорит email, в этом случае обработчик запустится сразу, так как email мы не сделали обязательным.

Описание переменной - не обязательное поле. Понятное описание того, что и как будет храниться в переменной. В ней можно прописать модификатор. Например, если написать: “Дата встречи в формате ДД.ММ.ГГГГ”, Chat AI поймёт, что дату нужно отдать в формате “15.04.2024” и не важно, как именно ее озвучил клиент. Это важно, если данные необходимо записать в определенные поля с нужным типом или форматом.

Возможные значения - Список значений, которые может содержать переменная. Например, наше списковое поле в amoCRM содержит значения: PHP, Python, LUA, JavaScript. Если мы пропишем этот список для переменной, то не важно как именно нам напишет клиент в диалоге: яваскрипт, javascript, JS и т.д. На выходе Chat AI поймёт, что имеется в виду и вернёт именно “JavaScript”, сопоставив то, что сказал клиент и выбрав из списка наиболее релевантное значение, которое мы можем записать уже в карточку.

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

Пример настройки нейро-сотрудника – квалификатора входящих заявок

Получим квалификационные данные клиента в чат с помощью Chat AI, и запишем их в поле в amoCRM.
Шаг 1. Создаем процесс "Квалификация" для сущности Сделка.

Шаг2. Добавляем в процесс элемент Chat AI. Пишем системный промт, не забываем основные правила написания хороших запросов - кратко и однозначно, например:

"Ты – дружелюбный и профессиональный чат-бот, задача которого – приветствовать клиентов, квалифицировать их и помогать им с оптовыми закупками. Твоя цель – собрать необходимую информацию, чтобы наш менеджер мог продолжить общение, а также предоставить клиенту полезную информацию о наших условиях и продуктах. Следуй этому сценарию:

  1. Приветствуй клиента и узнай, чем ты можешь помочь.
  2. Если клиент интересуется оптовыми закупками, собери следующую информацию:
  • Имя и контактный номер клиента.
  • Тип продукции, которую он хочет закупать.
  • Ожидаемые объемы закупок.
  • Опыт работы с нашей продукцией (новый клиент или уже закупал).
  • Особые требования к условиям оплаты и доставки.
Сообщи клиенту о наших условиях для оптовых покупателей (скидки, доставка, гибкие условия оплаты).
Предложи организовать звонок с менеджером для более подробной консультации.
Вежливо завершай разговор, предлагая дальнейшую помощь при необходимости."

Шаг 3. Заполним остальные поля: выбираем Модель gpt-4 для наилучшего результата расшифровки, остальные поля можем оставить по умолчанию.

Шаг 4. Так как нас интересует не только получение данных, но и их запись в amoCRM, нам нужно использовать Обработчик.

Добавим новый обработчик “Сделали квалификацию”, в описании так и напишем “Получили все квалификационные данные”. Это описание коррелирует с нашим промптом, в котором мы задали задачу.

Здесь мы пишем, что получили исчерпывающие данные для квалификации: Имя и Номер телефона, Тип продукции, Объемы закупок и тд.



Шаг 5. Чтобы сохранить полученные данные, нужно использовать переменные. Chat AI сам умеет корректно извлекать нужные данные и даже модифицировать.

  • Имя - укажем понятное для нейросети название переменной, например, "name" с типом текст.
  • Номер телефона - здесь подойдет "phone_number" тоже с типом текст.
  • Тип продукции - "product_type"
  • Дата доставки -"date"
Чем понятнее и однозначнее название переменной, тем лучше будет результат работы нейросети. Поля можно делать обязательными и необязательными. Сделаем Имя и Телефон обязательным полем, для этого поставим галочку рядом с типом поля.

Шаг 6. Обязательным шагом является указание переменных, в которые будут записаны полученные значения.
Для этого следует создать соответствующие Локальные переменные. О переменным и работе с ними подробнее тут.

Для Даты Доставки оставляем тип "Текст". Эту дату мы должны сохранить в поле с типом дата и время. В amo мы должны передать строго фиксированный формат, вот такой 30.05.2024 14:50. И здесь Chat AI снова нас выручит. Выбираем тип поля текст, так как в дате у нас есть точки и пробелы.

И вот здесь нам понадобится задать описание переменной, которое мы еще не использовали. Сюда мы пишем следующий текст “Дата которую выбрал клиент в формате d.m.Y H:i”. Выбираем Локальную переменную и готово.

Шаг 7. Добавим следующий шаг процесса - Изменить Контакт. Записываем всё полученные обязательные переменные, которые мы указали в Chat AI.
Запишем Имя, Номер телефона, или другие поля, если они были получены.
Формат записи:

{{bpmn.proc(name)}}
{{bpmn.proc(phone_number)}}

Так же создадим задачу для связи с клиентом и уточнения данных о его заказе.
Подробнее о том как настроить процесс и работе всех элементов тут.


Элемент Chat AI tool

Chat AI Tool управляет Chat AI: останавливает нейросеть, добавляет сообщения в разговор, отвечает на обработчики и меняет системный промпт. Это позволяет контролировать бота в ходе беседы. Необходимо добавить элемент в выходную ветку после любого обработчика. Когда ветка запускается, Chat AI Tool отвечает на обработчик заданным текстом, после чего Chat AI генерирует новый ответ клиенту, исходя из информации взятой из Chat AI Tool.

Элемент Chat AI tool следует добавлять только на выходную ветку обработчика Chat AI, можно через любое количество промежуточных элементов.

Список возможностей Chat AI tool — как в ходе беседы управлять поведением нейросети

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

Ответ обработчику - запущенный обработчик может принимать ответ. Текст ответа так же анализируется нейросетью и Chat AI самостоятельно делает выводы о том, что написать клиенту.
Пример:
  • В Chat AI есть обработчик, который запускается в тот момент, клиент сообщил желемую дату записи
  • На выход этой ветки мы добавляем элемент "Веб хук", который делает запрос во внешнюю систему с этой датой
  • Если система ответит TRUE, этот ответ мы можем вернуть в через Chat AI tools обратно в ветку
  • Chat AI сам поймет, что запись была успешна и сообщит об этом клиенту.
  • Если система ответит FALSE, Chat AI сам предложит клиенту перезаписаться.
В ответе обработчику может содержаться текст, числа или даже JSON-массив. Chat AI самостоятельно обработает эти данные и примет решение о дальнейших действиях.

Если стоит галочка “Не отправлять ответ в чат клиенту”, Chat AI ничего не напишет клиенту, но данные, пришедшие в ответе, сохранятся в контекст диалога и могут быть использованы в дальнейшей переписке.

Функция ответа обработчику отвечает именно на тот обработчик, на ветке которого он добавлен.

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

Завершение Chat AI - Останавливает обработку входящих чатов и прекращает ответы нейросети клиенту.
Если эта галочка была использована совместно с функцией “Сообщение от бота”, то сообщение отправится и обработка завершается.
Если галочка была использована совместно с функцией “Ответ обработчику”, то ответ уйдет, Chat AI ответит клиенту, после этого обработка завершится.
Полная инструкция по настройке Процессов
Читайте так же
Штаб-квартира «Команды F5»
Лучшие кейсы автоматизаций, новости о выходе новых виджетов и обновлениях действующих.