AI-инжиниринг

Multi-Agent системы: оркестрация, коммуникация, специализация агентов

Цели урока

  • Понять когда multi-agent система оправдана, а когда single agent достаточно
  • Освоить паттерны коммуникации: supervisor, peer-to-peer, hierarchical
  • Спроектировать специализированных агентов: researcher, coder, reviewer с разными моделями
  • Реализовать оркестрацию через pipeline и dynamic routing (supervisor)
  • Оптимизировать production-метрики: стоимость, latency, debugging

Предварительные знания

  • Agent frameworks: LangGraph, Vercel AI SDK
  • Agent fundamentals: ReAct, planning, memory
  • Agent Frameworks
  • Agent Fundamentals

От Generative Agents до AutoGen и CrewAI

Идея, что несколько LLM-агентов могут работать вместе, оформилась в 2023 году. В апреле 2023 Joon Sung Park с коллегами из Стэнфорда и Google опубликовали статью Generative Agents: Interactive Simulacra of Human Behavior: 25 агентов жили в маленьком виртуальном городке, планировали день, общались, помнили события и формировали отношения. Работа показала, что из памяти, рефлексии и планирования рождается правдоподобное поведение, и была представлена на конференции UIST осенью 2023. В августе 2023 Microsoft Research выпустила AutoGen (статья arXiv 2308.08155) - фреймворк, где задача решается через разговор нескольких агентов между собой, с возможностью подключать человека и выполнение кода. В том же году João Moura собрал CrewAI с акцентом на роли: исследователь, писатель, редактор. Общий мотив всех трёх проектов - оркестрация специализированных агентов вместо одного агента-универсала.

Один агент с GPT-4o - `0.80 USD` за задачу. Пять специализированных агентов с gpt-4o-mini - `0.12 USD` за ту же задачу и в 3 раза быстрее (параллельно). Multi-agent не про сложность - про специализацию и стоимость. GitHub Copilot Workspace это доказал: pipeline из planner, coder, reviewer даёт 40% acceptance rate на реальных issues. Single agent с теми же tools - 15%. Разрыв не в умности, а в архитектуре.

  • GitHub Copilot Workspace - pipeline из planner, coder, reviewer: 40% acceptance rate против 15% у single agent
  • ChatGPT Deep Research - orchestrator-worker паттерн: researcher ищет по 50+ источникам параллельно, synthesizer собирает отчёт
  • Cursor Composer - shared state через контекст кодовой базы: один агент читает файлы, другой редактирует, третий тестирует
  • Salesforce Agentforce - supervisor pattern в enterprise: sales agent, support agent, analytics agent на общих CRM-данных через message passing

Зачем несколько агентов: пределы single agent

Один агент с GPT-4o - `0.80 USD` за задачу. Пять специализированных агентов с gpt-4o-mini - `0.12 USD` за ту же задачу и в 3 раза быстрее (параллельно). Multi-agent не про сложность - про специализацию и стоимость.

Microsoft Research (2024) проверили это на практике: при 20+ tools accuracy single agent падает до 64%. При разделении на 3 специализированных агента по 7 tools каждый - 89%. Не потому что три головы умнее одной. А потому что у каждого - чистый контекст и минимум инструментов для выбора.

Проблема single agentКак multi-agent решает
Context window переполняется при длинных задачахКаждый агент имеет свой контекст - фокус на своей подзадаче
20+ tools - модель путается в выбореКаждый агент имеет 3-7 tools - специализация
Одна perspective - bias в решенииРазные агенты - разные "мнения" - debate/consensus
Ошибка в одном шаге ломает всёАгент-reviewer проверяет работу других
Нельзя использовать разные модели для разных задачResearcher на GPT-4o (точность), Writer на Claude (стиль)

Multi-agent система - это не "просто несколько агентов". Это **архитектура взаимодействия**: кто с кем общается, кто принимает решения, как передаются данные, как распространяются ошибки между агентами. CrewAI, AutoGen, LangGraph - каждый фреймворк реализует эту архитектуру по-своему. Без чёткой схемы - хаос: агенты дублируют работу, зацикливаются, противоречат друг другу.

Multi-agent - не всегда лучше. Каждый дополнительный агент - это дополнительные API-вызовы ($), задержка (latency) и точки отказа. Для задачи "ответь на вопрос клиента" один агент с 5 tools оптимальнее, чем 3 агента, передающих контекст друг другу.

Почему разделение на 3 специализированных агента по 7 tools эффективнее одного агента с 21 tool?

Паттерны коммуникации: supervisor, peer-to-peer, hierarchical

Как агенты общаются - определяет поведение всей системы. Три паттерна. **Supervisor**: один главный LLM-роутер, все остальные подчинённые - именно так устроены LangGraph-пайплайны в продакшне. **Peer-to-peer**: агенты передают управление друг другу через handoff - OpenAI Swarm, Vercel AI SDK. **Hierarchical**: дерево менеджеров и подкоманд - для enterprise-систем на 10+ агентов.

