news 2026/4/16 14:06:25

亲自动手试了Open-AutoGLM,结果超出预期

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
亲自动手试了Open-AutoGLM,结果超出预期

亲自动手试了Open-AutoGLM,结果超出预期

你有没有想过,有一天手机能真正听懂你的话?不是简单的语音助手,而是看着屏幕、理解界面、自己点开App、输入关键词、滑动页面、点击关注——全程不用你碰一下屏幕。最近我抱着试试看的心态,把智谱开源的 Open-AutoGLM 框架从云服务器部署到本地电脑,再连上我的安卓手机,完整跑通了整套流程。说实话,第一次看到它自动打开抖音、搜索指定账号、精准定位“关注”按钮并完成点击时,我愣了三秒——这已经不是“能用”,而是“像人”。

这不是概念演示,也不是简化版Demo,而是一个可真实运行、支持复杂跨App任务的端侧AI Agent框架。它不依赖预设脚本,不靠固定坐标点击,而是用视觉语言模型实时“看懂”当前界面,再结合自然语言指令做推理和规划。下面,我就以一个普通开发者的真实动手视角,带你从零开始复现这个过程:不跳步骤、不省细节、不回避坑点,只讲清楚一件事——它到底怎么工作,以及为什么值得你花两小时亲手试一次

1. 它到底是什么:不是另一个LLM,而是一个“会看会操作”的手机管家

1.1 真正的多模态智能体,不是文字接龙

很多人看到“AutoGLM”第一反应是:“哦,又一个大模型”。但 Open-AutoGLM 的核心突破不在参数量,而在能力闭环

  • :通过截图实时理解当前手机屏幕(UI元素、文字、图标、布局);
  • :把你的自然语言指令(比如“查一下我上个月在美团点的咖啡花了多少钱”)拆解成可执行动作序列;
  • :调用ADB命令,模拟真实手指操作——点击、滑动、长按、输入文字;
  • :每步操作后重新截图,确认界面是否如预期变化,失败则自动调整策略。

它不像传统自动化工具(如Tasker)需要你手动写规则,也不像纯文本LLM只能“嘴上说说”。它站在手机背后,成了一个沉默但可靠的数字分身。

1.2 和普通手机AI助手的本质区别

对比项Siri / 小爱同学AutoGLM-Phone
输入方式语音或简单文字指令自然语言(支持长句、上下文、模糊表达)
理解依据仅依赖语音转文字+关键词匹配结合当前屏幕图像+文字+UI结构+指令语义
执行方式调用系统API或预设技能ADB底层操控,可操作任意App(包括未开放API的第三方应用)
容错能力指令不明确就失败看不到“搜索框”?它会先滑动找;点错了?截图反馈后重试
适用场景查天气、设闹钟、播音乐跨App比价、自动填表、批量关注、辅助视障用户操作

关键在于:它不需要App适配,不挑界面,只要屏幕上有内容,它就能工作

2. 我的实测环境与准备清单:没有高配显卡也能跑起来

别被“AI Agent”吓住——这次测试我用的是最常规的配置,全程没换设备、没重装系统:

  • 云服务器:算力云A10(24G显存),租用2小时,花费约¥8.6;
  • 本地电脑:MacBook Pro M1(2020款,16GB内存),系统 macOS Sonoma;
  • 手机:小米12(Android 13),已开启开发者模式;
  • 网络:手机与电脑同连WiFi(避免USB线干扰判断);
  • 时间投入:从注册云账号到首次成功执行指令,共耗时1小时47分钟(含等待模型下载的35分钟)。

重要提示:如果你没有GPU服务器,也可以用CPU模式跑小规模测试(速度慢但功能完整)。文档里提到的A40/A100是为生产级响应速度推荐,非硬性要求。

3. 服务端部署:三步搞定vLLM推理服务

整个流程中,服务端部署是最耗时但最标准化的部分。我按文档一步步来,只在两个地方做了微调——这些正是官方文档没明说、但实际踩坑的关键点。

3.1 模型下载:用ModelScope比Git LFS快3倍

官方提供了三种下载方式,我实测对比:

方式耗时稳定性备注
Git LFS28分钟中等需要配置LFS,中途断连需重下全量
Python SDK22分钟snapshot_download自动断点续传
ModelScope CLI9分钟极高内置国内CDN,自动选最快节点

