Диаграмма развертывания Python-агентов под управлением Sherpa Orchestrator#
.png)
Полноценная диаграмма доступна по ссылке:
Описание архитектуры решения#
Sherpa Orchestrator и Sherpa Python Coordinator / Sherpa Python SDK обеспечивают автоматизацию бизнес процессов с помощью Python-агентов, выполняемых на терминальных серверах или виртуальных машинах.
Оркестратор по событиям или входящим данным из внешней среды (через API) запускает Python-сценарии, выполняемые в учётных записях терминальных серверов без участия Пользователя:
- по команде ИИ-агента,
- по команде бизнес-пользователя,
- по расписанию.
Python-сценарии с помощью Sherpa Python SDK обмениваются с Оркестратором логами, задачами из очередей, централизованно хранимыми учетными данными и общими данными.
Все компоненты платформы устанавливается локально в сети Заказчика, без связи с внешними серверами или службами SaaS. Возможность и необходимость доступа компонентов платформы к внутренним и внешним системам определяется решаемой в рамках бизнес-процесса задачей.
Развертывание Sherpa Python SDK производится с помощью exe-инсталлятора в технических пользовательских учетных записях. Установка Sherpa Coordinator Service производится в администраторской учетной записи терминального сервера с помощью exe-инсталлятора.
По умолчанию развертывание Sherpa Orchestrator осуществляется с помощью Docker-контейнера.
Последовательность шагов процесса:
Разработчик сценария ИИ-агента с помощью любого подходящего Python IDE создаёт сценарий (скрипт) с использованием Sherpa Python SDK. Готовые сценарии передаются на технические учетные записи ИИ-агентов с помощью функции удаленной публикации в Sherpa Orchestrator. Управление версиями сценариев также осуществляется с помощью Sherpa Orchestrator.
Серверный компонент Sherpa Orchestrator поддерживает связь с агентами, запущенными на клиентских машинах, а также хранит:
- конфигурации и версии сценариев,
- общие глобальные переменные и учетные данные,
- логи и скриншоты работы агентов,
- журналы аудита Оркестратора,
- Пользователей,
- Роли и тенанты самого Оркестратора,
- Лицензии всех компонентов платформы,
- статистику исполнения сценариев.
Пользователи и администраторы Sherpa Orchestrator получают доступ к ресурсам, настройкам и статистике с помощью веб-приложения Оркестратора, доступного через веб-браузер. Sherpa Orchestrator включает в себя:
- веб-сервер Nginx,
- интерпретатор PHP,
- реляционную базу данных (по умолчанию - MariaDB).
По расписанию, вызову API, команде агента, или по другому поддерживаемому триггеру, Sherpa Orchestrator даёт задание Sherpa Python Coordinator Service соответствующего терминального сервера создать RDP-подключение к локальной или удаленной учетной записи, выделенной для ИИ-агента.
При этом на одном терминальном сервере может быть размещено и одновременно активно несколько таких учетных записей. Вход в учётную запись агента производится с предоставленными Оркестратором логином и паролем.
После входа, в учетной записи запускается соответствующий экземпляр Sherpa Python SDK. Он подключается к Оркестратору, получает задание на выполнение сценария и сам сценарий, хранящийся в Оркестраторе.
В процессе исполнения сценария Sherpa Python SDK может передавать Оркестратору:- текущий статус,
- задачи,
- логи,
- значения глобальных переменных и учетных данных.
Также в процессе исполнения сценария Sherpa Python SDK может получать от Оркестратора:- задачи,
- значения глобальных переменных и учетных
данных, - команды для "мягкого" или "жесткого" завершения сценария.
После завершения исполнения сценария Sherpa Python SDK выполняет logoff из своей учетной записи.