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
От 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 | Централизованный контроль, легко отслеживать flow | Supervisor - 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 |
|---|---|---|---|
| Researcher | GPT-4o (сильный reasoning) | webSearch, readUrl, arxivSearch | Точность, источники, структура |
| Coder | Claude Sonnet (сильный код) | writeFile, runTests, readFile | Типизация, production-ready, тесты |
| Reviewer | GPT-4o | lintCode, securityScan | Безопасность, performance, edge cases |
| Writer | Claude Sonnet (хороший стиль) | нет tools (только text) | Ясность, структура, tone of voice |
| Planner | GPT-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, который решает на ходу.
| Аспект | Pipeline | Dynamic 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 Agent | Multi-Agent (3) | Multi-Agent (5) |
|---|---|---|---|
| API-вызовов на задачу | 3-5 | 10-20 | 20-40 |
| Стоимость (GPT-4o) | 0.02-0.05 | 0.10-0.30 | 0.30-0.80 |
| Latency | 5-15 сек | 20-60 сек | 60-180 сек |
| Точки отказа | 1 | 4 (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