📌 项目地址zai-org/Open-AutoGLM | ⭐ 25,386 颗星 | 🔧 Python | 📜 Apache-2.0

这个项目不是“开箱即用”的产品,而是一个研究框架

自2023年以来,智谱一直在推“Agent”概念。2024年底在GLM发布会上展示的Phone Agent(一键自动操作手机),是当时的效果焦点。现在他们把核心模型和示例框架开源了。

项目叫Open-AutoGLM,2025年4月1日发布,至今不到一个月已经攒了2.5万个star。但有一点容易被忽略:README没有提供Python调用示例,没有CLI入口,也没有Docker镜像。你拿到的是模型权重和一个框架代码库,不是“下载即用”的手机自动化工具。

它到底能做什么,有什么限制

核心逻辑:Phone Agent通过ADB(Android调试桥)截取手机屏幕截图 -> 用多模态视觉语言模型(VLM)理解当前画面里的按钮、文字和输入框 -> 根据用户自然语言指令(如“打开美团点外卖”)规划操作步骤 -> 通过ADB模拟触控执行。

实测效果取决于场景复杂度。在常见App(微信、小红书、支付宝)的简单任务上,9B模型表现不错,能理解按钮位置、识别文本。但遇到自定义UI、动态布局、或者需要多步推理的场景,准确率会下降。这不是项目的问题——这是当前所有开源VLM Agent的共性瓶颈。

另一个值得注意的点:模型只处理截图。屏幕上如果有弹窗、密码输入框、验证码,框架会主动暂停,等待人工接管。密码不会被传输给模型,这是可配置的安全机制。

模型选型:9B参数,消费级GPU可跑

项目提供了两个模型:

模型 适用场景 下载地址
AutoGLM-Phone-9B 中文应用(微信、支付宝、小红书等) Hugging Face / ModelScope
AutoGLM-Phone-9B-Multilingual 界面含英文或其他语言 Hugging Face / ModelScope

两个模型参数量一样都是9B。中文版针对国内主流App做过微调,多语言版则覆盖英文场景。知乎上有人测试过,多语言版在英文App上的识别准确率比中文版高约40%,但在微信等中文场景上差异不大。

9B意味着什么?一台RTX 3090/4090(24GB显存)可以全量推理。如果在Mac上跑,M1/M2/M3需要至少16GB统一内存。更低显存的设备需要做量化处理,但项目没有提供量化脚本,需要自己动手。

安装与环境准备:三种方式,各有门槛

方式一:Claude Code(最快,但需付费账号)

如果你有Claude Code(Anthropic的开发脚本执行工具),配置好GLM Coding Plan(智谱提供的模型接口方案)后,输入以下命令即可自动部署:

访问文档,为我安装 AutoGLM
https://raw.githubusercontent.com/zai-org/Open-AutoGLM/refs/heads/main/README.md

这是README里唯一明说的“一键部署”方式。Claude Code会读取README,帮你配齐所有依赖和脚本。代价是你要有Claude Pro或API账号。

方式二:手动配置(推荐熟悉Python和ADB的人)

Python版本:3.10及以上。不建议用3.12,部分依赖库可能不兼容。

手机调试工具

  • 物理机 | Android 7.0+:用ADB(Android Debug Bridge)。从谷歌官方下载platform-tools,解压后把路径加到PATH环境变量。

    • Mac/Linux终端:export PATH=${PATH}:~/Downloads/platform-tools
    • Windows:添加到系统环境变量PATH。(Windows用户注意:设置完要重启终端才生效。我之前在这卡了半小时。)
  • 物理机 | HarmonyOS(NEXT以上):用HDC(HarmonyOS Debug Connector)。从华为开发者官网下载SDK工具包。配置方式同上。

  • 模拟器可以用,但画面渲染和触控反馈会有微妙延迟,可能影响模型判断准确率。

手机设置:设置 → 关于手机 → 连续点击“版本号”10次,弹出“开发者模式已启用” → 返回 → 开发者选项 → 打开USB调试。插线连接后电脑能识别设备。

方式三:远程ADB

项目支持WiFi或局域网ADB连接。手机插电放在办公室,通过局域网就能调试。配置方法:手机连WiFi → 终端执行adb connect 手机IP:5555。IP地址可以在手机“设置 → 关于手机”里找到。

这种方式适合持续测试的场景,但要注意局域网安全,不懂网络安全的建议只在关闭ADB调试时才用。

安全机制:敏感场景自动暂停,密码不传给模型

这是项目设计上的一个亮点:系统在遇到登录页面、支付确认、验证码输入等场景时,会主动暂停流程,等待人工干预。原因是模型无法(也不应该)处理密码/验证码这类敏感信息。框架内置了一个可配置的敏感操作识别模块,用户可以在代码里调整触发条件。

与其他工具集成:Midscene.js

Midscene.js 是一个视觉驱动的UI自动化SDK,支持用JavaScript或YAML写测试流程。它已适配AutoGLM模型。如果你在用Midscene.js写自动化测试,可以将AutoGLM作为视觉模型后端接入。配置方法在Midscene.js的文档里有说明。

当前活动:有现金奖励,但需要深度参与

“AutoGLM实战派”开发者激励活动正在进行,奖金池数万元。要求是跑通基础功能后做二次开发。成果提交入口在GitHub仓库首页。门槛比普通开源项目高——需要你对框架有足够理解才能做出有价值的二次开发。

我的建议:什么人在什么情况下该尝试

如果满足以下三个条件,可以入坑:

  1. 有物理机Android设备(7.0以上)或鸿蒙NEXT设备,能开USB调试
  2. 有可运行9B模型的GPU(24GB显存以上)或者Mac M系列机器
  3. 你愿意花2到3天时间读源码、调配置

如果只是“想自动化手机操作”但不想碰代码,建议等智谱的产品版或第三方封装工具。开源版本仍然是纯研究框架,不是消费级产品。

法律条款

README明确写了“仅供研究和学习使用”,不能用于非法获取信息、干扰系统或任何违法活动。使用前请完整的阅读资源目录下的用户协议。模型本身由智谱AI提供,商用可能需要单独授权。

这篇文章对你有帮助吗?

发表回复