Hierarchy 节点 —— Manager-Workers-Synthesizer 三段式协作。
对应 Agentic Design Patterns 第 7 章 Multi-Agent Collaboration - Hierarchy 模式:上层 Manager 分解任务 → 下层 Workers 并行执行 → 可选 Synthesizer 汇总。
节点 config 字段
| 字段 | 必填 | 默认 | 说明 |
|---|---|---|---|
:goal | 否 | 来自 dep_results | 总体目标;缺省时取上游输出拼串 |
:manager | 否 | nil | Manager Agent 定义;nil 时跳过 manager,直接用 goal 切分 |
:split_fn | 否 | 按换行切分 | 把 manager 输出(或 goal)切成 subtask list |
:tasks | 否 | nil | 手动指定 subtask 列表,优先级高于 split_fn |
:workers | 是 | — | Worker 定义列表(数量必须 ≥ 1) |
:worker_assign | 否 | :round_robin | 任务到 worker 的分配策略::round_robin | :pairwise(一 task 一 worker,余数给第一个) |
:synthesizer | 否 | nil | Synthesizer Agent;nil 时直接返回 worker_outputs 不汇总 |
:max_parallel | 否 | length(workers) | 并行度 |
输出
%{
goal: "...",
subtasks: ["...", ...],
assignments: %{"worker_name" => ["task1", ...]},
worker_outputs: %{"worker_name" => "...", ...},
synthesis: "..." | nil
}错误
{:error, {:hierarchy_failed, :manager, reason}}{:error, {:hierarchy_failed, {:worker, name}, reason}}{:error, {:hierarchy_failed, :synthesizer, reason}}{:error, {:hierarchy_failed, :no_subtasks}}