人工标注太贵,合成数据不够好?看OS-Genesis如何破解数据困局

发布于 2025-5-19 01:59
浏览
0收藏

从1920年的小说《R.U.R》到《钢铁侠》中的JARVIS,在过去的一个世纪里,人们一直梦想着构建能够自动化日常工作的Digital Agents(数字代理)。如今,随着视觉语言模型(VLMs)的蓬勃发展,构建这样的Agents成为了可能。

1-1 Agent for GUI Control

想要构建一个有效的Computer Use Agents,其必须拥有两个能力:(1)Planning能力,即规划Computer-use任务的能力,能将用户给定的(高阶)指令分步划分为多个子目标**(2)Action能力**,即根据当前目标,执行相应的动作(比如点击,输入,滑动等等)。在现有的研究中,典型的有**(1)以OS-Copilot和UFO-Agent为代表的GUI agents**,它们通过调用API和a11ytree来与数字世界(如手机、网站)中的GUI进行交互。(2)以SeeClick,OS-ATLAS为代表的Action model(动作模型),根据用户的指令执行动作,比如预测GUI中的元素坐标并进行点击等动作。这些工作虽已有所成效,但在实际应用中依然有局限性,前者依赖GPT4o等闭源模型,只能通过提示词交互且成本较高;后者需要在动作模型外搭配一个planner模型一起使用。 从实际应用角度,构建一个统一的、基于开源模型的GUI Agent将会对通用的GUI控制大有裨益。然而,想要端到端地完成这类Agent构建绝非易事,其最大的瓶颈便是训练数据。

1-2 Data Bottleneck

在构建高质量的GUI agent时,GUI轨迹数据能最有效地让agent学习如何完成任务,其数据稀缺性是当前digital agent领域最关键挑战之一。以下是一个典型的GUI轨迹数据示例,它包括以下部分:

  • 高阶指令:明确规定任务目标,例如“将菜单应用中的‘Avocado Toast with Egg’标记为收藏”。
  • 低阶指令:分解为具体的操作步骤,例如“点击‘Avocado Toast with Egg’以查看更多选项”。
  • 动作:与低阶指令相关的具体操作,如“CLICK [Avocado Toast with Egg]”。
  • 状态:包括执行动作前后的可视化和文本化表示,例如屏幕截图和GUI的a11ytree结构。

人工标注太贵,合成数据不够好?看OS-Genesis如何破解数据困局-AI.x社区

现有的轨迹数据采集方法通常依赖于人工监督或基于预定义任务(Task-Driven)的合成数据生成。这些方法在实际应用中存在以下局限性:

  • 人工采集的过高成本:人工标注轨迹数据需要大量的人力资源,不仅需要手动设计高阶指令,还需逐步记录每一步操作。这使得数据收集过程成本高昂且效率低下。
  • 合成数据的局限性:基于模型生成的轨迹数据虽然可以缓解人工标注的成本问题,但通常依赖于预定义的高阶任务。这种方法不仅限制了生成数据的多样性,还容易导致与真实环境的差距。特别是在中间步骤出错或任务目标/环境不匹配时,生成的轨迹可能是不完整或不连贯的。

因此,如何在成本可控的情况下,有效地构建GUI Agents轨迹是一个非常重要的课题。在此动机下,本文提出了OS-Genesis:一套无需人工监督的高质量GUI数据合成框架。

方法

OS-Genesis的在数据构建上的核心思想是:通过先探索性地交互GUI环境,捕捉每一步动作及其前后状态变化。

人工标注太贵,合成数据不够好?看OS-Genesis如何破解数据困局-AI.x社区


然后基于这些变化逆向生成高质量的低阶指令(Low-level instruction,比如’点击Chrome APP’),再根据环境导出一个高阶指令(High-level instruction,比如’添加日程:看机器之心推文’)。随后,让模型执行这一合成的指令,此过程完全摆脱了人工干预和任务预定义的限制,实现了GUI轨迹数据生成的高效性和多样性。我们认为,本工作可以为构建通用的GUI agent提供新的思路,其具体方法如下所示

2-1 反向任务合成

OS-Genesis的核心是反向任务合成(Reverse Task Synthesis),它使得我们在构建GUI轨迹数据时摆脱需要人工/机器预定义任务(pre-defiend task)的局限。其流程如下所示

人工标注太贵,合成数据不够好?看OS-Genesis如何破解数据困局-AI.x社区


• 动作记录与状态捕捉(Record)

在没有预定义任务的情况下,OS-Genesis通过在GUI环境中系统性地执行基本动作(例如CLICK、TYPE、SCROLL等),生成大量的三元组数据 ⟨状态前,动作,状态后⟩,即 ⟨spre, action, spost⟩。这些三元组记录了每个动作对环境状态的影响,为后续的任务合成提供了原始数据。

低阶指令生成(Low-Level Isntruction)

利用GPT-4o模型,将每个三元组 ⟨Screen1, Action, Screen2⟩ 转化为描述具体操作的低阶指令(Low-level Instruction)。例如,若动作CLICK使某菜单展开,低阶指令可能为“点击下拉菜单以显示选项”。

高阶任务生成(High-Level Isntruction)

