当前位置: 首页 > news >正文

【论文通读】AgentStudio: A Toolkit for Building General Virtual Agents

AgentStudio: A Toolkit for Building General Virtual Agents

  • 前言
  • Abstract
  • Motivation
  • Framework
  • 评估
    • GUI Grouding
    • Real-World Cross-Application Benchmark Suite
  • Conclusion

前言

来自昆仑万维的一篇智能体环境数据大一统框架工作,对未来计算机智能体的发展具有指导性意义,作者在环境上对计算机智能体的输入输出进行了统一,基于该环境又设计了智能体数据的收集评估框架,通过实验也验证了数据集收集的重要性。此外它还提供了丰富的文档,便于初学者学习。

Paperhttps://arxiv.org/pdf/2403.17918.pdf
Documenthttps://skyworkai.github.io/agent-studio/
FromArxiv 26 Mar 2024

Abstract

创造在任意数字设备上操作任意软件的自主虚拟智能体仍然是当前AI的主要挑战。关键的两点障碍在于:现实环境中构建虚拟智能体的基础设施不足,以及对基础智能体能力评估的需求。为了解决这些问题,本文提出AgentStudio,一个在线、现实、多模式的工具包,可以涵盖智能体开发完整的生命周期。包括环境设置,数据收集,智能体评估以及可视化。观察和动作空间高度通用,支持函数调用和人机界面。AgentStudio的图形用户界面进一步增强了这种多功能性,允许在现实环境中高效开发数据集和基准。为了说明这一点,作者引入了一个视觉基础数据集和一个真实世界的基准套件,二者都是通过图像化界面创建的。此外,作者还提出一些源自AgentStudio的可行解,例如通用视觉基础、开放式工具创建、视频学习等。作者开源了环境、数据集、基准测试和界面,以促进开发更通用的虚拟智能体。

Motivation

image.png
image.png

  1. 受到环境和数据的限制,现有的智能体仅在简单、受限的场景下评估演示,缺乏实用性和可靠性。
  2. 真实环境难以收集数据,阻碍智能体的提升。

AgentStudio工具包如何解决上述问题?

  1. 包括了智能体观察和动作空间的定义工具。
  2. 提供了跨平台的在线环境支持。
  3. 支持交互式数据的收集与评估,以及可扩展的任务套件,增强实用性和灵活性。

上图展示AgentStudio如何在环境上和数据集上解决之前工作的问题。

Framework

image.pngAgentStudio优势:

  • 可复现、多模态、跨平台的在线环境。支持docker、FastAPI以及虚拟机连接各种操作系统和设备,注重真实落地场景。
  • 统一标准输入输出。和人类保持一致,通过观察屏幕输入,控制键鼠和命令行输出,也支持函数调用和API。
  • 全面、可扩展、可组合的任务集。包含在十余个应用上全面评估AI智能体的能力,覆盖各种应用场景,包含不同难度任务。
  • 完整的智能体数据收集和评估代码。可用于人工标注数据集,也可用于智能体自行收集经验。
  • 关注工具创造和应用。支持智能体在交互中自行创造并复用新的工具。
  • 交互式可视化界面。提供用户友好的轻量化GUI界面,帮助用户一键自动化创建任务并收集数据。

下图是使用AgentStudio人工标注数据以及自动标注数据的过程。
image.png

评估

除了工具包的搭建,研究团队评估了多个多模态智能体完成任务的能力。为了全面评估智能体的能力,AgentStudio的实验从多个角度考虑:

  1. 图形界面grounding数据集。任务为单步动作,指令无需规划, 关注智能体与图形界面交互的能力。
  2. 日常任务与组合任务数据集。任务涉及调用复杂API,或者多步动作以及跨软件交互。用于评估智能体完成日常任务、以及进行复杂动作规划的能力。

GUI Grouding

每个数据都是三元组: T = ( g , s , a ) T=(g,s,a) T=(g,s,a),分别代表instruction、截图和鼠标动作。基于AgentStudio,团队设计了一个包含 227 条鼠标点击指令的数据集,涵盖三种流行的桌面操作系统和九种应用程序。在当前多模态模型上进行评估,结果如下表所示:
image.png
在闭源模型上,模型展示了在不同操作系统下泛化的差异性,并且得分都不高,GUI能力不足。在开源模型上,基于Qwen-VL微调的SeeClick在每个任务上都是最高分,凸显了进一步扩展GUI基础数据的重要性,以通过数据驱动的方法改进多模式模型,从而实现有效的现实部署。
image.png
上图是在位置和点击类型两个指标上的比较。可以看到,所有模型在精确定位上得分较低,有很大改进空间,b表明点击成功率和元素大小相关,分而治之的方法可能提升点击的准确率。

