AppAgent
让多模态模型通过屏幕操作完成安卓应用任务。
按维度查看评分与理由
证据不足:仓库未提供权限管理、用户确认、数据流透明、敏感数据处理、依赖安全、外部影响、回滚或来源归属的说明。所有标准均未得到满足,因此得分为0。
证据不足:未提供自洽性、依赖可用性或失败消息的说明。所有标准均未得到满足,因此得分为0。
证据不足:未提供目标受众、能力边界、触发精度或环境适配的说明。所有标准均未得到满足,因此得分为0。
证据不足:未提供信息架构、安装说明、命名稳定性、示例或FAQ、已知限制、许可证、版本控制或维护责任的说明。所有标准均未得到满足,因此得分为0。
证据不足:未提供输出可用性、边际价值或成本效益的说明。所有标准均未得到满足,因此得分为0。
证据不足:未提供声明可追溯性、跨来源佐证或事实与推断分离的说明。所有标准均未得到满足,因此得分为0。
- 仓库未提供任何安全或隐私相关文档,使用前需自行评估风险。
- 未提供依赖安全审计,依赖项可能存在未知漏洞。
- 未提供回滚机制,操作可能不可逆。
- 未提供数据流透明性说明,用户数据可能被发送至第三方API。
这个 Agent 能做什么,适合哪些场景?
AppAgent 是面向安卓应用操作的 LLM 多模态代理框架,以点击和滑动等简化动作模拟用户在手机上的交互。它分为探索与部署两个阶段:先自主探索应用,或从人工演示中学习,再在部署阶段执行新的任务。探索过程会为交互过的界面元素生成并保存文档,作为后续任务的知识库。项目通过 `learn.py` 收集探索或演示,通过 `run.py` 执行任务;模型可配置为 `gpt-4-vision-preview` 或 `qwen-vl-max`。运行边界是通过 adb 连接的安卓真机或 Android Studio 模拟器,而不是应用后端接口。
用户在 learn.py 中选择 autonomous exploration 或 human demonstration,输入应用名称和任务描述。自主模式会尝试完成任务、反思先前动作,并为已探索的元素生成文档;演示模式会截取手机屏幕、为可交互元素标注数字标签,并根据用户输入的动作和目标学习。随后,用户通过 run.py 选择应用、文档库和任务描述;代理使用已生成的文档执行任务,也可在没有文档时运行,但成功率不作保证。它以 config.yaml 中的模型配置调用 GPT-4V 或 Qwen,并通过 adb 与安卓设备或模拟器交互。
- 需要在连接的安卓设备上重复执行应用内任务的测试人员,可先用
learn.py探索该应用,再用run.py执行类似任务。 - 希望让模型学习某个应用操作流程的研究人员,可选择
human demonstration,手动演示相似任务并生成界面元素文档。 - 没有安卓真机但需要试用手机 GUI 代理的开发者,可使用 Android Studio 自带模拟器并安装待操作应用。
- 需要比较两种视觉语言模型在手机应用操作中表现的实验者,可在
config.yaml中在 GPT-4V 与qwen-vl-max之间切换。
这个 Agent 有哪些优点和局限?
- 采用探索和部署两阶段流程:探索或演示产生的界面元素文档可在后续任务中复用。
- 通过点击、滑动等简化动作与应用交互,不要求访问应用后端。
- 同时提供自主探索与人工演示两种知识获取方式,适合不同程度的人工参与。
- 可配置 GPT-4V 或
qwen-vl-max,并明确指出可通过在scripts/model.py新增模型类接入自定义模型。
- 运行依赖 adb、已开启 USB 调试的安卓设备或 Android Studio 模拟器,适用范围限定在安卓操作环境。
- GPT-4V 需要购买具备资格的 OpenAI API key;项目估计每次请求/响应约花费 0.03 美元。
- README 指出
qwen-vl-max在 AppAgent 场景中的表现相对 GPT-4V 较差。 - 没有已有文档库时可以运行,但成功率不保证;生成文档也可能需要人工检查和修订。
如何安装或部署这个 Agent?
准备 Python 3,并安装 Android Debug Bridge(adb)。连接已开启 USB 调试的安卓设备;没有真机时,可安装 Android Studio 并使用其 Device Manager 中的模拟器。进入仓库目录后运行:
pip install -r requirements.txt在根目录的 config.yaml 中配置模型。使用 GPT-4V 时填入具备访问资格的 OpenAI API key;使用 Qwen 时创建阿里云 DashScope API key,填入 DASHSCOPE_API_KEY,并将 MODEL 从 OpenAI 改为 Qwen。
如何使用这个 Agent?
先运行 python learn.py,按提示选择自主探索或人工演示,输入应用名称与任务描述。完成后运行 python run.py,输入应用名称,选择要使用的文档库,再输入任务描述。若应用尚无文档库,可以选择无文档运行,但项目未保证成功率。
这个 Agent 与同类方案有什么区别?
项目将 qwen-vl-max 作为 GPT-4V 的替代多模态模型:前者在 README 所述时期可免费使用,但在 AppAgent 场景中的表现较 GPT-4V 差。