Summary

WindowsAgentArena: Evaluating Multi-Modal OS Agents at Scale

  • 核心: 把 OSWorld 框架移植到真实 Windows 11 OS 上,构建 154 个跨应用任务的 agent benchmark,并通过 Azure 容器化 VM 实现”全 benchmark 20 分钟跑完”的并行评估
  • 方法: Docker + QEMU/KVM 封装 Win11 VM;任务 JSON 包含 setup script + 自动化 reward function;同时发布 Navi agent,用 SoM (Set-of-Marks) 把 UIA accessibility tree、OCR、icon detector、Omniparser 多源信息叠加到截图上喂 VLM
  • 结果: 最佳 Navi 配置 (UIA + Omniparser + GPT-4V-1106) 取得 19.5% 成功率,远低于人类 74.5%。Office / Windows Utils 几乎全 0%;Web Browser、Windows System 相对最好
  • Sources: paper | website | github
  • Rating: 2 - Frontier(Windows OS agent 评测的代表性 benchmark + 可 scale 的云端评估基础设施,被后续 OS agent 工作作为重要参考,但 154 任务规模和 zero-shot-only 结果限制其成为 de facto 标准)

Key Takeaways:

  1. OS-level benchmark 的价值在 task realism + scalable eval:跟 OSWorld 区别不在 OS 选择本身,而在用 Azure ML job 把每个 task 分发到独立 VM,把单机串行的”几天”压到 20 分钟。
  2. SoM 质量是 zero-shot VLM agent 性能的关键瓶颈:单纯像素 OCR/icon 检测 vs 加上 UIA accessibility tree,GPT-4V 的成功率从 12.5% 涨到 19.5%(相对提升 57%)。“看得懂屏幕” 比 “推理强” 更稀缺。
  3. Visual-language mis-alignment 是常见 failure mode:agent 文本说 “click 红色”,但选了 SoM ID 对应的黄色——VLM 训练分布里没有”上百个小标号的截图”这种数据。
  4. Generalist VLM 远未饱和:19.5% vs 74.5% human 的 gap,跟 OSWorld / AndroidWorld 的 gap 量级一致——说明 OS agent 的瓶颈不在 OS 选择,而在底层模型的 grounding 能力。

Teaser. WindowsAgentArena 的整体框架与多任务覆盖范围。


1. Motivation 与定位

现有 agent benchmark 有两个 pain point:

  1. Modality / domain 受限:text-only Q&A、web navigation、coding 各自为政,跟人类真实跨应用工作流脱节。
  2. 评估慢:multi-step 任务串行跑完一遍 benchmark 要 days。OS 不是物理仿真,没法”加速时钟”——多个进程异步运行,仿真速度等于 wall clock。

OSWorld 已经把”真实 OS”塞进 benchmark,但聚焦 Linux,且并行只能在单机内开多 VMware VM(受单机内存/CPU 限制,最多个位数)。Windows 占 73% 桌面市场份额却没人做。WindowsAgentArena (WAA) 的定位就是 Windows 版 OSWorld + Azure-native 并行

❓ “Windows 占 73% 市场” 作为研究 motivation 有点弱——真正的技术 motivation 应该是 Windows 上有 UIA accessibility tree 这种结构化信号,跟 Linux/macOS 的 a11y stack 行为差异大。论文没强调这点。

2. 环境设计

2.1 任务形式化(POMDP)

标准的 POMDP 。Agent 在每一步看到 ,输出 ,直到 DONE/FAIL 或超过 。Reward 在终止时返回 [0,1]:binary 任务返 0/1,相似度任务返小数。

2.2 Observation Space

Agent 每步能看到:

  • 任务指令 + clipboard 内容(文本直接拷,图像用 VLM 生成 caption)
  • Foreground / background 窗口标题(pygetwindow 抓取)
  • 当前屏幕截图(1440×900 RGB)+ 上一步截图
  • UIA tree(pywinauto 抓取,不直接喂给 agent,而是用来生成 SoM 标记)

2.3 Action Space

两套并存:

  • Free-form pyautogui / Python 代码执行:最大灵活性。
  • Computer class wrapper:把 mouse / keyboard / clipboard / OS / window manager 封装成结构化函数。关键能力是 mouse.move_id(id)——直接按 SoM 标号交互,不用算绝对像素坐标,大幅降低 grounding 难度。

Table 1. Computer class actions.

GroupFunctions
computer.mousemove_id(id), move_abs(x,y), single_click(), double_click(), right_click(), scroll(direction)
computer.keyboardwrite(text), press(key)
computer.clipboardcopy_text(text), copy_image(image), paste()
computer.osopen_program(program)
computer.window_managerswitch_to_application(window)

2.4 Reward:Execution-based

