遇见数据集

lukemann/baby-agi-dataset-v1

收藏
Hugging Face2023-11-28 更新2024-03-04 收录
官方服务:

资源简介:

BabyAGI数据集是一个遵循Huggingface数据集规范的初始演示数据集,包含轨迹图像和轨迹元数据两部分。元数据存储在JSON文件中,图像存储在S3上。数据集通过一系列步骤生成,包括加载演示、加载轨迹、处理轨迹、映射动作、截图DOM、映射候选、生成元数据和截图对,并最终保存数据。数据集中的动作类型包括点击、输入、滚动和移动鼠标。截图生成自Mind2Web轨迹跟踪的前状态,图像尺寸为2036x1144。选项生成自Mind2Web数据集中的正负候选,滚动动作模拟用户滚动视口,选择动作则表示为点击和输入两个动作的序列。

BabyAGI数据集是一个遵循Huggingface数据集规范的初始演示数据集,包含轨迹图像和轨迹元数据两部分。元数据存储在JSON文件中,图像存储在S3上。数据集通过一系列步骤生成,包括加载演示、加载轨迹、处理轨迹、映射动作、截图DOM、映射候选、生成元数据和截图对,并最终保存数据。数据集中的动作类型包括点击、输入、滚动和移动鼠标。截图生成自Mind2Web轨迹跟踪的前状态,图像尺寸为2036x1144。选项生成自Mind2Web数据集中的正负候选,滚动动作模拟用户滚动视口,选择动作则表示为点击和输入两个动作的序列。

提供机构:
lukemann
原始信息汇总

BabyAGI 数据集

数据布局

数据集分为轨迹图像和轨迹元数据两部分。元数据存储在原始数据集中,图像存储在S3上。数据加载使用baby_agi_dataset.py中定义的dataloader。

plaintext ├── data │ ├── metadata_0.json │ ├── metadata_1.json │ └── ... ├-- baby_agi_dataset.py

元数据格式 (.json)

json [ { "id": "<trajectory_id_hash>", "instruction": "<some instruction>", "trajectory": [ { "image_id": "image_id", "image_size": [10, 10], "steps": [ { "action_options": [ { "index": 0, "top_left": [120, 340], "bottom_right": [140, 440] } ], "action_taken": { "type": "click", "value": "value (only for type and scroll)", "action_option_index": 0 } } ] } ] } ]

动作类型

数据集元数据包含三种动作类型:"click"、"type" 和 "scroll"。action_option_index字段表示在action_options列表中点击元素的索引。

  1. Click: 表示用户点击一个元素。
  2. Type: 表示用户在输入字段中输入内容。action_option_index将始终为-1。
  3. Scroll: 表示用户滚动视口。value字段表示滚动方向,"up"表示向上滚动200px,"down"表示向下滚动200px。注意,bottom_lefttop_right将始终为零数组。action_option_index将始终为-1。

数据集生成流程

数据集通过以下步骤生成:

  1. 加载演示: 从Hugging Face数据集加载演示。

  2. 加载轨迹: 从Globus数据集加载轨迹。

  3. 处理轨迹: 对于每个Mind2Web (M2W)轨迹:

    a) 映射动作: 使用dom_content.json中的时间戳将M2W动作映射到Playwright跟踪动作。

    b) 截图DOM: 在动作之前对DOM进行“截图”。

    c) 映射候选: 将M2W动作元数据中的pos_candidatesneg_candidates通过类+ID匹配映射到HTML边界框。为每个候选获取新的边界框坐标。

    d) 创建元数据+截图对: 创建并保存/追加元数据和截图对。

  4. 保存数据: 将更新后的数据目录保存到S3和Hugging Face。

截图

数据集中的截图是从Mind2Web轨迹跟踪的之前状态生成的。每个图像的宽度为2036,高度为1144。对于不同的屏幕尺寸(通过增强),添加填充以保持宽高比。这确保了不同屏幕尺寸下的截图内容保持一致。

选项生成

数据集中的选项从Mind2Web (M2W)数据集的positive_candidates(始终为一个)和negative_candidates生成。M2W数据集标记了DOM上所有可能的交互。因此,选择视口中包含正候选者的面积最大的50个选项。

滚动

Mind2Web (M2W)数据集捕获整个DOM,因此当所选选项动作不在视口中时,会创建人工滚动动作。此动作有两个可能的值:"up"和"down"。每个值分别对应200px的向上和向下滚动。

选择

Mind2Web (M2W)数据集中的“选择”动作记录用户从下拉列表中进行选择。在此数据集中,我们将其表示为轨迹中的两个不同动作序列:

  1. Click: 用户点击下拉元素。
  2. Type: 用户输入所需值并按Enter键。

使用方法

要在Python程序中使用数据集,可以使用datasets库中的load_dataset函数加载:

python from datasets import load_dataset

dataset = load_dataset("lukemann/baby-agi-dataset-v0")

first_row = dataset[train][0] print(first_row)

这将加载数据集并打印训练集的第一行。

有关简短演示,请参阅demo.py文件。

