跳到主要内容

智能体任务复杂度估算:执行前先规划 Token 预算

· 阅读需 12 分钟
Tian Pan
Software Engineer

两个智能体收到同一条用户消息。一个在 3 秒内用 400 个 Token 完成任务;另一个进入 Reflexion 循环,耗尽 40,000 个 Token,在任务中途触及上下文限制,产出一个半成品答案。两个系统都没有预测到会是哪种结果。这不是边缘情况——这是智能体在没有对任务深度建立任何模型的情况下启动任务时的默认行为。

基于 LLM 的智能体在执行前对任务范围没有天然感知。用自然语言读起来简单的请求可能需要十几次工具调用和多轮规划;听起来复杂的请求可能只需一次查找即可解决。没有执行前的复杂度估算,智能体就会盲目提交资源:随着轮次历史积累,上下文窗口呈二次方填满;规划开销主导执行时间;等到系统检测到问题时,导致问题的早期决策已经无法撤销。

智能体任务复杂度估算:执行前先规划 Token 预算

成本不对称是真实且可量化的。单次 LLM 调用约需 800ms;十轮多轮推理循环消耗的 Token 是单次的五十倍。不加限制时,解决软件工程任务的生产级编码智能体每次任务可能花费 5–8 美元。由于历史积累,上下文随每一轮加倍增长,形成二次方增长,任何提示工程技巧都无法完全抑制。与此同时,所有经过测试的前沿模型随上下文长度单调退化——退化在达到名义限制之前就已开始,当相关信息位于窗口中间而非边界时,准确率下降 20–30 个百分点。

复杂度估算是团队反复跳过的架构修复方案,因为在基础设施账单到来之前,它感觉像是过早优化。

为什么智能体会在早期犯下不可逆的错误

对跨网页、具身、操作系统和数据库任务的 3100 多条智能体轨迹的研究发现了一致的非线性失败模式:智能体在小任务深度下表现出部分鲁棒性,然后在超过特定领域阈值后骤然转变为近乎系统性的失败。随着视野长度增加,失败构成也发生变化。短任务主要因环境错误和指令误解而失败。长任务则因规划崩溃和历史错误积累而失败——这是一种根本不同的失败模式,需要不同的补救措施。

不可逆性问题有别于上下文耗尽。智能体会做出"早期的短视承诺,这些承诺随时间系统性放大且难以恢复"。一旦智能体在前几个决策中偏离最优执行路径——因为它低估了任务范围并承诺了一个浅层计划——恢复该轨迹在实践中几乎是不可能的,除非重新开始。一个决定通过检查三个文件而非三十个来解决重构任务的编码智能体,已经承诺了一个会产生自信但不完整答案的计划。它直到深入执行后才会发现错误,而此时扭转方向意味着丢弃大部分已积累的上下文。

这就是为什么预先估算比更好的重试逻辑或更大的上下文窗口更重要。在失败模式启动后修复成本高昂。防止错误计划从一开始就被提交,花费的只是推理预算的一小部分。

在第一个 Token 之前对复杂度分类

实用方法是在任务接收时、任何推理推断触发之前估算复杂度的分层路由系统。三层模式已在生产 AI 工程团队中趋于收敛:

  • 第一层处理简单查找和单步检索,使用直接 LLM 调用。目标延迟:P50 低于 500ms。
  • 第二层处理复杂推理,使用编排器-工作器设置和有限反思循环。目标延迟:P50 2 秒,P95 4 秒。
  • 第三层处理深度多领域任务,使用完整多智能体编排。目标延迟:P50 3 秒,P95 6 秒。

路由决策本身应该轻量。单次 LLM 调用在复杂任务上的准确率上限为 60–70%;达到 95%+ 需要延长推理时间。路由层的工作是在将推理预算提交给错误方法之前,识别任务需要哪个层级。

一种有原则的路由方法使用基于变分自编码器(VAE)训练的轻量分类器。VAE 将每个传入查询编码为潜在难度表示,并生成归一化难度分数。该分数随后驱动模型选择(使用哪个 LLM)和工作流深度(允许多少推理步骤)。该分类器的训练成本约为 2 美元——相比之下,复杂基准测试上每次无约束推理查询的成本超过 1.66 美元。在规模上,分类层在前几百次查询后就能收回成本。

对于代码智能体,静态分析提供无需任何 LLM 调用的执行前复杂度信号:文件数量、模块间依赖扇出、抽象接口的存在。这些信号可以在主推理链开始之前为复杂度估算提供初始依据。

Token 预算作为一等智能体状态

一旦有了复杂度层级,就需要在执行过程中强制执行。两种机制有强有力的实证支持。

预算追踪器注入:将剩余工具调用或 Token 预算作为实时计数器插入智能体的提示中,在每一步更新。这听起来简单得令人惊讶,但效果出奇地好。能看到剩余预算的智能体会调整策略:在预算低时停止广度优先探索,更早整合部分结果,并跳过低风险子任务的验证步骤。研究表明,与无约束基线相比,该模式实现了 31.3% 的成本降低和 40.4% 的工具调用减少,同时提高了困难研究任务的准确率。无需微调。这是目前可用的最高杠杆、最低努力的可靠性改进之一。

复杂度条件深度限制:根据路由时分配的复杂度层级,为每个任务设置推理轮次上限,而非全局上限——而是从前期估算得出的每任务上限。第一层任务最多 3 轮,第三层任务最多 20 轮。这种动态轮次限制形式在保持解决率的同时实现 24% 的成本降低,因为它防止了简单任务陷入不必要的反思循环,同时不人为限制需要更多空间的复杂任务。

这些机制与简单速率限制的关键区别在于,它们向智能体传达约束而不是静默截断执行。知道还有 5 轮的智能体会以不同于被中途打断的方式进行压缩。知情适应比硬性停止产生更好的输出。

加载中…
References:Let's stay in touch and Follow me for more thoughts and updates