Video2GUI: Synthesizing Large-Scale Interaction Trajectories for Generalized GUI Agent Pretraining
Video2GUI: Synthesizing Large-Scale Interaction Trajectories for Generalized GUI Agent Pretraining
原文链接:https://arxiv.org/abs/2605.14747 PDF:https://arxiv.org/pdf/2605.14747.pdf 作者:论文 PDF 摘取未完整保留作者头部,但正文可确认该工作围绕 WildGUI / Video2GUI 管线展开,并基于 Qwen2.5-VL 与 Mimo-VL 验证 发布日期:2026-05-20
速查卡
| 项目 | 内容 |
|---|---|
| 一句话总结 | Video2GUI 试图把海量无标注 GUI 教程视频自动变成结构化交互轨迹,再用这批轨迹给 GUI Agent 做大规模预训练。 |
| 大白话版 | 互联网上早就有无数“教你怎么用软件/网站/APP”的视频,这篇论文想做的,是把这些视频里的每一步点击、输入、切换页面,自动抽成 agent 可学习的训练数据。 |
| 核心数字 | 从 500M+ 视频元数据起步,筛到 ~20M 候选,再筛成 4.16M 高质量教程视频(300k 小时);最终产出 12.7M 轨迹、124.5M 截图,覆盖 1,500+ 应用与网站。 |
| 评级 | B+ — 数据工程非常狠,结果也硬,对 GUI agent 规模化训练是很对路的方向。 |
| 代码 | 论文承诺将发布 WildGUI 数据集与 Video2GUI pipeline。 |
| 关键词 | GUI agent、WildGUI、trajectory extraction、spatial grounding、ScreenSpot-Pro、OSWorld-G、AndroidWorld、POMDP |
核心 Insight
这篇论文最重要的 insight 很简单,但之前没人真正把它做大:
GUI agent 最大的瓶颈不是模型不会“点一下按钮”,而是缺训练数据。
更准确地说,是缺这三种同时满足的数据:
- 跨平台:网页、桌面、移动端都要有;
- 跨任务:搜索、表单填写、设置切换、购物、办公、娱乐都要有;
- 轨迹级:不仅知道屏幕上有什么,还知道“为了完成一个任务,人类先做了什么、再做了什么”。
过去常见 GUI 数据集要么量太小,要么平台太单一,要么只有高层描述,没有低层精确落点。结果就是:
- 模型可能会看图;
- 也可能会理解一句 instruction;
- 但真要跨站点、跨 APP、跨语言地完成长任务,它缺少足够丰富的人类操作先验。
Video2GUI 的新思路是:既然人工标 GUI 轨迹又慢又贵,为什么不直接把互联网上现成的教程视频拿来炼?
这件事以前难,是因为教程视频并不是干净标注:
- 画面压缩;
- 操作速度快;
- UI 元素很小;
- 视频时长长;
- 很多教程还带旁白、跳剪、插播和跨步骤依赖。
论文的贡献,不是单点上某个更准的 grounding 模型,而是搭了一整条“从原始视频到可训练轨迹”的工厂流水线。
为什么这个想法成立?
因为 GUI 教程视频天然就是一种人类 demonstration corpus:
- 它们覆盖真实应用而不是实验室 toy task;
- 它们包含逐步操作与意图解释;
- 它们跨语言、跨国家、跨平台自然分布;
- 最关键的是,这个数据池足够大,远大于人工标注数据。
所以 Video2GUI 的真正价值,不是再造一个 benchmark,而是把视频互联网变成 GUI agent 的预训练矿山。
方法详解
整体架构
整条管线可以概括为三段:
500M+ 原始视频元数据
→ 粗到细视频过滤
→ 高质量 GUI 教程视频池
→ 轨迹抽取(任务、步骤、时间戳、理由)
→ 动作空间 grounding(把动作落到具体坐标/框)
→ WildGUI 数据集
→ 两阶段训练(大规模预训练 + 高质量后训练)
→ GUI grounding / offline agent / online agent 评测
论文把 GUI agent 形式化成 POMDP:
其中:
- :高层用户指令空间
- :环境状态
- :原子 GUI 动作,如 click、type、scroll
- :观测,主要是屏幕截图等多模态反馈
- :状态转移
在第 步,动作被写成:
- :动作类型
- :动作参数,比如坐标、框、输入文本
这是全文一个很关键的抽象:Video2GUI 不只是采截图,它是想构造“可执行的 action trace”。
组件 1:Coarse-to-Fine Video Filtering
做什么: 从海量互联网视频里先筛出真正值得看的 GUI 教程。
第一层:元信息粗筛
作者从 500M+ YouTube 视频元数据起步。为什么先看 metadata 而不是直接下载视频?因为直接处理几亿视频几乎不可承受,存储就要数百 PB。
元数据包括:
- 标题
- 作者
- 上传时间
- 关键词
- 文本描述
然后作者用 DeepSeek-V3 给 10K 样本打相关性标签,再据此微调一个带分类头的轻量 Qwen2.5-7B,用来大规模跑 metadata relevance filtering。
这一轮之后,候选视频从 500M+ 压到大约 20M。
第二层:内容质量精筛
只靠 metadata 还不够,因为很多视频虽然标题看起来像教程,实际可能是:
- 软件介绍
- 广告片
- 吐槽/评论
- 录屏模糊、没讲清步骤
因此作者再做 video quality scoring,只取视频前 1 分钟,按三个维度打分:
- Topic relevance:是不是在认真教 GUI 操作;
- Instruction clarity:讲解是否清楚、步骤是否连贯;
- Screen recording quality:画面是否清晰、稳定、完整。
这一层使用支持文本/视频/音频的 omnimodal 模型做标注,论文明确说用 Gemini 3 Pro 标了约 200 小时视频,再微调轻量 Qwen2.5-Omni 作为 video scorer。
最后从 20M 候选里留下 4.16M 高质量教程视频,总计约 300,000 小时。
这一步的价值非常现实:如果前面不过滤,后面抽轨迹再强,喂进去的也会是垃圾监督。
组件 2:Trajectory Extraction
做什么: 把教程视频从“人类能看懂”变成“agent 能学会”的 instruction–trajectory 对。
给定一个视频 ,目标是抽出:
其中:
- :第 个任务的自然语言指令
- :对应交互轨迹
作者这里没有走传统 CV/IDM 那种低层视觉动作反推路线,而是直接用 Gemini-3-Pro 做长上下文轨迹抽取。
难点在于长视频超 context window,所以论文用了:
- 最长 4 分钟的 sliding window
- 外加历史 textual memory
也就是处理第 个片段 时,模型不仅看当前片段,还看前面片段已经抽出的结果 。
这个设计的价值在于,很多 GUI 任务天然跨片段:
- 前面登录
- 中间搜索
- 后面配置
如果没历史上下文,就会把长任务切碎成互相不连的局部动作。
更关键的是,作者要求模型输出的不是纯高层描述,而是每一步都带:
- 任务指令
- 时间戳
- 低层操作说明
- 动作背后的 reasoning / rationale
这让生成的数据不只是 imitation trace,也带了一层“为什么这么做”的弱 CoT 监督。
组件 3:Action Spatial Grounding
光有“点击搜索框”这种文字还不够,agent 训练需要知道具体点哪里。
但轨迹抽取阶段为了处理长视频,输入的视频是压缩过的,分辨率不够做精确像素定位。所以作者把 grounding 单独做成第三阶段。
对每一个动作时间戳 ,取三帧高分辨率图像:
然后让 Gemini-3-Pro 判断:
- 哪一帧最适合定位;
- 该动作的参数 是什么;
- 输出坐标点或 bounding box。
形式化为:
这里三帧输入的直觉很好理解:GUI 操作往往很快,单帧容易错过点击前后状态。前后各看半秒,可以提高对动态变化的判断。
论文还给了一个很关键的质检数字:
- 对 200 个随机抽样动作人工核验,
95%+参数化是准确的。
这说明这套自动 grounding 虽然不是完美标注,但已经到了能当大规模预训练监督的程度。
组件 4:WildGUI 数据集
最终产出的是 WildGUI。
| 数据集 | 平台覆盖 | 应用/网站数 | 轨迹数 | 图像数 | 平均步数 | 监督粒度 |
|---|---|---|---|---|---|---|
| MONDAY | Web only | - | 20K | 313k | 15.7 | High-level |
| GUI-360° | Desktop only | 3 | 13,750 | 105,368 | 7.6 | High-level |
| WildGUI | Web + Mobile + Desktop | 1,500+ | 12.7M | 124.5M | 9.7 | High + low |
这张表是全文最值钱的一张之一:WildGUI 在规模、平台多样性和监督粒度三件事上同时拉满。
训练策略
论文不是只做数据集,而是直接验证这批数据能不能训出更强 agent。
两阶段训练
Stage 1:Continual Pre-training
在 WildGUI 上做大规模持续预训练,设计三类目标:
- GUI grounding
- GUI action prediction
- GUI trajectory modeling
总损失为:
训练设置:
- 预训练 1 个 epoch
- 约
200Btokens - 最大视觉 token 数
4096 - 最大序列长度
32768
Stage 2:Post-training
再用人工质量更高的开源 GUI 数据做后训练,强化 instruction-following 和任务策略。
- 训练 3 个 epoch
- 约
15Btokens
工程配置
| 维度 | 细节 |
|---|---|
| 框架 | Megatron |
| 优化器 | AdamW,weight decay 0.05 |
| Stage 1 步数 | 24,000 |
| Stage 2 步数 | 2,000 |
| Stage 1 LM LR | 2.5e-5 → 1.0e-5 |
| Stage 1 Vision LR | 8.0e-6 固定 |
| Stage 2 LM LR | 1.0e-5 → 1.0e-6 |
| Stage 2 Vision LR | 8.0e-6 → 8.0e-7 |
| 集群 | 160 CPU cores, 512 GB RAM, 256 NVIDIA GPUs |
这说明作者没有在一个小规模实验上说故事,而是真按 foundation pretraining 的规模在做。
实验结果
主实验 1:GUI Grounding
| 模型 | ScreenSpot-Pro Avg | OSWorld-G Avg |
|---|---|---|
| Qwen2.5-VL-7B | 26.8 | 27.3 |
| Qwen2.5-VL-7B + WildGUI | 41.9 (+15.1) | 53.7 (+26.4) |
| Mimo-VL-7B | 41.2 | 54.7 |
| Mimo-VL-7B + WildGUI | 56.9 (+15.7) | 67.6 (+12.9) |
| Qwen3-VL-32B | 54.9 | 60.6 |
| Seed1.5-VL | 60.9 | 62.9 |
解读:
- 最醒目的不是绝对第一,而是“同一个 base model 经过 WildGUI 预训练后大幅抬升”;
- Qwen2.5-VL-7B 在 OSWorld-G 上直接从
27.3拉到53.7,这不是小幅优化,是能力层级跃迁; - Mimo-VL-7B + WildGUI 在 OSWorld-G 做到
67.6,超过 Qwen3-VL-32B 的60.6和 Seed1.5-VL 的62.9。
这说明 WildGUI 的价值不只是“多给点数据”,而是确实给了 GUI 领域缺失的那类数据。
主实验 2:Offline GUI Agent Evaluation
| 模型 | AndroidControl-Low Step SR | AndroidControl-High Step SR | CAGUI Step SR |
|---|---|---|---|
| Qwen2.5-VL-7B | 85.0 | 62.9 | 55.2 |
| Qwen2.5-VL-7B + WildGUI | 90.3 (+5.3) | 64.5 (+1.6) | 65.4 (+10.2) |
| Mimo-VL-7B | 87.9 | 65.6 | 63.4 |
| Mimo-VL-7B + WildGUI | 91.8 (+3.9) | 71.4 (+5.8) | 71.0 (+7.6) |
| UI-TARS-7B | 90.8 | 72.5 | 70.3 |
解读:
- WildGUI 对低层执行和高层规划都有效;
- 尤其在中文界面 CAGUI 上,Qwen2.5-VL 从
55.2拉到65.4,Mimo-VL 从63.4拉到71.0,说明这个数据源确实带来了跨语言泛化; - Mimo-VL + WildGUI 已经逼近甚至追上专门 GUI agent 模型 UI-TARS-7B 的部分指标。
主实验 3:Online GUI Agent Evaluation
论文给出了两个很关键的线上环境数字:
| 模型设置 | OSWorld SR | AndroidWorld SR |
|---|---|---|
| Base Model | 8.3 | 16.4 |
| Stage 2 Only | 10.4 | 23.3 |
| Stage 1 + Stage 2 | 12.3 | 31.9 |
这组结果非常有说服力,因为 WildGUI 本身是离线教程数据,结果却能显著迁移到在线开放环境:
- AndroidWorld 从
16.4到31.9,几乎翻倍; - OSWorld 也从
8.3到12.3。
这说明“看教程学会操作”这条路,至少在 agent 预训练上是成立的。
Scaling Law 迹象
作者还做了预训练 token 规模实验:从 0 到 200B。
- ScreenSpot-Pro:大约从
41%持续爬到峰值56.97 - OSWorld-G:大约从
55%持续爬到峰值67.66
而且到 200B token 还没明显饱和。
这点很重要,因为它说明 GUI agent 可能也会像语言模型一样,对“更大、更杂、更接近真实使用”的预训练数据继续吃收益。
消融实验
训练目标消融
论文在 Mimo-VL-7B 上做了 Table 4:
| 设置 | ScreenSpot-Pro | CAGUI | AndroidWorld |
|---|---|---|---|
| 完整方法 | 56.9 | 71.0 | 31.9 |
w/o Lground | 49.8 | 69.8 | 28.4 |
w/o Laction | 50.5 | 65.3 | 27.6 |
w/o Ltraj | 54.6 | 70.2 | 24.1 |
| w/o Stage 1 | 49.3 | 64.2 | 23.3 |
| w/o Stage 2 | 28.2 | 45.7 | 6.0 |
关键发现
-
Lground不能丢。 去掉后 ScreenSpot-Pro 从56.9掉到49.8,说明没有显式 grounding supervision,模型很难把动作落到正确位置。 -
Ltraj对长程任务最关键。 去掉后 AndroidWorld 从31.9掉到24.1,跌幅显著大于静态任务。这说明 trajectory modeling 确实在教模型维持历史状态和目标连续性。 -
两阶段训练缺一不可。
- 没 Stage 1,只剩高质量后训练,AndroidWorld
23.3 - 没 Stage 2,只靠 WildGUI 预训练,AndroidWorld 只剩
6.0
- 没 Stage 1,只剩高质量后训练,AndroidWorld
这说明论文的结论不是“数据越大越好”,而是:
- 大规模视频合成轨迹负责广覆盖先验;
- 高质量精标数据负责任务对齐。
复现评估
| 维度 | 评分(1-5) | 详细说明 |
|---|---|---|
| 数据可得性 | ⭐⭐⭐ | 论文承诺会放 WildGUI 和 pipeline,但当前仍以论文结果为主。 |
| 代码可得性 | ⭐⭐⭐ | 若 release 完整,复现主线会较清晰,但依赖多模型 API 与大规模工程。 |
| 算力需求 | ⭐⭐ | 200B token 级预训练、256 GPU,不是普通团队能轻松复刻。 |
| 工程复杂度 | ⭐ | 数据筛选、长视频解析、空间 grounding、预训练、后训练,全链条都重。 |
| 预期收益 | ⭐⭐⭐⭐⭐ | 对 browser agent、computer-use agent、RPA agent、移动端 agent 都很直接。 |
复现建议:
最可行的复现路线不是一上来造 1270 万轨迹,而是:
- 先做一个垂直场景子集,比如电商网站或 Android app;
- 复现三段式管线:metadata filter → trajectory extraction → grounding;
- 先训 grounding + action 任务;
- 再慢慢扩到 trajectory modeling;
- 最后再验证是否能迁移到 online benchmark。
批判性分析
局限性
-
视频教程不等于真实交互分布。 教程里的操作通常比真实用户更规范、更有目标、更少试错。模型学到的是“理想化操作路径”,未必等于真实用户会怎样乱点、回退、犯错。
-
LLM 标注管线本身会引入偏差。 轨迹抽取和空间 grounding 大量依赖 Gemini-3-Pro。它确实强,但一旦系统性误解某类 UI 模式,这种偏差会被大规模复制进数据集。
-
页面版本漂移问题没有根治。 教程视频中的 UI 版本可能已过时。对 GUI agent 来说,过时页面反而可能学出错误先验。
-
YouTube 分布可能天然偏英语世界和热门软件。 虽然论文强调跨语言与跨文化,但真实长尾企业软件、地区性政务网站、复杂后台系统,覆盖度可能仍不足。
改进方向
- 接入真实在线交互日志或 agent self-play 数据。 教程演示是单向的,缺少失败恢复与探索轨迹。
- 做版本感知与 UI 变更建模。 若能识别“同一任务但界面改版”,对泛化会更关键。
- 引入 task completion reward 继续在线强化。 WildGUI 适合作预训练底座,但真要提升 online success rate,还要和环境反馈闭环结合。
独立观察
- 这篇论文其实在做 GUI 领域的“互联网监督蒸馏”。和语言模型拿网页文本预训练很像,它把教程视频当成 GUI 世界的原始语料。
Ltraj对 AndroidWorld 的巨大影响也提醒一个关键事实:GUI agent 不只是视觉 grounding 问题,更是序列决策问题。谁只盯着单步点击准确率,谁就会在真实任务里翻车。- 作者选的是“先堆大规模弱监督,再用小规模高质量数据收口”的路线,这和 LLM 领域最成功的范式高度一致,所以它值得看好。
对领域的影响
短期看,Video2GUI 会把 GUI agent 社区的重点从“多做几个 benchmark”推向“先解决数据荒”。
中期看,WildGUI 这类数据集很可能会成为 browser agent / computer-use agent 的通用预训练底座之一。因为无论你最终做网页操作、桌面自动化还是手机代理,都离不开大规模真实操作示范。
长期看,这篇工作真正可能改变的是 agent 训练范式:
- 以前 GUI agent 主要靠人工精标;
- 以后更可能是“互联网弱监督预训练 + 小规模精标对齐 + 在线环境强化”。
如果这条路线继续成立,那 GUI agent 的扩展瓶颈就不再是“有没有人手标 10 万条轨迹”,而是“能不能把整个互联网的教程演示重新编译成 agent 经验”。Video2GUI 正在做这件事。