AndroidLab:一个系统化的Android代理框架,包含操作环境和可复现的基准测试,支持大型语言模型和多模态模型。

2024-10-31,由清华大学和北京大学共同创建的AndroidLab数据集,为安卓自主代理的训练和评估提供了一个包含操作环境、行动空间和可复现基准的系统框架,这对于推动安卓代理技术的发展具有重要意义。

数据集地址:Android Instruct|Android自主代理数据集|移动操作系统数据集

一、研究背景:

随着自主代理与现实世界互动中的重要性日益增加,特别是安卓代理,已成为近期频繁提及的互动方式。然而,现有的安卓代理训练和评估研究缺乏对开源和闭源模型的系统性探索。

目前遇到困难和挑战:

1、训练和评估移动代理面临的挑战包括缺乏系统性的探索,以及对静态环境的依赖,这限制了代理的实际交互能力。

2、现有的基准测试缺乏对模型行为的系统性评估,限制了对模型行为的分析、洞察力的整合以及强化学习实验的有效进行。

3、缺乏统一的基准比较开源和闭源模型在不同模态下的表现,限制了提升开源解决方案的机会。

数据集地址:Android Instruct|Android自主代理数据集|移动操作系统数据集

二、让我们一起来看一下AndroidLab

AndroidLab是一个系统性的安卓代理框架,包括操作环境、行动空间和可复现基准。

包括预定义的安卓虚拟设备和覆盖九个应用的138个任务。通过使用预加载的应用程序操作历史和离线数据的安卓虚拟设备,AndroidLab确保了可复现性,并消除了外部网络或时间依赖。

AndroidLab构建 :

AndroidLab的构建涉及任务推导和扩展、自动探索以及手动注释。

通过学术数据集和手动编写的指令来种子任务生成,然后使用语言模型创建额外的任务,并通过审核添加到数据集中。自动任务探索使用LLMs和LMMs输出完成状态,初步使用手动选择来验证结果,后来用奖励模型替代。手动注释包括指令检查、初步熟悉、任务执行和交叉验证。

AndroidLab的特点:

1、支持大型语言模型(LLMs)和多模态模型(LMMs)在同一行动空间。

2、包括XML模式和SoM模式,确保不同观察模式下的动作一致性。

3、引入ReAct和SeeAct框架,允许代理逐步思考和执行任务。

4、提供了精确的任务完成和进度评估。

AndroidLab支持文本和多模态训练,通过在线注释工具收集操作记录,该工具使用ADB命令监控用户在手机上的交互,并在每个动作之前捕获屏幕截图和页面XML。

基准测试:

AndroidLab基准测试提供了一个确定性和可复现的评估平台,允许用户公平且具有挑战性地比较安卓代理的能力。基准测试包括操作任务和查询任务,以及基于设备和屏幕状态的任务完成评估系统。