跟 OSWorld 一样用后处理脚本判断完成:读系统/app settings、对比文件内容、或动态调用 web API 验证。关键是不要求 agent 复刻人类轨迹,只看终态——这给 agent 解题的自由度。

3. 任务 Curation

154 个任务,覆盖典型 Windows 用户工作流:

  • Office: LibreOffice Calc / Writer
  • Web Browser: Microsoft Edge, Google Chrome
  • Windows System: File Explorer, Settings
  • Coding: VS Code
  • Media & Video: VLC Player
  • Windows Utils: Notepad, Clock, Paint

任务来源:约 2/3 从 OSWorld Linux 任务移植(改文件路径、把 bash 改成 PowerShell、Edge/Chrome 反向代理改造、修订 evaluator 函数);剩余 1/3 从零创建覆盖 Windows-specific 应用。

任务定义:每个任务一份 JSON:

  • 自然语言指令(“Make the line spacing of first two paragraphs into double line spacing”)
  • Setup script(下载文件、打开应用)
  • Evaluator 元数据 + Python 比对脚本

人类基线:74.5% 成功率,最高 Windows Utilities 91.7%,最低 VLC Player 42.8%(VLC 的 UI 本身对人都不友好)。

4. Deployment Infrastructure

WAA 真正的工程贡献在这。

架构

  • 外层:Docker container(windowsarena/winarena)
  • 内层:QEMU + KVM 跑 Windows 11 VM(adapted from dockur/windows)
  • VM 内:Python Flask server,作为 client 进程和 OS 之间的桥梁——接收命令、在 VM 内执行、返回 observation

Local 部署:WSL 或 Ubuntu。把 OS image 和 code 通过 volume mount 进 container,避免每次 rebuild。

Cloud 部署:用 Azure Machine Learning jobs 拉起 N 个 compute instance,每个跑一个 task。Win11 snapshot 和日志存在 Azure Blob Store。任务平均分发到 worker,结束后聚合结果

对比 OSWorld 的并行方式:OSWorld 在单机起多个 VMware VM——受单机资源限制;WAA 把 worker 数量上限抬到等于任务数。论文报告全 154 任务并行评估只需约 20 分钟(Appendix A.7)。

Security:Docker 隔离 + VM 端口不暴露公网,所有通信走本地。这对 OS agent 这类有 destructive action 能力的系统是必要的。

❓ 一个隐性成本:Win11 license 限制让 Microsoft 没法发预制 snapshot——用户得自己从 Microsoft 服务器拉 trial image,跑脚本配置。这降低复现性,且 trial 过期后任务初始状态会不会受影响没说。

5. Navi Agent 设计

5.1 输入处理

Navi 是 zero-shot prompted VLM agent,用 chain-of-thought prompting。每步喂给模型:

  • 任务指令 + Computer class 描述 + action history + clipboard + memory block
  • 当前截图(带 SoM 标注) + 上一步截图

SoM 来源 5 种,可组合:

  • UIA tree parsing:从 Windows accessibility tree 抽可见元素
  • DOM tree parsing:仅浏览器内
  • OCR:proprietary(OneOCR)或 open(Tesseract)
  • Icon / image detection:proprietary 或 Grounding DINO
  • Omniparser:Microsoft 自家的多元素检测 + icon captioning 模型

输出格式:先回答几个屏幕理解 + 长程规划相关的问题,再输出下一步的 Python action 代码。

Figure. Set-of-Marks 标注示例(proprietary 像素模型版本):OCR 蓝色 / icon 绿色 / image 红色。

Figure. Omniparser 版 SoM:text 蓝色 / icons 绿色,附带 icon caption。

5.2 主结果

Table 2. Navi 在 WindowsAgentArena 上的成功率(按 SoM 配置和 base model 分组,节选 GPT-4V-1106 行)。

SoM 配置UIAModelOfficeWebWinSysCodingMediaUtilsTotal
Pytesseract+DOM+GroundingDINOGPT-4V-11060.0%10.3%21.3%12.5%9.8%0.0%8.6%
Pytesseract+DOM+GroundingDINOGPT-4V-11060.0%13.3%25.0%13.0%28.9%8.3%13.1%
OneOCR + proprietaryGPT-4V-11062.3%13.7%16.7%13.6%19.3%8.3%11.3%
OneOCR + proprietaryGPT-4V-11060.0%26.3%16.7%17.4%19.3%0.0%13.1%
OmniparserGPT-4V-11062.3%23.6%20.8%8.3%20.0%0.0%12.5%
OmniparserGPT-4V-11060.0%27.3%33.3%27.3%30.3%8.3%19.5%
Human75.8%76.7%83.3%68.4%42.8%91.7%74.5%

(完整 Table 4 还覆盖 Phi3-V / GPT-4o-mini / GPT-4o,结论一致:模型越大越好;GPT-4V-1106 整体最强,比 GPT-4o 在 Omniparser+UIA 上几乎翻倍——9.4% vs 19.5%。)

