亲测Open-AutoGLM:让AI帮你点手机,效果太惊艳了

1. 前言:什么是 Open-AutoGLM?

Open-AutoGLM 是由智谱AI开源的一套面向手机端的AI智能体(Agent)框架,核心组件包括视觉语言模型 AutoGLM-Phone 和控制框架 Phone Agent。它能够通过多模态理解手机屏幕内容,并结合自然语言指令自动完成点击、滑动、输入等操作。

用户只需用一句话下达任务,例如“打开小红书搜索深圳美食”,系统即可:

  • 截取当前手机屏幕
  • 使用视觉语言模型解析界面元素
  • 理解用户意图并规划操作路径
  • 调用 ADB 执行自动化动作

整个过程无需手动干预,真正实现“动口不动手”的智能交互体验。在实际测试中,其执行准确率高、响应流畅,尤其适合日常高频但重复性高的手机操作场景。

本文将基于真实部署经验,带你从零搭建 Open-AutoGLM 环境,涵盖环境配置、连接调试、模型调用、问题排查和进阶应用,确保你也能快速上手这一前沿技术。


2. 核心架构与工作原理

2.1 系统组成概览

Open-AutoGLM 的整体架构分为三个关键模块:

模块 功能说明
Phone Agent 控制端 运行在本地或远程主机上的 Python 程序,负责协调设备控制与模型通信
ADB 设备桥接 Android Debug Bridge,用于截屏、点击、输入、启动App等底层操作
AutoGLM 视觉语言模型 多模态大模型,接收屏幕图像+文本指令,输出结构化操作命令

数据流如下:

自然语言指令 + 实时截图 → AutoGLM 模型 → 操作指令序列 → ADB 执行 → 手机状态变化

2.2 工作流程拆解

当用户输入一条指令后,系统按以下步骤运行:

  1. 屏幕感知
    通过 adb exec-out screencap -p 获取当前手机屏幕截图,作为视觉输入。

  2. 多模态理解
    将截图与自然语言指令一起送入 AutoGLM 模型,进行联合推理。模型需识别:

    • 屏幕中的可交互元素(按钮、输入框、列表项)
    • 当前页面语义(是否为首页、搜索页、详情页等)
    • 用户意图与目标路径
  3. 动作规划
    模型输出标准化的操作指令,如:

    {"action": "tap", "x": 540, "y": 960}
    {"action": "type", "text": "深圳美食"}
    {"action": "swipe", "from_x": 540, "from_y": 1800, "to_x": 540, "to_y": 600}
    
  4. 执行反馈闭环
    ADB 执行动作后再次截图,形成新的观察输入,构成一个完整的决策-执行-反馈循环。

  5. 敏感操作接管机制
    对于涉及登录、支付、验证码等场景,系统会主动暂停并提示人工介入,保障安全性。


3. 快速部署指南

3.1 硬件与软件准备

类别 要求
操作系统 Windows / macOS / Linux
Python 版本 3.10 或以上
安卓设备 Android 7.0+,支持 USB 调试
网络环境 电脑与手机在同一局域网(WiFi连接时)
存储空间 至少 20GB 可用空间(本地部署模型需约 18GB)

3.2 安装 ADB 工具

ADB(Android Debug Bridge)是连接电脑与安卓设备的核心工具。

下载地址

前往 Android Platform Tools 下载对应系统的压缩包。

配置环境变量

