GUI Agent综述 : 6-汇总GUI Agent训练数据集

向量数据库大模型数据库
前言

今人不见古时月,今月曾经照古人。延续前文:

GUI Agent综述-1:总览

GUI Agent综述-2:三大技术基石

GUI Agent综述-3:发展历程

GUI Agent综述-4:GUI Agent的核心组件及其最新进展

GUI Agent综述-5:GUI Agent框架百家争鸣

今天这篇小作文主要介绍用以优化 GUI Agent 的数据。后续还有以下3个章节,感兴趣的小伙伴可以留意下:

  • GUI Agent综述:7-基于 LLM 的 GUI Agent 模型优化
  • GUI Agent综述:8-GUI Agent的评测
  • GUI Agent综述:9-GUI Agent应用与未来

更多智能体(Agent)相关可以订阅此专题: 智能体(Agent) 专题

7 用于优化GUI Agent的数据

在上一章节中,探讨了 基于LLM的GUI agent的通用框架 ,其中大多数框架依赖于诸如 GPT-4V 和 GPT-4o 之类的基础LLM。然而,为了提高这些agent的性能和效率,优化它们的“大脑”,即底层模型至关重要。实现这一目标通常需要使用大规模、多样化和高质量的上下文GUI数据集来微调基础模型,这些数据集经过专门策划,使这些模型能够在GUI特定任务中表现出色。收集此类数据集,特别是那些富含GUI屏幕截图、元数据和交互的数据集,需要一个精心设计的数据获取、过滤和预处理过程,每个过程都需要大量的精力和资源。

随着GUI agent的持续发展,研究人员专注于整合能够代表广泛各类平台并捕捉GUI环境多样、复杂的数据集。这些数据集对于训练能够有效泛化的模型至关重要,这归功于它们对各种界面、工作流程和用户交互的覆盖。为了确保全面性,诸多学者已经采用了各种创新的方法来收集和构建这些数据资产。在接下来的章节中,将详细介绍一个 为训练GUI特定LLM量身定制的端到端数据收集和处理流程 。还将检查来自各个平台的重要数据集,深入了解它们的独特功能、创建方法以及它们在推进基于LLM的GUI agent领域方面的潜在应用。 为了提供结构化的概述,表10、11和12总结了不同平台上的这些数据集,突出了它们的主要属性和对GUI agent研究发展所做的贡献。

picture.image

picture.image

picture.image

7.1 数据收集

数据对于训练定制化的 GUI agent 至关重要,但由于任务的复杂性和所涉及环境的多样性,收集数据需要大量的时间和精力。

7.1.1 数据构成与来源

GUI agent 训练所需的基本数据组成与 第 5.2.2 节5.4 节中 讨论的 agent 的感知和推理需求密切相关。从宏观层面来看,这些数据包括:

  1. 用户指令 :这些指令提供了任务的总体目标、目的和具体细节,通常以自然语言形式呈现,为 agent 提供了一个明确的待完成目标,例如,“将所有文本的字体大小更改为 12”。
  2. 环境感知 :这通常包括 GUI 截图,通常带有各种视觉增强,以及可选的补充数据,如部件树和 UI 元素属性,以丰富上下文。
  3. 任务轨迹 :这包含完成任务所需的关键动作序列,以及诸如 agent 计划之类的补充信息。一个轨迹通常涉及多个步骤和动作来完成任务。

用户指令和环境感知作为模型的输入,而模型的预期输出是任务轨迹。任务轨迹中的动作序列随后在环境中执行以完成任务。

对于用户指令,确保其真实并反映实际用户场景至关重要。指令可以通过多种方式获取:

  • 直接来自人类设计者,他们可以根据实际应用提供见解;
  • 如果存在合适的数据,则从现有的相关数据集中提取;
  • 从公共材料中获取,例如网站、应用程序帮助文档和其他公开可用的资源;
  • 由 LLM 生成,它可以模拟不同上下文中各种各样的用户请求。此外,LLM 可用于数据增强,从而提高从原始数据中获得的指令的质量和多样性。

为了收集环境感知数据,可以使用各种工具包(例如 第 5.2.2 节中讨论的工具包 )来捕获所需的 GUI 数据。这可以在环境模拟器(例如,Android Studio Emulator29、Selenium WebDriver30、Windows Sandbox31)中完成, 也可以通过直接与真实环境交互来捕获 GUI 元素的状态,包括屏幕截图、部件树以及对 agent 操作至关重要的其他元数据。

