news 2026/4/15 16:47:50

每天重复操作太烦?让Open-AutoGLM帮你一键完成

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
每天重复操作太烦?让Open-AutoGLM帮你一键完成

每天重复操作太烦?让Open-AutoGLM帮你一键完成

你是否也经历过这些时刻:
打开小红书搜美食,点开、输入、翻页、截图,重复十次;
给十个客户发同一条微信,复制、切换、粘贴、发送,手指酸到发麻;
每天固定时间刷抖音关注新博主,点进主页、找关注按钮、点击确认,机械得像机器人……
这些不是“该做的事”,而是“本不该由人来做的事”。
Open-AutoGLM 正是为此而生——它不教你写代码,也不让你调参数,只听你一句自然语言指令,就替你把手机上的事全干了。

1. 这不是遥控器,是能看懂屏幕的AI助手

1.1 它到底能做什么?

Open-AutoGLM(Phone Agent)不是传统意义上的自动化脚本。它不依赖预设坐标、不硬编码UI路径、不靠XPath或ID定位元素。它真正的能力在于:一边看屏幕,一边理解界面,一边思考下一步,一边动手操作

举几个真实可运行的例子:

  • “打开美团,搜‘附近2公里内的川菜馆’,把前三家店名和评分截图发到微信文件传输助手”
  • “登录淘宝,进入我的订单,找到最近一笔未评价的订单,点进去,写‘菜品新鲜,配送很快’并提交评价”
  • “打开小红书,搜索‘通义万相’,点进第一条笔记,长按保存图片,然后返回首页”

这些指令,你不用拆解成“先点应用图标→再点搜索框→再输入文字→再点放大镜……”,AI会自己判断当前界面状态、识别可点击区域、规划最优路径,并通过ADB精准执行。

1.2 和普通自动化工具的本质区别

对比项传统ADB脚本 / Auto.jsOpen-AutoGLM
理解能力完全不懂界面内容,只认坐标或控件ID用视觉语言模型“看懂”当前屏幕(按钮在哪、文字是什么、页面类型)
适应性换个手机分辨率或APP版本就失效坐标归一化+多模态理解,适配不同设备与界面变化
指令方式需写代码:“tap(500,300) → swipe(200,1000,200,300) → type(‘美食’)”自然语言:“帮我搜美食,选评分最高的那家”
容错能力页面加载慢/弹窗出现/跳转失败 → 整个流程卡死AI实时感知状态,自动加Wait、点Back、重试或请求人工接管
中文支持ADB原生命令不支持中文输入内置ADB Keyboard广播机制,完美输入中文、emoji、标点

它不是“更聪明的脚本”,而是第一个真正具备手机端GUI认知能力的开源Agent框架

1.3 谁在背后支撑它?

Open-AutoGLM 的能力来自三层协同:

  • 视觉层:每一步都截取当前屏幕,转为base64图像传给模型;
  • AI层:AutoGLM-Phone-9B模型(基于GLM-4.1V微调),同时接收图像+文本指令,输出带思考链的动作指令;
  • 执行层:ADB控制模块将AI输出的do(action="Tap", element=[500,300])安全解析、坐标转换、精准执行。

三者环环相扣,缺一不可。而整个过程,你只需说一句话。


2. 三分钟上手:从连手机到跑通第一条指令

2.1 硬件和环境准备(极简版)

你不需要服务器、GPU或复杂配置。只要满足以下三点,就能本地跑起来:

  • 一台Windows/macOS电脑(Python 3.10+)
  • 一部Android 7.0+真机(或模拟器,推荐MuMu模拟器)
  • 一根USB线(WiFi连接可选,但首次建议用USB)

注意:这不是云端服务,所有AI推理默认走你自己的云服务器(或本地vLLM),但控制端完全在你本地运行,你的手机数据不会上传到任何第三方。

2.2 手机端三步设置(5分钟搞定)

别被“开发者模式”吓到,这三步你肯定做过:

  1. 开开发者选项:设置 → 关于手机 → 连续点击“版本号”7次 → 弹出“您已处于开发者模式”
  2. 开USB调试:设置 → 系统 → 开发者选项 → 打开“USB调试”(勾选即可)
  3. 装ADB Keyboard(关键!)
    • 下载 ADB Keyboard APK
    • 安装后,进入手机“设置 → 语言与输入法 → 当前输入法”,把默认输入法切换为ADB Keyboard

