Предыстория проекта
Экосистема плагинов Интеллос нацелена на то, чтобы сделать интеграции проще и доступнее. В этом руководстве мы возьмём Slack в качестве примера и проведём вас через процесс разработки плагина Slack Bot. Это позволит вашей команде общаться напрямую с LLM внутри Slack, значительно повышая эффективность использования ИИ. Slack — это открытая платформа для общения в реальном времени с мощным API. Среди её возможностей есть система событий на основе вебхуков, на которой довольно просто вести разработку. Мы используем эту систему, чтобы создать плагин Slack Bot, как показано на схеме ниже:
Чтобы избежать путаницы, поясним следующие понятия:Как это работает (краткий обзор):
- Slack Bot Чат-бот на платформе Slack, выступающий в роли виртуального пользователя, с которым вы можете взаимодействовать в реальном времени.
- Плагин Slack Bot Плагин в Интеллос Маркетплейс, связывающий приложение Интеллос со Slack. Это руководство посвящено тому, как разработать такой плагин.
- Отправка сообщения Slack Bot Когда пользователь в Slack отправляет сообщение боту, Slack Bot немедленно отправляет webhook-запрос на платформу Интеллос.
- Передача сообщения плагину Slack Bot Платформа Интеллос запускает плагин Slack Bot, который передаёт детали приложению Интеллос, подобно тому как в почтовой системе вы вводите адрес получателя. Настроив webhook-адрес Slack через API Slack и указав его в плагине Slack Bot, вы устанавливаете это соединение. Затем плагин обрабатывает запрос из Slack и передаёт его приложению Интеллос, где LLM анализирует ввод пользователя и формирует ответ.
- Возврат ответа в Slack Как только плагин Slack Bot получает ответ от приложения Интеллос, он отправляет ответ LLM обратно по тому же маршруту в Slack Bot. Пользователи в Slack видят более интеллектуальное и интерактивное взаимодействие прямо там, где они общаются.
Предварительные требования
- Инструмент разработки плагинов Интеллос: подробнее см. Инициализация инструмента разработки.
- Окружение Python (версия 3.12): см. официальную страницу загрузок Python или попросите LLM предоставить полное руководство по установке.
- Создайте приложение Slack и получите OAuth-токен

- Включите вебхуки:

- Установите приложение в свое рабочее пространство Slack:

- Получите OAuth-токен для дальнейшей разработки плагина:

1. Разработка плагина
Теперь перейдём к собственно написанию кода. Перед началом убедитесь, что вы прочитали Быстрый старт: разработка плагина-расширения или уже создавали плагин Интеллос ранее.1.1 Инициализация проекта
Выполните следующую команду, чтобы настроить окружение для разработки плагина:extension и предоставьте разрешения Apps и Endpoints.
Дополнительные сведения об обратном вызове сервисов Интеллос внутри плагина см. в разделе Обратный вызов: App.

1.2 Редактирование формы конфигурации
Этому плагину нужно знать, какое приложение Интеллос должно обрабатывать ответы, а также токен приложения Slack для аутентификации ответов бота. Поэтому вы добавите эти два поля в форму плагина. Измените YAML-файл в каталоге группы (например,group/slack.yaml). Имя файла формы определяется информацией, которую вы указали при создании плагина, поэтому скорректируйте его соответствующим образом.
Пример кода:
slack.yaml
- type: установлено в app-selector, что позволяет пользователям пересылать сообщения конкретному приложению Интеллос при использовании этого плагина.
- scope: установлено в chat, то есть плагин может взаимодействовать только с такими типами приложений, как agent, chatbot или chatflow.
endpoints/slack.yaml измените метод запроса на POST, чтобы корректно обрабатывать входящие сообщения Slack.
Пример кода:
endpoints/slack.yaml
2. Редактирование кода функции
Измените файлendpoints/slack.py и добавьте следующий код:
3. Отладка плагина
Перейдите на платформу Интеллос и получите адрес и ключ для удалённой отладки вашего плагина.
.env.example и переименуйте его в .env.
python -m main, чтобы запустить плагин. Теперь вы должны увидеть свой плагин установленным в рабочем пространстве на странице управления плагинами Интеллос. Другие участники команды также смогут получить к нему доступ.
Настройка эндпоинта плагина
На странице управления плагинами в Интеллос найдите только что установленный тестовый плагин и создайте новый эндпоинт. Укажите имя, Bot token и выберите приложение, которое хотите подключить.

-
Включите подписки на события
Вставьте URL для POST-запроса, который вы сгенерировали выше.


-
Предоставьте необходимые разрешения

4. Проверка плагина
В вашем кодеself.session.app.chat.invoke используется для вызова приложения Интеллос с передачей таких параметров, как app_id и query. Затем ответ возвращается в Slack Bot. Снова выполните python -m main, чтобы перезапустить плагин для отладки, и проверьте, корректно ли Slack отображает ответ приложения Интеллос:

5. Упаковка плагина (необязательно)
Убедившись, что плагин работает корректно, вы можете упаковать его и задать имя с помощью следующей команды. После её выполнения в текущем каталоге появится файлslack_bot.difypkg — ваш итоговый пакет плагина. Подробные шаги упаковки см. в разделе Упаковка в локальный файл и распространение.
6. Публикация плагина (необязательно)
Теперь вы можете загрузить его в репозиторий Интеллос Маркетплейс для публичного выпуска. Перед публикацией убедитесь, что ваш плагин соответствует Рекомендациям по публикации в Интеллос Маркетплейс. После одобрения ваш код вливается в основную ветку, и плагин становится доступным в Интеллос Маркетплейс.Связанные ресурсы
- Основы разработки плагинов — исчерпывающий обзор разработки плагинов Интеллос
- Краткое руководство по разработке плагинов — начните разработку плагинов с нуля
- Разработка плагина-расширения — узнайте о разработке плагинов-расширений
- Обратный вызов сервисов Интеллос — разберитесь, как вызывать возможности платформы Интеллос
- Обратный вызов: App — узнайте, как вызывать приложения внутри платформы
- Публикация плагинов — изучите процесс публикации
- Публикация в Интеллос Маркетплейс — руководство по публикации в Маркетплейс
- Подробное определение эндпоинта — подробное определение эндпоинта
Дополнительное чтение
Полный пример проекта плагина Интеллос см. в репозитории GitHub. Там вы также найдёте дополнительные плагины с полным исходным кодом и деталями реализации. Если вы хотите узнать больше о разработке плагинов, ознакомьтесь со следующими материалами: Быстрые старты:- Разработка плагина-расширения
- Разработка плагина модели
- Бандл плагинов: упаковка нескольких плагинов
- Определение информации о плагине через файл манифеста — структура манифеста
- Эндпоинт — подробное определение эндпоинта
- Обратный вызов — обратный вызов возможностей Интеллос
- Общие спецификации — спецификации инструментов
- Схема модели — модель
Редактировать эту страницу | Сообщить о проблеме

