Agent系列:AppAgent v2-屏幕智能Agent(详解版)
-
引言
-
简介
-
方法
-
Agent 框架
-
Agent 交互
-
探索阶段
-
部署阶段
-
文档生成
-
高级功能
-
-
实验结果
-
总结
-
局限性
-
未来工作
1. 引言
大语言模型(LLM)如 ChatGPT 和 GPT-4 显著提升了自然语言处理能力,并且推动了智能体在自主决策中的应用。最初,这些智能体专为基于文本的交互方式设计,展现了卓越的表现,包括记忆自适应性和多任务处理能力。然而,现实世界的应用程序不仅仅局限于文本输入,还涉及视觉和其他模态数据的处理,这对传统智能体提出了挑战。
为应对这一需求,近年来涌现了多模态智能体,如 AssistGPT、Vipergpt 和 Visual ChatGPT 等,它们能够在复杂环境中执行多步骤推理、信息提取和集成,并根据用户输入作出适应性响应。此前的工作如 AppAgent v1 和 MobileAgent 通过模拟人类的交互方式,已经在智能手机应用程序中展示了较大的潜力。
尽管如此,准确识别图形用户界面仍然是多模态智能体面临的关键挑战。依赖视觉特征的传统方法往往因识别模型的局限性而不够准确。而移动环境的动态特性和频繁的应用更新也进一步加剧了这一挑战。即便是如 GPT-4 这样的先进模型,在处理不熟悉的视觉元素时仍显不足,尤其是在应对小众应用时。
为了解决这些问题,AppAgent v1 通过自动化探索和观看演示的方式增强了智能体的决策能力,但其过于依赖现成的解析器,限制了智能体在处理不标准界面元素时的灵活性。为此,AppAgent v2 提出了一种新的多模态智能体框架,扩展了动作空间,使其能够更广泛地适应不同类型的应用程序和界面元素。
1. 简介
随着多模态大语言模型(MLLM)的发展,视觉智能体(Agent)正逐渐在软件界面中,尤其是图形用户界面(GUI)中,发挥重要作用。本文设计了一个专为移动设备打造的智能体框架 AppAgent v2,该框架基于大语言模型,能够在移动设备上导航并模拟用户交互行为。AppAgent v2 通过构建灵活的动作空间,增强了其在不同应用程序中的适应性,支持解析器、文本和视觉描述的结合。智能体的工作分为两个阶段:探索(Exploration)和部署(Deployment)。
在探索阶段,智能体通过自动或手动的方式记录用户界面各元素的功能,并将其存储在结构化的知识库中。部署阶段,智能体通过 RAG(检索增强生成)技术从知识库中检索信息并实时更新,使其能够准确高效地完成任务,包括跨多个应用程序执行复杂的多步骤操作。实验结果表明,AppAgent v2 在各种基准测试中的表现优异,验证了其在实际场景中的有效性。AppAgent v2官方表示代码将很快开源。更多关于端侧大模型、Agent及其实践,欢迎关注微信公众号《小窗幽记机器学习》:
2. 方法
AppAgent v2 的多模态智能体框架分为两个阶段:探索和部署。在探索阶段,智能体通过自主或手动方式分析用户界面,记录 UI 元素及其功能,形成知识库。在部署阶段,智能体利用知识库中的信息,根据任务要求进行操作。
图1:appAgent 流程。探索模块采用Agent驱动或手动探索,将元素信息收集到文档中。部署阶段使用RAG实时检索和更新文档,从而快速准备执行任务
2.1 Agent 框架
AppAgent v2 在 Android 15 环境下使用 Android Studio 模拟器实现。智能体通过调用 AndroidController 发送指令与手机交互,结合 OCR 和检测模型,从屏幕截图中提取 UI 元素的信息(如 Android ID、文本、坐标等),并将其用于任务推断和决策。
2.2 Agent 交互
智能体通过一套标准化的指令与 Android 系统交互,指令包括点击、输入文本、滑动、返回、长按等操作。这些指令被转换为 Android 系统可执行的命令,确保与界面的交互精确无误。
2.3 探索阶段
在探索阶段,智能体通过两种方式分析用户界面:智能体驱动的探索和手动探索。
-
智能体驱动的探索:智能体自动识别需要交互的 UI 元素并执行操作,记录交互前后的变化,并根据结果反思操作的有效性。
-
手动探索:当智能体对某些界面的理解有限时,引入手动探索,GPT-4 通过观察人类的操作
记录 UI 元素的变化和任务流程,帮助智能体在未来的任务中更好地理解和应对复杂的界面和操作。
2.4 部署阶段
在部署阶段,智能体利用自查检索器(Self-query Retriever)从知识库中检索相关文档,结合当前的 GUI 信息和任务要求,执行操作。智能体可以根据任务的需要动态更新知识库,确保在不同应用场景中快速适应。通过不断更新历史信息和操作结果,智能体能够优化其决策过程,直到任务完成。
2.5 文档生成
探索阶段收集的 UI 元素信息被存储在结构化的知识库中。该知识库包括元素的 Android ID、可见标签、文本内容、视觉特征(如颜色、形状)及其屏幕坐标等。知识库支持实时更新和动态检索,确保智能体可以随着任务的变化不断调整其操作策略。
2.6 高级功能
AppAgent v2 还具有以下增强功能:
-
视觉特征决策:当无法通过标准解析器识别 UI 元素时,智能体会转向基于视觉特征的决策,利用 OCR 技术识别界面中的文本和图标,确保在面对全新界面时仍能有效操作。
-
安全检查:智能体在执行涉及敏感信息的操作(如账户密码或支付)时,会自动切换到手动模式,确保用户隐私不受侵犯。
-
跨应用任务管理:智能体能够在多个应用程序之间切换,执行复杂的跨应用任务,如从一个应用中提取信息并在另一个应用中执行操作。
3. 实验
为了评估 AppAgent v2 的性能,本文在 Android 平台上进行了一系列实验,涵盖多个基准测试和用户研究。
3.1 定量结果
AppAgent v2 在三个基准测试中进行了评估:DroidTask、AppAgent v1 基准和 Mobile-Eval。
-
DroidTask:在 13 个流行应用程序衍生出的 158 个任务中,AppAgent v2 在完成率上表现优异,显著超过了 GPT-4 和带有记忆组件的 AutoDroid,证明了其强大的任务执行能力。
-
AppAgent v1 基准:在 Twitter、Telegram 和其他常用应用的测试中,AppAgent v2 通过探索和部署阶段的结合,展示了其在多种任务和界面中的适应能力,成功率大幅提升。
-
Mobile-Eval:在 10 个常用移动应用程序中,AppAgent v2 在成功率、过程分数、相对效率和完成率四个指标上均表现出色,验证了其高效、准确地执行复杂任务的能力。
表2: MobileAgent和appAgent在Mobile-Eval上的指标对比结果
3.2 用户研究
为了进一步展示 AppAgent v2 的实际应用效果,本文进行了用户研究,模拟了复杂的跨应用任务。结果表明,AppAgent v2 能够准确执行长时间、多步骤的任务,展现了其在实际场景中处理复杂任务的能力和灵活性。
图3:跨app应用上的定性结果
3.3 UI 界面解析分析
AppAgent v2 结合了结构化数据和视觉特征两种方法解析 UI 界面。对于常规应用,智能体依赖从 Android 系统解析的 XML 数据,而对于自定义开发的应用,智能体则通过 OCR 和视觉特征识别图标和文本。该双重策略显著提高了智能体的适应性和任务执行的可靠性。
4. 总结
本文提出了一个多模态智能体框架 AppAgent v2,显著提升了智能体在移动设备上的交互能力。通过整合解析器和视觉特征,AppAgent v2 构建了一个灵活的动作空间,能够适应不同类型的应用程序界面,并通过探索和部署两个阶段有效管理移动设备的动态环境。实验证明了该框架在图形用户界面识别和复杂任务执行方面的优越性,尤其是在跨应用任务和新环境中的适应能力。
AppAgent v2 的主要贡献包括:
-
多模态智能体框架的引入:结合解析器和视觉特征,构建了灵活的动作空间,增强了智能体与图形用户界面的交互能力,提高了其在新环境中的适应性。
-
结构化存储格式的开发:结合 RAG 技术,实现了对知识库的实时更新和访问,增强了智能体的决策精度和任务执行效率。
-
广泛的实验证明:通过多个基准测试和用户研究,验证了智能体在各种移动应用程序中的有效性,展示了其适应性、用户友好性和操作效率。
AppAgent v2 在现有技术基础上进一步提升了智能体在复杂移动环境中的表现,为未来的多模态智能体研究提供了重要的参考和改进方向。
5. 局限性
尽管 AppAgent v2 在多个应用场景中表现优异,但仍存在一些局限性:
-
数字标签识别的局限性:AppAgent v2 依赖智能体识别 UI 上的数字标签来确定特定元素。当 UI 元素本身包含数字时,可能会导致混淆。这种问题可以通过预先的手动探索和记录来缓解。
-
隐藏 UI 元素的交互难题:智能体在处理一些隐藏 UI 元素(如加速视频播放的按钮)时,由于缺乏先验知识,可能无法检测到相关元素,进而限制了其执行某些操作的能力。未来的工作将侧重于增强 UI 识别能力,并结合先验知识来解决这些问题。
6. 未来工作
未来的研究工作将集中在以下几个方面:
-
增强跨应用任务处理能力:进一步优化智能体在多个应用程序之间切换时的决策流程,提升其处理复杂跨应用任务的效率。
-
优化视觉特征识别:改进视觉特征的识别与操作,特别是在面对复杂或定制化的应用界面时,确保智能体始终能够做出正确的交互决策。
-
提高智能体的用户体验:通过优化智能体的反馈机制和任务执行过程,进一步提升用户体验,使其更加直观和高效。
总之,AppAgent v2 为多模态智能体的发展提供了坚实的基础,并为未来的移动设备智能体研究指明了方向。