Создание интеллектуального многоагентного рабочего процесса с Python, OpenAI и PrimisAI Nexus
Узнайте, как создать продвинутую многоагентную систему автоматизации задач с Python, OpenAI API и PrimisAI Nexus для координации агентов по кодированию, анализу и планированию проектов.
Обзор архитектуры многоагентной системы
В этом руководстве показано, как создать систему автоматизации задач с несколькими агентами, используя фреймворк PrimisAI Nexus, интегрированный с OpenAI API. Система использует иерархический контроль, интеллектуальное использование инструментов и структурированные выходные данные, чтобы несколько ИИ-агентов могли совместно выполнять сложные задачи — от планирования и разработки до контроля качества и анализа данных.
Установка окружения и зависимостей
Сначала устанавливаем необходимые пакеты: PrimisAI для координации агентов, OpenAI для доступа к языковым моделям и nest_asyncio для управления асинхронным выполнением в ноутбуках:
!pip install primisai openai nest-asyncio
import os
import nest_asyncio
from primisai.nexus.core import AI, Agent, Supervisor
from primisai.nexus.utils.debugger import Debugger
import json
nest_asyncio.apply()Это обеспечивает плавное выполнение асинхронных задач, необходимых для работы с несколькими агентами.
Конфигурация моделей OpenAI
Система использует модели GPT от OpenAI с гибкой конфигурацией, позволяющей переключаться между моделями, например, 'gpt-3.5-turbo' или 'gpt-4o-mini', в зависимости от сложности задач и бюджета. Ключи API хранятся в переменных окружения.
os.environ["OPENAI_API_KEY"] = "Введите свой API ключ"
llm_config = {
"api_key": os.environ["OPENAI_API_KEY"],
"model": "gpt-3.5-turbo",
"base_url": "https://api.openai.com/v1",
"temperature": 0.7
}Определение структурированных схем вывода
Для различных типов агентов — CodeWriter, DataAnalyst, ProjectPlanner — определены JSON-схемы, обеспечивающие структурированный и предсказуемый вывод. Это повышает стабильность и согласованность ответов агентов.
Интеграция пользовательских инструментов
Для расширения возможностей агентов реализованы утилиты:
calculate_metrics: вычисляет статистические показатели для числовых данных.validate_code: проверяет синтаксис и безопасность Python-кода.search_documentation: имитирует поиск по программной документации.
Эти инструменты позволяют агентам выполнять автономное рассуждение и проверку результатов.
Создание многоуровневой иерархии агентов
Создается иерархия с главным супервизором ProjectManager, который контролирует помощников для разработки, анализа и QA. Такая модульная структура обеспечивает четкое распределение задач и эффективное управление:
main_supervisor = Supervisor(name="ProjectManager", llm_config=llm_config, system_message="Вы старший менеджер проекта, координирующий задачи разработки и анализа...")
dev_supervisor = Supervisor(name="DevManager", llm_config=llm_config, is_assistant=True, system_message="Вы управляете задачами разработки...")
analysis_supervisor = Supervisor(name="AnalysisManager", llm_config=llm_config, is_assistant=True, system_message="Вы управляете задачами анализа данных и исследований...")
qa_supervisor = Supervisor(name="QAManager", llm_config=llm_config, is_assistant=True, system_message="Вы управляете контролем качества и тестированием...")Специализированные агенты с определенными ролями
Определены агенты с конкретными функциями и инструментами:
CodeWriter: генерирует Python-код с проверкой и поиском документации.CodeReviewer: анализирует код на качество, безопасность и эффективность.DataAnalyst: выполняет статистический анализ с оценкой уверенности и рекомендациями.ProjectPlanner: разбивает проекты на задачи с приоритетами и зависимостями.QATester: проводит тестирование и проверку кода.
Каждый агент зарегистрирован у соответствующего супервизора, формируя единую экосистему.
Тестирование и демонстрация
Система протестирована на реальных примерах: генерация функции Фибоначчи, анализ данных продаж, выполнение сложной задачи по созданию, обзору, тестированию и планированию алгоритма бинарного поиска.
Симуляция рабочего процесса
Смоделирован полный жизненный цикл проекта с этапами от планирования до анализа, где каждый этап обрабатывается соответствующим агентом, демонстрируя автоматизацию без ручного вмешательства.
Мониторинг системы
Инструмент Debugger фиксирует производительность и системные события, а идентификаторы рабочих процессов используются для отслеживания в продуктивной среде.
Данный фреймворк демонстрирует возможности иерархической, инструментально оснащенной многоагентной системы для масштабируемого и автономного управления задачами в разработке ПО, анализе данных и планировании проектов.
Switch Language
Read this article in English