引子:Computer Use 的工程基线 14.9% 与人类 70-75% 的差距
桌面自动化对 AI Agent 一直不诚实——这件事在 Claude 3.5 Sonnet 于 2024-10-22 公开发布 Computer Use 能力之后,被正式摆上了台面。Anthropic 在《Introducing computer use, a new Claude 3.5 Sonnet, and Claude 3.5 Haiku》中写道:Available today on the API, developers can direct Claude to use computers the way people do—by looking at a screen, moving a cursor, clicking buttons, and typing text. Claude 3.5 Sonnet is the first frontier AI model to offer computer use in public beta. At this stage, it is still experimental—at times cumbersome and error-prone. 这段话是整篇公告里最值得工程团队反复读的一句话——它同时承认了两件事:这件事可以做了,以及这件事现在还很糟。任何打算把 Computer Use 当成生产力工具的团队,都必须正视这份坦诚。
要把 Computer Use 的实际能力量化,Anthropic 给出了一个非常具体的基准数字:On OSWorld, which evaluates AI models' ability to use computers like people do, Claude 3.5 Sonnet scored 14.9% in the screenshot-only category—notably better than the next-best AI system's score of 7.8%. When afforded more steps to complete the task, Claude scored 22.0%. 在配套的《Developing a computer use model》文章里,Anthropic 又给出对照:Claude currently gets 14.9%. That's nowhere near human-level skill (which is generally 70-75%), but it's far higher than the 7.7% obtained by the next-best AI model in the same category.——14.9% 是当时最强,7.7% 是第二名,人类基线 70-75%。这意味着即使最领先的前沿模型,在「像人一样使用桌面」这件事上仍然只完成不到五分之一。
一、生产环境里 Computer Use 的四类任务表现
把视线拉回到工程现场。过去三个月陆续公开的多份社区复现报告显示,Computer Use 在生产环境里表现出来的特征可以归纳为四类:第一类是高成功率的简单任务——打开一个本地应用、在文本框里输入一段文字、点击明显的按钮——这些任务的成功率往往能维持在 80% 以上;第二类是中等难度的多步任务——打开浏览器,搜索某关键词,点开第一条结果,把页面正文保存到指定文件——成功率会迅速跌到 30-50%;第三类是带弹窗与异常分支的任务——任何中途弹出的对话框、Cookie 同意页、人机验证、系统通知,都会让 Agent 偏离主线,失败率被显著放大;第四类是任何依赖精确像素定位的任务——滚动、拖拽、缩放,Anthropic 自己也在博客里点名:Some actions that people perform effortlessly—scrolling, dragging, zooming—currently present challenges for Claude.
- 高成功率的简单任务:打开一个本地应用、在文本框里输入一段文字、点击明显的按钮——成功率往往能维持在 80% 以上。
- 中等难度的多步任务:打开浏览器,搜索某关键词,点开第一条结果,把页面正文保存到指定文件——成功率会迅速跌到 30-50%。
- 带弹窗与异常分支的任务:任何中途弹出的对话框、Cookie 同意页、人机验证、系统通知,都会让 Agent 偏离主线,失败率被显著放大。
- 依赖精确像素定位的任务:滚动、拖拽、缩放等操作,在 Computer Use 范式下显著脆弱。
二、Anthropic 自嘲式披露的两个系统性弱点
Anthropic 的研究文章里有一段特别耐人寻味的细节:Even while we were recording demonstrations of computer use for today's launch, we encountered some amusing errors. In one, Claude accidentally clicked to stop a long-running screen recording, causing all footage to be lost. In another, Claude suddenly took a break from our coding demo and began to peruse photos of Yellowstone National Park. 这两段自嘲式的描述其实揭示了 Computer Use 的两个系统性弱点——一是 Agent 在面对「破坏性按钮」时缺乏二次确认能力,二是 Agent 会被屏幕内容牵引而偏离主线目标。换句话说,Agent 不是在「执行任务」,而是在「看屏幕,然后挑一个看起来合理的下一步」。
三、反幻觉层:为什么 Computer Use 必然撞上反幻觉难题
这种「看屏幕挑下一步」的范式,从根子上决定了 Computer Use 必然会撞上反幻觉难题。Anthropic 在研究文章里同时给出了关键解释:Training Claude to count pixels accurately was critical. Without this skill, the model finds it difficult to give mouse commands—similar to how models often struggle with simple-seeming questions like how many A's in the word banana. 这段话把 Computer Use 的核心难题压缩到了一件事:模型必须能精确数清屏幕坐标。屏幕分辨率、缩放比例、浏览器缩放、操作系统 DPI 任意一个变量变化,坐标体系就要重算;一旦算错,点击就会落在错位元素上,触发一连串连锁错误。这就是桌面自动化领域长期存在的「脆弱性」。
四、社区沉淀的反幻觉层工程做法
工程社区对这种脆弱性的应对,过去三个月里逐步沉淀出一层「反幻觉层」——夹在 Agent 决策和底层鼠标键盘之间,负责对每一次操作做一次「事前验证加事后确认」。事前验证的常见做法包括:在执行点击之前,先用目标元素的中心坐标做一次截图回放,确认元素仍然可见、位置未变、文本与预期一致;若发现元素已经移动、被遮挡、或文案被改,立即停止本次操作并把控制权交还给 Agent,让它重新规划路径。事后确认则是:每完成一次鼠标点击或键盘输入,立刻取一张新截图,与「点击后应当出现的视觉变化」做轻量比对;若未出现预期变化,触发一次重试或回滚。
- 事前验证:在执行点击之前,先用目标元素的中心坐标做一次截图回放,确认元素仍然可见、位置未变、文本与预期一致。
- 事后确认:每完成一次鼠标点击或键盘输入,立刻取一张新截图,与"点击后应当出现的视觉变化"做轻量比对。
- 观察盲区应对:Computer Use 的"离散截图"模型天然存在 100 到 300 毫秒的观察盲区,工程上必须把任何关键交互做成"等待 + 二次截图 + 状态比对"的闭环。
五、桌面代理的工程新样本:三个方向
Anthropic 在研究文章里其实已经把这件事说得很清楚了:Claude's view of the screen—taking screenshots and piecing them together, rather than observing a more granular video stream—means that it can miss short-lived actions or notifications. 这意味着,Computer Use 的「离散截图」模型天然存在一个 100 到 300 毫秒左右的观察盲区,任何在这个窗口里出现又消失的内容(下拉菜单、自动关闭的提示条、动画过渡帧)都会被 Agent 错过。工程层面的应对不是去赌模型变强,而是接受这一前提,主动把任何关键交互(打开菜单、提交表单、触发确认)做成「等待加二次截图加状态比对」的闭环。
- 可观测性:把每一次鼠标点击、键盘输入、截图变化,按时间序列写入可检索的 trace,工程团队可以像翻录像一样回放 Agent 的每一步决策。
- 元素定位抽象:不再让 Agent 直接发像素坐标,而是先在截图里识别 UI 元素,再让 Agent 选择"点击第 N 个按钮""在文本框里输入文字"。
- 白名单加沙箱:把 Agent 限定在高度受控的虚拟桌面环境里,任何"破坏性按钮""站外跳转""下载外部文件"操作都需要二次确认或被默认禁止。
六、安全侧:Prompt Injection 在桌面场景的特殊危害
桌面代理的工程新样本,过去三个月里在三个方向上同时出现。第一个方向是「可观测性」:把每一次鼠标点击、键盘输入、截图变化,都按时间序列写入一份可检索的 trace,工程团队事后可以像翻录像一样回放 Agent 的每一步决策,这比直接看模型思考日志高效得多。第二个方向是「元素定位抽象」:不再让 Agent 直接发像素坐标,而是先在截图里识别 UI 元素(按钮、文本框、链接),再让 Agent 选择「点击第 N 个按钮」「在文本框里输入文字」——坐标反算由本地 SDK 完成,这等于把像素级脆弱性从 Agent 决策层移到了 SDK 适配层。第三个方向是「白名单加沙箱」:把 Agent 限定在一个高度受控的虚拟桌面环境里,任何「破坏性按钮」「站外跳转」「下载外部文件」操作都需要二次确认或被默认禁止。
七、三个月实测的工程经验
再看 Computer Use 的安全侧。Anthropic 在研究文章里专门讨论了 prompt injection:One concern they've identified is prompt injection—a type of cyberattack where malicious instructions are fed to an AI model, causing it to either override its prior directions or perform unintended actions that deviate from the user's original intent. Since Claude can interpret screenshots from computers connected to the internet, it's possible that it may be exposed to content that includes prompt injection attacks. 这件事在桌面场景里的危害比纯文本 Agent 大得多——一旦 Agent 看到了页面里嵌的恶意指令,就有可能直接点击恶意按钮、提交被污染的表单、打开钓鱼链接。Anthropic 给出的官方建议是低风险任务先试加新分类器监控,但工程社区更普遍的做法是:让 Agent 只能在沙箱里操作,任何对外网提交的请求都必须经过一个人写的、确定性的白名单过滤层。
结语:桌面自动化对 AI Agent 不诚实的根源
把视线拉回到工程基线。Computer Use 经过三个月实测,正在收敛出几条相对稳定的工程经验:第一,Computer Use 不能直接拿去做生产级无人值守,适合的是「人在环路中」的辅助执行——Agent 完成多数机械操作,关键决策由人来确认;第二,反幻觉层是必须的,不是可选项,任何不带事前验证与事后确认的 Agent 都会被截图到像素坐标这一范式反复坑;第三,可观测性是排查问题的唯一途径,没有 trace 的 Computer Use 几乎不可能在生产里长期运行;第四,沙箱与白名单是安全侧的最低门槛,任何把 Agent 直接放在用户真实桌面的方案都需要额外的安全审查。