搜集汇总
数据集介绍
lukemann/baby-agi-dataset-v1 数据集图片
构建方式
该数据集的构建依托于Mind2Web(M2W)轨迹数据,通过系统化的流水线生成。首先从Hugging Face和Globus分别加载演示与轨迹数据;随后针对每条M2W轨迹,利用dom_content.json中的时间戳将M2W动作映射至Playwright轨迹动作,并在动作执行前对DOM进行截图。接着,通过类名与ID匹配,将M2W动作元数据中的正负候选元素映射为HTML边界框坐标。最终,将元数据与截图配对保存,形成完整的轨迹样本。截图默认尺寸为2036×1144,通过填充保持宽高比以适应不同屏幕。动作选项从正候选(唯一)与负候选中选取视口内面积最大的50个元素。对于不在视口中的目标动作,则生成人工滚动动作(每次200像素)。下拉选择动作被拆解为点击与键入两个连续步骤。
特点
数据集以轨迹图像与元数据分离的形式存储,元数据以JSON格式记录每条轨迹的指令、动作序列及交互细节。动作类型涵盖点击、键入、滚动与鼠标移动,其中点击动作记录选项索引,键入与滚动动作通过value字段描述输入内容或方向。每条轨迹包含多帧截图,每帧对应动作执行前的DOM状态,确保环境可复现性。数据集通过正负候选机制模拟真实交互中的选择多样性,并引入人工滚动以处理视口外目标,增强了样本的鲁棒性。整体设计兼顾结构化与可扩展性,为基于视觉的智能体训练提供了高质量的监督信号。
使用方法
用户可通过Hugging Face的datasets库便捷加载数据集,调用load_dataset('lukemann/baby-agi-dataset-v1')即可获取训练集。加载后,数据集以字典形式返回,可通过索引访问具体轨迹,例如first_row = dataset['train'][0]获取首条样本。每条样本包含指令文本、多帧截图及对应的动作元数据。开发者可结合配套的baby_agi_dataset.py数据加载器解析元数据中的动作选项与边界框,用于训练视觉语言模型或强化学习智能体。此外,GitHub仓库中的demo.py提供了快速上手的示例代码,便于用户理解数据结构和应用场景。
背景与挑战
背景概述
随着人工智能在图形用户界面(GUI)自动化领域的快速发展,如何让智能体像人类一样理解并操作网页界面成为了一个核心研究课题。BabyAGI数据集由研究人员于近期创建,旨在为基于视觉的GUI智能体提供高质量的轨迹训练数据。该数据集基于Mind2Web基准进行扩展,通过将用户操作映射为Playwright浏览器轨迹,并截取操作前的屏幕截图,构建了包含点击、输入、滚动等动作的完整交互序列。其核心研究问题在于弥合自然语言指令与底层GUI操作之间的鸿沟,为开发能够自主完成网页任务的智能体提供标准化训练资源。该数据集的出现推动了GUI智能体从纯文本描述向视觉感知的范式转变,对网页自动化、无障碍技术及智能助手等领域具有重要影响。
当前挑战
该数据集面临的挑战主要体现在两个层面。在领域问题层面,GUI智能体需要应对网页界面的高度动态性和多样性,包括布局变化、元素遮挡及不同屏幕尺寸下的响应式设计,这要求模型具备强大的泛化能力而非简单记忆。在构建过程中,核心挑战在于精确对齐Mind2Web的DOM时间戳与Playwright轨迹,因为时间戳的微小偏差可能导致动作映射错误。此外,负样本候选框的筛选策略需平衡计算效率与代表性——仅选取视口内面积最大的50个选项可能遗漏关键干扰项。滚动动作的模拟也面临挑战,当目标元素不在视口时,需通过人工规则生成滚动步长,这种离散化处理与真实用户连续滚动行为存在差异,可能影响轨迹的生态效度。
常用场景
经典使用场景
BabyAGI数据集在智能体领域中被广泛用于训练和评估基于GUI交互的自主任务执行模型。该数据集通过记录用户完成指令时的完整操作轨迹,包括点击、键入、滚动和鼠标移动等原子动作,以及对应的屏幕截图和DOM元素候选框,为构建能够理解自然语言指令并在网页环境中自主导航的智能体提供了标准化的训练素材。研究者常利用该数据集微调视觉语言模型,使其学会从屏幕像素中识别可交互元素并执行多步操作,从而在复杂的网页任务中实现从指令到动作序列的端到端映射。
解决学术问题
该数据集有效解决了网页智能体研究中长期存在的训练数据匮乏问题,特别是缺乏细粒度、带有屏幕截图和动作标注的轨迹数据。传统方法多依赖合成数据或规则驱动,难以泛化到真实网页的复杂布局与动态内容。BabyAGI数据集基于Mind2Web构建,提供了包含正负候选元素的动作选项空间,使得模型能够学习在众多可交互元素中精准定位目标,并处理滚动、下拉菜单选择等常见交互场景。这为研究多步推理、状态跟踪和错误恢复等学术问题奠定了数据基础,推动了从简单的点击预测向完整任务规划与执行的范式转变。
衍生相关工作
基于BabyAGI数据集,学界已衍生出多项经典工作。其中,研究者提出了WebGUM框架,利用该数据集联合训练视觉编码器和语言模型,实现了在实时网页上的高效导航。另一项代表性工作是SeeAct,它直接使用该数据集中的屏幕截图和动作标注,构建了基于视觉理解的端到端智能体,在Mind2Web基准上取得了显著性能提升。此外,该数据集还催生了关于动作空间压缩和候选元素排序的研究,如通过对比学习优化负样本选择策略,以及结合强化学习从轨迹奖励中学习更鲁棒的策略。这些工作共同推动了GUI智能体从实验室原型向实用系统的演进。
以上内容由遇见数据集搜集并总结生成
二维码
社区交流群
二维码
科研交流群
商业服务