ПаттернПлюсыМинусыКогда использовать
SupervisorЦентрализованный контроль, легко отслеживать flowSupervisor - bottleneck и single point of failureЧёткая иерархия задач, 3-5 агентов
Peer-to-PeerГибкость, нет bottleneck, агенты адаптируютсяСложнее отслеживать, риск зацикливанияДинамические задачи, chatbot routing
HierarchicalМасштабируется на большие командыСложная реализация, высокая стоимость10+ агентов, корпоративные pipeline

В supervisor pattern, после того как researcher завершил работу, что происходит дальше?

Специализированные агенты: researcher, coder, reviewer

Хирургическая бригада работает не потому что все хирурги умные. А потому что анестезиолог не берёт скальпель, а хирург не следит за давлением. Разделение ответственности - вот источник эффективности. С агентами то же самое: свой system prompt, свои tools, своя модель.

Researcher на GPT-4o (`2.50 USD/1M` tokens) - потому что ему нужен сильный reasoning для анализа противоречивых источников. Reviewer на gpt-4o-mini (`0.15 USD/1M`) - потому что работает по чеклисту, мощный reasoning не нужен. Это **model routing по сильным сторонам**: 16x разница в цене при сохранении качества на критических этапах.

Роль агентаМодельToolsФокус system prompt
ResearcherGPT-4o (сильный reasoning)webSearch, readUrl, arxivSearchТочность, источники, структура
CoderClaude Sonnet (сильный код)writeFile, runTests, readFileТипизация, production-ready, тесты
ReviewerGPT-4olintCode, securityScanБезопасность, performance, edge cases
WriterClaude Sonnet (хороший стиль)нет tools (только text)Ясность, структура, tone of voice
PlannerGPT-4o / o1нет tools (только reasoning)Декомпозиция, приоритизация, зависимости

Использование разных моделей для разных агентов - мощная оптимизация. Researcher и Reviewer могут использовать GPT-4o (`2.50 USD/1M` input tokens), а для простых задач routing или summarization подойдёт GPT-4o-mini (`0.15 USD/1M`) - экономия в 16 раз при сохранении качества на критических этапах.

Правило трёх tools: если агенту нужно более 10 tools - это сигнал, что агент делает слишком много. Разделите его на двух специализированных. Оптимальная зона: 3-7 tools на агента.

Для агента-разработчика (coder) в multi-agent системе выбрана модель Claude Sonnet, а для агента-исследователя - GPT-4o. Какова причина такого выбора?

Оркестрация: pipeline, handoff protocol, shared state

Агенты определены. Теперь вопрос другого уровня: как данные текут между ними, как shared state через Redis синхронизирует параллельных воркеров, как ошибка в одном агенте propagates через всю систему. Два основных подхода: **pipeline** (последовательный конвейер с фиксированным порядком) и **dynamic routing** через supervisor, который решает на ходу.

АспектPipelineDynamic Routing (Supervisor)
Порядок агентовФиксированный: A → B → CДинамический: supervisor решает
ГибкостьНизкая - всегда одна последовательностьВысокая - может пропускать шаги, возвращаться
ПредсказуемостьВысокая - всегда знаешь что будет дальшеСредняя - зависит от решений supervisor
СтоимостьФиксированная (N agent calls)Переменная (supervisor + N agent calls)
СложностьПростая (линейная)Средняя (граф с условиями)
КогдаЧёткий workflow: исследование → написание → редактураНеопределённые задачи с ветвлением

Начинайте с pipeline - он проще, предсказуемее и дешевле. Переходите на supervisor pattern только когда pipeline не справляется: задачи требуют ветвления, пропуска шагов или динамического порядка агентов.

Reviewer нашёл critical баг в коде. В supervisor pattern что произойдёт дальше?

Production: стоимость, latency, debugging multi-agent систем

Multi-agent система в demo выглядит впечатляюще. В production вскрываются цифры: supervisor + 3 агента × 5 шагов = 20 API-вызовов на одну задачу. При `2.50 USD/1M` tokens GPT-4o это `0.80 USD` за запрос, который у single agent стоил `0.15.` Каждый новый агент - не только API-стоимость, но и новая точка отказа и +5-10 секунд latency. Без учёта этого - дорогая игрушка, а не production tool.

Ещё сложнее - debugging. Ошибка в финальном результате могла появиться на любом шаге: researcher нашёл неверные данные, supervisor неправильно делегировал, coder проигнорировал контекст, reviewer пропустил баг. Без трассировки через LangSmith или OpenTelemetry - поиск иголки в стоге сена. **Error propagation между агентами** - первая проблема, которую видят в продакшне.

