Improving the Efficiency of Language Agent Teams with Adaptive Task Graphs¶
会议: NeurIPS 2026
arXiv: 2605.06320
OpenReview: https://openreview.net/forum?id=sjSjyEGmnu
代码: https://github.com/emieczkowski/latte
领域: LLM Agent
关键词: 语言智能体团队, 自适应任务图, 多智能体协同, 动态调度, 容错机制
一句话总结¶
针对现有多智能体团队在预设静态结构下僵化死板、在无结构去中心化下冲突频发的两极困境,本文提出受分布式系统启发的新框架 LATTE,通过团队共同构建维护一个具备形式化变异算子的自适应任务图,在大幅降低 Token 开销与时延的同时提升了协作准确率与系统可解释性。
研究背景与动机¶
大语言模型多智能体团队在软件工程、复杂数据分析和多步科学探索等场景展现出了超越单模型的协同潜力。然而,现有协作架构的探索普遍陷入了两种极端范式的撕扯之中。一方面,以 MetaGPT、ChatDev 等为代表的强结构化管线系统,在任务启动前便静态绑定了全局角色规范、阶段划分与任务拆解。当中间执行出现预期外的工具错误、未明函数依赖或环境非平稳漂移时,既定工作流缺乏自我调整能力,初始阶段的规划偏差或幻觉往往会无约束地下游级联放大,导致全盘溃败。
另一方面,完全去中心化的自由交互智能体团队虽然提供了充分的探索灵活性,却因缺乏全局共享状态与依赖约束,陷入了严重的协作失效漩涡。没有执行脚手架的自主智能体极易并发修改相同函数、相互覆盖编辑内容、产出大量偏离全局目标的冗余输出,并且在串行依赖链条中因过度广播通信而迅速耗尽上下文窗口。这种结构性僵局构成了多智能体系统的核心矛盾:结构对于保证多智能体一致性必不可少,但过度僵化的先验规范却直接扼杀了大模型最具价值的动态适应能力。
本文的切入角度是引入分布式计算中的动态任务图与工作窃取思想,将多智能体协作形式化为一个在线自适应图维护协议,由智能体在执行过程中双层协商并演化依赖拓扑。核心 idea:将多智能体协同抽象为团队共同维护的有向无环任务图,通过 Discover、Claim、Release 等严密受约的操作原语,实现“Worker 本地感知提议、Lead 全局裁决串行化”的自适应混合调度。
方法详解¶
整体框架¶
LATTE(Language Agent Teams for Task Evolution)将智能体团队划分为一个全局协调者 Lead(\(\ell\))与多个执行节点 Workers(\(\mathcal{W}\))。团队在执行过程中动态构建并维护一个共享的有向无环图 \(G_t = (V_t, E_t, \lambda_t)\),其中节点 \(v \in V_t\) 表示待执行的具体子任务,有向边 \((u, v) \in E_t\) 刻画前置完成依赖(只有 \(u\) 完成 \(v\) 才能开始),状态映射函数 \(\lambda_t: V_t \to (\mathcal{A} \cup \{\bot\}) \times S\) 追踪子任务的归属与生命周期状态。
整个协同生命周期由规划阶段(Phase 0)和动态循环执行阶段(Phase 1)构成。在初始化阶段,Lead 仅依据任务指令生成初步的任务骨架 \(G_0\);进入执行后,系统在每一轮根据前序依赖实时计算可立即并发执行的“任务前沿”(Frontier),激活相应数量的 Worker 进行无锁抢占(Claim)或由 Lead 分发(Assign)。当 Worker 在执行中发现新依赖或发现测试未通过时,能够向上提出图变异提议(Discover),而 Lead 则通过心跳监控介入超时长尾节点(Release)并在高风险节点注入审查任务(Verify)。
%%{init: {'flowchart': {'rankSpacing': 24, 'nodeSpacing': 28, 'padding': 6, 'wrappingWidth': 400}}}%%
flowchart TD
A["任务输入 τ 与环境说明"] --> B["Lead 初始任务图构建<br/>生成种子拓扑 G0"]
B --> C["前沿识别与并发调度<br/>根据依赖生成就绪队列 Ft"]
C --> D["Worker 自主认领与执行<br/>Claim 抢占或 Assign 分派"]
D --> E["动态图变异提议<br/>发现新子任务 Discover / 完成 Complete"]
E --> F["心跳监控与异常恢复<br/>Release 挂起任务 / Verify 抽检"]
F -->|存在未完成节点| C
F -->|所有节点完成| G["整合输出最终产物 GT"]
关键设计¶
1. 图变异算子系统:构建带不变性保证的操作原语
为规避非结构化文本对话中常见的语义分歧与状态漂移,LATTE 明确定义了七个图变异算子(Graph Mutation Operators),严格区分全局特权操作与局部自治操作,在数学上保证图的无环不变性(DAG Invariant)。Worker 仅持有针对自身任务上下文的局部视图,被授予发现新任务 Discover(v, deps) 以及上报完工 Complete(v) 的权限;而影响全局状态的算子如重置卡滞任务 Release(v)、强制闭环 Close(v)、插入审查分支 Verify(v) 与全局指派 Assign(v, w) 则完全由 Lead 集中调度。算子的前置条件对拓扑安全施加了硬约束,例如 Discover 要求待加入节点 \(v \notin V_t\) 且依赖集 \(\text{deps} \subseteq V_t\),并在图检测算法确认插入不形成有向环后才准予写入,使复杂协作在底层始终锚定在严格的偏序依赖结构上。
2. 前沿驱动自调度与去中心化工作认领:兼顾最大并发与低调度延迟
在每个执行轮次 \(t\),系统根据当前依赖图动态推导任务前沿集合 \(F_t\):
$\(F_t := \{v \in V_t \mid \text{status}(v) = \texttt{pending} \ \land \ \forall (u, v) \in E_t, \text{status}(u) = \texttt{done}\}\)$
前沿集合 \(F_t\) 明确给出了当前全局可立即执行的独立子任务。LATTE 在调度上并未将分派压力全堆在 Lead 上,而是借鉴分布式任务调度中的“工作窃取”(Work-stealing)思想,允许空闲 Worker 通过 Claim(v) 主动抢占 \(F_t\) 中的任务。并发认领同一节点时的竞争由轻量调度层按 FIFO 串行化判定胜负,胜者将任务置为 in_progress 并直接执行,落败者则立即转向其他前沿。这种机制使得单轮并发分发的 Worker 数自然匹配 \(\min(|F_t|, |\mathcal{W}|)\),既榨干了当前依赖拓扑所允许的最大并行度,又彻底避免了 Lead 逐个分发带来的单点吞吐瓶颈。
3. 双层元推理与概率解释:信息边界隔离与 MCMC 式图演化
LATTE 将任务图的动态演化在理论上形式化为以图结构为假设空间的贝叶斯后验推断问题,目标是寻找最大化 \(P(G_t \mid D_t) \propto P(D_t \mid G_t) P(G_t)\) 的最优分解结构,其中 \(D_t\) 为执行轨迹总信息。为解决单个中心大模型无法吞咽全量团队交互长上下文的认知超载瓶颈,LATTE 采用类似 Metropolis-Hastings 的提议-评估两级解耦机制。每个 Worker \(w_i\) 仅专注于其局部子任务及直接依赖的前置输出 \(d_t^{(i)}\),并基于局部信息采样局部图改动提议 \(g_t^{(i)\prime} \sim Q(\cdot \mid g_t^{(i)}, d_t^{(i)})\);Lead 则不读各 Worker 的详细代码实现与中间交互流,仅基于宏观图拓扑和节点状态评估局部变更并执行接受判定。该机制严格收敛了各个 Agent 的上下文边界(Worker 上下文滑动窗口设为 20 条,Lead 上下文设为 10 条),阻断了冗余信息扩散引起的推理退化。
4. 弹性心跳监控与动态容错恢复:破除长尾卡滞与幻觉传播
传统静态协作管线一旦某个智能体卡死或深陷幻觉死循环,整个下游依赖将被无限期阻塞。LATTE 引入了自适应心跳机制(Heartbeat Threshold \(H=4\)),当某个 Worker 连续 4 个轮次未产生有效操作或进度更新时,系统自动向 Lead 告警。Lead 可果断触发 Release(v) 算子,强行解除原智能体的归属绑定并将任务退回 pending 状态,以便重新派发或由其他空闲 Worker 抢占。针对容易出现静默错误的复杂关键链路,Lead 还能在关键节点完成后条件式插入 Verify(v),在该节点与下游之间动态织入一个轻量化的质检任务 \(v_{\text{ver}}\),由第三方智能体执行交叉检验,实现精细化、按需触发的质量控制。
一个完整示例¶
以复杂信号处理库 Debug 任务为例:
1. 规划与启动:Lead 阅读任务说明,通过 Discover 初始化包含 test-harness、filter-module、fft-core 三个顶层待查子任务的 \(G_0\)。
2. 并发执行:空闲的 Dev1 与 Dev2 几乎同时发起 Claim,分别抢占 filter-module 和 fft-core;系统按 FIFO 接受认领,两智能体并发修改各自独立模块的代码。
3. 发现新依赖:Dev1 运行局部测试时发现底层存在隐藏数值下溢错误,于是调用 <discover_task id="fix-underflow" dependencies="filter-module">,动态扩展了图拓扑。
4. 长尾接管与合并:Dev2 在修复 fft-core 时陷入死循环,心跳监控在第 4 轮触发报警;Lead 调用 <release_task id="fft-core"> 将其重置为待认领状态,刚刚完成前置任务的 Dev3 立即主动 Claim 该任务并迅速定位了索引越界错误。所有叶子节点测试通过后,Lead 触发验收并统一终止退出。
实验关键数据¶
主实验¶
实验在三项协作基准上展开评估:探索性数据分析(Data Analysis,400 条带隐藏规则的不透明 HR 数据)、代码调试(Debug,8 个复杂数值计算 bug)以及库功能扩展(Library Ext.,扩展 2 个已有类并新建 6 个功能模块)。团队规模统一固定为 5(1 Lead + 4 Workers 或 5 个对等智能体),基础模型包含 Claude Sonnet 4-6 与 GPT-5.2,共计运行 300 次独立试验。
| 团队架构 | 综合准确率 (%) | 综合 Token (K) | 综合耗时 (min) | 冲突覆盖次数 (次/次试验) | 并发写冲突 (次/次试验) |
|---|---|---|---|---|---|
| LATTE (本文) | 80 ± 4 | 148 ± 14 | 3.5 ± 0.3 | 4.3 | 1.0 |
| Leader-Worker 层次架构 | 70 ± 5 | 379 ± 51 | 5.9 ± 0.6 | 22.8 | 8.5 |
| Decentralized 去中心化对等团队 | 74 ± 4 | 419 ± 47 | 3.7 ± 0.3 | 35.4 | 11.5 |
| Static Task Graph (静态任务图消融) | 58 ± 5 | 297 ± 40 | 6.0 ± 0.6 | - | - |
| MetaGPT (固定角色 SOP 管线) | 34 ± 7 | 397 ± 59 | 11.5 ± 1.2 | - | - |
从各任务分项表现看,LATTE 在 Data Analysis 上达到 96 ± 1%(显著领先 MetaGPT 的 75%),在 Debug 任务上达到 100 ± 0%(与去中心化持平,远超静态图的 44% 和 MetaGPT 的 32%),在极具挑战的 Library Ext. 达到 40 ± 2%(领先去中心化的 27% 和 Leader-Worker 的 23%)。
消融与微观协同质量分析¶
为揭示自适应动态图各机制的作用机理,论文进一步对比了静态图与动态图在资源分配与异常修复维度的指标:
| 评估维度 / 指标 | LATTE (动态图) | Static Task Graph (静态图) | 相对优势 / 变化说明 |
|---|---|---|---|
| 任务平均完成耗时 (s) | 39.2 | 75.6 | 提速 48.1% (p < 0.01) |
| 任务 95 分位长尾耗时 (s) | 130 | 294 | 减少 2.3× 严重长尾延迟 |
| 初始规划生成节点数 (个) | 3.8 ± 2.0 | 8.3 ± 1.8 | 初始规划更轻量敏捷 (14.5s vs 16.7s) |
| Lead 活跃轮次占比 (%) | 30.8% | 14.8% | 动态跟进解决下游阻塞 |
| Worker 抑制闲置占比 (%) | 48.7% 闲置保护 | 全量激活 | 避免无可用任务时的无效空转 |
| 废弃丢弃字符量 (chars/trial) | 5,236 | 45,436 (L-W) / 78,062 (Dec.) | 减少冗余无效代码生成 88.5%~93.3% |
| 团队消息通信量 (条/trial) | 20.4 | 31.4 (L-W) / 34.8 (Dec.) | 沟通更精准,通信冗余降低 35%~41% |
关键发现¶
- 动态图扩展有效支撑复杂探索:在动态执行过程中,LATTE 团队调用最频繁的算子即为
Discover,这证明任务真实展开后智能体会自主发掘出大量初始阶段无法预见的子任务,促使任务图动态扩展至远超静态初版的规模。 - 自适应容错机制被高难度任务自发激活:在全局试验中,Lead 在 36% 的轮次中主动使用了
Release接管卡死长尾节点;而在耗时较长(平均 18.1 轮通过测试)的高不确定性复杂任务中,Lead 触发Verify校验的比例高达 19%,而在简单任务中则为 0%,体现了按需质检的自适应资源倾斜。 - 协调结构显著压制代码冲突:去中心化团队在同一文件上平均发生 35.4 次覆盖和 11.5 次并发修改同一函数的事故,产生近 8 万字符的无效废代码;LATTE 借助任务前沿的隔离约束,将重叠写冲突直接压缩至 1.0 次,显著净化了协同环境。
亮点与洞察¶
- 将分布式系统精髓嫁接至多智能体交互:将传统的静态 Prompt 角色扮演升级为带前置/后置条件保证的图变异协议,利用拓扑不变性从根本上化解了去中心化团队相互覆盖的死结。
- 前沿就绪工作窃取兼顾并行与降本:通过数学形式化的 \(F_t\) 动态识别并发边界,仅唤醒有工作可做的智能体,既实现了最大的理论并发度,又消除了智能体在空白等待期的无谓 Token 消耗。
- 外部化显式轨迹大幅增强系统可解释性:所有协作决策被转化为直观可追溯的任务图拓扑变更与算子日志,使得传统黑盒多智能体对话中隐蔽的死锁、长尾与协作退化变得清晰可审计。
局限与展望¶
- 规划前置开销权衡:初始图初始化在任务极短或单一智能体能轻松单刷的场景下存在额外的规划延迟,如何自适应判断任务复杂度以决定是否开启图协调仍待探索。
- 任务边界划分依赖任务先验:当前评测主要聚焦在软件工程与数据处理等模块化边界清晰的代码任务,如何将明确的图操作算子外推至非形式化、强语义交织的开放式创作或社会模拟仍具挑战。
- 固定团队规模约束:本研究为对齐基线将团队总人数固定在 5,未来可进一步探索动态图规模驱动下的 Agent 弹性动态扩缩容机制。
相关工作与启发¶
- vs MetaGPT / ChatDev: 后者依赖预定义且不可逆转的静态 SOP 阶段划分与固定瀑布流角色(产品经理、架构师、工程师、QA),面对动态未知的运行期错误缺乏重构能力;LATTE 在执行过程中允许动态提出新节点与插入校验,拓扑弹性与适应性显著占优。
- vs 去中心化对等团队 (Decentralized Teams): 去中心化多智能体全员无约束广播通信,极其容易引发并发修改冲突与上下文膨胀;LATTE 引入共享任务图作为单一事实源(Single Source of Truth),实现操作串行化与按前沿精准激活。
- vs 纯静态任务图调度 (Static Task Graphs): 传统静态图算法(如 HEFT)要求预先已知全部依赖与执行开销;LATTE 填补了自然语言智能体在运行时自主提议、识别依赖与动态修剪重构任务图的空白。
评分¶
- 新颖性: ⭐⭐⭐⭐⭐ 首次将分布式系统的动态任务图与工作窃取协议严密形式化为多智能体协同机制,理论自洽。
- 实验充分度: ⭐⭐⭐⭐⭐ 兼顾了准确率、端到端时延、Token 成本以及极其详尽的微观协同冲突度量,对比基线全面扎实。
- 写作质量: ⭐⭐⭐⭐⭐ 逻辑推导层次分明,方法定义严密,数学符号与系统设计融合自然。
- 价值: ⭐⭐⭐⭐⭐ 为多智能体团队解决“死板僵化”与“混乱冲突”的两难矛盾提供了扎实的架构范式与工程参考。