在低阶指令的基础上,OS-Genesis进一步生成高阶指令(High-level Instruction)。高阶指令通过结合低阶步骤和当前GUI环境,描述了一个更为抽象且目标明确的任务,例如“配置应用程序设置”。这种从低阶到高阶的逐步生成方法不仅确保了指令的逻辑一致性,还能最大化利用GUI环境中的动态特性。

通过上述反向任务合成,OS-Genesis可以在没有人工干预的情况下构建多样化、语义丰富的任务集合,显著提升了数据生成的效率和质量。

2-2 轨迹构建与奖励模型

反向任务合成生成的高阶指令随后被用作探索GUI环境的起点,进一步构建完整的轨迹数据(Trajectory)。为了确保生成轨迹的质量,OS-Genesis引入了一个奖励模型(Trajectory Reward Model, TRM),对生成的轨迹进行质量评估和筛选。以下是轨迹构建与奖励模型的详细流程:

  • 轨迹执行

利用反向任务合成生成的高阶指令,GUI agent会执行一系列动作以完成任务。每条轨迹由以下内容组成:高阶指令、低阶指令、动作序列以及状态(包含截图和a11ytree)。

  • 轨迹奖励模型(Trajectory Reward Model)

为避免低质量或不完整轨迹对模型训练的负面影响,OS-Genesis使用TRM对每条轨迹分配一个奖励分数。奖励分数基于以下两个指标:

完成度(Completion):衡量一条GUI轨迹是否成功完成High-level 任务,包括每个步骤的正确性和逻辑连贯性。

一致性(Coherence):评估轨迹的逻辑是否恰当,确保动作序列能够高效地实现任务目标。

  • Reward-driven的数据筛选方法

根据奖励分数,轨迹数据会被优先用于模型训练。与传统的二元过滤方法(即抛弃执行失败的任务)不同,TRM允许部分不完整但具有探索价值的轨迹保留在数据集中,从而最大化地利用生成的数据。

人工标注太贵,合成数据不够好?看OS-Genesis如何破解数据困局-AI.x社区


通过结合反向任务合成和奖励模型,OS-Genesis实现了从任务生成到轨迹构建的端到端流程。实验结果表明,OS-Genesis生成的数据在质量和多样性上均显著优于现有方法,为构建通用GUI agent提供了可靠的数据支持。

3 实验

为了验证OS-Genesis在动态环境中生成高质量轨迹数据的能力,本文在动态环境上进行了实验。对于Mobile场景选择了AndroidWorld和AndroidControl,对于Web场景则使用了WebArena作为测评基准。在这些复杂的环境中,我们测试用OS-Genesis合成数据训练的agent表现相对传统方法效果如何。

3-1 模型与基线

VLMs. 我们在实验中选择了代表性的VLSs作为GUI agent的基础模型,以便全面评估OS-Genesis生成的数据在不同模型上的的影响:

  • InternVL2-4B/8B:上海人工智能实验室开发的一种支持高分辨率动态输入的开源VLM,主要用于视觉-语言任务。其扩展版本InternVL2-8B具有更大的模型容量。
  • 2Qwen2-VL-7B-Instruct:一种多模态模型,具备一定的GUI交互能力,专为指令执行任务优化。

此外,我们还额外添加了GPT-4o作为一个强baseline,来比较我们所训练的开源模型和商业模型之间的差距

Baselinse. 所有的baseline接受的状态信息均为 Screenshots + a11ytree

  • Zero-Shot:直接使用未经过额外训练的模型完成任务。这种方法用于评估模型的原始能力。
  • Task-Driven:利用预定义任务和固定策略生成数据,广泛应用于传统数据生成流程。
  • Self-Instructions:在Task-Driven的基础上,引入自我指令生成机制来扩展任务的和覆盖范围。

3-2 Mobile

• 在**AndroidWorld(In-domain Mobile场景实验)**中,OS-Genesis所生成的数据显著提升了GUI agents的任务成功率,从baseline VLMs的的9.82%提升至17.41%,几乎可以做到翻倍。尤其是在任务规划和复杂操作中,OS-Genesis的数据展现了更强的适应性和泛化能力。

人工标注太贵,合成数据不够好?看OS-Genesis如何破解数据困局-AI.x社区

mobile-exp

• 在AndroidControl中**(OOD实验)**,OS-Genesis生成的轨迹在高阶和低阶任务中均表现出色,特别是在高阶任务中,其规划能力提升尤为明显。此外,OS-Genesis在未见过的应用场景下表现出了较强的泛化能力,验证了其生成数据的高质量和多样性。

3-3 Web

OS-Genesis在WebArena(In-domain Web场景实验)中的表现也显著优于baselines。对于复杂的交互式网页任务(如GitLab和Reddit),由OS-Genesis训练而来的agent相比Task-Driven方法提升了约50%。在多个动态网页场景中,通过OS-Genesis生成的数据,agent表现出了更高的多样性和泛化能力,特别是在需要多步操作的任务中,其生成轨迹更符合逻辑和用户意图。

人工标注太贵,合成数据不够好?看OS-Genesis如何破解数据困局-AI.x社区

本文转载自​​​​​NLP PaperWeekly​​​​​,作者:NLP PaperWeekly

收藏
回复
举报
回复
相关推荐