收集任务轨迹(代表 agent 完成任务的动作序列)通常是最具挑战性的方面。任务轨迹需要准确、可执行且经过充分验证。收集方法包括:

  1. 使用以编程方式生成的脚本,这些脚本定义了预定义任务的动作序列,提供了一个高度受控的数据源;
  2. 聘请人工标注员,他们以众包方式完成任务,并记录每个步骤,从而获得丰富、真实的动作数据;
  3. 利用模型或 agent 自举(bootstrapping),其中现有的 LLM 或 GUI agent 尝试完成任务并记录其动作, 尽管此方法可能由于潜在的不准确性而需要额外的验证。

所有这些方法都需要大量的努力,反映了为训练 GUI agent 收集可靠、任务准确的数据的复杂性。

7.1.2 收集流程

图 22 展示了一个完整的数据收集流程,旨在训练 GUI agent 模型。该过程首先收集初始用户指令,这些指令可能来自上述各种来源。这些指令通常是原型,尚未针对特定环境进行定制或关联。例如,来自一般网站的“如何更改字体大小?”之类的指令缺乏具体性,并且与用户在特定应用程序中可能提出的具体请求不一致。为了解决这个问题,需要一个实例化步骤,其中指令在特定环境中进行上下文关联,使其更具可操作性。例如,指令可能会被细化为“将 draft.docx 的 Word 文档中第三段的字体大小更改为 20”,从而赋予其明确的、特定于环境的目标。此实例化过程可以由人工手动执行,也可以使用 LLM 以编程方式执行。

picture.image

实例化之后,指令可能会经历一个过滤步骤,以删除低质量的数据,确保只保留相关且可操作的指令。此外,可以应用数据增强技术来扩展和多样化数据集,从而提高鲁棒性。这两个过程都可以涉及人工验证或利用 LLM 来提高效率。

一旦指令细化完成,任务轨迹和环境感知就会同时收集。当在环境中执行操作时,每个步骤都会被记录下来,从而提供环境状态和所采取的具体操作的记录。在记录完整的任务轨迹后,需要进行评估阶段,以识别并删除任何失败或不准确的序列,从而保持数据集的质量。通过迭代此流程,可以编译高质量的 GUI agent 数据集,这对于训练优化的模型至关重要。

在接下来的章节中,将回顾跨各种平台的现有 GUI agent 数据集,从而深入了解当前的实践和潜在的改进领域。

7.2 Web Agent 数据

基于Web的GUI agent 需要能够捕捉真实世界网络交互复杂性和多样性的数据集。这些数据集通常包含各种网站结构,包括DOM树和HTML内容,以及反映真实用户导航和交互模式的多步骤任务标注。开发能够跨不同网站泛化并执行复杂任务的agent,需要提供丰富上下文信息的综合数据集。

基于此需求,已经开发了几个重要的数据集来推进基于Web的GUI agent 的发展。与专注于狭窄、预定义任务的传统数据集不同,Mind2Web 通过强调开放式的任务描述,推动 agent 独立解释高层次目标,代表着一个重大的进步。它提供了跨越137个不同网站的2350多个人工标注的任务,捕捉了Web导航中典型的复杂交互模式和序列。这种设置有助于评估 agent 在未见领域中的泛化能力, 并作为基于Web的GUI中语言基础的基准,增强了对实际应用的适应性。

类似地,WebVLN 通过将导航与问答相结合,扩展了Web GUI任务。它为 agent 提供基于文本的查询, 引导它们定位相关的网页并提取信息。通过利用网站的HTML和视觉内容,WebVLN与Web浏览的实际挑战相一致。对于旨在开发能够在GUI驱动的Web空间中进行复杂、类人交互的 agent 的研究人员来说,此数据集尤其有价值。

此外,WebLINX 专注于会话式GUI agent,特别强调通过多轮对话进行真实世界的Web导航。WebLINX 提供了跨越155个真实世界网站的2300多个专家演示,创建了一个具有DOM树和屏幕截图的丰富环境,用于训练和评估能够执行动态、用户引导的导航任务的 agent。此数据集促进了 agent 在新网站和任务上的泛化,其中全面的动作和对话数据提供了关于增强 agent 在真实Web场景中响应能力的见解。

总而言之,这些数据集代表了重要的资源,能够促进Web agent 能力的进步,支持为各种Web应用开发适应性强且智能的 agent。

7.3 Mobile Agent 数据

由于移动平台涉及各种应用程序和独特的用户交互,因此对于GUI agent 而言至关重要。为了开发能够有效地导航和与移动界面交互的 agent,数据集必须提供单步和多步任务的组合,重点关注自然语言指令、UI布局和用户交互。

