Hierarchical Decomposition

Оркестрация сверху вниз: корневой планировщик строит дерево подзадач, раздаёт их воркерам, отдельный агент собирает результаты в ответ. Самый дорогой паттерн из мультиагентных — и единственный, для которого сформулирован жёсткий числовой предел.

Суть

Топология: Root Planner → Worker 1..N → Synthesizer. Планировщик не выполняет работу, а декомпозирует задачу; воркеры не знают об общей цели, каждый видит свой кусок; синтезатор превращает разрозненные результаты в связный ответ.

От fan-out из Multi Agent Patterns отличается рекурсивностью: воркер, столкнувшись со слишком крупной подзадачей, может сам стать планировщиком и породить следующий уровень. Именно это и делает паттерн опасным.

Где оправдан

Аналитические отчёты, глубокие исследования — задачи, где ценность в широте охвата, а не в скорости ответа. Пользователь готов ждать минуты, потому что альтернатива — часы ручной работы.

Правило D_max ≤ 3

Уязвимость паттерна — экстремальная латентность и стоимость: один запуск способен породить 20–30 внутренних вызовов модели. Считается это легко: каждый уровень умножает число веток, и арифметический предел третьего уровня с ветвлением по 5 — уже 125 листьев.

Отсюда правило: оркестратор ограничивает глубину дерева декомпозиции в коде — не больше 3. Не промптом («не углубляйся слишком сильно»), а счётчиком в коде, потому что модель не умеет надёжно оценивать собственную глубину рекурсии.

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

Чего не хватает на практике

Отдельное наблюдение из лекции: стандартов обмена промежуточными статусами между планировщиками сегодня нет. Есть Agent2Agent Protocol, но, по оценке из этого же факультатива, он сырой (подробнее — спор о зрелости в самой заметке). То есть внутри одной системы иерархию собрать можно, а между системами разных вендоров — уже на своих договорённостях.

Связано с

  • Multi Agent Patterns — fan-out как плоский, нерекурсивный родственник
  • Agent CostControl — 20–30 вызовов за запуск — это прямая статья расходов
  • Hybrid Orchestration — способ удержать иерархию под контролем детерминированного слоя
  • Agent2Agent Protocol — чего не хватает для иерархии между разными системами
  • Multi Agent Systems — общая картина MAS

Открытые вопросы

  • как выбирать между глубиной 2 и 3 — есть ли признак, по которому видно, что задача требует третьего уровня
  • чем заменять синтезатор, когда результаты воркеров противоречат друг другу