
分层反思+ 主动探索 = SOTA:MobileUse 在 AndroidWorld 刷出 62.9% 新纪录
随着人工智能技术的飞速发展,多模态大语言模型(MLLMs)在理解视觉输入和遵循用户指令方面取得了显著进展。这为移动设备上的复杂任务自动化带来了新的可能性。然而,将这些模型应用于现实世界的移动场景仍面临诸多挑战,例如长时任务执行、错误恢复困难以及在不熟悉环境中启动时的冷启动问题。为了解决这些挑战,MadeAgents团队推出了MobileUse项目,旨在通过分层反思架构和主动探索模块,实现移动设备上的鲁棒性和自适应任务执行。
一、项目概述
MobileUse是由MadeAgents团队开发的一款分层反思驱动的GUI代理,专为移动设备上的自动化任务执行而设计。它通过多模态大语言模型(MLLMs)实现了对移动设备的自动操作,能够基于用户输入描述自动完成任务。MobileUse的核心优势在于其分层反思架构,能够在不同时间尺度上自我监控、检测和从错误中恢复,同时通过主动探索模块解决不熟悉环境中的冷启动问题。
二、核心功能
(一)自动操作手机
MobileUse能够根据用户输入的任务描述自动操作移动设备的UI界面,完成各种任务,例如在美团上点咖啡、在浏览器中搜索信息等。
(二)智能元素识别
它能够自动解析GUI布局并识别可操作目标,支持复杂任务的分解和多步操作。
(三)多模态交互
MobileUse支持多种输入方式,包括文本、语音和图像,能够更好地理解和执行用户指令。
(四)分层反思与主动探索
通过分层反思架构,MobileUse可以在不同层次上检测和纠正错误,确保任务的顺利执行。同时,主动探索模块能够帮助代理在不熟悉的应用中积累通用知识,提高任务执行的效率和准确性。
三、技术原理
(一)分层反思架构
MobileUse的分层反思架构包括三个主要组件:动作反思器(Action Reflector)、轨迹反思器(Trajectory Reflector)和全局反思器(Global Reflector)。动作反思器负责在每个步骤后提供即时反馈,检测动作是否按预期执行;轨迹反思器则关注最近几步的执行轨迹,确保任务按正确方向进展;全局反思器在任务完成时从整体角度评估任务是否成功完成。这种分层机制使得MobileUse能够在不同时间尺度上自我监控和纠正错误。
(二)主动探索模块
在任务执行之前,MobileUse通过主动探索模块与环境进行交互,积累通用知识。这一模块使代理能够更好地理解不熟悉的应用和界面,从而在冷启动场景中更高效地完成任务。
(三)多模态大语言模型
MobileUse基于强大的多模态大语言模型(如Qwen2.5-VL-72B-Instruct),能够处理文本和图像输入,生成准确的操作指令。这种模型的引入为MobileUse提供了强大的语言理解和视觉感知能力,使其能够更好地理解和执行复杂的用户指令。
四、应用场景
(一)日常任务自动化
MobileUse可以自动完成各种日常任务,如填写表单、设置提醒、搜索信息等,大大提高了生活和工作效率。
(二)辅助残障人士
对于视力或身体有障碍的用户,MobileUse可以通过语音指令或简单的手势操作完成复杂的任务,为他们提供更便捷的移动设备使用体验。
(三)企业自动化流程
在企业环境中,MobileUse可以用于自动化重复性任务,如数据录入、文件管理等,减少人工操作,提高工作效率和准确性。
(四)教育和培训
MobileUse可以作为教育工具,帮助学生更好地理解和操作移动设备,提高学习效率。同时,它也可以用于培训场景,帮助员工快速掌握新的应用程序和操作流程。
五、性能表现
MobileUse在AndroidWorld和AndroidLab两个动态Android基准测试环境中进行了评估。在AndroidWorld中,MobileUse取得了62.9%的成功率,相比之前的最佳解决方案V-Droid提高了3.4%;在AndroidLab中,MobileUse的成功率为44.2%,比最强基线V-Droid高出5.9%。这些结果表明,MobileUse在处理复杂移动任务方面具有显著的优势。
六、快速使用
(一)环境准备
1. 安装ADB工具:MobileUse需要通过ADB(Android Debug Bridge)控制手机,因此需要先安装ADB工具,并将手机通过USB连接到计算机。
- 下载并解压SDK Platform-Tools(https://developer.android.com/tools/releases/platform-tools#downloads),将其路径添加到环境变量中。
- 在Windows系统中,可以通过命令行运行`adb devices`来验证ADB是否可用;在Mac/Linux系统中,运行`adb devices`即可。
2. 启用开发者模式和USB调试:在手机上启用开发者模式,并打开USB调试选项。对于HyperOS或MIUI系统,还需要同时开启USB调试(安全设置)。
3. 连接设备:使用USB线将手机与计算机连接,并通过运行`adb devices`命令验证设备是否成功连接。
(二)安装MobileUse
1. 安装依赖:安装Python(版本需为3.10及以上)和pip(版本需为21.1及以上)。
2. 安装MobileUse库:
推荐使用pip直接安装:
pip install mobile-use
或者从源代码安装:
# 克隆GitHub仓库:
git clone https://github.com/MadeAgents/mobile-use.git
# 进入项目目录:
cd mobile-use
# 激活虚拟环境
uv venv .venv --pythnotallow=3.10
# 安装依赖
uv pip install -e .
(三)启动WebUI服务
运行以下命令启动WebUI服务:
python -m mobile_use.webui
服务启动成功后,通过浏览器访问`http://127.0.0.1:7860`即可进入WebUI页面。
(四)配置和使用
1. 配置VLM服务:在WebUI页面中点击“VLM Configuration”,设置多模态大语言模型的Base URL和API Key,推荐使用Qwen2.5-VL系列模型。
2. 输入任务描述:在页面左下角的输入框中输入任务描述,点击“开始”按钮即可执行任务。
3. 支持中文输入(可选):如果需要输入中文字符,可以下载并安装ADBKeyBoard APK到手机上,然后通过ADB命令安装到手机。
七、结语
MobileUse作为一款分层反思驱动的GUI代理,通过其创新的分层反思架构和主动探索模块,为移动设备上的复杂任务自动化提供了一种全新的解决方案。它不仅在基准测试中取得了优异的性能表现,还通过开源工具包为用户提供了便捷的部署和使用体验。随着多模态大语言模型技术的不断发展,MobileUse有望在更多领域发挥重要作用,推动移动自动化技术的发展。
项目地址
GitHub仓库:https://github.com/MadeAgents/mobile-use
arXiv论文:https://arxiv.org/html/2507.16853v1
本文转载自小兵的AI视界,作者:AGI小兵
