Esc
输入关键词开始搜索
News

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 最大的瓶颈不是模型不会“点一下按钮”,而是缺训练数据。

更准确地说,是缺这三种同时满足的数据:

  1. 跨平台:网页、桌面、移动端都要有;
  2. 跨任务:搜索、表单填写、设置切换、购物、办公、娱乐都要有;
  3. 轨迹级:不仅知道屏幕上有什么,还知道“为了完成一个任务,人类先做了什么、再做了什么”。

过去常见 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:

(U,S,A,O,T)(U, S, A, O, T)

其中:

  • UU:高层用户指令空间
  • SS:环境状态
  • AA:原子 GUI 动作,如 click、type、scroll
  • OO:观测,主要是屏幕截图等多模态反馈
  • TT:状态转移

在第 tt 步,动作被写成:

at=(τt,bt)a_t = (\tau_t, b_t)
  • τt\tau_t:动作类型
  • btb_t:动作参数,比如坐标、框、输入文本

这是全文一个很关键的抽象: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 分钟,按三个维度打分:

  1. Topic relevance:是不是在认真教 GUI 操作;
  2. Instruction clarity:讲解是否清楚、步骤是否连贯;
  3. Screen recording quality:画面是否清晰、稳定、完整。

这一层使用支持文本/视频/音频的 omnimodal 模型做标注,论文明确说用 Gemini 3 Pro 标了约 200 小时视频,再微调轻量 Qwen2.5-Omni 作为 video scorer。

最后从 20M 候选里留下 4.16M 高质量教程视频,总计约 300,000 小时。

这一步的价值非常现实:如果前面不过滤,后面抽轨迹再强,喂进去的也会是垃圾监督。

组件 2:Trajectory Extraction

做什么: 把教程视频从“人类能看懂”变成“agent 能学会”的 instruction–trajectory 对。

给定一个视频 VV,目标是抽出:

D(V)={(u(k),e(k))}k=1ND(V)=\{(u^{(k)}, e^{(k)})\}_{k=1}^{N}

其中:

  • u(k)u^{(k)}:第 kk 个任务的自然语言指令
  • e(k)e^{(k)}:对应交互轨迹

作者这里没有走传统 CV/IDM 那种低层视觉动作反推路线,而是直接用 Gemini-3-Pro 做长上下文轨迹抽取。

难点在于长视频超 context window,所以论文用了:

  • 最长 4 分钟的 sliding window
  • 外加历史 textual memory

也就是处理第 jj 个片段 SjS_j 时,模型不仅看当前片段,还看前面片段已经抽出的结果 D(S1:j1)D(S_{1:j-1})

这个设计的价值在于,很多 GUI 任务天然跨片段:

  • 前面登录
  • 中间搜索
  • 后面配置

如果没历史上下文,就会把长任务切碎成互相不连的局部动作。

更关键的是,作者要求模型输出的不是纯高层描述,而是每一步都带:

  • 任务指令
  • 时间戳
  • 低层操作说明
  • 动作背后的 reasoning / rationale

这让生成的数据不只是 imitation trace,也带了一层“为什么这么做”的弱 CoT 监督。

组件 3:Action Spatial Grounding

光有“点击搜索框”这种文字还不够,agent 训练需要知道具体点哪里。

但轨迹抽取阶段为了处理长视频,输入的视频是压缩过的,分辨率不够做精确像素定位。所以作者把 grounding 单独做成第三阶段。

对每一个动作时间戳 tt,取三帧高分辨率图像:

Ot={ot0.5s,ot,ot+0.5s}O_t = \{o_{t-0.5s}, o_t, o_{t+0.5s}\}

然后让 Gemini-3-Pro 判断:

  • 哪一帧最适合定位;
  • 该动作的参数 btb_t 是什么;
  • 输出坐标点或 bounding box。

形式化为:

bt=gϕ(ot0.5s,ot,ot+0.5s,τt)b_t = g_{\phi}(o_{t-0.5s}, o_t, o_{t+0.5s}, \tau_t)

这里三帧输入的直觉很好理解:GUI 操作往往很快,单帧容易错过点击前后状态。前后各看半秒,可以提高对动态变化的判断。

论文还给了一个很关键的质检数字:

  • 对 200 个随机抽样动作人工核验,95%+ 参数化是准确的。

这说明这套自动 grounding 虽然不是完美标注,但已经到了能当大规模预训练监督的程度。

组件 4:WildGUI 数据集

最终产出的是 WildGUI。

数据集平台覆盖应用/网站数轨迹数图像数平均步数监督粒度
MONDAYWeb only-20K313k15.7High-level
GUI-360°Desktop only313,750105,3687.6High-level
WildGUIWeb + Mobile + Desktop1,500+12.7M124.5M9.7High + low

这张表是全文最值钱的一张之一:WildGUI 在规模、平台多样性和监督粒度三件事上同时拉满。

训练策略

论文不是只做数据集,而是直接验证这批数据能不能训出更强 agent。

两阶段训练

Stage 1:Continual Pre-training

在 WildGUI 上做大规模持续预训练,设计三类目标:

  1. GUI grounding
  2. GUI action prediction
  3. GUI trajectory modeling

总损失为:

Lpretrain=Lground+Laction+LtrajL_{pretrain} = L_{ground} + L_{action} + L_{traj}

训练设置:

  • 预训练 1 个 epoch
  • 200B tokens
  • 最大视觉 token 数 4096
  • 最大序列长度 32768

Stage 2:Post-training

再用人工质量更高的开源 GUI 数据做后训练,强化 instruction-following 和任务策略。

  • 训练 3 个 epoch
  • 15B tokens

工程配置