该领域早期且基础性的贡献是Rico数据集,它提供了来自9700多个Android应用程序的72000多个独特的UI屏幕和10811个用户交互轨迹。Rico在UI布局相似性、交互建模和感知建模等任务中发挥了重要作用,为移动界面理解和GUI agent 开发奠定了基础。

基于将自然语言指令与移动UI动作进行关联的需求,PIXELHELP引入了一个专门为此目的设计的数据集。它包括多步骤指令、屏幕截图和结构化的UI元素数据,可以详细分析如何将口头指令转换为移动动作。此数据集在可访问性和任务自动化方面具有重要的应用,支持基于口头提示自主执行任务的 agent。

进一步扩展范围,Android in the Wild (AITW)数据集提供了最广泛的自然设备交互集合之一。AITW 涵盖了广泛的Android应用程序和不同的UI状态,捕捉了模拟真实设备使用的多步骤任务。它通过与Android模拟器的交互收集,包括屏幕截图和动作序列,使其成为开发无需依赖特定应用程序API即可导航应用程序界面的GUI agent 的理想选择。由于其规模和多样性,AITW已成为该领域广泛使用的标准。

此外,META-GUI 通过支持与移动GUI的直接交互,绕过对基于API的控制的需求,为移动面向任务的对话系统提供了一个独特的数据集。这种方法允许 agent 使用多轮对话和GUI轨迹跨各种移动应用程序进行交互,从而扩展了它们在没有自定义API依赖的实际应用中的能力。该数据集对复杂交互和多轮对话场景的支持使其对于构建强大的会话式 agent 非常有价值。

最近,MobileViews 作为迄今为止最大的移动屏幕数据集出现,提供了来自20000个Android应用程序的600000多个屏幕截图-视图层次结构对。它使用LLM增强的应用程序遍历工具收集,为移动GUI agent 在屏幕摘要、可点击性预测和UI组件识别等任务中提供了高保真资源。其规模和对屏幕状态的全面覆盖使MobileViews成为推进移动GUI agent 能力的关键资源。

总而言之,由于其通用的工具、模拟器支持和多样化的用例,移动平台目前拥有最丰富的数据集,反映了移动应用中对高质量、适应性强的GUI agent 的需求。

7.4 计算机 Agent 数据

与移动和 Web 平台相比,尽管桌面 GUI agent 对于生产力工具和企业软件等应用至关重要,但其专用数据集相对较少。然而,在支持为复杂、多步骤桌面任务设计的 agent 的开发和评估方面,已经取得了显著的进展。

ScreenAgent 是该领域的一项重要贡献,它是一个专门的数据集和模型,旨在促进 Linux 和 Windows 桌面环境中的 GUI 控制。ScreenAgent 提供了一个全面的流程,使 agent 能够自主执行多步骤任务, 包括规划、行动和反思阶段。通过利用带注释的屏幕截图和详细的动作序列,它实现了 UI 元素定位和任务完成的高精度,在准确性方面超越了之前的模型。对于那些旨在提升桌面领域 GUI agent 能力的研究人员来说,这个数据集非常宝贵,可以增强 agent 的决策准确性和用户界面交互能力。

LAM 数据集专门用于训练和评估 GUI 环境中的大型动作模型 (LAMs), 它弥合了自然语言任务理解和动作执行之间的鸿沟。它包含两个核心组成部分:任务-计划数据,详细描述了带有逐步计划的用户任务;以及任务-动作数据,将这些计划转化为可执行的 GUI 动作。该数据集来源于应用程序文档、WikiHow 文章和 Bing 搜索查询,并使用 GPT-4 进行了丰富和结构化。该数据集针对 Windows 操作系统,专注于自动化 Microsoft Word 中的任务,包括 76672 个任务-计划对和 2688 个任务-动作轨迹,使其成为基于 GUI 的动作学习的最大集合之一。 数据质量通过一个强大的验证流程来保证,该流程结合了基于 LLM 的实例化、GUI 交互测试和人工审查。每个条目都附有 GUI 屏幕截图和元数据,使模型能够学习高层次的任务规划和低层次的执行。该数据集的模块化设计支持针对特定 GUI 任务进行微调,并为在其他环境中构建数据集提供了一个可复制的框架,标志着在推进基于 GUI 的自动化方面做出了重大贡献。

尽管与移动和 Web 平台相比,桌面领域的数据集较少,但像 ScreenAgent 和 LAMs 这样的努力突显了人们对开发用于计算机系统的复杂 GUI agent 的日益增长的兴趣和潜力。

7.5 跨平台 Agent 数据