Real-World Cross-Application Benchmark Suite

为了说明AgentStudio在复杂的场景促进评估,作者引入了由77个现实任务组成的基准套件,包括工具使用、GUI基础、长期规划等。每个任务形式化为一个三元组,包括自然语言描述,重置环境组件(防止其它项干扰实验),评估结果轨迹组件。结果如下:
image.png
虽然GPT-4在大多数API任务中表现出色,但是在GUI和组合任务上面临挑战,另一方面,Gemini-1.0 Pro 和 GPT-3.5 Turbo 总体上表现出相对较低的成功率,但它们较高的批评准确率意味着这些模型可能有潜力通过开发新颖的自校正算法来提高其性能。

Conclusion

本文介绍了AgentStudio,一个开放的工具包,用于开发在现实数字世界中的通用智能体,它包括数据收集评估、可视化和用户界面,允许在任意人类任务上开发测试。这篇工作非常solid ,在各种智能体打架的今天,AgentStudio从另一个角度出发, 在底层统一了各种计算机智能体的评估和交互,工作合理且完整, 有极强的扩展性和自定义性,具有特别大的发展前途。我认为基于这篇工作,未来可以考虑的方向有:

  1. 通用工具的积累。即插即用的工具,可以为任何智能体所用,这也涉及相关的框架与协议。
  2. 更丰富的输入输出接口。目前只支持键鼠、bash,如果能够泛化到各种设备,那会在更多场景解放人类双手。
  3. 评估的方式不是很合理,毕竟有的操作没有固定的流程,遇到特殊情况也无法评估。
  4. 数据集规模不大,覆盖面不够广。

相关文章:

【论文通读】AgentStudio: A Toolkit for Building General Virtual Agents

AgentStudio: A Toolkit for Building General Virtual Agents 前言AbstractMotivationFramework评估GUI GroudingReal-World Cross-Application Benchmark Suite Conclusion 前言 来自昆仑万维的一篇智能体环境数据大一统框架工作,对未来计算机智能体的发展具有指…...

wordvect嵌入和bert嵌入的区别