验证成功标志:用USB线连电脑,在命令行输入adb devices,看到一串设备ID(如emulator-5554xxxxxx device),说明ADB已通。

2.3 控制端部署(复制粘贴即可)

在你的电脑终端中,依次执行:

# 1. 克隆项目(国内用户建议用清华源加速) git clone https://gitee.com/zai-org/Open-AutoGLM cd Open-AutoGLM # 2. 安装依赖(自动处理ADB、Pillow、requests等) pip install -r requirements.txt pip install -e . # 3. 运行测试指令(替换为你自己的设备ID) python main.py \ --device-id "emulator-5554" \ --base-url "http://localhost:8000/v1" \ --model "autoglm-phone-9b" \ "打开微信,搜索联系人‘张三’,给他发消息‘明天会议提前半小时’"

设备ID怎么查?运行adb devices第一列就是。
base-url怎么填?如果你还没部署模型服务,先跳过这步,用我们提供的免费API(见下文“零门槛体验”)。

2.4 零门槛体验:不用搭模型,也能马上试

不想折腾vLLM或租GPU?没问题。Open-AutoGLM官方提供了公开可用的推理API端点(限学习与演示):

python main.py \ --device-id "emulator-5554" \ --base-url "https://api.zai.org/v1" \ --model "autoglm-phone-9b" \ "打开抖音,搜索‘AI Agent’,点进第一个视频,点赞并分享到微信"

无需注册、无需密钥、不限次数(非商用场景)。你看到的每一句思考、每一个动作,都是真实模型在推理——不是mock,不是demo。


3. 实战演示:一条指令,五步自动完成

我们以“打开小红书搜美食”为例,全程录屏+日志还原真实执行流:

3.1 第一步:你只说一句,它开始工作

python main.py "打开小红书搜美食"

控制台立刻输出:

[INFO] Connected to device: emulator-5554 [INFO] Taking screenshot... [INFO] Current app: System Home [INFO] Sending multimodal request to model...

3.2 第二步:AI“看”屏幕,“想”怎么做(思考链输出)

屏幕上是手机桌面,AI收到截图后,第一反应是:

<think> 当前在系统桌面,需要启动小红书应用。 小红书图标通常位于桌面第二页或应用抽屉中。 先尝试滑动到第二页查找,若未找到则打开应用抽屉。 </think> <answer>do(action="Swipe", start=[500,1000], end=[500,200])</answer>

→ 它没瞎点,而是根据常识判断图标位置,并选择滑动而非盲目点击。

3.3 第三步:执行滑动,再截新图,继续“看”

控制台显示:

[INFO] Executing: Swipe from (500,1000) to (500,200) [INFO] Taking new screenshot... [INFO] Current app: System Home

新截图传来,AI发现小红书图标已在视野中:

<think> 小红书图标已出现在屏幕左上角,坐标约[200,300]。 点击该图标启动应用。 </think> <answer>do(action="Tap", element=[200,300])</answer>

3.4 第四步:启动App,等待加载,识别搜索框

几秒后,小红书首页加载完成。AI再次分析截图:

<think> 已进入小红书首页,顶部有搜索栏,文字提示‘搜索小红书’。 点击搜索框激活输入法。 </think> <answer>do(action="Tap", element=[500,150])</answer>

3.5 第五步:输入文字,触发搜索

此时,ADB Keyboard已就绪,AI发出输入指令:

<think> 搜索框已激活,现在输入‘美食’二字。 注意使用中文输入法,确保字符正确。 </think> <answer>do(action="Type", text="美食")</answer>

→ 控制台显示Inputting text: '美食' via ADB Keyboard,手机屏幕实时出现“美食”二字,回车键自动触发搜索。

全程耗时约12秒,你只说了7个字。
没有一行脚本,没有一次手动点击,没有一次坐标校准。


4. 它为什么能“稳”?四个关键设计保障真实可用

很多AI Agent项目Demo惊艳,落地即崩。Open-AutoGLM在工程细节上做了大量“反Demo化”设计,让它真正扛得住日常使用。

4.1 坐标不靠猜,靠归一化:0-999的通用坐标系

