Open-AutoGLM入门手册:5步实现手机全自动操作
1. 这不是科幻,是今天就能用上的手机AI助手
你有没有过这样的时刻:想在小红书找一家新开的咖啡馆,却卡在反复切换App、输入关键词、点开又返回的循环里?或者想关注一个抖音博主,但要手动打开App、点搜索框、粘贴ID、点进主页、再点关注——整个过程手指都快划出残影。
Open-AutoGLM 就是来终结这种重复劳动的。它不是另一个“能聊天”的大模型,而是智谱开源的、真正能在真实安卓设备上动手干活的AI Agent框架。它的核心能力很实在:看懂你的手机屏幕,听懂你说的每一句大白话,然后像一个熟练的真人一样,替你点、滑、输、截、回退、跳转……全程自动。
更关键的是,它不依赖预设脚本,也不需要你写一行自动化代码。你只需要说:“打开美团搜‘24小时营业的便利店’,点开第一家店,截图发给我”,它就能自己理解界面结构、识别按钮位置、判断加载状态、处理弹窗,并把结果交到你手上。这不是概念演示,而是已经跑在真机上的完整工作流。
下面这5个步骤,就是你从零开始让AI接管手机的全部路径。没有抽象理论,只有可执行、可验证、每一步都能看到反馈的操作。
2. 第一步:搞懂它到底怎么“干活”
在动手前,先建立一个清晰的认知:Open-AutoGLM 的工作方式,是典型的“感知-决策-执行”三层闭环,但它把这三件事都压缩进了日常语言里。
2.1 它靠什么“看”屏幕?
不是OCR,也不是简单截图识别。Phone Agent 使用的是视觉语言模型(VLM),它把整张手机屏幕截图当作一张“图”,同时把当前任务描述当作一段“文”,让模型在同一空间里对齐二者。比如你说“点右上角的三个点”,它不会去匹配像素坐标,而是理解“右上角”是空间关系,“三个点”是常见菜单图标语义,再结合当前界面元素布局,精准定位那个按钮——哪怕它在不同App里长得不一样。
2.2 它靠什么“做”动作?
不靠模拟点击,而是通过ADB(Android Debug Bridge)发送底层指令。这意味着它绕过了所有UI层限制:
- 能在锁屏状态下唤醒设备(需提前授权)
- 能在微信等强权限App内完成复制、粘贴、发送
- 能处理系统级弹窗(如“是否允许XX访问位置?”)
- 甚至能调用 ADB Keyboard 输入任意文字,避开中文输入法兼容性问题
2.3 它怎么“防翻车”?
真实场景最怕AI乱点。Open-AutoGLM 内置了两道安全阀:
- 敏感操作确认机制:当检测到即将执行“删除联系人”“清除缓存”“卸载应用”等高危动作时,会主动暂停并等待你人工确认;
- 人工接管通道:遇到验证码、滑块验证、或登录页需要短信验证时,它会自动切出控制权,把屏幕画面推送到你的电脑端,你手动输入后,它立刻接回流程继续执行。
这就像给AI配了个经验丰富的副驾——它负责开车,但方向盘和刹车始终在你可控范围内。
3. 第二步:本地电脑环境搭起来(10分钟搞定)
别被“ADB”“VLM”这些词吓住。这套流程专为开发者和效率爱好者设计,没那么重。我们只装真正需要的东西,不碰任何多余配置。
3.1 硬件与基础软件准备
| 项目 | 要求 | 说明 |
|---|---|---|
| 操作系统 | Windows 10+/macOS 12+ | Linux 同样支持,但本文以 Win/macOS 为主 |
| Python | 3.10 或更高版本 | python --version验证,推荐用 pyenv 或 Miniconda 管理环境 |
| 安卓设备 | Android 7.0+ 真机或模拟器 | 模拟器推荐使用 Android Studio 自带的 Pixel 设备,启动更快 |
| ADB 工具 | 最新版 platform-tools | 官方下载地址 |
小提醒:如果你用的是 macOS Ventura 或更新系统,首次运行 adb 时可能提示“已损坏,无法打开”。这是 Gatekeeper 限制,只需右键点击 adb 可执行文件 → “显示简介” → 勾选“仍要打开”即可。
3.2 ADB 环境变量配置(两分钟速成)
Windows 用户:
- 下载 platform-tools.zip,解压到
C:\adb(路径越短越好); Win + R→ 输入sysdm.cpl→ “高级”选项卡 → “环境变量”;- 在“系统变量”中找到
Path→ “编辑” → “新建” → 粘贴C:\adb; - 打开新命令行窗口,输入
adb version,看到版本号即成功。
macOS 用户:
打开终端,执行以下命令(将路径替换为你实际解压位置):
echo 'export PATH=$PATH:~/Downloads/platform-tools' >> ~/.zshrc source ~/.zshrc adb version验证成功标志:命令行输出类似
Android Debug Bridge version 1.0.41。
4. 第三步:手机端设置(3个开关,1个APK)
手机端配置比电脑还简单,总共就四件事,做完就能连上。
4.1 开启开发者模式(1次性操作)
进入手机「设置」→「关于手机」→ 连续点击「版本号」7次 → 弹出“您现在处于开发者模式”。
4.2 开启USB调试(每次换线都要确认)
回到「设置」→「系统」→「开发者选项」→ 找到并开启「USB调试」。
首次开启时,手机会弹出授权对话框,勾选“始终允许”,并点击“确定”。
4.3 安装 ADB Keyboard(解决中文输入难题)
这是关键一步。很多自动化工具卡在中文输入,因为安卓原生输入法不响应 ADB send-text 指令。ADB Keyboard 是专为此设计的轻量级输入法:
- 下载地址:GitHub Releases 页面(找最新版
.apk文件) - 安装后,进入「设置」→「语言与输入法」→「当前键盘」→ 切换为ADB Keyboard
- 不用设为默认,只要确保它已安装且启用即可
验证方法:连接手机后,在电脑命令行执行
adb shell input text "hello",手机屏幕上应出现“hello”。再试中文adb shell input text "测试",若正常显示,说明 ADB Keyboard 生效。
5. 第四步:部署控制端(克隆、安装、连接)
现在,本地环境和手机都准备好了,我们把 Open-AutoGLM 的控制大脑装上。
5.1 克隆代码并安装依赖
打开终端(Windows 用 PowerShell 或 CMD,macOS 用 Terminal),依次执行:
# 克隆官方仓库 git clone https://github.com/zai-org/Open-AutoGLM cd Open-AutoGLM # 创建并激活虚拟环境(推荐,避免包冲突) python -m venv venv source venv/bin/activate # macOS/Linux # venv\Scripts\activate # Windows # 安装核心依赖 pip install -r requirements.txt pip install -e .提示:
pip install -e .是“可编辑安装”,意味着你后续修改代码里的逻辑,无需重新安装就能生效,对调试极其友好。
5.2 连接你的手机(USB or WiFi)
确保手机已通过 USB 连接电脑,或与电脑在同一 WiFi 下。
USB 连接验证:
adb devices输出应类似:
List of devices attached 8A9X123456789ABC device其中一长串字符就是你的device-id。
WiFi 远程连接(适合长期使用):
# 1. 先用 USB 连接,开启 TCP/IP 模式 adb tcpip 5555 # 2. 断开 USB,用 WiFi 连接(需知道手机 IP,可在「WLAN 设置」里查看) adb connect 192.168.1.105:5555 # 3. 验证 adb devices # 输出应为:192.168.1.105:5555 device记住这个 IP:port 组合,后面启动 AI 代理时要用。
6. 第五步:下达第一条自然语言指令(见证时刻)
一切就绪。现在,你只需要一条命令,就能让 AI 开始工作。
6.1 命令行直接运行(最快上手)
假设你已部署好云端模型服务(如通过 vLLM 启动了autoglm-phone-9b,监听在http://192.168.1.200:8800/v1),在 Open-AutoGLM 根目录下执行:
python main.py \ --device-id 192.168.1.105:5555 \ --base-url http://192.168.1.200:8800/v1 \ --model "autoglm-phone-9b" \ "打开小红书,搜索‘手冲咖啡教程’,点开第一个笔记,下滑三屏,截图保存到相册"你会看到终端实时打印出每一步动作:
[INFO] 截取当前屏幕 → 已上传至 VLM [INFO] VLM 理解:用户想在小红书搜索“手冲咖啡教程” [INFO] 执行:点击底部导航栏「发现」图标 [INFO] 执行:点击顶部搜索框 [INFO] 执行:输入文字「手冲咖啡教程」 [INFO] 执行:点击搜索按钮 [INFO] 执行:点击第一个笔记卡片 [INFO] 执行:向下滑动三次 [INFO] 执行:调用截图命令,保存至 /sdcard/Pictures/auto_screenshot_20240520_142233.png [INFO] 任务完成!截图已同步至电脑 ./screenshots/6.2 Python API 方式(适合集成进自己的工具)
如果你希望把它嵌入到自己的脚本或 Web 工具中,phone_agent.adb模块提供了干净的接口:
from phone_agent.adb import ADBConnection, list_devices from phone_agent.agent import PhoneAgent # 1. 连接设备 conn = ADBConnection() conn.connect("192.168.1.105:5555") # 2. 初始化 AI 代理(指向你的云服务) agent = PhoneAgent( base_url="http://192.168.1.200:8800/v1", model_name="autoglm-phone-9b" ) # 3. 下达指令(支持多轮对话上下文) result = agent.run("打开微信,给‘张三’发消息:‘周末聚餐地点定在国贸了’") print(result.summary) # 返回结构化执行摘要6.3 常见问题快速自查表
| 现象 | 可能原因 | 解决方案 |
|---|---|---|
adb devices不显示设备 | USB调试未开启 / 授权未勾选 / 数据线仅充电 | 重新插拔,检查手机弹窗,换根数据线 |
| 指令执行卡在“正在截图” | ADB 权限被手机厂商限制(如华为、小米) | 进入「开发者选项」→ 关闭「USB调试(安全设置)」或开启「OEM解锁」 |
| 中文输入乱码或不显示 | ADB Keyboard 未启用 / 未安装 | 重装 APK,进「语言与输入法」确认已启用 |
| 模型返回空响应或超时 | 云服务未启动 / 端口未映射 / 显存不足 | curl http://192.168.1.200:8800/v1/models测试服务连通性;检查 vLLM 启动日志 |
7. 总结:你刚刚掌握了一种新的交互范式
回顾这5步:
- 理解本质——它不是“另一个大模型”,而是“能动手的AI同事”;
- 搭好地基——ADB 和 Python 环境,是连接数字世界与物理设备的桥梁;
- 打通任督二脉——手机端那3个开关和1个APK,解决了90%的兼容性障碍;
- 装上大脑——克隆、安装、连接,把控制权交到你手上;
- 发出第一声指令——用最自然的语言,驱动一整套复杂动作流。
你会发现,Open-AutoGLM 的价值,不在于它能多快生成一张图,而在于它把“意图”到“结果”的链路,压缩到了一句话的距离。它让“自动化”这件事,第一次真正回归到人的语言习惯里——不需要学语法,不用写逻辑,甚至不用记住 App 名字,只要说出你想做的事,它就去做。
下一步,你可以尝试更复杂的任务:
- “把今天微信里所有含‘发票’的聊天记录,截图整理成PDF发我邮箱”
- “监控淘宝订单页,一旦‘待发货’变成‘已发货’,立刻通知我并截图物流单号”
- “每天上午9点,自动打开Keep,播放‘晨间拉伸10分钟’课程”
这些不再是设想。它们就藏在你刚刚敲下的那条python main.py ...命令背后。
获取更多AI镜像
想探索更多AI镜像和应用场景?访问 CSDN星图镜像广场,提供丰富的预置镜像,覆盖大模型推理、图像生成、视频生成、模型微调等多个领域,支持一键部署。