MobileAgent - Mobile-Agent:具有视觉感知的自主多模式移动设备代理

Created at: 2024-01-26 22:17:06
Language: Python
License: MIT

Mobile-Agent:具有视觉感知的自主多模式移动设备代理


王俊阳1, 徐海洋 2†, 叶佳博 2, 闫明 2†
沈威洲2, 张骥 2, 黄飞2, 桑继涛1†
{俊阳旺, JTSANG}@bjtu.edu.cn, {shuofeng.xhy, ym119608}@alibaba-inc.com

1北京交通大学 2阿里巴巴集团
通讯作者

📋介绍

  • 纯可视化解决方案,独立于 XML 和系统元数据。
  • 操作范围不受限制,可进行多应用操作。
  • 多种视觉感知工具,用于操作定位。
  • 无需探索和培训,即插即用。

📢新闻

  • [2.5] 🔥🔥我们提供免费的 API,并部署体验移动代理的整个过程,即使你没有 OpenAI API 密钥。查看快速入门
  • [2.2] 🔥我们正在部署基于 Gradio 的演示,用户将能够上传屏幕截图。
  • [1.31] 🔥我们的代码可用!欢迎试用 Mobile-Agent。
  • [1.31] 🔥Mobile-Eval 中的人工操作数据正在准备中,并将很快开源。
  • [1.30] 我们的论文可在LINK上获得。
  • [1.30] 我们在 Mobile-Eval 上的评估结果已经公布。
  • [1.30] 代码和 Mobile-Eval 基准测试即将推出!

📺演示

https://github.com/X-PLUG/MobileAgent/assets/127390760/26c48fb0-67ed-4df6-97b2-aa0c18386d31

🔧制备

安装

git clone https://github.com/X-PLUG/MobileAgent.git
cd MobileAgent
pip install -r requirements.txt

连接移动设备的准备工作

  1. 下载 Android 调试桥
  2. 打开Android手机上的ADB调试开关,需要先在开发者选项中打开它。
  3. 使用数据线将手机连接到计算机,然后选择“传输文件”。
  4. 按如下方式测试你的 ADB 环境: .如果显示连接的设备,则准备工作完成。
    /path/to/adb devices
  5. 如果你使用的是 MAC 或 Linux 系统,请确保按如下方式开启 adb 权限:
    sudo chmod +x /path/to/adb
  6. 如果你使用的是 Windows 系统,则路径将是
    xx/xx/adb.exe

🔧快速上手

注意

❗由于 GPT-4V 在感知非英语屏幕截图时会产生严重的幻觉,因此我们强烈建议在纯英语系统和应用程序下使用 Mobile-Agent 以确保性能。 ❗由于当前资源有限,请联系我们获取由 url令牌组成的免费 API 密钥。

python run_api.py --adb_path /path/to/adb --url "The url you got" --token "The token you got" --instruction "your instruction"

🔧开始使用你自己的 API 密钥

视觉感知工具的准备

  1. 下载图标检测模型 Grounding DION
  2. 运行 Mobile-Agent 后,文本检测模型将自动从 modelscope 下载。

python run.py --grounding_ckpt /path/to/GroundingDION --adb_path /path/to/adb --api "your API_TOKEN" --instruction "your instruction"

API_TOKEN 是来自 OpenAI 的 API 密钥,具有访问 .

gpt-4-vision-preview

📱移动评估

Mobile-Eval 是用于评估移动设备代理性能的基准测试。本次基准测试包括 10 个主流单应用场景和 1 个多应用场景。

对于每个方案,我们设计了三个说明:

  • 指令1:相对简单和基本的任务
  • 指令 2:在指令 1 的难度基础上增加附加要求
  • 指令 3:用户需求,没有明确的任务指示

Mobile-Eval的详细内容如下:

