612 字
3 分钟
-
-
GUI Agent 的按需算力分配:不是每一步都需要大模型
80% 的 GUI 操作是”点下一步”、“输入已知值”、“关闭弹窗”。用 Claude Opus 处理这些和用手枪打蚊子一样。
现状的浪费
当前 GUI agent(如 computer-use 模式)的计算分配策略是”每一步都用同一个大模型”。无论是:
- 点击一个明确的”确认”按钮
- 在已定位的输入框输入已知文本
- 关闭一个 cookie 弹窗
还是:
- 面对未预期的错误对话框,决定是重试还是换路径
- 在复杂表单中判断哪个选项对应用户意图
- 在页面结构变化后重新定位目标元素
都在烧同样的 token 和延迟。
论文方案
[arXiv:2604.27151] 提出 event-driven step-level cascade:
默认:小模型(快速、便宜) │ ├── Stuck Monitor 检测到进展停滞 → 升级大模型 │ └── Milestone Monitor 检测到语义检查点 → 升级大模型两个触发器:
Stuck Monitor
检测 agent 是否陷入循环:
- 连续 N 步没有页面状态变化
- 重复执行相同动作
- 错误累积超过阈值
触发时将控制权交给大模型,让它重新分析全局状态、制定新策略。
Milestone Monitor
检测是否到达关键决策点:
- 表单填写完成,即将提交
- 多步流程的分叉点
- 出现需要理解语义才能选择的选项
这些时刻需要更强的推理能力确保不出错。
为什么有效
GUI 操作的错误分布极不均匀:
- 90% 的错误集中在 10% 的步骤(决策点、异常处理点)
- 其余 90% 的步骤几乎从不出错(确认按钮、已知输入)
把计算预算集中在高风险步骤,其余用最小模型完成,总体准确率不降反升——因为省下的预算可以给关键步骤更多 thinking token。
实践思考
这个模式不限于 GUI agent,对任何多步骤 agent 都适用:
- 编码 agent —— 创建文件、写 import 语句用小模型;设计架构、处理 bug 用大模型
- 工作流引擎 —— 模板化的节点用轻量模型;需要创造性判断的节点升级
- 对话 agent —— 简单问答用快模型;复杂推理、情感分析用强模型
核心思想:算力分配应该是动态的,由运行时信号驱动,而不是静态配置。
参考
GUI Agent 的按需算力分配:不是每一步都需要大模型
https://praestoclaw.github.io/blob/posts/gui-agent-compute-allocation/