不同手机分辨率从720p到4K,绝对坐标毫无意义。Open-AutoGLM强制AI输出0-999范围的相对坐标

  • [0,0]= 左上角
  • [500,500]= 屏幕正中心(无论1080x2400还是1440x3200)
  • [999,999]= 右下角

执行时再动态换算:

x_abs = int(element[0] / 1000 * screen_width) # 例:500/1000 * 1080 = 540 y_abs = int(element[1] / 1000 * screen_height) # 例:300/1000 * 2400 = 720

效果:同一套Prompt、同一组训练数据,直接泛化到所有安卓设备。

4.2 中文不乱码,靠广播不靠ADB原生

ADBinput text命令对中文支持极差。Open-AutoGLM采用成熟方案:ADB Keyboard + Android广播

流程如下:

  1. 自动检测并切换输入法为ADB Keyboard
  2. adb shell am broadcast -a ADB_INPUT_TEXT --es msg "美食"发送UTF-8字符串
  3. 输入完成后,自动切回你原来的输入法

效果:输入“火锅、烧烤、川菜、😋、”,全部原样呈现,无乱码、无丢失。

4.3 敏感操作不越界,靠人工接管兜底

遇到支付页、密码框、人脸识别?系统会主动“刹车”:

  • 截图失败 → 返回纯黑图 → AI识别为敏感页 → 输出do(action="Take_over", message="请手动完成支付")
  • 收到该指令 → 触发你预设的回调函数(如弹出提示框或打印文字)→ 你手动操作 → 按回车继续

效果:既不强行操作引发风险,也不静默失败,全程可控、可审计、可中断。

4.4 内存不爆炸,靠“用完即删”策略

一张1080p截图base64编码约1.2MB。如果10步都保留,光图像就占12MB内存+海量token。Open-AutoGLM的解法很朴素:

  • 每步只传当前截图
  • 动作执行完毕,立刻从历史消息中删除图像字段,只留文本描述
  • 后续步骤仅携带“当前App:小红书”、“页面已加载”等轻量状态

效果:100步任务内存占用稳定在20MB内,推理速度不随步数衰减。


5. 超越“自动化”:它还能帮你做什么?

Open-AutoGLM的设计目标从来不是“替代点击”,而是扩展人的操作半径。以下是开发者和普通用户都在用的真实场景:

5.1 个人效率:把重复劳动交给AI

  • 信息采集:每天固定时间抓取某电商商品价格,生成Excel发邮箱
  • 社交管理:批量给新粉丝发欢迎语,自动识别头像性别并个性化称呼
  • 内容创作辅助:在小红书搜“AI绘画教程”,自动保存TOP10笔记封面图,整理成素材库

用户反馈:“以前花2小时整理竞品海报,现在设个定时任务,早上咖啡没喝完,图已存好。”

5.2 开发者测试:告别手工点点点

  • UI回归测试:写一条指令“登录→进个人中心→修改昵称→退出”,每日自动跑,截图对比差异
  • 多机型兼容验证:同一指令,批量在华为、小米、OPPO真机上执行,自动生成兼容报告
  • 异常路径覆盖:模拟网络断开、权限拒绝、弹窗出现,测试App健壮性

工程师说:“我们把它集成进CI流水线,每次发版前自动跑50条核心路径,漏测率下降70%。”

5.3 无障碍支持:让视障用户“触摸”屏幕

  • 将屏幕内容实时语音播报(接入TTS)
  • 用户语音说“点右上角三个点”,AI定位并点击
  • 结合OCR,朗读图文笔记全文

社区项目已基于此框架开发出简易版无障碍助手,获2024中国信息无障碍大赛创新奖。


6. 常见问题与避坑指南(来自真实踩坑记录)