AndroidLab 的环境和基准测试概述:我们为多模态模型 (LMM) 设计了 SoM 模式,为纯文本模型 (LLMs,确保相同的动作空间。我们还在这两种模式下实现了 ReAct 和 SeeAct 框架。根据环境,我们提出了 AndroidLab 基准测试。

Android Instruct 数据收集概述

Android Instruct 微调前后的成功率

任务示例以及 AndroidLab 基准测试中所有应用和子类别的分布情况。我们将每项任务分解为子目标并独立评估它们。只有当所有子目标都得到正确解决时,任务才被视为完成。

代理完成整个任务的所有子目标的示例。我们只介绍开始和结束步骤,以及代理完成每个子目标的步骤。我们必须记录每个子目标的完成状态。如果没有这些信息,我们可能无法从已完成页面的 XML 中获取详细信息,这可能会导致对任务的误判。

XML 和 SoM 模式的主要结果。SR、Sub-SR、RRR 和 ROR 分别代表成功率、子目标成功率、反向冗余率和合理运营率。对于所有这些指标,值越高意味着越好。-ft 表示微调模型。在每种模式下,Bold 表示最佳结果。如果 SR < 5,我们不会报告 RRR 评分

ReAct 和 SeeAct 框架对 SR 结果的影响。值得注意的是,在 XML+ReAct 模式下,模型性能得到了显著提高

不同模式的平均生成代币。我们使用 LLaMA3 分词器进行计算。FT 表示指令调优模型。

介绍了四种模型在四种不同设备类型上的性能。其中,Pixel 3a 是一款体积更小的手机,Pixel 7 Pro 和 Pixel 8 Pro 的尺寸与常用手机相当,Pixel Fold 类似于平板电脑。

三、让我们一起展望AndroidLab应用

比如,我是一个安卓应用的测试人员,我想要测试应用在不同用户操作下的表现。

日常工作状态是,说起这个事吧,让人头疼。我要手动一遍又一遍地去点击、滑动屏幕,还要记录下每个操作后应用的反应,看看有没有bug,用户体验是否流畅。比如我要测试应用里的日程管理功能,我得自己打开应用,找到日程管理的界面,然后手动添加一个事件,设置时间、地点啥的,费时费力,脑壳疼。

但是,现在有了AndroidLab数据集,这事儿就简单多了。这就好比给应用来了个“智能替身”,能自动帮我模拟各种用户操作,从简单的点击到复杂的多步骤任务,都能搞定。我只需要告诉它你要测试什么功能,比如“添加一个联系人”,然后它就能自动在应用里找到对应的界面,输入信息,然后检查结果是不是符合预期。

比如,我想测试应用的响应速度,AndroidLab数据集能帮我记录下每个操作的响应时间,还能分析出哪些操作特别慢,或者有没有卡顿的情况。

比如,我想测试一个个人财务管理应用,我说:“记录一笔3000元的收入,标记为投资收入。AndroidLab数据集帮助我训练应用来准确执行这些任务。

告诉你啊,还有一个最棒的功能,AndroidLab数据集还能帮我模拟不同的用户行为,比如有些用户可能喜欢用语音输入,有些用户可能更喜欢用键盘。我能通过这个数据集,测试应用在不同用户习惯下的表现,确保每个用户都能有良好的体验。

来吧,让我们走进Android Instruct|Android自主代理|移动操作系统数据集

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何在算家云搭建Aatrox-Bert-VITS2(音频生成)

一、模型介绍 ‌ Aatrox - Bert -VITS2 模型是一种基于深度学习的语音合成系统,结合了 BERT 的预训练能力和 VITS2 的微调技术,旨在实现高质量的个性化语音合成。 二、模型搭建流程 1. 创建容器实例 进入算家云的“应用社区”,点击搜索找到…

OpenEuler 使用ffmpeg x11grab捕获屏幕流,rtsp推流,并用vlc播放

环境准备 安装x11grab(用于捕获屏幕流)和libx264(用于编码) # 基础开发环境&x11grab sudo dnf install -y \autoconf \automake \bzip2 \bzip2-devel \cmake \freetype-devel \gcc \gcc-c \git \libtool \make \mercurial \pkgconfig \zlib-devel \libX11-devel \libXext…

QCustomPlot添加自定义的图例,实现隐藏、删除功能(二)

文章目录 QCustomPlot初识和基本效果图实现步骤:详细代码示例:实现原理和解释:使用方法:其他参考要实现一个支持复选框来控制曲线显示和隐藏的自定义 QCPLegend 类,可以通过继承 QCPLegend 并重写绘制和事件处理方法来实现,同时发出信号通知曲线的状态变更。 QCustomPl…

聊一聊Elasticsearch的基本原理与形成机制

1、搜索引擎的基本原理 通常搜索引擎包括:数据采集、文本分析、索引存储、搜索等模块,它们之间的协作流程如下图: 数据采集模块负责采集需要搜索的数据源。 文本分析模块是将结构化数据中的长文本切分成有实际意义的词,这样用户…

PyCharm 导入本地包目录

PyCharm 是最新版 声明一下是野路子 现在我工程目录下有个 gen-py 文件夹,这是我 thrift 编译出来的 Python 依赖包 使用的话,我们可以在代码里加入系统路径 sys.path.append("./gen-py/") 但是这样写,PyCharm 没有提示&#…

80端口被进程 System PID=4 IIS导致的解决方法

是因为80端口被IIS占用。解决办法打开IIS管理器,然后停止:

异步4位计数器(Quartus与Modelsim联合仿真)

异步计数器(也称为ripple-through counter)的特点是每一位触发器的输出作为下一位触发器的时钟输入,因此计数速度会因为级联触发器的传播延迟而受到限制。这种计数器的最大工作频率通常低于同步计数器。 一、电路符号 输入信号:时…

若依cloud版集成微信扫码登录-绑定篇

前言 集成微信扫码登录的话,需要把项目的账号和微信账号进行绑定,然后才可以进行扫码登录 本篇内容是项目绑定微信 还需要申请一个微信开放平台账号 微信公众平台申请(测试平台)-CSDN博客 平台的项目回调接口可以先不写&…

鸿蒙应用App测试-通用测试

注意:大家记得学完通用测试记得再学鸿蒙专项测试 鸿蒙应用App测试-专项测试(DevEco Testing)-CSDN博客 注意:博主有个鸿蒙专栏,里面从上到下有关于鸿蒙next的教学文档,大家感兴趣可以学习下 如果大家觉得…

Linux 配置JDK

文章目录 一、下载Oracle-JDK1.1、如何正确的下载JDK二、配置JDK环境变量2.1 环境变量配置2.1.1、修改vim /etc/profile 添加jdk的路径一、下载Oracle-JDK 1.1、如何正确的下载JDK 首先我要安装的是oracle-jdk,这个时候什么地方都不要去,就去oracle的官网,然后找到,jdk的下…

springBoot 自动配置与starter

目录 一、自动配置 Springboot实现自动配置的核心机制 Conditional的作用是什么? 如何自定义自动配置? 步骤 例子分析 自动配置的优先级 如何禁用特定的自动配置? 二、starter 如何理解Spring Boot中的starter? 如何自…

Json 类型与多值索引 — OceanBase 4.3.2 AP 功能体验

本文来自 2024年OceanBase技术征文大赛——“让技术被看见 | OceanBase 布道师计划”的用户征文。也欢迎更多的技术爱好者参与征文,赢取万元大奖。和我们一起,用文字让代码跳动起来! 参与2024年OceanBase技术征文大赛>> MySQL在5.7.8…

Spark on YARN:Spark集群模式之Yarn模式的原理、搭建与实践

Spark 的介绍与搭建:从理论到实践-CSDN博客 Spark 的Standalone集群环境安装与测试-CSDN博客 PySpark 本地开发环境搭建与实践-CSDN博客 Spark 程序开发与提交:本地与集群模式全解析-CSDN博客 目录 一、Spark on YARN 的优势 (一&#…

java后端工程师转行AI大模型岗,工作、自我提升两不误!

随着技术的不断进步,人工智能(AI)已经成为当今科技领域最热门的话题之一。许多开发者开始考虑从传统的软件开发领域,如Java,转向人工智能领域,今天小编和大家一起来探讨Java开发者是否可以转型到人工智能&a…

Rust-宏编程

巴山楚水凄凉地,二十三年弃置身。 怀旧空吟闻笛赋,到乡翻似烂柯人。 沉舟侧畔千帆过,病树前头万木春。 今日听君歌一曲,暂凭杯酒长精神。 ——《酬乐天扬州初逢席上见赠》唐刘禹锡 【哲理】翻覆的船只旁仍有千千万万的帆船经过&a…

leetcode912.排序数组的题解

题目描述: 题目要求在不使用任何内置函数的情况下解决问题,时间复杂度为 O(nlog(n))。 笔者使用了快速排序,但是直接使用最原始的快速排序,有些特殊的测试用例会超时。 1)如果数组本身基本有序,则使用原始…

TikTok品牌出海:从“流量为王”到“价值为王”

随着市场竞争的加剧,品牌逐渐意识到,仅仅依靠流量已不足以在海外市场立足,必须实现从“流量为王”到“价值为王”的转变。本文Nox聚星将和大家探讨品牌如何与TikTok达人合作,在海外市场中建立长期稳定的品牌形象。 一、品牌出海的…

纯血鸿蒙系统 HarmonyOS NEXT自动化测试实践

1、测试框架选择 hdc:类似 android 系统的 adb 命令,提供设备信息查询,包管理,调试相关的命令ohos.UiTest:鸿蒙 sdk 的一部分,类似 android sdk 里的uiautomator,基于 Accessibility 服务&…

Kafka 可观测性最佳实践

Kafka 概述 Kafka 是由 LinkedIn 开发一个分布式的基于发布订阅模式的消息队列,是一个实时数据处理系统,可以横向扩展。与 RabbitMQ、RockerMQ 等中间件一样拥有几大特点: 异步处理服务解耦流量削峰 监控 Kafka 是非常重要的,因…

《XGBoost算法的原理推导》12-13树的叶子节点权重w和映射关系q 公式解析

本文是将文章《XGBoost算法的原理推导》中的公式单独拿出来做一个详细的解析,便于初学者更好的理解。 我们重新定义一颗树,包括两个部分: 叶子结点的权重向量 w w w;实例 -> 叶子结点的映射关系 q q q(本质是树的…