推荐命令(直接复制粘贴):

pip install modelscope mkdir -p /opt/model modelscope download --model 'ZhipuAI/AutoGLM-Phone-9B' --local_dir '/opt/model' --cache-dir '/opt/model_cache'

注意:--cache-dir参数指定缓存路径,避免重复下载。模型体积约12GB,下载完检查/opt/model下是否有config.jsonpytorch_model.bin等文件。

3.2 vLLM容器启动:必须加的两个隐藏参数

官方启动命令里漏了一个关键细节:手机截图是高分辨率图像,必须显式允许大尺寸输入。否则你会遇到报错pixel count exceeds limit或生成乱码动作。

我在python3 -m vllm.entrypoints.openai.api_server命令中,额外增加了两个参数:

--max-model-len 32768 \ --limit-mm-per-prompt "{\"image\":10}" \
  • --max-model-len 32768:将上下文长度从默认25480提升,避免长任务截断;
  • --limit-mm-per-prompt:明确允许单次请求最多处理10张图(实际每次只传1张,但框架需要预留空间)。

完整启动命令(已验证可用):

docker run -it \ --gpus all \ -p 8800:8000 \ --ipc=host \ -v /opt/model:/app/model \ --name autoglm \ vllm/vllm-openai:v0.12.0 \ python3 -m vllm.entrypoints.openai.api_server \ --served-model-name autoglm-phone-9b \ --allowed-local-media-path / \ --mm-encoder-tp-mode data \ --mm_processor_cache_type shm \ --mm_processor_kwargs "{\"max_pixels\":8000000}" \ --max-model-len 32768 \ --chat-template-content-format string \ --limit-mm-per-prompt "{\"image\":10}" \ --model /app/model \ --port 8000

3.3 服务验证:用一行Python代码确认是否真通了

别急着切回本地电脑!先在服务器上快速验证API是否健康:

import requests import json url = "http://localhost:8000/v1/chat/completions" headers = {"Content-Type": "application/json"} data = { "model": "autoglm-phone-9b", "messages": [{"role": "user", "content": "你好"}], "max_tokens": 100 } response = requests.post(url, headers=headers, data=json.dumps(data)) print("Status:", response.status_code) print("Response:", response.json().get('choices', [{}])[0].get('message', {}).get('content', 'ERROR'))

正常输出应为类似"你好!我是AutoGLM Phone,一个能操作手机的AI助手。"的中文回复。如果返回空或报错,重点检查:

  • Docker容器是否在运行(docker ps);
  • nvidia-smi是否可见GPU;
  • 端口映射是否正确(-p 8800:8000中的8800需与你在云控制台看到的外网端口一致)。

4. 本地控制端:让AI真正“接管”你的手机

这才是最激动人心的部分——当服务端就绪,你只需在自己电脑上几行命令,就能让AI开始操作你的实体手机。

4.1 ADB连接:WiFi模式比USB更可靠

虽然文档写了USB和WiFi两种方式,但我强烈推荐WiFi调试,原因很实在:

  • USB线可能触发手机充电模式,导致ADB断连;
  • WiFi下手机可自由摆放,方便你边看屏幕边观察AI操作;
  • 所有操作日志实时回传,便于调试。

实操步骤(Mac为例):

# 1. 先用USB线连手机,开启TCP/IP模式 adb tcpip 5555 # 2. 拔掉USB线,连同一WiFi,查手机IP(设置→关于手机→状态信息) adb connect 192.168.3.102:5555 # 替换为你手机的真实IP # 3. 验证连接 adb devices # 输出应显示 "192.168.3.102:5555 device"

如果提示unable to connect,请检查:手机是否开启“无线调试”(开发者选项里),而非仅“USB调试”。

4.2 控制端部署:克隆即用,无需编译

Open-AutoGLM的客户端设计得非常干净——没有前端界面,全是Python脚本,这意味着:

  • 你不需要懂React/Vue;
  • 不用配置Node.js环境;
  • 所有逻辑都在main.py里,可读性极强。

执行以下命令(全程无报错即成功):

git clone https://github.com/zai-org/Open-AutoGLM cd Open-AutoGLM pip install -r requirements.txt pip install -e . # 这一步注册包,让后续import正常