МетрикаSingle AgentMulti-Agent (3)Multi-Agent (5)
API-вызовов на задачу3-510-2020-40
Стоимость (GPT-4o)0.02-0.050.10-0.300.30-0.80
Latency5-15 сек20-60 сек60-180 сек
Точки отказа14 (supervisor + 3)6 (supervisor + 5)
Сложность debuggingНизкаяСредняяВысокая
  • **Tracing** - инструменты вроде LangSmith, Arize Phoenix или OpenTelemetry показывают полный путь запроса через агентов: кто что решил, какие tools вызвал, сколько стоило
  • **Replay** - возможность "проиграть" сессию заново с изменённым промптом одного агента, не перезапуская всю систему
  • **A/B testing** - сравнение конфигураций: 3 агента vs 5 агентов, GPT-4o vs Claude, supervisor vs pipeline
  • **Graceful degradation** - если один агент упал (rate limit, timeout), система продолжает работать с пониженным качеством, а не падает целиком

Правило для production: начинайте с **минимального количества агентов** и добавляйте новых только когда метрики показывают необходимость. 2 хорошо настроенных агента дадут лучший результат, чем 5 настроенных наспех. Каждый новый агент - это +`0.05`-0.10 на задачу и +5-10 секунд latency.

В production multi-agent системе нужно настроить агентов один раз, затем система работает самостоятельно. Мониторинг нужен только при явных сбоях

Multi-agent системы деградируют постепенно: накапливаются ошибки в промежуточных результатах, растёт стоимость при изменении модели API, появляются петли. Нужен мониторинг каждого hop - latency, token cost, error rate и human-eval на сэмпле выводов

Больше агентов = умнее система

Больше агентов = больше точек отказа, выше стоимость, сложнее debugging. Ошибки мультиплицируются через цепочку агентов

Каждый агент добавляет latency (5-10 сек), стоимость (`0.05`-0.10) и вероятность ошибки. Ошибка researcher передаётся coder как факт, coder передаёт reviewer как готовый код - error propagation идёт по всей цепочке. 2 хорошо настроенных агента стабильно выигрывают у 5 наспех добавленных. Координация стоит дорого - и токенами, и временем, и сложностью отладки.

Multi-agent система решает всё лучше, чем одиночный агент

Multi-agent оправдан только при 20+ tools, сложных задачах с ветвлением, или когда нужна проверка одного агента другим

Для задачи 'ответь на вопрос клиента' один агент с 5 tools и хорошим промптом работает лучше: нет overhead на передачу контекста между агентами, нет latency supervisor-а, нет умножения стоимости. Архитектурное решение должно быть обосновано метриками, не интуицией.

Итоги

  • Multi-agent оправдан при 20+ tools, сложных задачах, потребности в разных perspectives - не для простых ботов
  • Supervisor pattern - централизованный контроль через LangGraph; peer-to-peer через handoff (OpenAI Swarm, Vercel AI SDK); hierarchical - для 10+ агентов
  • Специализация: каждый агент - свой system prompt, 3-7 tools, оптимальная модель (GPT-4o для reasoning, Claude для кода)
  • Pipeline для предсказуемых workflows, dynamic routing для задач с ветвлением - начинать всегда с pipeline
  • Ошибки мультиплицируются через цепочку агентов - tracing через LangSmith обязателен; model routing на gpt-4o-mini для supervisor снижает стоимость на 40-50%

Вопросы для размышления

  • Multi-agent система для code review состоит из 4 агентов: security checker, style linter, logic reviewer, summary writer. При каком паттерне ошибок в одном агенте остальные три не смогут компенсировать итоговый результат - и почему?

Что дальше

Multi-agent системы - верхний уровень абстракции в AI Engineering. Дальше - практические навыки: как оценивать качество AI-систем, как управлять стоимостью в production, как обеспечить безопасность.

  • Evaluation и тестирование AI — Как измерить качество multi-agent системы: accuracy, coherence, task completion rate
  • Cost Management — Стратегии оптимизации стоимости: model routing, caching, prompt compression
  • AI Safety и Security — Prompt injection, tool abuse, data leakage - защита multi-agent систем

Связанные уроки

  • aie-18-agent-frameworks — Мультиагентные системы строятся на фреймворках агентов
  • aie-31-evaluation — Качество мультиагента требует измеримой оценки
  • aie-34-prompt-injection-deep — Больше агентов значит больше поверхности атаки
  • aie-29-cost-management — Несколько агентов умножают стоимость токенов
  • sd-10-microservices — Специализированные агенты похожи на специализированные микросервисы
  • ml-48-rl-intro — Координация агентов связана с многоагентным RL
  • net-55-message-queues
  • net-53-distributed-intro
Multi-Agent системы: оркестрация, коммуникация, специализация агентов

0

1

Войти

Отдельный агент может работать корректно, но их композиция порождает новые точки отказа. Классический пример: agent A генерирует ответ с ошибкой, agent B уверенно на нём строит - итог уверенно неверен

Multi-agent система использует GPT-4o (2.50 USD/1M tokens) для всех 5 агентов. Стоимость одной задачи - 0.80 USD. Какая оптимизация даст наибольшую экономию?