Reflex 团队做了一个硬核基准测试:同一个管理后台,同一个 Claude Sonnet 模型,让一个视觉 Agent(browser-use)和一个 API Agent 分别执行完全相同的任务。结果令人震惊。
测试设置
任务是:找到名叫 Smith 的客户中订单最多的那个,找到他最近的待处理订单,接受他所有待审核评价,然后把订单标记为已送达。这涉及三个资源实体、过滤、分页、跨实体查找和读写操作,是典型的内部工具日常操作。
视觉 Agent 用 browser-use 0.12 截图+点击;API Agent 直接调用应用的 HTTP 端点。变量只有一个:接口方式。
视觉 Agent 连任务都完不成
API Agent 8 次调用就搞定了。视觉 Agent 在同样的 prompt 下,找到了 4 条待审核评价中的 1 条,接受了它就结束了。剩下的 3 条评价在页面下方,Agent 根本不知道需要滚动。
这不是模型的问题。视觉 Agent 是在「看」一个渲染后的页面,它没有信号告诉它页面没显示全部内容。而 API Agent 直接读到「第1页/共4页,每页50条」的结构化响应。
花了 14 步指引才跑通
为了让对比公平,测试团队把视觉 prompt 改成了 14 步操作手册,详细到每一步点哪个侧边栏、哪个标签页、哪个表单字段。加了这份指引后,视觉 Agent 终于完成了任务——跑了 14 分钟,消耗了约 50 万 input tokens。
惊人的数据对比
视觉 Agent:平均 53 步,耗时 17 分钟,55 万 input tokens。
API Agent(Sonnet):精确 8 步,耗时 20 秒,1.2 万 input tokens。
API Agent(Haiku):精确 8 步,耗时 8 秒,不到 1 万 input tokens。
同一个任务,视觉方式贵 45 倍,慢 50 倍。而且视觉 Agent 的结果方差巨大——3 次运行,最短 43 个周期,最长 68 个周期,input tokens 从 40 万到 75 万不等。API Agent 5 次运行结果几乎完全一致。
结构性差距
这个差距是架构性的,不是模型能力问题。视觉 Agent 必须「看到」才能「行动」,每次操作都需要截图、解析、推理、点击。每一个中间状态都要渲染成图片再喂给模型。更好的模型能降低每步的错误率,但不能减少需要的步数——步数是由界面决定的。
API Agent 直接读结构化响应,数据已经是「第1页/共4页」这样的格式,不需要从像素里猜分页控件。
对出海独立开发者的启示
如果你在做内部工具或 SaaS 产品,一定要给 Agent 提供 API 接口,而不是指望它用浏览器操作你的界面。Reflex 0.9 可以从应用的事件处理器自动生成 HTTP 端点,API 工程成本降到接近零。
视觉 Agent 适合你控制不了的场景:第三方 SaaS、遗留系统。对于自己建的工具,数学已经很清楚了——API 永远是正确答案。
来源:HackerNews