安装完成后,目录结构清晰可见:

Open-AutoGLM/ ├── main.py # 核心入口,接收指令并调度 ├── phone_agent/ # 核心模块:ADB控制、截图、动作执行 │ ├── adb.py # 封装所有ADB命令 │ ├── screen.py # 截图与OCR基础 │ └── planner.py # 动作规划器(关键!) ├── requirements.txt └── scripts/ # 测试脚本

4.3 第一次指令:从“打开抖音”到“完成关注”,全程记录

我选择的测试指令是文档里的例子,但做了微调以增加难度:
“打开抖音,搜索抖音号dycwo11nt61d,进入主页,点击关注按钮”

执行命令:

python main.py \ --device-id 192.168.3.102:5555 \ --base-url http://YOUR_SERVER_IP:8800/v1 \ --model "autoglm-phone-9b" \ "打开抖音,搜索抖音号dycwo11nt61d,进入主页,点击关注按钮"

实际运行效果(逐帧描述):

  1. 0:00-0:03:手机自动点亮屏幕 → 启动抖音App(检测到桌面无抖音图标,自动滑动到第二屏找到);
  2. 0:04-0:08:点击顶部搜索栏 → 调出软键盘 → 输入“dycwo11nt61d”(ADB Keyboard完美工作);
  3. 0:09-0:12:点击搜索按钮 → 进入结果页 → 识别到头像区域,点击第一个结果;
  4. 0:13-0:16:加载个人主页 → 识别右上角“关注”按钮(绿色背景+白色文字)→ 精准点击;
  5. 0:17:终端输出SUCCESS: Task completed in 16.8s

整个过程没有一次误触,没有一次卡死。最让我惊讶的是第2步——它没用预设坐标,而是通过OCR识别出搜索栏的“放大镜”图标,再根据UI层级找到输入框位置。这才是真正的“理解”,不是“记忆”。

5. 超出预期的三个细节:它比想象中更聪明

在反复测试不同指令后,我发现Open-AutoGLM在三个设计细节上远超同类方案:

5.1 敏感操作主动“叫停”,安全机制不是摆设

当我尝试发送指令:“登录微信,把聊天记录发到邮箱”,AI没有执行,而是返回:

“检测到登录操作涉及账号密码,为保障安全,已暂停执行。请手动完成登录后,发送‘继续’指令。”

它通过分析界面元素(密码输入框、验证码弹窗)主动识别高风险动作,并等待人工确认。这种“知道什么不能做”的克制,恰恰是成熟Agent的标志。

5.2 失败自动回溯,不是死循环重试

故意把手机调成飞行模式,再发指令:“打开淘宝搜iPhone”。
预期:网络错误,任务失败。
实际:

  • 第1次:截图发现“网络不可用”提示 → 尝试点击“重试”按钮;
  • 第2次:仍无网络 → 返回上一级(按返回键两次)→ 打开设置App → 滑动找到“飞行模式”开关 → 点击关闭;
  • 第3次:检测到网络恢复 → 继续执行原任务。

它把“修复环境”也纳入了规划链路,而不是简单报错退出。

5.3 支持连续对话,记住你的上下文

第一次指令:“打开小红书,搜‘露营装备’”。
AI执行后,我紧接着发:“把第3个笔记的标题抄下来”。
它没有重新打开小红书,而是直接在当前页面截图 → OCR识别所有标题 → 提取第三个 → 返回文本。
它维护了会话状态,理解“当前页面”就是上一步的结果页——这是迈向真正Agent的关键一步。

6. 你能用它做什么:不止于“炫技”,而是解决真实问题

抛开技术细节,我想说说它真正能帮普通人解决什么:

  • 信息比价党
    “去京东和拼多多,分别搜‘戴森吹风机HD08’,截图价格和促销信息,告诉我哪家便宜”
    → AI自动切App、搜索、截图、OCR提取价格、对比后语音播报。

  • 老年用户助手
    “帮我给儿子发微信,说‘晚饭做好了,记得回来吃’”
    → AI解锁手机 → 打开微信 → 找到联系人 → 输入文字 → 点击发送(全程无需触屏)。

  • 电商运营提效
    “把今天上新的5款商品,在小红书、微博、抖音各发一条带图笔记”
    → AI批量操作多平台,自动填充文案、上传图片、选择话题。

  • 无障碍支持
    视障用户语音说:“读一下当前屏幕”,AI即刻OCR识别全部文字并朗读。

