MobileGym
以可编程状态和确定性判定评测、训练移动 GUI 智能体。
- Star 数
- ★ 856
- 最近更新
- 1 个月前
- License
- Apache-2.0
- 主语言
- Python
- FA 评分
- 67/100 · 存在缺口
30 秒速览
- 运行形态
- 可在哪里用
- 兼容但需适配
- 费用
- 软件免费,模型调用费用自付
- 上手难度
- 中 · 需要几步配置
- 开始前需要
- 典型场景
- 移动智能体研究人员需要在每次试验使用完全相同初始状态的 WeChat、Alipay 或跨应用任务上比较模型时。
- 不适合
- 需要针对真实安卓应用或真实账号做自动化的团队
- 无法提供 GPU 或高并发服务器资源的团队
- 源码审查
- 67/100 · 存在缺口
这个 Agent 能做什么,适合哪些场景?
MobileGym 是一个在浏览器中运行的 Android 风格移动模拟平台,用于移动 GUI 智能体研究。它由 React/Vite 前端模拟器、Python 与 Playwright 驱动的 bench_env 基准环境,以及 mobilegym-rl 在线强化学习管线组成。平台将环境暴露为结构化 JSON 状态,可进行读取、注入、快照、恢复和并行克隆,并由任务中的程序化检查函数判定结果与副作用。仓库提供 28 个模拟应用、416 个参数化任务模板和一个 256 任务测试集;模拟应用不连接真实服务、账户或资金。它适合需要可复现评测和大规模在线 RL 的团队,但不是可直接操控真实 Android 手机或真实第三方账户的自动化产品。
前端通过 apps/、system/ 和 os/ 组合出模拟手机环境;bench_env 通过 Playwright 打开该环境并使用 __SIM__、__OS__、__SIM_INPUT__ 读取截图、输入 tap/type/swipe/back/home/wait/drag/complete 等动作。运行 python -m bench_env.run 时,任务类会提供 description、setup 里的 JSON 状态注入,以及 check_goals() 或 get_answer() 的确定性判定;运行器可执行单任务、suite、split、并行评测、pass@k 与重试。agent 目录提供 autoglm、uitars、venus、gui_owl、generic、generic_v2、mai_ui 和 human 适配器,输出运行结果,并可在 run_explorer.html 中查看逐步截图、动作标注、提示词和模型响应。mobilegym-rl/ 则承载在线 RL 训练代码。
- 移动智能体研究人员需要在每次试验使用完全相同初始状态的 WeChat、Alipay 或跨应用任务上比较模型时。
- 强化学习团队需要把同一任务状态克隆到大量浏览器实例中,执行 GRPO 式并行 rollout 时。
- 基准维护者需要为一个模拟应用编写含 setup 状态注入与 check_goals() 确定性判定的新任务时。
- 模型接入工程师需要使用已有 AutoGLM、UI-TARS、UI-Venus、GUI-Owl 或统一 JSON 适配器评估 GUI 模型时。
- 开发者需要以 human 手动模式重放任务、检查判定器,并在浏览器中审阅完成后的运行轨迹时。
如何安装或部署这个 Agent?
前置条件:Node.js ≥22、Python ≥3.11,以及可用的 shell 与网络连接。执行:git clone https://github.com/Purewhiter/mobilegym.git;cd mobilegym;npm install;pip install -r bench_env/requirements.txt;playwright install chromium。可选数据集约 1.9 GB:curl -L -o mobilegym-data.tar.gz https://github.com/Purewhiter/mobilegym/releases/download/data-v0.1.0/mobilegym-data-v0.1.0.tar.gz;tar -xzf mobilegym-data.tar.gz。模拟器密钥是可选项;规范基准不要求凭据。
如何使用这个 Agent?
先执行 npm run build && npm run preview -- --port 4173,然后以人工模式验证首次运行:python -m bench_env.run --task-id wechat.ReadMyWxid --agent human --env-url http://localhost:4173。列出任务可运行 python -m bench_env.run --list;运行完整测试集可使用 python -m bench_env.run --split test --parallel 8 --env-url http://localhost:4173 --agent autoglm --model-name autoglm-phone-9b。需要至少 8 路以上高并发时,先安装 nginx,执行 npm run build 和 ./scripts/server/start_nginx_gateway.sh,再把环境地址改为 https://localhost:4180。
这个 Agent 有哪些优点和局限?
- 完整环境状态以结构化 JSON 管理,可快照、恢复、注入和克隆,而非仅依赖截图或无障碍树。
- 任务通过程序化 check_goals() / get_answer() 判定,能够检查完成结果及意外副作用,不需要 VLM 作为判定器。
- 浏览器托管的轻量实例支持高并发 rollout;README 给出了单服务器 256 实例的资源与启动指标。
- 应用、系统层、基准任务和模型适配器分层组织,新增应用可依 manifest 合约接入,新增适配器也有明确位置。
- 它模拟的是研究替身应用,不连接真实服务、账户或资金,因此不能验证真实生产应用中的认证、网络后端或支付行为。
- 本地运行需要 Node.js、Python、Playwright Chromium;高并发模式还依赖 nginx,并在高并发下有 Linux inotify 配置要求。
- 伴随数据集约 1.9 GB,且数据与内容采用 CC BY-NC 4.0,非商业学术用途限制可能影响商用采用。
- 新模型必须符合现有适配器的输出模式,或自行在 bench_env/agent/ 中实现并注册适配器。
这个 Agent 与同类方案有什么区别?
相较于真实设备或常规模拟器路径,MobileGym 的定位是将完整应用状态做成可写、可重置、可克隆的 JSON,并以状态差异进行确定性判定;其 README 将 AppWorld、WebArena、VisualWebArena、AndroidWorld、AndroidLab 和 A3 列为启发来源。
与相关度最高的同类 agent 并排比较关键指标。
| Agent | 源码审查 | 形态 / 费用 | Star | 最近更新 | 主语言 | 完整支持的平台 |
|---|---|---|---|---|---|---|
| MobileGym 当前 | 67 · 存在缺口 | 命令行工具免费 + 模型费 | ★ 856 | 1 个月前 | Python | — |
| Sotopia | 46 · 缺口较多 | 代码库 / SDK免费 + 模型费 | ★ 342 | 10 个月前 | Python | OpenAI API |
| RLinf 强化学习基础设施 | 54 · 缺口较多 | 代码库 / SDK免费 | ★ 5.6k | 2 天前 | Python | — |
| MARO 资源优化平台 | 48 · 缺口较多 | 代码库 / SDK免费 | ★ 926 | 3 年前 | Python | — |
FollowAgents 如何评估这个 Agent?
查看各维度的扣分理由
README 和入门文档说明模拟应用不会连接真实服务、账户或资金,环境支持状态快照、克隆和回滚;这是权限和外部影响控制的直接依据。环境可选配置地图、天气及 LLM API 密钥,且浏览器会有外发请求,因此敏感数据处理和密钥保护说明偏少。仓库列出依赖及版本范围,但本材料没有锁文件内容或依赖安全策略,故依赖安全仅部分有据。Apache 许可证及数据单独许可、免责声明提供归属线索;发布者身份和维护责任仍未明确。
文档给出可复现的安装、启动、评测及并行运行路径,并指出数据集缺失、网关证书、并行规模和模型端容量等问题。README 的新闻时间包含未来于材料日期的条目,且其 2026-06 发布信息与指定修订版的对应关系无法从材料确认;这使自洽性偏弱。材料没有足够的运行时错误处理或用户可见失败消息证据,相关分数较低;未把未执行测试当作扣分。
材料明确面向移动 GUI Agent 评测、研究和在线 RL,并给出人工调试、单任务、小规模及大规模并行等场景。浏览器模拟器、结构化状态、任务/应用扩展契约及多种 Agent 适配器展示了广泛适用性;同时也说明截图是 Agent 观察面、模型 API 需自行提供、数据集与可选外部服务影响体验。环境安装要求较明确,但高并发依赖 Linux 调优、Chromium 与本地服务配置,部署边界仍需读者自行处理。
README、入门指南、平台规范、任务编写文档和基准环境文档构成清晰的信息层次,安装步骤、版本要求、命令示例和已知问题较充分。仓库有 Apache-2.0 许可证,数据许可证另行标明;新闻与 v0.1.0 发布说明提供部分版本线索,但材料未显示完整变更日志或维护者/支持责任。命名总体可辨识,但同一 README 说明中的服务模式、容量数字和版本信息缺乏材料内的独立核验。
可编程模拟状态、代码级评判、并行 rollout、任务目录和多种 Agent 接口为移动 GUI 研究提供了具体价值;命令示例输出成功率、步骤和运行轨迹,具备可用性。安装大型数据集、配置 Python/Node/Chromium、模型端点及高并发网关增加成本,因此成本收益不适用于轻量或无需模拟环境的使用者。宣传的性能及迁移效果在本材料中主要是 README 陈述,不能据此视为已独立证实。
README 将主张关联到任务、架构、安装、已知问题和任务规范等仓库路径,也列出基准与训练指标;这是可追踪线索。材料中的少量源文件片段并未覆盖这些文档所指的大多数实现,因此跨来源佐证有限。README 将模拟服务边界、资源估算和论文/实验结果混合陈述,部分数据被标成实验结论,但本静态材料无法核对原始日志或论文细节;评分只认可明确可追踪的内容。
- README 含有晚于材料日期的新闻条目,且材料未能确认这些条目与指定修订版的关系。
- 配置可选外部 API 密钥或使用模型端点时,应按部署环境管理密钥和外发请求;本材料没有完整的数据保留或密钥处理说明。
- 约 1.9 GB 数据集、Chromium、模型服务及高并发网关会增加安装和运维成本;并行上限还受主机与推理后端约束。
- 性能、成功率和 sim-to-real 数字在本静态材料中未获独立核验。
最近版本
来自该项目 GitHub Releases 的最新发布记录,说明为上游原文摘录,未经本站改写或测试。
-
data-v0.1.0 MobileGym data v0.1.0
常见问题
它会操作我的真实微信、支付宝或 eBay 账户吗?
是否必须配置 API key?
可以评测自己的 GUI 模型吗?
高并发运行有哪些限制?
谢谢反馈,我们会据此改进页面。