一句话手机自己打车,开源多智能体AI助手,非苹果手机也能玩
Mobile-Agent团队 投稿
量子位 | 公众号 QbitAI
一句话让AI自动化操作手机,打个车已经不是难事了。
从官方公布的演示视频来看,用户只需要说出目的地,Agent就能够通过规划、决策和反思的流程自动化帮用户完成目的地输入,呼叫车辆等操作,适用于老人及视障人群,解决他们不会使用或者无法使用手机APP的问题。
这项成果来自阿里通义实验室Mobile-Agent的v2版本更新,具体来说,本次升级有三大亮点:
首次在手机操作任务上采用多智能体架构,并延续了一代的纯视觉方案
多智能体各司其职,实现了更有效的任务进度追踪、任务相关信息记忆和操作反思
更强大的复杂指令拆解能力、跨应用操作能力和多语言场景操作能力
任务难度提升,v2也能搞定
首先我们关注一下Mobile-Agent-v2的演示效果。从作者团队发布的演示视频来看,Mobile-Agent-v2能够完成的任务难度相比于Mobile-Agent有明显的提升。下面将展示部分演示视频中的例子。
在跨应用操作任务上,作者展示是查看聊天软件中的未读消息,并按照未读消息的要求完成任务,其中未读消息需要分享一个TikTok中宠物相关的视频给消息发布者。
该任务的难点在于,指令的一部分存在于聊天软件的未读消息中,并且分享的链接需要从另一个应用中发送给当前聊天软件的消息发布者。
从演示视频来看,Mobile-Agent-v2先是打开了WhatsApp并查看了未读消息。在得知需要从TikTok中找视频并分享后,Mobile-Agent-v2退出当前应用并进入TikTok中刷视频来寻找宠物相关的视频。在找到视频后,通过分享按钮将视频链接成功发送到WhatsApp的消息发布者的聊天界面内。
接下来是一个社交媒体平台的例子。
社交媒体平台作为手机应用中日活跃量最大的应用类型,往往具有信息量大、界面复杂、干扰信息多等特点。
作者展示的是搜索名人“马斯克”,关注他并且评论一个他的帖子。Mobile-Agent-v2首先准确地找到了搜索界面。在输入“Musk”后,候选项中出现了大量的干扰选项,而Mobile-Agent-v2根据人物的全名和头像选择了目标名人,随后点击了关注。
在点击关注之后,出现的推荐关注列表挡住了原来的帖子,而Mobile-Agent-v2仍然能正确理解界面,通过上划的方式找到了帖子,最终完成了评论。
此外,作者还展示了一个在YouTube上完成类似关注和评论的任务。从上述演示视频来看,Mobile-Agent-v2对于社交媒体和视频平台的操作能力十分惊艳。
另外,在初代Mobile-Agent中评测的那些任务,例如导航、下载安装应用等,Mobile-Agent-v2也能轻松完成。
最后,作者还展示了Mobile-Agent-v2在中文应用上的表现,包括在小红书中搜索攻略并评论,以及帮助用户回微信。Mobile-Agent-v2可以根据帖子的内容发布相关的评论,也能根据微信消息的内容生成相关的回复,相比于传统的评论和回复机器人更灵活。
规划智能体+记忆单元
接下来我们将介绍Mobile-Agent-v2的背景、架构设计和操作流程。
在一次手机操作任务中,智能体往往需要多步操作来完成任务的要求。在每次操作时,智能体都需要跟踪当前任务的进度,即过去的操作具体完成了什么需求,以此来结合用户的指令来推理出下一步的操作目意图。
虽然在操作历史中保存有每一步的具体操作和操作之后的屏幕状态,但是随着操作轮数的增加,操作历史的序列将逐渐变长。冗长并且图文交错格式的操作历史,会大大增加智能体追踪任务进度的难度。
如下图所示,在完成了7轮操作后,输入的操作历史的序列长度已经有一万多token,加之图文交错的数据格式,对于智能体追踪任务进度是十分困难的。
因此,Mobile-Agent-v2引入了规划智能体的角色,如下图所示,它会为操作智能体提供一份任务进度,从而将长的操作历史转化为纯文本的格式。
然而,规划智能体虽然简化了任务进度追踪,但是也导致了丢失了历史操作中的屏幕信息,这使得决策智能体无法检索到来自历史屏幕中的任务相关信息。例如在上图的任务中,需要智能体查看天气并写一份穿衣指南。而在生成穿衣指南时,历史屏幕中的天气信息需要被利用。
因此,Mobile-Agent-v2引入了记忆单元,并由决策智能体更新单元内的任务相关信息。此外,由于决策智能体无法观察操作后的屏幕信息,Mobile-Agent-v2引入了反思智能体来观察决策智能体操作前后的屏幕状态变化,并决定操作是否正确。
在论文中,作者采用了动态评估,分别在英文和非英文应用上选择了5个系统内置应用和5个第三方应用,每个应用设计了2条基础指令和2条进阶指令。
同时,针对跨应用操作也设计了2条基础指令和2条进阶指令。英文场景和非英文场景的评估效果如下表所示。从结果中可以看出,Mobile-Agent-v2无论在英文场景还是非英文场景,无论是基础指令还是进阶指令,在多个指标上都获得了全面的提升。
此外,通过人工引入额外的操作知识,能进一步提升性能(Mobile-Agent-v2 + Know.)。
作者在文章中展示了消融实验的结果,如下表所示,在去除规划智能体、决策智能体和记忆单元后,整个智能体的性能都出现了下降。
如下图所示通过分析操作失败的任务,作者发现Mobile-Agent的失败操作大量集中在后程,而Mobile-Agent-v2则相对平均。这说明了Mobile-Agent-v2能更有效地解决长序列带来的问题。
最后,文章展示了一个完整的操作流程和一个反思成功的例子,其中包括了每个角色的输出。更多的例子展示在文章的结尾部分。
Mobile-Agent-v2的代码和论文现已发布,相关链接如下:
论文:https://arxiv.org/abs/2406.01014
代码:https://github.com/X-PLUG/MobileAgent
除此之外,Mobile-Agent-v2也已经接入到魔搭的ModelScope-Agent中:
https://github.com/modelscope/modelscope-agent
投稿请发邮件到:
标题注明【投稿】,告诉我们:
你是谁,从哪来,投稿内容
附上论文/项目主页链接,以及联系方式哦
我们会(尽量)及时回复你
点这里👇关注我,记得标星哦~
微信扫码关注该文公众号作者