人工智能
移动代理:具有视觉感知的自主多模态移动设备代理
多模态大型语言模型(MLLM)的出现开启了移动设备代理的新时代,这些代理能够通过文本、图像和语音与世界交互和理解。这些代理标志着传统人工智能的重大进步,为用户提供了更丰富、更直观的与设备交互方式。通过利用MLLM,这些代理可以处理和综合来自各种模态的海量信息,使其能够提供个性化的帮助,并以以前无法想象的方式增强用户体验。
这些代理由最先进的机器学习技术和高级自然语言处理能力驱动,使其能够理解和生成类似人类的文本,以及以惊人的准确性解释视觉和听觉数据。从在图像中识别对象和场景到理解口头命令和分析文本情感,这些多模态代理能够无缝地处理广泛的输入。这种技术的潜力是巨大的,提供了更复杂和上下文感知的服务,例如适应人类情绪的虚拟助手和适应个体学习风格的教育工具。它们还具有革命性地使技术更容易被跨语言和感官障碍的人们所接受的潜力。
在本文中,我们将讨论移动代理,一种自主的多模态设备代理,它首先利用视觉感知工具来准确识别和定位移动应用程序的前端界面的视觉和文本元素。使用这种感知的视觉上下文,移动代理框架自主地计划和分解复杂的操作任务,并通过逐步操作导航移动应用程序。移动代理框架与现有的解决方案不同,因为它不依赖于移动系统的元数据或移动应用程序的XML文件,这样就可以在以视觉为中心的方式增强对各种移动操作环境的适应性。移动代理框架所采用的方法消除了对系统特定定制的需求,从而提高了性能并降低了计算需求。
移动代理:自主多模态移动设备代理
在移动技术的快速发展世界中,一个开创性的概念脱颖而出:大型语言模型,特别是多模态大型语言模型或MLLM,能够生成广泛的文本、图像、视频和语音,跨越不同的语言。过去几年MLLM框架的快速发展催生了MLLM的一个新的强大应用:自主移动代理。自主移动代理是软件实体,它们独立地执行、移动和功能,而不需要直接的人类命令,旨在遍历网络或设备以完成任务、收集信息或解决问题。
移动代理旨在根据用户的指令和屏幕视觉来操作用户的移动设备,这项任务需要代理同时具备语义理解和视觉感知能力。然而,现有的移动代理远远不完善,因为它们基于多模态大型语言模型,即使当前最先进的MLLM框架(包括GPT-4V)缺乏作为高效移动代理所需的视觉感知能力。此外,尽管现有的框架可以生成有效的操作,但它们难以在屏幕上准确定位这些操作,限制了移动代理在移动设备上操作的应用和能力。
为了解决这个问题,一些框架选择利用用户界面布局文件来帮助GPT-4V或其他MLLM实现定位功能,一些框架通过访问应用程序的XML文件成功地从屏幕上提取了可操作的位置,而其他框架则选择使用Web应用程序的HTML代码。如我们所见,大多数这些框架都依赖于访问底层和本地应用程序文件,这使得该方法几乎无效,如果框架无法访问这些文件。为了解决这个问题并消除本地代理对底层文件的依赖,开发人员致力于移动代理,一种具有令人印象深刻的视觉感知能力的自主移动代理。使用其视觉感知模块,移动代理框架使用移动设备的屏幕截图来准确定位操作。视觉感知模块包含OCR和检测模型,负责识别屏幕上的文本并描述移动屏幕上特定区域的内容。移动代理框架采用精心设计的提示,并促进工具和代理之间的高效交互,从而自动执行移动设备操作。
此外,移动代理框架旨在利用最先进的MLLM框架(如GPT-4V)的上下文能力来实现自主规划能力,使模型能够根据操作历史、用户指令和屏幕截图整体规划任务。为了进一步增强代理识别不完整指令和错误操作的能力,移动代理框架引入了一种自我反思方法。在精心设计的提示的指导下,代理反复检查不正确和无效的操作,并在任务或指令完成后停止操作。
总体而言,移动代理框架的贡献可以总结如下:
- 移动代理作为一个自主的移动设备代理,利用视觉感知工具来执行操作定位。它系统地规划每一步并进行自我反思。值得注意的是,移动代理仅依赖设备屏幕截图,而不使用任何系统代码,展示了一种纯粹基于视觉技术的解决方案。
- 移动代理引入了Mobile-Eval,一种评估移动设备代理的基准。该基准包括10个最常用的移动应用程序,以及这些应用程序的智能指令,分为三个难度级别。

移动代理:架构和方法
在其核心,移动代理框架由最先进的多模态大型语言模型组成,即GPT-4V,用于文本检测任务的文本检测模块。除了GPT-4V,移动代理还采用图标检测模块用于图标定位。
视觉感知
如前所述,GPT-4V MLLM为指令和屏幕截图提供了令人满意的结果,但它无法有效地输出操作发生的位置。由于这个限制,实现GPT-4V模型的移动代理框架需要依赖外部工具来协助操作定位,从而促进在移动屏幕上输出操作。
文本定位
移动代理框架实现了OCR工具来检测移动屏幕上特定文本的位置,当代理需要点击特定文本时。有三个独特的文本定位场景。
场景1:未检测到指定文本
问题:OCR无法检测到指定的文本,这可能是由于复杂的图像或OCR的局限性造成的。
响应:指示代理要么重新选择文本以进行点击,允许手动纠正OCR的疏忽,要么选择替代操作,例如使用不同的输入方法或执行其他相关任务。
理由:这种灵活性是必要的,以管理偶尔的不准确性或GPT-4V的幻觉,确保代理仍然可以有效地继续执行。
场景2:检测到单个指定文本实例
操作:自动生成一个点击检测到的文本框中心坐标的动作。
理由:仅检测到一个实例,正确识别的可能性很高,因此直接采取行动是高效的。
场景3:检测到多个指定文本实例
评估:首先,评估检测到的实例数量:
多个实例:表明屏幕上有许多类似的内容,复杂了选择过程。
动作:请求代理重新选择文本,旨在细化选择或调整搜索参数。
少数实例:可管理的检测数量允许采取更细致的方法。
动作:裁剪这些实例周围的区域,向外扩展文本检测框,以捕获更多的上下文。这种扩展确保保留更多信息,有助于决策。
下一步:在裁剪的图像上绘制检测框,并将其呈现给代理。这种视觉辅助有助于代理根据上下文线索或任务要求决定与哪个实例进行交互。
这种结构化方法优化了OCR结果和代理操作之间的交互,提高了系统在处理各种场景中的文本任务的可靠性和适应性。整个过程在以下图像中演示。

