【论文通读】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. 通用工具的积累。即插即用的工具,可以为任何智能体所用,这也涉及相关的框架与协议。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/520492.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

京东云服务器地域和可用区选择方法,多因素考虑攻略

京东云服务器地域如何选择?根据地理位置就近选择地域。京东云主机地域支持北京、宿迁、上海和广州,华北地区用户选择北京地域,华东地区用户可以选择上海或宿迁地区,南方用户选择广州地域。云服务器吧yunfuwuqiba.com整理京东云主机…

PCI总线学习笔记:读写篇

前言 最近在写E1000网卡的驱动,这其中涉及到了PCI总线的相关内容。但是网上大部分关于PCI的文章都只局限在概念上的描述,并没有给出具体的例子来解释。这其实也是情理之中的,因为PCI总线规范就像是一个抽象的接口,其具体怎么实现…

SnapGene:解码生命之链的强大工具 mac/win版

在生物科技日新月异的时代,DNA分析已成为众多科研领域不可或缺的工具。SnapGene DNA生物分析软件应运而生,以其强大的功能和直观的用户界面,赢得了众多科研人员的青睐。 SnapGene软件获取 SnapGene是一款功能全面的DNA序列分析工具&#xff…

DevC++进行调试时,控制台出来后就闪退怎么解决

工具->编译选项->代码生成->连接器,然后将调试信息改成yes就可以了 如果有帮助麻烦点个赞呗

【好书推荐-第十四期】《 互联网大厂晋升指南:从P5到P9的升级攻略》

😎 作者介绍:我是程序员洲洲,一个热爱写作的非著名程序员。CSDN全栈优质领域创作者、华为云博客社区云享专家、阿里云博客社区专家博主、前后端开发、人工智能研究生。公众号:洲与AI。 🎈 本文专栏:本文收录…

0基础没编程经验能学嵌入式吗?

0基础没编程经验能学嵌入式吗? 可以的,即使你是0基础,没有编程经验,也完全有可能学习嵌入式系统。嵌入式系统是计算机技术与特定应用领域相结合的产物,涉及硬件和软件的知识。从零开始学习嵌入式开发,你可…

归并排序解读

在算法领域中,排序算法一直是一个核心话题。归并排序(Merge Sort)作为一种典型的分治思想应用,以其稳定、高效的特点受到了广泛的关注和应用。本文将深入探讨归并排序的原理、实现方式,以及它在实际应用中的价值。 一…

入门MyBatis

文章目录 入门MyBatisMyBatis快速入门创建user表添加数据创建模块导入坐标编写Mybatis核心配置文件编写SQL映射文件编码 使用idea编写sql代码链接数据库调出console控制台 Mapper代理开发定义与SQL映射文件同名的Mapper接口编码 MyBatis核心配置文件安装mybatisx插件配置文件完…

llama2的python视角

1 调试代码 if __name__ __main__ :config ModelArgs(dim8, n_layers2, n_heads32, n_kv_heads32, vocab_size32000, hidden_dimNone, multiple_of256, norm_eps1e-05, max_seq_len3, dropout0.0)model Transformer(config)input_tokens torch.randint(0, 32000, (1, 3)) …

【Linux】UDP编程【上】{诸多编程接口/小白入门式讲解}

文章目录 0.预备知识0.1套接字0.2TCP/UDP0.3大小端问题 1.socket 常见API1.1socket1.2各个接口1.3int bind();1.3网络头文件四件套1.4bzero1.5recvfrom1.6sendto() 2.UDP编程2.1服务器编程2.2客户端编程2.3运行测试2.3.1本机通信2.3.2popen2.3.3strcasestr2.3.4回顾C11智能指针…

靠劳保手套代加工赚钱 这几点一定要记牢

中国劳保手套代加工行业是一个与劳动保护密切相关的行业,随着中国经济的快速发展和安全生产意识的提高,劳保手套的需求呈现出稳步增长的趋势。得益于国内制造业、建筑业、矿业等劳动密集型行业的持续快速发展,中国劳保手套市场规模在过去几年…

路径规划——搜索算法详解(六):LPA*算法详解与Matlab代码

上文讲解了D*算法,D*算法为在动态环境下进行路径规划的场景提出了可行的解决方案,本文将继续介绍另外一种动态规划路径的方法——Lifelong Planning A*(LPA*)算法。 该算法可以看作是A*的增量版本,是一种在固定起始点…

P8749 [蓝桥杯 2021 省 B] 杨辉三角形

[蓝桥杯 2021 省 B] 杨辉三角形 题目描述 下面的图形是著名的杨辉三角形: 如果我们按从上到下、从左到右的顺序把所有数排成一列,可以得到如下数列: 1 , 1 , 1 , 1 , 2 , 1 , 1 , 3 , 3 , 1 , 1 , 4 , 6 , 4 , 1 , … 1,1,1,1,2,1,1,3,3,1,1,4,6,4,1, …

背包问题---

一、背包模型 有一个体积为V的背包,商店有n个物品,每个物品有一个价值v和体积w,每个物品只能被拿一次,问能够装下物品的最大价值。 这里每一种物品只有两种状态即"拿"或"不拿". 设状态dp[i][j]表示到第i个物品为止,拿的物品总体积为j的情况下的最大价…

网络网络层之(3)IPv6地址

网络网络层之(3)IPv6协议 Author: Once Day Date: 2024年4月2日 一位热衷于Linux学习和开发的菜鸟,试图谱写一场冒险之旅,也许终点只是一场白日梦… 漫漫长路,有人对你微笑过嘛… 全系列文档可参考专栏:通信网络技术_Once-Day的…

简化备案域名查询的最新API接口

随着互联网的发展,越来越多的网站和域名被注册和备案。备案域名查询是一个非常重要的功能,可以帮助用户在特定时间段内查询已备案的域名信息。现在,我将介绍一个简化备案域名查询的最新API接口,该接口可以帮助用户快速查询备案域名…

SQL 注入神器:jSQL Injection 保姆级教程

一、介绍 jSQL Injection是一种用于检测和利用SQL注入漏洞的工具,它专门针对Java应用程序进行SQL注入攻击。以下是关于jSQL Injection的一些介绍: 功能特点: 自动化扫描: jSQL Injection具有自动化扫描功能,能够检测J…

Cesium入门路上的问题解决和知识点集合

想要进行cesium事件处理,必然会涉及到Cesium.ScreenSpaceEventHandler(viewer.scene.canvas)但是与js不同,viewer的位置要先于viewer调用代码大小写错了,就会找不到构造的东西​ 练习时这个方法无效主要是setInputAction方法的括号位置错误应…

精品推荐-2024护网HVV实战教程资料合集(共20章)

以下是资料目录,如需下载,请前往星球获取:https://t.zsxq.com/19vwYrf4t 精品推荐,2024护网HVV实战教程资料合集,压缩包内涵大量实战资料,共20章。星球内会持续更新教程包。 01-HW介绍.zip 02-HTTP&Bu…

揭秘微信如何设置自动回复

01 自动通过好友后自动回复设置 02 个人聊天的关键字自动回复设置 不仅如此,在微信私域管理系统上还可以进行批量多个号自动添加好友、批量群发、定时发朋友圈等操作,可以大幅度提升工作效率,将繁琐的任务交给系统来完成,从而节省…