Windows 用户

  1. 解压下载文件至任意目录(如 C:\platform-tools
  2. 打开“系统属性” → “高级” → “环境变量”
  3. 在“系统变量”中找到 Path,添加该目录路径
  4. 命令行执行 adb version 验证安装成功

macOS 用户

# 假设解压到 Downloads 目录
export PATH=${PATH}:~/Downloads/platform-tools
# 可写入 ~/.zshrc 永久生效
echo 'export PATH=${PATH}:~/Downloads/platform-tools' >> ~/.zshrc

4. 手机端设置

4.1 开启开发者选项与调试模式

  1. 进入手机“设置” → “关于手机”
  2. 连续点击“版本号”7次,启用“开发者选项”
  3. 返回设置主菜单,进入“开发者选项”
  4. 启用以下两项:
    • ✅ USB 调试
    • ✅ USB 调试(安全设置)——此选项常被忽略,但对自动化操作至关重要

4.2 安装 ADB Keyboard 输入法

由于标准输入法无法接受 ADB 文字输入指令,必须安装专用输入法。

  1. 下载 ADBKeyboard.apk
  2. 使用命令行安装:
    adb install ADBKeyboard.apk
    
  3. 在手机“语言与输入法”设置中启用 ADB Keyboard
  4. 注意:无需设为默认输入法,系统会在需要时自动切换

5. 部署控制端代码

5.1 克隆项目仓库

git clone https://github.com/zai-org/Open-AutoGLM
cd Open-AutoGLM

5.2 创建虚拟环境(推荐)

避免依赖冲突,建议使用独立虚拟环境:

# 创建虚拟环境
python -m venv venv

# 激活虚拟环境
# Windows
venv\Scripts\activate
# macOS/Linux
source venv/bin/activate

5.3 安装依赖

# 使用国内镜像加速安装
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install -e .

提示:首次安装可能耗时较长,请保持网络稳定。


6. 设备连接方式

6.1 USB 连接(推荐初学者)

  1. 使用数据线连接手机与电脑
  2. 手机弹出“允许USB调试?”对话框时点击“确定”
  3. 验证连接状态:
    adb devices
    
    输出示例:
    List of devices attached
    1234567890ABCDEF    device
    

6.2 WiFi 无线连接(支持远程控制)

适用于远程调试或无物理连线场景:

# 第一步:通过USB开启TCP/IP模式
adb tcpip 5555

# 第二步:断开USB,使用IP连接
adb connect 192.168.1.100:5555

# 查看连接状态
adb devices

注意:设备必须与电脑处于同一局域网。


7. 模型部署方案选择

7.1 方案一:使用云端 API(新手友好)

适合无高性能GPU的用户,成本低、部署快。

推荐平台

智谱 AI BigModel 平台(推荐):

  1. 注册账号:https://open.bigmodel.cn
  2. 获取 API Key:用户中心 → 项目管理 → API Keys
  3. 调用命令:
    python main.py \
      --base-url https://open.bigmodel.cn/api/paas/v4 \
      --model "autoglm-phone" \
      --apikey "your_api_key_here" \
      "打开美团搜索附近的粤菜馆"
    

ModelScope 魔搭社区

python main.py \
  --base-url https://api-inference.modelscope.cn/v1 \
  --model "ZhipuAI/AutoGLM-Phone-9B" \
  --apikey "your_modelscope_key" \
  "打开抖音搜索指定博主并关注"

费用参考:单次操作约 0.1~0.5 元,新用户通常有免费额度。

7.2 方案二:本地部署模型(高性能需求)

适合拥有 RTX 3090/4090 或 A100 等显卡的用户,响应更快、隐私更强。

使用 vLLM 部署服务
# Linux/macOS
python3 -m vllm.entrypoints.openai.api_server \
  --served-model-name autoglm-phone-9b \
  --model zai-org/AutoGLM-Phone-9B \
  --port 8000 \
  --allowed-local-media-path / \
  --mm-encoder-tp-mode data \
  --mm_processor_cache_type shm \
  --mm_processor_kwargs "{\"max_pixels\":5000000}" \
  --max-model-len 25480 \
  --chat-template-content-format string \
  --limit-mm-per-prompt "{\"image\":10}"
:: Windows CMD
python -m vllm.entrypoints.openai.api_server ^
  --served-model-name autoglm-phone-9b ^
  --model zai-org/AutoGLM-Phone-9B ^
  --port 8000 ^
  --allowed-local-media-path / ^
  --mm-encoder-tp-mode data ^
  --mm_processor_cache_type shm ^
  --mm_processor_kwargs "{\"max_pixels\":5000000}" ^
  --max-model-len 25480 ^
  --chat-template-content-format string ^
  --limit-mm-per-prompt "{\"image\":10}"

首次启动会自动下载模型文件(约 18GB),请确保磁盘空间充足。


8. 测试与验证

8.1 检查设备连接

adb devices

若显示设备ID及 device 状态,则连接正常。若为 unauthorized,请检查手机是否授权。

8.2 验证模型服务(本地部署用户)

python scripts/check_deployment_cn.py --base-url http://localhost:8000/v1 --model autoglm-phone-9b

8.3 执行首个任务

python main.py \
  --device-id 1234567890ABCDEF \
  --base-url http://localhost:8000/v1 \
  --model "autoglm-phone-9b" \
  "打开微信,向文件传输助手发送消息:测试成功"

如果一切顺利,你会看到手机自动解锁(如有锁屏)、打开微信、找到联系人并发送消息。


9. 实战应用场景

9.1 单次任务执行

直接传入指令字符串即可:

python main.py \
  --base-url https://open.bigmodel.cn/api/paas/v4 \
  --model "autoglm-phone" \
  --apikey "your_key" \
  "打开网易云音乐搜索张学友的《活出生命Live演唱会》专辑并播放"

9.2 交互式连续指令

进入交互模式,可连续下发多个指令:

python main.py \
  --base-url https://open.bigmodel.cn/api/paas/v4 \
  --model "autoglm-phone" \
  --apikey "your_key"

随后输入:

> 打开小红书
> 搜索“北京周末好去处”
> 点赞第一条笔记
> 返回桌面

9.3 Python API 集成

将功能嵌入自有项目:

from phone_agent import PhoneAgent
from phone_agent.model import ModelConfig

# 配置模型
model_config = ModelConfig(
    base_url="https://open.bigmodel.cn/api/paas/v4",
    model_name="autoglm-phone",
    api_key="your_api_key"
)

# 初始化代理
agent = PhoneAgent(model_config=model_config)

# 执行任务
result = agent.run("打开大众点评,搜索附近的咖啡店")
print(f"执行结果:{result}")

10. 支持的应用与操作类型

10.1 已适配主流App(部分)

类别 应用示例
社交 微信、QQ、微博、钉钉
电商 淘宝、京东、拼多多、闲鱼
外卖 美团、饿了么
视频 抖音、快手、B站、爱奇艺
音乐 网易云音乐、QQ音乐
出行 携程、滴滴、12306
生活 支付宝、高德地图、小红书

10.2 内置基础操作指令

操作 说明
Launch 启动指定App
Tap 点击坐标或控件
Type 输入文本
Swipe 滑动屏幕
Back 返回上一页
Home 回到桌面
Long Press 长按操作
Double Tap 双击事件
Wait 等待加载完成
Take_over 请求人工接管

特别提醒:涉及人脸识别、短信验证码、支付密码等操作,系统会自动触发 Take_over,需人工处理后再继续。


11. 常见问题与解决方案

11.1 ADB 无法识别设备

现象adb devices 显示空或 no devices

解决方法

adb kill-server
adb start-server
adb devices
  • 更换数据线或USB接口
  • 安装手机厂商驱动(Windows常见问题)
  • 重启手机开发者选项

11.2 点击无效或无响应

原因:未开启“USB调试(安全设置)”

解决

  1. 进入“开发者选项”
  2. 启用“USB调试(安全设置)”或“USB安装”
  3. 重新连接设备

11.3 中文输入失败

检查项

  • 是否已安装 ADB Keyboard
  • 是否在输入法设置中启用了该输入法
  • 是否使用了正确的 ADB 输入命令(系统应自动处理)

11.4 截图黑屏

某些金融类App(如银行、支付宝)出于安全策略禁止截图,属正常现象。系统会跳过或请求人工接管。

11.5 Windows 命令行乱码

设置编码格式:

set PYTHONIOENCODING=utf-8 && python main.py ...

PowerShell 用户:

$env:PYTHONIOENCODING="utf-8"
python main.py ...

12. 最佳实践与使用技巧

12.1 指令编写原则

  • 具体明确:避免模糊指令如“买东西”,应写成“打开淘宝搜索蓝牙耳机价格200-500元”
  • 分步执行:复杂任务拆解为多个简单指令,提高成功率
  • 提供上下文:如“在当前页面搜索XXX”、“点击第三个商品”

12.2 提升执行稳定性

  • 保持良好网络连接(尤其是云端API用户)
  • 关闭不必要的后台弹窗广告
  • 在页面完全加载后再发起操作
  • 对长流程任务增加 Wait 操作等待加载

12.3 安全与合规建议

  • ❌ 不要让AI处理支付、身份证、银行卡等敏感信息
  • ✅ 敏感操作使用 Take_over 人工接管
  • ⚠️ 遵守各平台服务协议,避免用于刷量、作弊等违规行为

13. 总结

Open-AutoGLM 代表了当前手机端AI Agent技术的一个重要进展。它将视觉语言模型的强大理解能力与 ADB 自动化控制相结合,实现了真正意义上的“自然语言操控手机”。

经过实测验证,该系统在以下方面表现优异:

  • ✅ 日常操作准确率高(搜索、浏览、发消息等)
  • ✅ 支持多种部署方式,兼顾性能与成本
  • ✅ 提供完善的错误处理与人工接管机制
  • ✅ 可扩展性强,易于集成到自动化工作流中

尽管目前仍存在对复杂交互(如动态验证码、生物识别)的支持限制,但在大多数非敏感场景下已具备实用价值。

无论是开发者用于自动化测试,还是普通用户提升效率,Open-AutoGLM 都是一个值得尝试的前沿工具。


获取更多AI镜像

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

Logo

小龙虾开发者社区是 CSDN 旗下专注 OpenClaw 生态的官方阵地,聚焦技能开发、插件实践与部署教程,为开发者提供可直接落地的方案、工具与交流平台,助力高效构建与落地 AI 应用

更多推荐