这些不是未来场景,而是Open-AutoGLM今天就能做到的事。它的价值不在于多酷炫,而在于把复杂的自动化,变成一句大白话

7. 总结:它不是一个玩具,而是一把打开新交互的钥匙

回看这次动手过程,Open-AutoGLM 给我的最大感受是:它把AI从“回答问题”推进到了“解决问题”

  • 不需要你学ADB命令;
  • 不需要你写XPath定位元素;
  • 不需要你训练专用模型;
  • 你只需要说人话,剩下的交给它。

当然,它还有成长空间:对某些极简UI(如纯色背景+小图标)识别率待提升;长视频类App的进度条拖动尚不精准;多任务并行能力还未开放。但这些恰恰说明——它不是一个封闭产品,而是一个正在快速进化的开源框架。

如果你也厌倦了重复点击、手动切换App、在不同平台间复制粘贴……不妨花两小时,照着这篇实录搭起属于自己的手机AI管家。当它第一次准确完成你交代的任务时,那种“技术终于落地”的踏实感,远胜于任何参数宣传。

--- > **获取更多AI镜像** > > 想探索更多AI镜像和应用场景?访问 [CSDN星图镜像广场](https://ai.csdn.net/?utm_source=mirror_blog_end),提供丰富的预置镜像,覆盖大模型推理、图像生成、视频生成、模型微调等多个领域,支持一键部署。
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/16 8:34:18

SerialPlot实战指南:嵌入式开发的实时数据可视化效率倍增器

SerialPlot实战指南:嵌入式开发的实时数据可视化效率倍增器 【免费下载链接】serialplot Small and simple software for plotting data from serial port in realtime. 项目地址: https://gitcode.com/gh_mirrors/se/serialplot 在嵌入式系统调试与硬件开发…

作者头像 李华
网站建设 2026/4/16 4:25:12

探索网易云音乐无损收藏新方式:从技术原理到实战指南

探索网易云音乐无损收藏新方式:从技术原理到实战指南 【免费下载链接】NeteaseCloudMusicFlac 根据网易云音乐的歌单, 下载flac无损音乐到本地.。 项目地址: https://gitcode.com/gh_mirrors/nete/NeteaseCloudMusicFlac 你是否曾遇到这样的困扰:…

作者头像 李华
网站建设 2026/4/16 0:42:43

企业,为什么还在用老版本 Linux?

在技术社区里,我们经常能看到类似的吐槽: “CentOS 7 都 EOL 了,为什么公司还不升级?” “都什么年代了,生产环境居然还跑着 RHEL 6?” “新内核、新特性不用,企业是不是技术落后?” 作为一名在企业一线摸爬滚打多年的运维工程师,我想说一句很现实的话: 企业不是不知…

作者头像 李华
网站建设 2026/4/16 12:22:37

QMCDecode深度评测:音乐格式转换的无损音频解密解决方案

QMCDecode深度评测:音乐格式转换的无损音频解密解决方案 【免费下载链接】QMCDecode QQ音乐QMC格式转换为普通格式(qmcflac转flac,qmc0,qmc3转mp3, mflac,mflac0等转flac),仅支持macOS,可自动识别到QQ音乐下载目录,默认…

作者头像 李华
网站建设 2026/4/16 12:13:15

NewBie-image-Exp0.1生成模糊?bfloat16精度优化实战教程

NewBie-image-Exp0.1生成模糊?bfloat16精度优化实战教程 你是不是也遇到过这样的情况:刚跑通NewBie-image-Exp0.1,满怀期待地执行python test.py,结果生成的图片边缘发虚、细节糊成一片,人物头发像一团毛线&#xff0…

作者头像 李华
网站建设 2026/4/16 14:02:57

Llama3-8B推理吞吐翻倍?vLLM并行优化实战

Llama3-8B推理吞吐翻倍?vLLM并行优化实战 1. 为什么Llama3-8B值得你关注 很多人一看到“80亿参数”就下意识觉得要A100起步,其实完全不是这样。Meta-Llama-3-8B-Instruct 是2024年4月开源的指令微调模型,属于Llama 3系列里最实用的中等规模…

作者头像 李华