应用 指令
Alibaba.com 1. 帮我找到 Alibaba.com 的帽子。
2. 帮我找到 Alibaba.com 的帽子。如果商品信息页面中有“添加到购物车”,请将商品添加到我的购物车。
3.我想买一顶帽子。我听说 Alibaba.com 上的东西很便宜。也许你可以为我找到它。
亚马逊音乐 1. 在 Amazon Music 中搜索歌手周杰伦。
2. 在 Amazon Music 中搜索有关“agent”的音乐并播放。
3.我想听音乐放松。找一个应用程序来帮助我。
1. 今天湖人队比赛的搜索结果。
2. 搜索有关泰勒·斯威夫特的信息。
3.我想知道今天湖人队比赛的结果。找一个应用程序来帮助我。
Gmail的 1. 发送一封空邮件至 {address}。
2. 发送电子邮件到 {address}n 告诉我的新作品。
3.我想让我的朋友知道我的新作品,他的地址是{address}。找一个应用程序来帮助我。
谷歌 map 1. 导航至杭州西湖。
2. 导航到附近的加油站。
3、我想去杭州西湖,但不知道路。找一个应用程序来帮助我。
谷歌播放 1. 在 Play 商店中下载 WhatsApp。
2. 在 Play 商店中下载 Instagram。
3. 我想要手机上的WhatsApp。找一个应用程序来帮助我。
笔记 1. 在“备忘录”中创建新备忘录。
2. 在“备忘录”中创建一个新备忘录并写下“你好,这是个备忘录”,然后保存。
3.我突然有东西要录,所以帮我找一个App,写下以下内容:下午3点开会。
设置 1. 打开黑暗模式。
2. 打开飞行模式。
3.我想查看电池电量的实时网速,请为我打开此设置。
抖音 1. 在 TikTok 中滑动有关宠物猫的视频,然后单击此视频的“赞”。
2. 在 TikTok 中滑动一段关于宠物猫的视频并评论“哦,好可爱的猫!
3. 在 TikTok 中滑动视频。点击“喜欢”3只宠物视频猫。
优酷 1. 在 YouTube 上搜索有关斯蒂芬库里的视频。
2. 在 YouTube 上搜索有关斯蒂芬库里的视频,然后打开“评论”评论“以评论”哦,厨师,你的篮球精神一直激励着我”。
3. 我需要你帮我在 YouTube 上表达我对斯蒂芬库里的爱。
多应用 1.打开日历并查看今天的日期,然后转到“笔记”并创建一个新笔记,写下“今天是{今天的数据}”。
2.检查未来5天的温度,然后在笔记中创建一个新的笔记并写下温度分析。
3. 搜索今天湖人队比赛的结果,然后在笔记中创建一个注释,为这个结果写一个体育新闻。

📝评估结果

我们在 Mobile-Evoal 上评估了 Mobile-Agent。评估结果可在LINK上获得。

  • 我们已将 10 个应用和多应用方案的评估结果存储在以每个应用命名的文件夹中。
  • 每个应用文件夹中的数字表示该应用中不同类型指令的结果。
  • 例如,如果要查看Google map中第二条指令的Mobile-Agent结果,则应转到以下路径:。
    results/Google Maps/2
  • 如果 Mobile-Agent 的最后一个操作不是“停止”,则表示 Mobile-Agent 没有完成相应的指令。在评估过程中,我们手动终止了这些无法完成的案例。

📄待办事项清单

  • 在Android平台上开发Mobile-Agent应用程序。
  • 适配其他移动设备平台。

📑引文

如果你发现Mobile-Agent对你的研究和应用有用,请使用此BibTeX进行引用:

@article{wang2024mobile,
  title={Mobile-Agent: Autonomous Multi-Modal Mobile Device Agent with Visual Perception},
  author={Wang, Junyang and Xu, Haiyang and Ye, Jiabo and Yan, Ming and Shen, Weizhou and Zhang, Ji and Huang, Fei and Sang, Jitao},
  journal={arXiv preprint arXiv:2401.16158},
  year={2024}
}

📦相关项目