Word2Vec 嵌入和 BERT 嵌入之间有几个关键区别: 训练方式: Word2Vec:Word2Vec 是一个基于神经网络的词嵌入模型,它通过训练一个浅层的神经网络来学习单词的分布式表示。它有两种训练方式:连续词袋模型(CBOW…...

渗透测试练习题解析 5(CTF web)

1、[安洵杯 2019]easy_serialize_php 1 考点:PHP 反序列化逃逸 变量覆盖 【代码审计】 通过 GET 的方式获取参数 f 的值,传递给变量 function 定义一个过滤函数,过滤掉特定字符(用空字符替换) 下面的代码其实没什么用…...

PCA(Principal Component Analysis,主成分分析)

PCA(Principal Component Analysis,主成分分析)是一种在数据分析中广泛应用的统计方法,主要用于数据降维、可视化和去噪。以下是对PCA的发展史、工作原理以及理论基础的详细解释: Principal Component Analysis 一、PC…...

干货 | 探索CUTTag:从样本到文库,实验步步为营!

CUT&Tag(Cleavage Under Targets and Tagmentation)是一种新型DNA-蛋白互作研究技术,主要用于研究转录因子或组蛋白修饰在全基因组上的结合或分布位点。相比于传统的ChIP-seq技术,CUT&Tag反应在细胞内进行,创新…...

提质不增本,降本不降质

#公益巡讲# #质量万里行# 公开课、沙龙活动...

数据结构---顺序表实现

目录 1.顺序表 2.动态顺序表的实现 (4)顺序表初始化 (5)顺序表销毁 (6)顺序表的插入 a.尾插 b.头插 (7)顺序表的删除 a.尾删 b.头删 (8)指定位置之…...

python docx 添加动态表格

在Python中,使用python-docx库可以创建Word文档并添加动态表格。以下是一个简单的例子,演示如何创建一个包含动态内容的表格: from docx import Document# 创建一个Word文档 document Document()# 添加一个标题 document.add_heading(动态表…...

git配置多SSH

目的: 一台电脑可以让github、gitee等账号同时存在,让不同账号配置不同的密钥 第一步:创建不同平台的SSH公钥 执行命令: ssh-keygen -t rsa -C "对应仓库邮箱地址" -f ~/.ssh/id_rsa.github 如果执行上面的命令&…...

IDEA连接SqlServer数据库

目录 下载jar包 下载sqljdbc_12.6压缩包 解压 导入IDEA 新建文件夹 复制粘贴进JDBC文件夹并设为library 编写类及方法 代码 下载jar包 以sqljdbc_12.6为例 下载sqljdbc_12.6压缩包 最新地址:sqljdbc 官方最新地址 解压 解压即用 导入IDEA 新建文件夹 复制…...

LeetCode 378 有序矩阵中第K小的元素

题目信息 LeetoCode地址: . - 力扣(LeetCode) 题解内容大量转载于:. - 力扣(LeetCode) 题目理解 题意很直观,就是求二维矩阵中所有元素排序后第k小的数。 最小堆写法 该写法不再赘述,维护…...

Vue3(domdiff)最长递归子序列求解简易版(超简单)

Vue3(domdiff)最长递归子序列求解简易版 ⚠️ 关键词(每一个都需要理解)js 代码实现写完感想欢迎关注 ⚠️ 关键词(每一个都需要理解) 动态规划(O(N^2))(不提倡&#xf…...

LLaMA-Factory+qwen多轮对话微调

LLaMA-Factory地址:https://github.com/hiyouga/LLaMA-Factory/blob/main/README_zh.md qwen地址:https://huggingface.co/Qwen/Qwen-7B-Chat/tree/main 数据准备 数据样例 [ {"id": "x3959", "conversations": [{&qu…...

邦芒面试:如何在面试中巧妙回答自己的缺点

在面试中,被问及自己的缺点时,如何巧妙回答是一门学问。恰当的回答不仅能够展示你的自我认知,还能让面试官看到你的成长潜力和积极态度。 首先,切忌谈一些看似缺点实则优点的话题,如追求完美、待人接物太客气等。这些…...

Android:身份证识别功能实现

说明&#xff1a; 此文使用华为SDK、百度SDK、百度在线API三种方式实现。 一、使用华为SDK实现身份证识别&#xff1a; 说明&#xff1a;免费&#xff0c;不需要联网。 1.AndroidManifest.xml添加权限&#xff1a;<uses-permission android:name"android.permissio…...

MacOS安装Homebrew教程

安装 Homebrew 是在 macOS 上管理软件包的一种简便方法。以下是安装 Homebrew 的步骤&#xff1a; 打开终端&#xff1a;你可以通过在 Spotlight 搜索栏中输入“终端”并按下回车键来打开 macOS 的终端应用程序。 执行安装命令&#xff1a;在终端中粘贴以下命令并按下回车键执…...

laravel如何通过DB获取一条数据并转成数组

在 Laravel 中&#xff0c;你可以使用原生数据库查询构建器&#xff08;DB facade&#xff09;来获取一条数据&#xff0c;并将其转换为数组。这可以通过在查询链的末尾调用 first() 方法后&#xff0c;使用 toArray() 方法来实现。first() 方法会返回一个 StdClass 对象&#…...

ENSP USG防火墙接入虚拟机;开启Web访问;

1.添加防火墙及云&#xff0c;启动防火墙&#xff1b; 2.配置桥接网卡&#xff1b; 默认账户&#xff1a;admin 默认密码&#xff1a;Admin123 #第一次登陆需修改密码&#xff1b; 默认G0/0/0口为管理口&#xff0c;而在模拟器中进入防火墙的web需如下配置&#xff1a; 配置 …...

数据结构算法题(力扣)——链表

以下题目建议大家先自己动手练习&#xff0c;再看题解代码。这里只提供一种做法&#xff0c;可能不是最优解。 1. 移除链表元素&#xff08;OJ链接&#xff09; 题目描述&#xff1a;给一个链表的头节点 head 和一个整数 val &#xff0c;删除链表中所有满足值等于 val 的节点…...

LeetCode---391周赛

题目列表 3099. 哈沙德数 3100. 换水问题 II 3101. 交替子数组计数 3102. 最小化曼哈顿距离 一、哈沙德数 简单的模拟题&#xff0c;代码如下 class Solution { public:int sumOfTheDigitsOfHarshadNumber(int x) {int s 0, tmp x;while(tmp){stmp%10;tmp/10;}return x…...

3步搞定ViGEmBus:Windows虚拟游戏手柄驱动终极指南 [特殊字符]

3步搞定ViGEmBus&#xff1a;Windows虚拟游戏手柄驱动终极指南 &#x1f3ae; 【免费下载链接】ViGEmBus Windows kernel-mode driver emulating well-known USB game controllers. 项目地址: https://gitcode.com/gh_mirrors/vi/ViGEmBus 想要在Windows上体验更丰富的游…...

从零开始理解Transformer的计算复杂度:自注意力与前馈网络的详细对比

从零开始理解Transformer的计算复杂度&#xff1a;自注意力与前馈网络的详细对比 在人工智能领域&#xff0c;Transformer架构已经成为自然语言处理任务的事实标准。但对于初学者来说&#xff0c;理解其内部工作机制&#xff0c;特别是计算复杂度这一关键概念&#xff0c;往往充…...

人脸检测开源生态新成员:cv_resnet101_face-detection_cvpr22papermogface ModelScope集成详解

人脸检测开源生态新成员&#xff1a;cv_resnet101_face-detection_cvpr22papermogface ModelScope集成详解 1. 项目概述 今天要介绍的是一个特别实用的人脸检测工具——基于MogFace模型开发的本地高精度人脸检测系统。这个工具解决了PyTorch新版本加载旧模型的兼容性问题&…...

Ghidra二进制分析工具新手指南:从安装到高效逆向实践

Ghidra二进制分析工具新手指南&#xff1a;从安装到高效逆向实践 【免费下载链接】ghidra_installer Helper scripts to set up OpenJDK 11 and scale Ghidra for 4K on Ubuntu 18.04 / 18.10 项目地址: https://gitcode.com/gh_mirrors/gh/ghidra_installer 工具定位&a…...

Qwen3.5-4B-Claude-Opus实战案例:用该模型辅助撰写RFC文档与技术决策说明

Qwen3.5-4B-Claude-Opus实战案例&#xff1a;用该模型辅助撰写RFC文档与技术决策说明 1. 模型特性与RFC文档撰写需求 Qwen3.5-4B-Claude-4.6-Opus-Reasoning-Distilled-GGUF作为一款专注于推理分析的AI模型&#xff0c;其结构化思维和分步骤回答能力特别适合技术文档撰写场景…...

告别8小时UI适配工作:3大核心能力重新定义Figma到Unity流程

告别8小时UI适配工作&#xff1a;3大核心能力重新定义Figma到Unity流程 【免费下载链接】UnityFigmaBridge Easily bring your Figma Documents, Components, Assets and Prototypes to Unity 项目地址: https://gitcode.com/gh_mirrors/un/UnityFigmaBridge 在游戏开发…...

无限级数求和的Java实现与数学分析

本文旨在详细说明如何使用Java精确计算特定形式的无限级数 S -(2x)^2/2&#xff01; (2x)^4/4&#xff01; - (2x)^6/6&#xff01; ... 在指定区间 [0.1, 1.5] 内部和。我们将深入分析等级数的数学性质&#xff0c;推导其闭合形式&#xff0c;并在此基础上纠正原始Java代码…...

Go语言依赖管理:从GOPATH到Go Modules

Go语言依赖管理&#xff1a;从GOPATH到Go Modules 作为一个写了十几年代码的Go后端老兵&#xff0c;我经历了Go语言依赖管理的从GOPATH到Go Modules的转变&#xff0c;踩了不少坑。今天就来分享一下Go语言依赖管理的实践经验。 一、依赖管理的演进 1. GOPATH时代 在Go 1.11之前…...

Neeshck-Z-lmage_LYX_v2实战教程:异常友好提示机制与错误定位指南

Neeshck-Z-lmage_LYX_v2实战教程&#xff1a;异常友好提示机制与错误定位指南 1. 引言&#xff1a;当绘画工具变得“会说话” 想象一下&#xff0c;你兴致勃勃地打开一个AI绘画工具&#xff0c;输入了一段精心构思的描述&#xff0c;点击生成&#xff0c;然后……页面卡住了。…...

PP-DocLayoutV3完整指南:支持弯曲/倾斜文档的布局分析实战

PP-DocLayoutV3完整指南&#xff1a;支持弯曲/倾斜文档的布局分析实战 1. 引言&#xff1a;告别平面文档的限制 想象一下这样的场景&#xff1a;你手头有一份古老的卷轴文献&#xff0c;或者一张被折叠多次的纸质文档&#xff0c;甚至是一本装订厚重的书籍内页。这些文档往往…...