跨平台数据集在开发能够跨移动、计算机和 Web 环境无缝运行的多功能 GUI agent 方面起着关键作用。这些数据集支持泛化和适应性,使 agent 能够处理现实应用中各种不同的界面和任务。

ScreenAI 是一项重要的贡献,它将数据收集范围扩展到包括移动和桌面界面。ScreenAI 涵盖了屏幕注释、问答和导航等任务,提供了数亿个带注释的样本。其全面的规模和混合平台覆盖使其成为需要管理跨各种界面的复杂布局和交互的 GUI agent 的强大基础。通过强调元素识别和屏幕摘要,ScreenAI 推进了能够处理各种视觉结构的多平台 GUI agent 的开发。

VisualAgentBench 建立在跨环境评估视觉基础模型的需求之上,是一个开创性的跨平台基准,旨在评估移动和 Web 环境中的 GUI agent。它强调以交互为中心的任务,使用 Android 虚拟设备和 WebArena-Lite 等环境来评估和改进 agent 对 GUI 布局和用户界面动作的响应。该数据集的创新收集方法,结合了基于程序的求解器和大型多模态模型引导,促进了强大的训练轨迹,增强了 GUI agent 任务中的适应性和错误恢复能力。

此外,GUI-World 跨越了包括桌面、移动和 XR 环境在内的多个平台,拥有超过 12000 个带注释的视频。GUI-World 旨在解决动态和顺序 GUI 任务的挑战,允许研究人员在各种界面上对 GUI agent 的能力进行基准测试。通过提供详细的动作序列和问答对,它为在复杂的现实场景中评估 agent 设定了高标准。

此外,xLAM 通过 提供统一的数据集格式 来支持多轮交互、推理和函数调用任务,为可操作的 agent 开发做出了重大贡献。xLAM 源自 WebShop 、ToolBench 和 AgentBoard 等数据集,标准化了跨各种环境的数据格式,解决了阻碍 agent 训练和跨环境兼容性的数据结构不一致的常见问题。通过提供一致的结构,xLAM 增强了 GUI agent 的适应性和错误检测能力,从而可以在不同的应用程序中实现更无缝的集成和性能。

总而言之,这些跨平台数据集有助于构建多平台 GUI agent,为能够在不同界面之间无缝导航和执行任务的 agent 铺平了道路,从而促进了更加通用和适应性强的系统。

7.6 总结

为基于大型语言模型 (LLM) 的图形用户界面 (GUI) agent 进行数据收集和整理是一项密集的过程,通常需要大量的人工参与,尤其是在生成准确的动作序列和注释方面。早期的数据集在规模和任务多样性方面都有限,但最近的进展促成了大规模、多平台数据集的出现,这些数据集支持更复杂和真实的 GUI 交互。这些发展中的关键见解包括:

  1. 规模和多样性 :高质量、大规模的数据对于训练能够处理各种 UI 状态和任务的强大 GUI agent 至关重要。诸如 MobileViews 和 ScreenAI 等数据集说明了庞大且多样化的数据对于适应移动和桌面应用程序动态特性的重要性,从而增强了 agent 在不同环境中的适应能力。
  2. 跨平台灵活性 :诸如 VisualAgentBench 和 GUI-World 等跨平台数据集强调了泛化性的价值,使 agent 能够在移动、Web 和桌面环境中保持一致的性能。这种跨平台适应性是创建一站式解决方案的关键一步,其中单个 GUI agent 可以在多个平台上无缝运行。
  3. 自动化数据收集 :以 OmniParser 和 MobileViews 为例的 AI 驱动的数据收集工具, 展示了显著减少人工工作量并加速可扩展数据集创建的潜力。通过自动化注释过程,这些工具为更高效的数据管道铺平了道路,朝着 AI 通过加速复杂 GUI 交互的数据收集和标记来支持 AI 的未来迈进。
  4. 统一的数据格式和协议 :xLAM 的统一数据格式是一项重要的创新,它提高了跨不同平台的兼容性,解决了跨平台 GUI agent 开发中的一个重大瓶颈。考虑到不同平台之间的数据格式、动作空间和环境表示形式各不相同,为数据收集建立标准化协议或动作空间对于促进 agent 的泛化和一致性至关重要。

总而言之,用于基于 LLM 的 GUI agent 的数据集的演变涵盖了多个平台,每个数据集都解决了特定于其环境的独特挑战和需求。这些基础资源是使 agent 能够理解复杂的 UI、执行细致的交互并提高在各种应用程序中的泛化能力的关键。推动跨平台适应性、自动化数据收集和标准化数据格式将继续塑造 GUI agent 的未来。

0
0
0
0
评论
未登录
看完啦,登录分享一下感受吧~
暂无评论