6.1 “为什么点不准?”——不是AI问题,是你的设置

  • ❌ 现象:AI说点[500,300],但实际点了别的地方
  • 解决:检查手机是否开启“开发者选项→最小宽度”或“字体缩放”,这些会改变逻辑分辨率。关闭即可。
  • 进阶:在phone_agent/config/apps.py中为你的设备添加专属适配(如"xiaomi": {"scale_factor": 1.2}

6.2 “中文输成方块?”——ADB Keyboard没生效

  • ❌ 现象:输入框显示□□□
  • 解决:
  1. 进入手机“设置→语言与输入法→当前输入法”,确认已选ADB Keyboard
  2. 在命令行运行adb shell ime list -s,输出应含com.android.adbkeyboard/.AdbIME
  3. 若无,重新安装APK并重启手机

6.3 “一直卡在‘正在加载’?”——页面没刷新完就操作

  • ❌ 现象:AI在空白页上乱点
  • 解决:在Prompt中加入明确等待指令,如“等待页面底部导航栏出现后再操作”。
  • 更优:启用--wait-for-ui参数,框架会自动检测关键UI元素(如“搜索”文字、首页图标)出现后再继续。

6.4 “能控制iOS吗?”——目前不支持,但有路标

  • ❌ 现状:iOS需通过WebDriverAgent或XCUITest,架构与ADB完全不同
  • 进展:智谱已发布iOS适配技术白皮书,核心思路是“将XCUITest操作抽象为与ADB一致的action接口”,预计Q3开源预览版。

7. 总结:它不是终点,而是你手机智能体的第一站

Open-AutoGLM的价值,不在于它今天能做多少事,而在于它证明了一件事:让AI真正理解并操作GUI,技术上已经可行,工程上已经可用。

它没有用晦涩的强化学习术语包装,没有堆砌“多智能体”“分层规划”等概念,而是用最朴实的方式——截图、看图、说话、动手——完成了从0到1的跨越。

对你而言,这意味着:

  • 不用学编程,自然语言就是你的API;
  • 不用调模型,开箱即用的推理服务就在那里;
  • 不用怕失效,归一化坐标+状态感知+人工接管,三重保险;
  • 不用等未来,今天插上手机,就能让它开始干活。

那些每天重复的、琐碎的、消耗注意力的操作,本就不该属于你。
把它们交给Open-AutoGLM,然后去做真正需要你思考、创造和感受的事。


获取更多AI镜像

想探索更多AI镜像和应用场景?访问 CSDN星图镜像广场,提供丰富的预置镜像,覆盖大模型推理、图像生成、视频生成、模型微调等多个领域,支持一键部署。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/27 2:23:00

掌握MyBatis-Flex:3个步骤实现高效数据访问

掌握MyBatis-Flex&#xff1a;3个步骤实现高效数据访问 【免费下载链接】mybatis-flex mybatis-flex is an elegant Mybatis Enhancement Framework 项目地址: https://gitcode.com/gh_mirrors/my/mybatis-flex MyBatis-Flex数据访问框架为开发者提供了更灵活、更高效的…

作者头像 李华
网站建设 2026/4/8 21:34:10

infer_frames改32会怎样?Live Avatar帧数调整实验

infer_frames改32会怎样&#xff1f;Live Avatar帧数调整实验 1. 实验背景&#xff1a;为什么关注infer_frames参数&#xff1f; 你有没有试过在Live Avatar里把--infer_frames从默认的48改成32&#xff0c;结果发现显存突然够用了&#xff0c;但视频看起来有点“卡”&#x…

作者头像 李华
网站建设 2026/4/11 21:42:28

多语言界面适配:GPEN国际化改造可行性论证

多语言界面适配&#xff1a;GPEN国际化改造可行性论证 1. 改造背景与核心价值 GPEN图像肖像增强工具自发布以来&#xff0c;凭借其在人像修复、细节还原和自然感优化方面的出色表现&#xff0c;迅速成为设计师、摄影师和内容创作者的常用工具。当前版本由“科哥”完成WebUI二…

作者头像 李华
网站建设 2026/4/8 7:00:50

零基础掌握专业级智能视频处理:VideoFusion全面技术指南

零基础掌握专业级智能视频处理&#xff1a;VideoFusion全面技术指南 【免费下载链接】VideoFusion 一站式短视频拼接软件 无依赖,点击即用,自动去黑边,自动帧同步,自动调整分辨率,批量变更视频为横屏/竖屏 https://271374667.github.io/VideoFusion/ 项目地址: https://gitco…

作者头像 李华
网站建设 2026/4/3 12:27:41

AutoGLM-Phone如何验证执行结果?断言与反馈机制

AutoGLM-Phone如何验证执行结果&#xff1f;断言与反馈机制 1. 框架定位&#xff1a;从Open-AutoGLM到手机端智能体落地 Open-AutoGLM 是智谱开源的轻量级手机端AI Agent框架&#xff0c;它不是简单地把大模型“搬”到手机上&#xff0c;而是构建了一套视觉理解—意图解析—动…

作者头像 李华