Интеграция чат-бота с пользовательскими API
С помощью нашего редактора действий ИИ вы можете настроить любую пользовательскую интеграцию с любой внутренней системой, способной предоставлять данные через эндпоинты API. Например, вы можете настроить чат-бота так, чтобы он проверял наличие товара на складе, уточнял статус заказа в вашей ERP-системе или проверял текущий баланс на счете клиента.
Вы также можете выполнять действия для обновления внешних систем - например, вызывать эндпоинты для создания записей на прием или передавать вебхуки.
Предварительные требования
ℹ️ Перед началом работы убедитесь, что ваш тарифный план ChatLab поддерживает интеграцию с Custom API (пользовательскими API). Ознакомьтесь с информацией на странице с тарифами
Добавление Custom API в вашего чат-бота
Интеграция пользовательского API позволяет вашему чат-боту взаимодействовать с внешними сервисами - например, с вашей собственной платформой интернет-магазина, получая данные или выполняя действия от имени пользователя.
В этом руководстве описаны шаги, необходимые для настройки пользовательского API на платформе ChatLab.
Ваш API
У вас должны быть общедоступные эндпоинты API, к которым может обращаться чат-бот. Это означает, что вам необходимо предоставить доступ к данным из вашей платформы e-commerce или другой собственной системы через эндпоинты API, чтобы наш чат-бот мог вызывать их, извлекать информацию и передавать ее пользователям.
Вызов API чат-ботом
API будет вызываться чат-ботом динамически во время общения с пользователем, когда боту потребуется доступ к внешним данным или выполнение определенных действий. Важно учитывать следующее:
-
Вызов не гарантирован: API вызывается только тогда, когда логика чат-бота сочтет это необходимым. Точных гарантий относительно времени и регулярности вызовов API нет.
-
Требования к модели ИИ: Для оптимальной работы рекомендуется использовать модели ИИ более высокого уровня с поддержкой сложных вызовов функций, такие как GPT-4o или выше. Эти модели точнее определяют подходящий момент для обращения к API на основе контекста диалога и намерений пользователя.
-
Контекстные вызовы: Чат-бот будет пытаться вызвать API каждый раз, когда обнаружит в диалоге контекст, соответствующий назначению API. Однако фактический вызов зависит от множества факторов, таких как:
- Доступность и скорость ответа внешнего API.
- Текущее состояние беседы и запросы пользователя.
- Внутренний уровень уверенности и алгоритмы оценки модели ИИ при принятии решения о необходимости вызова.
Шаги по настройке Custom API
Шаг 1: Перейдите в настройки Custom API
-
Войдите в панель управления ChatLab.
-
В меню слева в разделе Settings (Настройки) выберите Custom API (Пользовательские API).
Шаг 2: Создайте новый API
-
Нажмите кнопку + Define API (Определить API).
-
Введите название вашего API в поле API Name (Название API).
-
В поле URL укажите базовый URL внешнего сервиса, к которому вы хотите подключиться.
-
Нажмите Save (Сохранить), чтобы создать API.
Шаг 3: Добавьте операции API
-
В строке созданного API нажмите кнопку View (Просмотр).
-
Нажмите + Define API Operation (Определить операцию API), чтобы настроить отдельные операции (эндпоинты) для этого API.
-
Заполните обязательные поля:
- Operation Name (Название операции): понятное название операции.
- Operation URI (URI операции): путь к эндпоинту операции (например,
/v1/resource).
Шаг 4: Настройте URI эндпоинта и параметры
- Конфигурация URI эндпоинта:
- Добавьте переменные пути, необходимые для операции, нажав + Add path variable (Добавить переменную пути).
- Введите параметры переменной и при необходимости отметьте ее как обязательную.
- Выберите источник значения:
- Provided by user to chatbot - если значение должен предоставить пользователь в диалоге с чат-ботом.
- Constant - если это постоянное значение, которое вы задаете на этапе настройки операции API.
- Добавьте созданную переменную пути в определение пути между двумя знаками «@»: @myvariable@:
- Параметры запроса (Query Parameters):
- Добавьте параметры запроса, нажав + Add query parameter (Добавить параметр запроса).
- Укажите имя параметра, тип данных и источник (например, предоставляется пользователем или чат-ботом).
Шаг 5: Задайте метод запроса и тело запроса
-
Выберите HTTP-метод для операции (например, GET, POST).
-
Если выбран метод POST, настройте тело запроса (body):
- Выберите тип содержимого (например,
application/json). - Добавьте параметры тела, указав имя, тип данных и источник.
- Добавьте переменные в структуру тела - обычно это JSON, куда подставляются определенные вами переменные.
Шаг 6: Задайте заголовки операции
Добавьте заголовки - например, Authorization или другие, требуемые вашим API. На скриншоте ниже показан пример настройки постоянного токена в заголовке Authorization:
Шаг 7: Сохраните операцию
-
Проверьте конфигурацию и убедитесь, что все данные указаны верно.
-
Нажмите Save changes (Сохранить изменения), чтобы сохранить операцию API.
Шаг 8: Протестируйте интеграцию API
-
Воспользуйтесь функцией Test API (Тестировать API), чтобы отправить тестовый запрос и проверить корректность работы интеграции.
-
Следите за логами на предмет ошибок или сбоев и при необходимости скорректируйте параметры.
Шаг 9: Привяжите операции API к чат-боту
После того как API Operations (Операции API) настроены, их необходимо назначить чат-боту. Выберите нужного чат-бота в основном списке, нажмите Integrations (Интеграции) и в меню слева выберите AI API Actions (Действия API ИИ).
Нажмите Attach (Прикрепить) напротив нужной операции API.
Шаг 10: Добавьте ролевые инструкции для чат-бота
Выберите вашего чат-бота в основном списке, нажмите Settings, затем в меню слева выберите Role (Роль).
Нажмите на Provide custom role instructions (Указать пользовательские инструкции роли).
Добавьте инструкции по использованию новой операции API. Например, можно задать следующее правило:
“- When user asks for store inventory always call getItems function and render the result of the function with following rules…..”
Советы по успешной интеграции
-
Убедитесь, что базовый URL и эндпоинты указаны корректно и доступны извне.
-
Проверьте правильность настройки параметров аутентификации (таких как API-ключи или токены).
-
Тщательно протестируйте каждую операцию, чтобы убедиться, что она возвращает ожидаемые ответы.
Следуя этим инструкциям, вы сможете без проблем подключить пользовательские API к чат-боту ChatLab, расширив его возможности и предоставив клиентам более качественный сервис.
Безопасность интеграции с Custom API
Чтобы защитить ваш пользовательский API от несанкционированного доступа, рекомендуем следовать приведенным ниже рекомендациям:
Используйте постоянные токены
Постоянные токены API: настройте постоянный токен (или ключ) API, который будет требоваться для всех запросов. Этот токен должен быть уникальным и сгенерированным безопасным способом.
-
Способ реализации: передавайте токен в заголовке запроса или в качестве параметра URL при каждом вызове API.
-
Где хранить: безопасно сохраните токен в настройках ChatLab в качестве постоянного параметра операции.
Используйте эндпоинт авторизации для временных токенов
Добавьте в API дополнительную операцию, возвращающую временный токен безопасности - то есть эндпоинт входа (login) в вашу систему.
При настройке этой операции API вам потребуется указать учетные данные для входа в систему в качестве постоянных параметров. Чтобы чат-бот мог использовать полученный таким образом токен, добавьте переменную токена безопасности в параметры других операций API, а также пропишите четкие инструкции в промптах как для операции авторизации, так и для остальных операций API (например: «Always use the security token obtained from the Login operation as the security_token parameter for operation getOrder»).
Контроль конфиденциальной информации в ChatLab
Чтобы чат-бот не отображал конфиденциальные сведения, пользователи ChatLab могут предпринять следующие шаги:
Используйте инжиниринг промптов для управления поведением ИИ
-
Задавайте четкие инструкции в промптах: при настройке чат-бота добавьте в параметры промпта явные указания не выводить чувствительные данные. Например:
- Пример промпта: «Не отображай персональные, финансовые или конфиденциальные данные, полученные в результате вызова API».
- Использование системных сообщений: добавьте системное сообщение в начало диалога, чтобы закрепить важность конфиденциальности данных (например: «Убедись, что все ответы исключают любую конфиденциальную информацию»).
-
Регулярно обновляйте промпты: корректируйте промпты на основе отзывов пользователей или изменений в требованиях к защите данных. Это гарантирует, что ИИ будет строго следовать актуальным правилам работы с конфиденциальной информацией.
Проектируйте эндпоинты API со встроенной логикой проверки
-
Требуйте подтверждения личности для доступа к конфиденциальным данным: настройте эндпоинты API так, чтобы перед возвратом чувствительных данных выполнялась проверка. Например:
- Параметры проверки: требуйте от пользователей указания определенных сведений (таких как адрес электронной почты, номер заказа или ответ на секретный вопрос), прежде чем API вернет связанные с ними данные.
- Многофакторная проверка: используйте дополнительные параметры (например, дату заказа, адрес доставки или секретный код), чтобы подтвердить личность пользователя и убедиться в наличии прав на доступ к данным.
-
Настройте безопасные сообщения об ошибках: запрограммируйте логику API так, чтобы в случае отсутствия подтверждения или несовпадения данных возвращались нейтральные сообщения или стандартные ошибки:
- Пример: «Не удалось получить информацию о заказе. Пожалуйста, проверьте адрес электронной почты и номер заказа».
Ограничивайте объем данных в ответах API
- Минимизируйте объем передаваемых данных: настройте ответы API таким образом, чтобы они содержали только те сведения, которые необходимы для выполнения задачи чат-бота. Это снизит риск случайного отображения конфиденциальной информации.
- Пример: вместо передачи полного профиля пользователя возвращайте только отдельные поля, нужные для текущего сценария (например, статус заказа или подтверждение оплаты).