Figure. Navi 成功完成”将网页保存为 PDF 到桌面”任务的轨迹示例。

5.3 关键 Findings

  1. Generalist zero-shot VLM 远未饱和:19.5% vs 74.5%。Office / Windows Utils 任务接近 0%——这些任务依赖键盘快捷键和小图标,VLM 都不擅长。
  2. SoM 质量是性能上限:加 UIA marker 在 Omniparser 上让 GPT-4V 提升 57%(12.5% → 19.5%)。代价是 UIA tree 查询慢——复杂屏幕可能要几秒到几分钟。
  3. Visual-language mis-alignment 是常见 failure mode:agent 文本输出 “move to red”,但选了对应黄色调色板的 SoM #59。这是 VLM 训练数据分布里缺少 “上百个小标号的截图” 的直接后果。Omniparser 的优势很大程度来自 icon captioning——直接给 agent 提供”标号 → 文本含义”的映射。
  4. Phi3-V 在长上下文时容易 hallucinate:小模型的规划能力跟不上 OS 任务的长度。

5.4 Mind2Web 验证

为了证明 Navi 不是只在自己 benchmark 上 work,作者把它跑到 Mind2Web。

Table 3. Navi 在 Mind2Web 上的结果。

ModalityModelInputsElement AccOp F1Step SR
Text-OnlyGPT-4oDOM26.3%69.1%24.6%
MultimodalGPT-4oSoM (DOM + Pixel)37.4%79.2%35.1%
MultimodalGPT-4oSoM (Pixel)40.6%84.5%38.3%
MultimodalGPT-4oSoM (DOM)38.7%81.1%36.9%
MultimodalGPT-4oImage+SoM (DOM)42.8%84.3%40.7%
MultimodalGPT-4oImage+SoM (DOM + Pixel)47.3%85.8%45.2%
SeeActGPT-4VImage+SoM (DOM)44.3%71.8%38.3%

结论:Image + SoM(DOM+Pixel) 组合最好,跟 WAA 上 UIA + 像素混合的结论同构——多源 grounding 信号融合是 SoM agent 的通用 pattern。

6. Discussion 中作者自己的开放问题

  • Full autonomy vs human-in-the-loop:让 agent 主动 ask user clarification 可能提升成功率,但 benchmark 评估变难。
  • Generalist vs specialized agents:“agent of agents”——通用大模型协调 fine-tuned domain sub-agent。
  • Imitation vs RL:OS agent 缺 ground-truth action data,类似 robotics。WAA 的 reward function 天然适合做大规模 RL 数据生成。
  • Action space 设计:free-form code vs predefined skill library 是开放问题——后者执行精度高但限制 agent 推理空间。

关联工作

基于

  • OSWorld:WAA 直接 fork OSWorld 的任务结构和 evaluator 设计,2/3 任务从 Linux 移植。OSWorld 是 WAA 的最重要前置工作。
  • Set-of-Marks (SoM) prompting:把”在图上画标号 + 让 VLM 用标号交互”作为 grounding 范式,WAA 的 Navi 是 SoM 在 OS-level 任务上的扩展。
  • dockur/windows:Docker 镜像用 QEMU/KVM 跑 Windows VM 的开源方案,WAA 部署的底层依赖。

对比

  • AndroidWorld:同期的 mobile OS benchmark,思路相同(real OS + execution-based reward)。
  • WebArena / VisualWebArena / WorkArena:纯 web domain 的交互式 benchmark;WAA 跨 web + desktop apps 是 superset。
  • SeeAct:Mind2Web 上的强 baseline,Navi 在 Mind2Web 上的对比对象。

方法相关

  • Omniparser:Microsoft 自家的屏幕解析模型(OCR + icon detection + caption),是 Navi 最佳配置的关键组件。
  • Grounding DINO:开源 icon detection 替代品。
  • GPT-4V / GPT-4o / Phi3-V:base VLM,决定 agent 推理上限。
  • UFO / OS-Copilot / CC-Net / CogAgent:同期或更早的 OS / desktop agent 工作。

论文点评

Strengths

  1. 工程价值清晰:Azure-native 并行 + 容器化 VM 把 OS agent 评估从 days 压到 20 minutes,这是 OSWorld 的实质改进,对所有做 OS agent 的人都有用。
  2. SoM 多源融合做了系统的 ablation:不是单纯刷 SOTA,而是把 OCR / icon / DOM / UIA / Omniparser 排列组合都跑了一遍,给后人一张明确的”什么 grounding 信号有用”的地图。
  3. 诚实报告 failure modes:visual-language mis-alignment、Phi3-V hallucination、Office 类任务接近 0%——这些 negative result 比 main number 信息量更大。
  4. 跨 benchmark 验证:在 Mind2Web 上重复了”多源 grounding 信号融合最好”的结论,说明 finding 不是 WAA-specific artifact。

