От монолита к распределенной архитектуре
Одиночный LLM-агент часто не справляется со сложными задачами, требующими глубокой специализации. OpenAI Agents SDK предлагает два фундаментальных паттерна делегирования, которые позволяют разбить ответственность между несколькими агентами: Agent-as-a-Tool (агент как инструмент) и Handoff (передача контроля).
Эти паттерны служат строительными блоками для более сложных систем, где один агент-координатор управляет процессом, а специализированные агенты выполняют узкие задачи.
Паттерн 1: Agent-as-a-Tool (Агент как инструмент)
В этом сценарии главный агент вызывает специализированного агента для выполнения подзадачи. Специалист работает в изолированном контексте, возвращает результат, а главный агент остается активным и синтезирует финальный ответ, объединяя данные от всех специалистов. Это позволяет масштабировать систему, добавляя новых «экспертов», которых главный агент выбирает динамически.
В коде OpenAI Agents SDK эта связь создается методом specialist_agent.as_tool(...). Главный агент видит специалиста как обычный инструмент (tool), но с возможностью запуска цепочки рассуждений внутри него.
Паттерн 2: Handoff (Передача контроля)
Здесь происходит полная передача управления. Инициальный агент выступает в роли маршрутизатора: он принимает запрос, определяет, какой специалист лучше всего подходит, и передает ему контроль. Специалист становится активным агентом и несет полную ответственность за формирование финального ответа. Инициальный агент после передачи контроля «засыпает» до завершения задачи специалистом.
В SDK это настраивается через параметр handoffs=[...] при инициализации агента-маршрутизатора.
Практика: Советник по покупке электромобиля
Для демонстрации паттерна Agent-as-a-Tool был создан мультиагентный ассистент для семьи из Цюриха. Задача: решить, стоит ли покупать электромобиль при бюджете 45 000 швейцарских франков, пробеге 15 000 км/год и отсутствии возможности установить домашнюю зарядку.
Система разделила задачу на три независимых направления, поручив их разным агентам:
| Агент-специалист | Роль в системе | Инструменты |
|---|---|---|
| Vehicle Researcher | Поиск моделей, подходящих под бюджет и габариты | WebSearchTool |
| Charging Researcher | Оценка доступности инфраструктуры в Цюрихе | WebSearchTool |
| Ownership-Cost Researcher | Расчет стоимости владения и обслуживания | WebSearchTool |
Главный агент EV Purchase Adviser использовал метод as_tool() для подключения этих специалистов. В ходе выполнения запроса трассировка показала, что советник последовательно вызвал всех трех исследователей, а затем самостоятельно синтезировал рекомендацию, указав на отсутствие домашней зарядки как на ключевое ограничение.
Технические детали реализации
Для работы использовалась модель gpt-5.4 через OpenAIResponsesModel с настройками reasoning={"effort": "medium"}. Каждый агент-специалист был ограничен параметром max_turns=5, чтобы предотвратить бесконечные циклы рассуждений. Использование WebSearchTool с search_context_size="medium" обеспечило актуальность данных о ценах и моделях.
Этот подход демонстрирует, как можно создавать надежные приложения, где сложность логики скрыта внутри специализированных агентов, а пользователь получает единый, структурированный ответ от координатора.
Источник: Towards Data Science ↗