图标定位
移动代理框架实现了图标检测工具来定位移动屏幕上图标的位置,当代理需要点击它时。更具体地说,框架首先请求代理提供图标的特定属性,包括形状和颜色,然后框架使用Grounding DINO方法和提示图标来识别屏幕截图中包含的所有图标。最后,移动代理使用CLIP框架计算描述点击区域的相似性,并选择相似性最高的区域进行点击。

指令执行
为了将代理的动作转化为屏幕上的操作,移动代理框架定义了8个不同的操作。
- 启动应用程序(应用程序名称):从桌面界面启动指定的应用程序。
- 点击文本(文本标签):与显示“文本标签”的屏幕部分交互。
- 与图标交互(图标描述,位置):目标和点击指定的图标区域,其中“图标描述”详细描述了图标的属性,如颜色和形状。选择“位置”来自选项,如顶部、底部、左侧、右侧或中心,可能组合两个以实现精确导航并减少错误。
- 输入文本(输入文本):将给定的“输入文本”输入到活动文本字段中。
- 滚动上下:在当前页面的内容中导航上下。
- 后退:返回到之前查看的页面。
- 关闭:直接从当前屏幕导航回桌面。
- 停止:完成任务后停止操作。
自主规划
每一步操作都由框架执行,并在每次迭代开始之前,用户需要提供输入指令,移动代理模型使用指令生成整个过程的系统提示。另外,在每次迭代开始之前,框架捕获屏幕截图并将其提供给代理。代理然后观察屏幕截图、操作历史和系统提示以输出下一步操作。
自我反思
在其操作过程中,代理可能会遇到错误,阻止它成功执行命令。为了提高指令完成率,实施了一种自我评估方法,在两个特定情况下激活。首先,如果代理执行了有缺陷或无效的操作,阻止进度,例如当它识别出屏幕截图在操作后没有改变或显示错误页面时,它将被指示考虑替代操作或调整现有操作的参数。其次,代理可能会错过复杂指令的一些元素。一旦代理根据其初始计划执行了一系列操作后,它将被提示审查其操作序列、最新的屏幕截图和用户的指令,以评估任务是否已完成。如果发现差异,代理被要求自主生成新操作以完成指令。
移动代理:实验和结果
为了全面评估其能力,移动代理框架引入了Mobile-Eval基准,包括10个常用的应用程序,并为每个应用程序设计了三个指令。第一个操作很简单,只涵盖基本的应用程序操作;第二个操作比第一个稍复杂,因为它有一些额外的要求;最后,第三个操作是最复杂的,因为它包含了抽象的用户指令,用户没有明确指定要使用哪个应用程序或执行什么操作。
为了从不同的角度评估性能,移动代理框架设计并实施了4个不同的指标。
- 成功率(Su或Success):如果移动代理完成指令,则认为是成功。
- 过程评分(PS):过程评分指标衡量的是在执行用户指令的每一步的准确性,通过将正确步骤的数量除以总步骤数来计算。
- 相对效率(RE):相对效率评分是人类手动执行指令所需步骤数量与代理执行相同指令所需步骤数量的比率。
- 完成率(CR):完成率指标将框架成功完成的人类操作步骤数除以人类完成指令所需的总步骤数。CR的值为1,当代理成功完成指令时。
结果如下图所示。

最初,对于三个给定的任务,移动代理分别实现了91%、82%和82%的完成率。虽然并非所有任务都被完美执行,但每个任务类别的完成率都超过了90%。此外,PS指标显示移动代理在三个任务中始终表现出高概率的准确操作,成功率约为80%。另外,根据RE指标,移动代理在以类似人类最优的水平执行操作时表现出80%的效率。这些结果共同证明了移动代理作为移动设备助手的能力。
以下图表展示了移动代理理解用户命令和独立编排其动作的能力。即使在指令中没有明确的操作细节,移动代理也巧妙地解释了用户的需求,并将其转化为可执行的任务。按照这种理解,代理通过系统的规划过程执行了指令。

最后的思考
在本文中,我们讨论了移动代理,一种多模态的自主设备代理,它首先利用视觉感知技术来精确地检测和定位移动应用程序界面的视觉和文本元素。有了这种视觉上下文,移动代理框架自主地规划和分解复杂的任务,并通过逐步操作导航移动应用程序。该框架与现有的解决方案不同,因为它不依赖于移动系统的元数据或移动应用程序的XML文件,从而在以视觉为中心的方式增强了对各种移动操作环境的适应性。移动代理框架所采用的方法消除了对系统特定定制的需求,从而提高了性能并降低了计算需求。
