当智能体推理出"点击提交按钮",真正的地狱才刚开始:它必须把这个意图落地到一个具体的像素坐标或元素句柄上。这一步在业界叫 action grounding(动作接地 / 动作定位)——智能体"看得见"≠"点得准"。本期对五种主流接地栈做横向实测,核心结论是:接地方案的选择,直接锁死了自主智能体的成功率上限。原生坐标栈在专业界面上六成空点,OmniParser 把 ScreenSpot Pro 拉到 39.5% 仍是 SOTA,而 DOM/无障碍树栈能把网页任务的 WebVoyager 干到 89.1%。接地不是工程细节,是自主体能力天花板。
自主智能体(Autonomous Agent)的执行链路可以粗分为三段:感知(看)→ 推理(想)→ 接地+执行(点)。前两段在 2026 年的模型能力下已相当成熟——VLM 能读懂屏幕,LLM 能规划下一步。真正卡脖子的,是最后那段"把语义意图翻译成可执行坐标"。
一段典型的失败日志读起来是这样的:模型说"点击右上角的提交按钮",然后吐出一个坐标 (1204, 738),而按钮真实边界是 (1180, 700, 90, 32)——中心点应是 (1225, 716)。偏了 20 像素,落在按钮外缘的空白区,整个点击静默失效,但智能体以为"点了",继续往下走,错误像雪崩一样级联。这就是本期标题"点空即断链"的由来:一次空点,断掉的不是一步,而是后面整条推理链的可信度。
更棘手的是,这个失血点极难被可观测性系统捕获——动作"成功执行了"(鼠标确实移动并点击了),只是点错了地方。它不像工具报错那样会抛异常,而是静默失败,这也是为什么接地必须单列为一个维度来实测。
| 接地栈 | 代表工具/方案 | 信号源 | ScreenSpot/基准表现 | 上手成本 | 失败主因 |
|---|---|---|---|---|---|
| ① 原生坐标栈 | Claude Computer Use / GPT-4o CUA | 像素坐标 | 依赖模型原生能力,专业界面六成空点 | 极低(零组件) | 高分屏缩放漂移、小元素难命中 |
| ② Set-of-Marks | Microsoft SoM (arXiv 2310.11441) | 编号标记 | 把"定位"降维成"选号",命中率跃升 | 中(需分割器) | 标记爆炸、遮挡原图 |
| ③ 检测解析栈 | OmniParser V2 (Microsoft) | 检测模型+SoM | ScreenSpot Pro 39.5% SOTA / ScreenSpot 73% | 中高(跑检测模型) | 嵌套/自绘控件漏检 |
| ④ DOM 选择器栈 | browser-use | DOM+可交互元素 | WebVoyager 89.1% | 低(pip 装即用) | 仅限网页、Shadow DOM/Canvas 失效 |
| ⑤ 无障碍树栈 | Stagehand / OSWorld a11y | a11y tree | 语义精确、跨控件稳定 | 低中 | 依赖页面做无障碍标注 |
一句话总览:网页里 DOM/a11y 栈碾压,任意界面里检测解析栈称王,原生坐标栈只配做"痛点教学"。
这是门槛最低的一栈:直接把截图喂给 VLM,让它吐出 {type: "mouse_move", coordinate: [x, y]}。Claude 的 computer_20250124 工具、GPT-4o 的 computer-use 都属此类。
# 原生坐标接地:模型直接吐坐标
resp = client.messages.create(
model="claude-sonnet-4-5",
tools=[{"type": "computer_20250124",
"display_width_px": 1920, "display_height_px": 1080}],
messages=[{"role": "user", "content": [
{"type": "text", "text": "点击提交按钮"},
{"type": "image", "source": {"type": "base64",
"media_type": "image/png", "data": shot}}]}])
# resp.action = {"type": "mouse_move", "coordinate": [1204, 738]}
# 真实按钮中心 (1225,716) → 偏 20px → 静默空点
优点:零额外组件、跨平台、纯视觉,任何能截图的地方都能用。致命缺点:高分屏缩放(坐标在 1920 与 Retina 逻辑像素间漂移)、小元素(<24px 图标几乎必空点)、无任何语义校验——模型"猜"对了语义却"点"偏了像素。
变现/训练营评估:适合作为"自主体第一课"的痛点引入器——让学员亲眼看到模型推理全对、却因坐标偏移而全盘失败,制造强烈认知反差,是极佳的钩子。但绝不能作为交付方案。
Microsoft 提出的 SoM(arXiv 2310.11441)思路极简却极强:先分割/检测出所有候选区域,给每块叠一个编号,让模型只回答"选几号"。这样"输出像素坐标"这个连续回归问题,被降维成了"输出编号"这个离散选择问题,命中率立刻跃升。
# SoM:分割 → 叠编号 → 模型选号 → 反查 box
masks = seg_model(screenshot) # 检测/分割所有区域
marked = overlay_numbered_marks(screenshot, masks) # 每块画数字
idx = vlm(marked, "哪个编号区域是提交按钮?只返回数字") # "7"
cx, cy = box_center(masks[int(idx)]) # 反查精确中心点
py.click(cx, cy)
优点:实现简单、效果立竿见影,是几乎所有现代 CUA 的底层思路之一。缺点:整屏候选区域可达上千个,编号爆炸导致 token 暴涨;标记会遮挡原图细节;密集界面(表格、菜单)标记重叠难辨;SoM 本身不产生候选,仍需一个前置的检测/分割器——这是它和栈③的分水岭。
变现评估:可做成一节"视觉提示工程"精品小课,但单独成产品价值有限,更适合作为栈③的教学铺垫。
栈②的瓶颈在于"谁来产生候选区域"。OmniParser(Microsoft)的回答是:微调一个专用检测模型,把 UI 截图"token 化"成结构化元素列表——每个元素带 id / bbox / content / type,再叠加 SoM 让 LLM 选号。
from omniparser import OmniParser
parser = OmniParser("microsoft/OmniParser-v2")
els = parser.parse(shot)
# [{"id":0,"bbox":[x,y,w,h],"content":"Submit","type":"button"}, ...]
idx = vlm(overlay_marks(shot, els), "选提交按钮的编号")
click(box_center(els[int(idx)]["bbox"]))
硬数据:V2 在 ScreenSpot Pro 上达 39.5%(SOTA),ScreenSpot 上 73%(GPT-4V 基线仅 16.2%),Mind2Web 跨域 42%,且较 V1 延迟降 60%。优点:不依赖 a11y/DOM,纯视觉,能泛化到画布、视频、自绘控件等任意 UI。缺点:ScreenSpot Pro 39.5% 意味着六成专业高分辨率界面接不准——这是当前纯视觉接地的物理上限;嵌套下拉、动态菜单仍漏检;检测模型有推理成本。
变现评估:最高。可包装成"私有 UI 接地模型定制"咨询(为某行业 ERP/SaaS 微调检测模型),或做"从 OmniParser 到自有 CUA"进阶训练营,客单价高、壁垒清晰。
只要场景是浏览器,DOM 栈几乎总是最优解。browser-use 的做法是:用 Playwright 取出 DOM + 可交互元素集合,给每个标 index,让 LLM 选 index 而非输出坐标——浏览器直接给出元素的"真值"边界,根本不需要猜像素。
# browser-use 式 DOM 接地
from browser_use import Agent
agent = Agent(task="登录后台后导出本月报表", llm=llm)
# 内部:抽取可交互元素 → 标 index → LLM 返回 index → Playwright 执行
await agent.run()
硬数据:browser-use 在 WebVoyager 上达 89.1%,远超纯视觉方案。优点:精确(浏览器给的真值)、快(无视觉模型推理)、省 token、可调试可重放。缺点:仅限网页;Shadow DOM、iframe、Canvas/WebGL 内的元素抓不到;动态 class 名易失效;强反爬站点会拦截自动化浏览器。
变现评估:中高。是"网页 RPA 训练营"的主力技术栈,企业需求明确(表单填写、数据抓取、后台操作自动化),变现路径最短。
无障碍树(accessibility tree, a11y)是浏览器和操作系统提供的语义化控件描述——每个节点带 name / role / bounds。Stagehand 用它替代原始 DOM("比 DOM 更稳定");OSWorld 的 screenshot_a11y_tree 方案则把 a11y 叠加到截图上再用 SoM 选号。
# Stagehand 式 a11y 接地
page = stagehand.page
# 内部:快照无障碍树 → 候选节点 → LLM 按 name/role 定位
await page.act("click the 'Submit' button")
优点:语义精确(role=button, name=Submit)、跨控件类型稳定、不依赖像素识别。社区出现了 A11y-Compressor(压缩臃肿的 a11y 树省 token)和 A11y-CUA Dataset(专门刻画"无障碍鸿沟")。缺点:强依赖页面/应用做了无障碍标注——大量网站和应用没做,a11y 树是空的;树臃肿需压缩;自绘控件仍缺语义。
变现评估:中。可做"无障碍友好 = 智能体友好"的交叉内容(既讲 AI agent 又讲无障碍合规),有政策与 DEI 叙事加持,差异化强。
把五栈放回基准看,会得到一个清醒的认知:
graph LR
A[屏幕截图] --> B{选择接地栈}
B -->|原生坐标| C1[像素回归<br/>专业界面六成空点]
B -->|SoM| C2[降维选号<br/>需前置检测器]
B -->|OmniParser| C3[检测解析<br/>ScreenSpot Pro 39.5%]
B -->|DOM 选择器| C4[网页真值<br/>WebVoyager 89.1%]
B -->|无障碍树| C5[语义精确<br/>依赖标注]
C1 --> D((动作执行))
C2 --> D
C3 --> D
C4 --> D
C5 --> D
D --> E{是否点空?}
E -->|是| F[❌ 静默失败<br/>错误级联]
E -->|否| G[✅ 推进下一步]
这两组数字共同指向一个结论:接地栈的选型,就是自主体成功率的天花板。 模型再强,配原生坐标栈也突破不了像素回归的物理极限;模型一般,配 DOM 栈却能在网页场景打到 89%。
单一接地栈都有死角,2026 年的明显演进是混合 + 固化。Skyvern 代表了这条路:用计算机视觉 + LLM 做一次性接地(视觉优先,不靠脆弱的选择器),但关键一步是——把接地的结果固化为可复用的可执行代码 / Workflow(其 "Observer" 模式能在导航过程中自动生成工作流)。
sequenceDiagram
participant U as 用户意图
participant V as 视觉+LLM接地
participant B as 浏览器(Playwright)
participant W as WorkFlow代码
U->>V: "每月导出报表"
V->>B: CV识别元素 → 首次点击(接地)
B-->>V: 执行结果
V->>W: 固化为可复用步骤
Note over W: 后续N次: 直接跑代码<br/>不再调用VLM/接地
W->>B: 批量复用执行
这条路的本质,是承认一次性视觉接地的成本和不确定性太高,于是用"贵的接地只做一次、之后白嫖代码"来摊薄成本。这也是为什么本期把它列为"演进方向"而非第六栈:它不是一种新的接地算法,而是把上述五栈的输出工程化沉淀的策略。对高频复用任务(如每月报表、批量表单),这条路的 ROI 远高于反复调用 VLM。
| 场景 | 首选接地栈 | 理由 |
|---|---|---|
| 纯网页自动化(表单/抓取/后台) | ④ DOM 栈(browser-use)或 ⑤ a11y 栈(Stagehand) | 浏览器给真值,89% 级成功率,省 token |
| 任意桌面应用 / 原生 GUI | ③ OmniParser + SoM | 不依赖 DOM/a11y,纯视觉泛化 |
| 高频复用任务(报表/批量操作) | 混合:视觉接地→Skyvern 式代码固化 | 一次性接地成本高,固化为代码后趋近于零 |
| CTA/教学/训练营入门 | ① 原生坐标栈做痛点钩子 → ② SoM → ③ OmniParser 进阶 | 制造"推理全对却点空"的认知反差 |
| 强反爬 / Canvas 重度站点 | ③ OmniParser 或 原生 CUA | DOM 抓不到时退回视觉 |
落地优先级建议:先按"是否浏览器场景"二分——是则走 DOM/a11y 栈(性价比之王),否则走 OmniParser + SoM;最后对高频任务加一层代码固化,把一次性接地的成本彻底摊平。
一句话收束:自主智能体的胜负,不在模型多聪明,而在"最后一像素"接得准不准。点空一次,断的是整条链——选对接地栈,就是给自主体续命。
[!tip] 51学通信知识星球 星主:爱卫生(微信:gprshome201101)——公众号「51学通信」创办者,19 年通信行业运维与讲师经验,著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书(各大电商平台有售)。 星球定位:深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域,主打运维岗位与信令分析。 当前规模:5200 篇主题 / 990 个回答,198 元/年。 加入福利:加入星球后请加爱卫生微信,拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题,另有群内分享。 AI 加持:51学通信知识星球已作为 skill 接入 WorkBuddy,使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例,做总结、找文档和 PPT 等场景全覆盖。