维度细节
框架Megatron
优化器AdamW,weight decay 0.05
Stage 1 步数24,000
Stage 2 步数2,000
Stage 1 LM LR2.5e-5 → 1.0e-5
Stage 1 Vision LR8.0e-6 固定
Stage 2 LM LR1.0e-5 → 1.0e-6
Stage 2 Vision LR8.0e-6 → 8.0e-7
集群160 CPU cores, 512 GB RAM, 256 NVIDIA GPUs

这说明作者没有在一个小规模实验上说故事,而是真按 foundation pretraining 的规模在做。

实验结果

主实验 1:GUI Grounding

模型ScreenSpot-Pro AvgOSWorld-G Avg
Qwen2.5-VL-7B26.827.3
Qwen2.5-VL-7B + WildGUI41.9 (+15.1)53.7 (+26.4)
Mimo-VL-7B41.254.7
Mimo-VL-7B + WildGUI56.9 (+15.7)67.6 (+12.9)
Qwen3-VL-32B54.960.6
Seed1.5-VL60.962.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 SRAndroidControl-High Step SRCAGUI Step SR
Qwen2.5-VL-7B85.062.955.2
Qwen2.5-VL-7B + WildGUI90.3 (+5.3)64.5 (+1.6)65.4 (+10.2)
Mimo-VL-7B87.965.663.4
Mimo-VL-7B + WildGUI91.8 (+3.9)71.4 (+5.8)71.0 (+7.6)
UI-TARS-7B90.872.570.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 SRAndroidWorld SR
Base Model8.316.4
Stage 2 Only10.423.3
Stage 1 + Stage 212.331.9

这组结果非常有说服力,因为 WildGUI 本身是离线教程数据,结果却能显著迁移到在线开放环境:

  • AndroidWorld 从 16.431.9,几乎翻倍;
  • OSWorld 也从 8.312.3

这说明“看教程学会操作”这条路,至少在 agent 预训练上是成立的。

Scaling Law 迹象

作者还做了预训练 token 规模实验:从 0200B

  • ScreenSpot-Pro:大约从 41% 持续爬到峰值 56.97
  • OSWorld-G:大约从 55% 持续爬到峰值 67.66

而且到 200B token 还没明显饱和。

这点很重要,因为它说明 GUI agent 可能也会像语言模型一样,对“更大、更杂、更接近真实使用”的预训练数据继续吃收益。

消融实验

训练目标消融

论文在 Mimo-VL-7B 上做了 Table 4:

设置ScreenSpot-ProCAGUIAndroidWorld
完整方法56.971.031.9
w/o Lground49.869.828.4
w/o Laction50.565.327.6
w/o Ltraj54.670.224.1
w/o Stage 149.364.223.3
w/o Stage 228.245.76.0

关键发现

  1. Lground 不能丢。 去掉后 ScreenSpot-Pro 从 56.9 掉到 49.8,说明没有显式 grounding supervision,模型很难把动作落到正确位置。

  2. Ltraj 对长程任务最关键。 去掉后 AndroidWorld 从 31.9 掉到 24.1,跌幅显著大于静态任务。这说明 trajectory modeling 确实在教模型维持历史状态和目标连续性。

  3. 两阶段训练缺一不可。

    • 没 Stage 1,只剩高质量后训练,AndroidWorld 23.3
    • 没 Stage 2,只靠 WildGUI 预训练,AndroidWorld 只剩 6.0

这说明论文的结论不是“数据越大越好”,而是:

  • 大规模视频合成轨迹负责广覆盖先验;
  • 高质量精标数据负责任务对齐。

复现评估

维度评分(1-5)详细说明
数据可得性⭐⭐⭐论文承诺会放 WildGUI 和 pipeline,但当前仍以论文结果为主。
代码可得性⭐⭐⭐若 release 完整,复现主线会较清晰,但依赖多模型 API 与大规模工程。
算力需求⭐⭐200B token 级预训练、256 GPU,不是普通团队能轻松复刻。
工程复杂度数据筛选、长视频解析、空间 grounding、预训练、后训练,全链条都重。
预期收益⭐⭐⭐⭐⭐对 browser agent、computer-use agent、RPA agent、移动端 agent 都很直接。

复现建议:

最可行的复现路线不是一上来造 1270 万轨迹,而是:

  1. 先做一个垂直场景子集,比如电商网站或 Android app;
  2. 复现三段式管线:metadata filter → trajectory extraction → grounding;
  3. 先训 grounding + action 任务;
  4. 再慢慢扩到 trajectory modeling;
  5. 最后再验证是否能迁移到 online benchmark。

批判性分析

局限性

  1. 视频教程不等于真实交互分布。 教程里的操作通常比真实用户更规范、更有目标、更少试错。模型学到的是“理想化操作路径”,未必等于真实用户会怎样乱点、回退、犯错。

  2. LLM 标注管线本身会引入偏差。 轨迹抽取和空间 grounding 大量依赖 Gemini-3-Pro。它确实强,但一旦系统性误解某类 UI 模式,这种偏差会被大规模复制进数据集。

  3. 页面版本漂移问题没有根治。 教程视频中的 UI 版本可能已过时。对 GUI agent 来说,过时页面反而可能学出错误先验。

  4. YouTube 分布可能天然偏英语世界和热门软件。 虽然论文强调跨语言与跨文化,但真实长尾企业软件、地区性政务网站、复杂后台系统,覆盖度可能仍不足。

改进方向

  1. 接入真实在线交互日志或 agent self-play 数据。 教程演示是单向的,缺少失败恢复与探索轨迹。
  2. 做版本感知与 UI 变更建模。 若能识别“同一任务但界面改版”,对泛化会更关键。
  3. 引入 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 正在做这件事。