一句话搞定复杂操作:Open-AutoGLM真实体验分享
1. 这不是语音助手,是能“看见”并“动手”的手机AI助理
你有没有过这样的时刻:
想在小红书搜“上海周末咖啡馆推荐”,却要先解锁手机、点开App、等加载、输入关键词、再翻三页找图?
想给刚加的微信好友发一句“我在楼下”,结果手忙脚乱点错成“我在楼上”,又得撤回重发……
这些琐碎操作,本不该消耗人的注意力——可市面上的语音助手,至今仍卡在“打开相机”“调高音量”这类系统级指令上,对第三方App里的具体任务束手无策。
Open-AutoGLM 改变了这一点。它不靠预设脚本,也不依赖App内部API,而是用真正意义上的“多模态理解”+“自动化执行”完成闭环:
- 看得到:实时截取手机屏幕,像人眼一样识别按钮、文字、图标、布局结构;
- 想得清:结合自然语言指令,理解你的意图(比如“搜美食”不是只点搜索框,而是要打开App→进入首页→点击搜索栏→输入关键词→点搜索);
- 动得了:通过ADB精准控制点击坐标、滑动轨迹、文本输入,连长按、双击、返回键都能模拟。
这不是概念演示,而是一个已在真机跑通的轻量级Phone Agent框架。它由智谱开源,专为手机端场景优化,9B参数模型在云端API模式下,普通笔记本+安卓手机就能跑起来。
一句话总结它的能力:你用中文说一句需求,它就替你把整套操作走完。
本文不讲论文推导,不堆技术参数,只聚焦一个目标:让你用最短路径,在自己手机上亲眼看到“AI替你点手机”这件事真实发生。
2. 零显卡、零编译:30分钟完成本地实操部署
2.1 硬件与环境准备:比装微信还简单
你不需要GPU服务器,不需要Linux服务器,甚至不需要Mac——一台Windows电脑(Win10/11)、一部Android 7.0+真机(vivo S20、小米13、华为Mate50均实测通过),就是全部硬件要求。
软件层面只需三样:
- Python 3.10(建议用conda新建虚拟环境,避免包冲突);
- ADB工具(Android Debug Bridge,官方免费);
- 一个智谱BigModel账号(新用户送大量免费tokens,够跑几十次完整流程)。
注意:全程无需root手机,无需安装任何非官方App(除ADB Keyboard外),所有操作符合安卓安全规范。
2.2 手机端设置:三步开启“被操控”权限
别被“ADB”吓到——它本质就是安卓系统的官方调试通道,就像电脑的USB调试模式。设置过程清晰明确:
开启开发者模式:
设置 → 关于手机 → 连续点击“版本号”7次,弹出“您现在是开发者”提示即成功。启用USB调试:
设置 → 开发者选项 → 打开“USB调试”开关(部分机型需同时勾选“USB调试(安全设置)”)。安装ADB Keyboard(关键一步):
下载ADBKeyboard.apk,用命令行安装:adb install -r "C:\Downloads\ADBKeyboard.apk"安装后,进入手机“设置 → 语言与输入法 → 当前输入法”,切换为“ADB Keyboard”。
为什么需要它?因为AI要替你打字,而标准输入法无法被ADB直接触发。这个轻量APK仅提供输入服务,无后台、无权限、无联网。
2.3 电脑端配置:ADB环境变量5分钟搞定
Windows用户:下载官方platform-tools,解压到
D:\adb;
右键“此电脑”→属性→高级系统设置→环境变量→系统变量→Path→新建→粘贴D:\adb;
重启命令行,输入adb version,显示版本号即成功。macOS用户:终端执行(路径按实际调整):
echo 'export PATH=$PATH:~/Downloads/platform-tools' >> ~/.zshrc source ~/.zshrc
验证连接:用USB线连接手机,执行
adb devices若输出类似ZY225XXXXX device,说明设备已识别。若显示unauthorized,请在手机弹窗中点击“允许”。
2.4 项目部署:克隆、安装、一行命令启动
在Python虚拟环境中执行:
git clone https://github.com/zai-org/Open-AutoGLM cd Open-AutoGLM pip install -r requirements.txt此时你已拥有完整控制端代码。接下来,只需一条命令,让AI接管你的手机:
python main.py \ --base-url https://open.bigmodel.cn/api/paas/v4 \ --model "autoglm-phone" \ --apikey "your_api_key_here" \ "打开高德地图,搜索‘南京夫子庙’,查看营业时间并截图"--base-url:智谱官方API地址,无需改动;--model:固定填autoglm-phone,这是专为手机Agent微调的模型;--apikey:登录bigmodel.cn后,在“API密钥”页面创建并复制;- 最后字符串:你的自然语言指令,支持中文,越具体效果越好。
实测耗时:从克隆仓库到首次成功执行,全程22分钟(含等待手机授权弹窗)。没有编译、没有docker、没有CUDA报错。
3. 真机实测:从指令到结果,全程无人干预
3.1 指令设计原则:像教朋友一样说话
Open-AutoGLM对提示词(Prompt)非常友好,不需要写“请执行以下步骤:1.点击…2.输入…”这类机械指令。它理解的是意图,而非操作序列。实测中效果最好的指令有三个特征:
- 带明确App名:如“打开小红书”优于“打开一个社交App”;
- 动作+对象+目的:“搜索‘杭州龙井茶’并保存前3条笔记”比“帮我找茶叶”更可靠;
- 避免模糊词:“附近”“热门”“最新”可能因界面动态变化导致定位偏移,可补充限定如“小红书首页的‘附近’Tab”。
我们以一条典型指令为例,全程记录每一步:
指令:
“打开美团,搜索‘北京三里屯火锅’,进入排名第一的店铺主页,截图保存”
执行过程分解(AI自动完成):
- 截取当前手机桌面 → 识别“美团”图标位置 → 发送点击指令;
- 等待App加载完成 → 再次截图 → 定位顶部搜索栏 → 点击;
- 调用ADB Keyboard输入“北京三里屯火锅” → 点击软键盘搜索键;
- 解析搜索结果页 → 识别第一个商家卡片(含“评分4.8”“月售1200+”等视觉特征)→ 点击进入;
- 在商家主页滚动至底部 → 截图 → 自动保存到电脑当前目录
./screenshots/xxx.png。
整个过程约47秒(网络延迟占主要时间),期间你只需看着手机屏幕——它自己点、自己输、自己滑、自己截,像一个沉默但高效的数字同事。
3.2 效果对比:传统方式 vs Open-AutoGLM
| 操作任务 | 人工完成耗时 | Open-AutoGLM耗时 | 关键差异点 |
|---|---|---|---|
| 在微博搜索“iPhone15发布会”并保存前三条带图微博 | 82秒(解锁→开App→输关键词→翻页→长按保存) | 53秒 | AI自动识别图文混排结构,跳过无效信息,直取目标 |
| 给微信置顶好友发送“会议推迟到3点”并撤回上一条消息 | 45秒(找聊天→输入→发送→长按撤回) | 38秒 | AI精准定位聊天窗口内“撤回”按钮(非右上角菜单),减少误操作 |
| 在淘宝筛选“蓝牙耳机 降噪 500元内 包邮”,记录销量前三商品名称 | 110秒(多次点击筛选项→逐个查看→手动记笔记) | 66秒 | AI理解“销量排序”视觉标识(如图标+数字),自动提取文本 |
值得注意:所有操作均在未root真机上完成,且AI会主动规避敏感区域(如支付按钮、隐私设置入口),遇到登录页或验证码时自动暂停,等待人工接管。
4. 工作原理拆解:它到底怎么“看”和“做”?
Open-AutoGLM不是黑箱,其核心流程清晰可追溯,共分四步闭环:
4.1 视觉感知:不只是OCR,而是UI理解
传统方案用OCR提取文字,再靠规则匹配按钮。Open-AutoGLM采用视觉语言模型(VLM),将整张截图编码为多模态向量,同时理解:
- 空间关系:搜索框在顶部居中,返回按钮在左上角;
- 语义角色:带放大镜图标的输入框 = 搜索功能,红色“立即购买”按钮 = 主行动点;
- 状态上下文:灰色不可点击按钮、正在加载的旋转图标、弹窗遮罩层。
这使得它能在不同App、不同主题色、不同分辨率下稳定识别,无需为每个App单独训练。
4.2 意图解析:从一句话生成可执行计划
收到指令后,模型内部生成结构化思维链(Chain-of-Thought),例如:
指令:“打开知乎,搜‘大模型入门书单’,收藏第一条回答”
→ 思维链:
- 启动知乎App;
- 定位首页搜索栏(图标为放大镜+文字“搜索”);
- 输入“大模型入门书单”;
- 点击搜索;
- 解析结果页,找到首条回答卡片(含“回答”标签+作者头像);
- 定位该卡片右上角“收藏”图标(心形);
- 点击收藏。
该思维链全程可查看(添加--verbose参数),便于调试和理解AI决策逻辑。
4.3 动作执行:ADB指令的智能封装
模型不直接发送原始ADB命令,而是调用封装好的动作API:
click(x, y):基于屏幕坐标点击;swipe(start_x, start_y, end_x, end_y):滑动;input_text("text"):调用ADB Keyboard输入;press_back():模拟返回键;screenshot():截取当前屏幕。
所有坐标均经归一化处理(0~1范围),适配不同分辨率,避免硬编码坐标失效。
4.4 安全机制:默认不越界,关键操作需确认
框架内置三层防护:
- 权限白名单:禁止执行
adb shell input keyevent 26(电源键)、adb reboot等高危指令; - 敏感区域屏蔽:自动忽略设置页、支付页、短信列表等隐私强相关界面;
- 人工接管触发:当检测到登录页、短信验证码弹窗、支付确认页时,自动暂停并输出提示:“检测到登录界面,请手动完成验证后输入‘continue’继续”。
这确保了技术可用性与用户控制权的平衡。
5. 进阶玩法:不止于“执行”,还能“思考”与“扩展”
5.1 交互模式:让AI成为你的手机副驾驶
运行不带具体指令的命令,即可进入交互式会话:
python main.py --base-url https://open.bigmodel.cn/api/paas/v4 --model "autoglm-phone" --apikey "xxx"终端出现提示符:Enter your task:
此时你可以连续输入多轮指令,AI会记住上下文。例如:
Enter your task:打开小红书搜“露营装备”Enter your task:把第三张图保存到相册Enter your task:用这张图生成一段小红书文案
这种模式特别适合探索型任务,比如“帮我调研竞品App的首页设计”,AI可自动打开多个App、截图对比、总结差异。
5.2 提示词工程:三招提升成功率
实测发现,微调指令表述能显著改善结果稳定性:
加入约束条件:
❌ “帮我订一杯瑞幸咖啡”
“打开瑞幸App,选择‘外卖’Tab,搜索‘生椰拿铁’,选门店‘国贸店’,下单1杯,不加糖,备注‘放前台’”指定界面状态:
❌ “在微信里发消息”
“当前已打开与‘张三’的聊天窗口,请发送‘会议材料已发邮箱,请查收’”引导输出格式:
❌ “总结这篇文章”
“请用3个要点总结,每点不超过15字,用破折号开头”
5.3 本地化扩展:从API走向私有部署
虽然API模式开箱即用,但进阶用户可进一步:
- 替换为自托管模型:将
--base-url指向本地vLLM服务(需A10/A100显卡); - 定制动作库:在
phone_agent/actions.py中新增open_camera()、record_audio()等函数; - 接入企业系统:通过Webhook将AI操作结果(如截图、文本)推送至飞书/钉钉机器人。
一位开发者已实现:让Open-AutoGLM每天上午9点自动打开企业微信,截图打卡界面,OCR识别“已打卡”字样,失败则微信提醒本人——完全静默运行。
6. 总结:它不完美,但足够真实地改变了人机交互的起点
Open-AutoGLM不是终极答案,它仍有明显局限:
- 网络延迟导致操作节奏不如手动流畅;
- 复杂嵌套界面(如多层弹窗+浮动按钮)偶发定位偏差;
- 对手写体、艺术字体识别准确率待提升。
但它的价值不在“完美”,而在“可行”。它第一次让普通开发者、产品经理、甚至非技术人员,无需学习Appium或UiAutomator,仅凭自然语言和基础ADB知识,就能构建出真正理解屏幕、执行任务的AI代理。
当你对手机说“把刚才拍的夕阳照片发给妈妈,并附言‘今天晚霞真美’”,AI不再只是转达语音,而是打开相册→找到最新照片→点开→选择微信→搜索联系人→粘贴文字→发送——整套动作一气呵成。这种体验,已经超越了“工具”,而接近一种新的交互范式。
技术终将隐形,而便利理应触手可及。
获取更多AI镜像
想探索更多AI镜像和应用场景?访问 CSDN星图镜像广场,提供丰富的预置镜像,覆盖大模型推理、图像生成、视频生成、模型微调等多个领域,支持一键部署。