Weaknesses

  1. 任务规模偏小:154 个任务 vs OSWorld 369 个、WorkArena 18000+。给定 zero-shot agent 的高方差,这个规模做 model comparison 的统计置信度不高(每个 cell 平均才 ~25 任务)。
  2. 没有 agentic RL 实验:一直在讨论”WAA 适合做 RL data generation”,但论文里全是 zero-shot prompted result。这是最显然的 follow-up 但没做。
  3. Navi 是 reference baseline,不是 contribution:把 Navi 称作”new agent”有点 overclaim——核心是 SoM prompting + chain-of-thought,跟 SeeAct 思路同构。真正的 novelty 在 environment,不在 agent。
  4. Win11 license 限制损害复现性:用户得自己从 Microsoft 拉 trial image。trial 过期、Windows update 改 UI 都可能让历史结果不再可复现——这是基于 commercial OS 做 benchmark 的根本困境。
  5. 没讨论”过 benchmark”导致的 hill-climb 风险:154 个任务规模下,如果未来 agent 团队针对每个任务做 prompt engineering 或 fine-tuning,benchmark 很快被 overfit。

可信评估

Artifact 可获取性

  • 代码: inference + 基础设施开源(agent loop、Docker、Azure deployment scripts 全公开);training 不适用——Navi 是 prompted agent
  • 模型权重: Navi 本身只是 prompt + scaffolding;底层 VLM (GPT-4V/4o) 闭源;Omniparser 已开源(2024-10-23 Microsoft 单独 release)
  • 训练细节: 不适用(无训练);prompt 全文在 Appendix D
  • 数据集: 154 个任务 JSON 配置全部开源;Win11 VM image 因 license 问题用户需自行下载 trial

Claim 可验证性

  • “154 个任务可在 ~20 分钟内并行跑完”:基础设施开源,Appendix A.7 给了 Azure VM 类型,可独立验证
  • “UIA + Omniparser + GPT-4V-1106 达 19.5%“:Table 4 完整 ablation 展示数据点,配置和 prompt 都开源
  • ⚠️ “Navi 在 Mind2Web 上 SOTA”:只跟 SeeAct 比较,没对比同期更新的 web agent(如 WebVoyager、AutoWebGLM),SOTA claim 范围窄
  • ⚠️ “Human 74.5%“:人数、被试招募方式、是否给操作时长上限等没披露细节,作为 upper bound 有不确定性
  • ⚠️ “OSWorld 单机并行 limited to single digits”:没给具体数字证据,更像 design rationale 而非测量结果

Notes

  • WAA 的真正贡献是 infrastructure,不是 agent。它把 “OS agent benchmark 怎么做才能 scale” 这个问题做出了一个 reference answer:容器化 VM + 云端 worker pool。这套基础设施可以直接迁移到任何需要”在真实 OS 里跑 multi-step task” 的工作(包括 RL 训练数据生成)。
  • 对我来说最有用的 takeaway 是 SoM grounding 的 ablation——accessibility tree 信号(UIA / DOM)跟 pixel-based 检测是互补的,融合后才能逼近 ceiling。这个原则对设计 GUI agent 的 perception stack 是直接可用的。
  • 一个值得追问的方向:OS agent 的 visual-language mis-alignment 问题能否通过 in-context fine-tuning 解决? 论文把这归因到 VLM 训练分布缺乏”上百个小标号的截图”——那么用 WAA 自己生成的 trajectory 做 SFT data 应该能补上。这是个明显的 follow-up。
  • 19.5% 这个数字在 2024-09 是 reasonable 的,但放到 2026 应该已经被远超。值得追踪后续在 WAA 上的 SOTA 进展(比如 Anthropic computer use、UI-TARS / UI-TARS-2Agent S2 系列)来评估 OS agent 这两年的真实进步幅度。

Rating

Metrics (as of 2026-04-24): citation=124, influential=19 (15.3%), velocity=6.39/mo; HF upvotes=48; github 856⭐ / forks=96 / 90d commits=0 / pushed 10d ago

分数:2 - Frontier 理由:WAA 作为 Windows OS agent 的代表性 benchmark,提供了可复现的云端并行评估基础设施(Strengths #1)和系统的 SoM ablation(Strengths #2),被后续 OS/GUI agent 工作作为重要参考;但相较 OSWorld 已成为 Linux OS agent 的 de facto 标准(引用数与社区采纳显著更高),WAA 任务规模偏小(Weaknesses #1)、Win11 license 损害复现性(Weaknesses #4),在社区采纳度上尚未达到 Foundation 档,更符合 Frontier 定位——重要参考但非必读必引的奠基工作。