AI操控手机不是梦!Open-AutoGLM实操全过程
1. 核心摘要
Open-AutoGLM是什么?
Open-AutoGLM是智谱AI开源的手机端AI智能体框架,基于视觉语言模型(VLM)与ADB自动化技术,实现通过自然语言指令驱动安卓设备完成复杂操作。用户只需说“打开小红书搜美食”,系统即可自动解析意图、理解界面、规划路径并执行点击、滑动、输入等动作。
能做什么?
支持美团、淘宝、微信、抖音等50+主流App的自动化操作,涵盖点外卖、购物比价、社交互动、内容浏览等高频场景。系统具备多模态感知能力,能“看懂”屏幕元素,并结合推理决策形成“观察→思考→执行”的闭环。
技术原理简述
系统由三部分构成:
- 视觉理解层:使用AutoGLM-Phone-9B多模态模型分析手机截图,识别UI组件和语义信息
- 任务规划层:将用户指令转化为可执行的操作序列(如启动App、查找按钮、输入文本)
- 执行控制层:通过ADB发送模拟指令,操控真实设备或模拟器
适合谁阅读?
本文面向零基础开发者及技术爱好者,提供从环境配置到实战运行的完整指南,包含详细步骤、代码示例与避坑建议,帮助你快速部署属于自己的AI手机助手。
2. 环境准备:软硬件清单与前置配置
2.1 硬件要求
| 设备 | 推荐配置 | 说明 |
|---|---|---|
| 主机电脑 | Windows / macOS / Linux,16GB+内存 | 用于运行模型服务与控制脚本 |
| 安卓设备 | Android 7.0+ 手机或模拟器 | 被控终端,需支持USB调试 |
| 存储空间 | 至少50GB可用空间 | 模型文件约18GB,项目依赖额外占用 |
提示:若显卡为NVIDIA且显存≥12GB,可启用GPU加速;否则可使用CPU模式(响应较慢)。
2.2 软件依赖安装
Python环境搭建
确保已安装Python 3.10及以上版本:
# 验证Python版本 python --version # 输出应类似:Python 3.10.12Windows用户在安装时务必勾选“Add Python to PATH”。
ADB工具配置
ADB(Android Debug Bridge)是连接电脑与安卓设备的核心工具。
下载地址:Android Platform Tools
配置流程(以Windows为例):
- 解压
platform-tools.zip至固定目录(如C:\adb) - 打开“系统属性” → “高级” → “环境变量”
- 在“系统变量”中找到
Path,添加ADB解压路径 - 命令行验证:
adb version # 正常输出ADB版本号即表示成功macOS快捷配置:
export PATH=${PATH}:~/Downloads/platform-tools # 可写入 ~/.zshrc 永久生效3. 手机端设置:开启调试与输入法
3.1 开启开发者选项与USB调试
- 进入手机“设置” → “关于手机”
- 连续点击“版本号”7次,直到提示“您已进入开发者模式”
- 返回“设置”主菜单 → “开发者选项”
- 启用“USB调试”开关
注意:首次连接时,手机会弹出授权对话框,请手动点击“允许”。
3.2 安装ADB Keyboard输入法
由于标准输入法无法被ADB直接调用,必须安装专用输入法以支持中文输入。
安装步骤:
- 下载 ADBKeyboard.apk
- 使用ADB命令安装:
adb install ADBKeyboard.apk- 进入“设置” → “语言与输入法” → “默认键盘” → 切换为“ADB Keyboard”
验证方法:在任意输入框长按 → 选择“输入方式” → 确认ADB Keyboard可用。
4. 部署Open-AutoGLM控制端
4.1 克隆项目与安装依赖
# 克隆Open-AutoGLM仓库 git clone https://github.com/zai-org/Open-AutoGLM cd Open-AutoGLM # 安装Python依赖 pip install -r requirements.txt pip install -e .说明:
-e .表示以开发模式安装,便于后续修改源码。
4.2 模型下载(推荐国内镜像)
AutoGLM-Phone-9B模型体积约为18GB,建议使用ModelScope镜像加速下载:
# 国内用户推荐(速度快) git clone https://www.modelscope.cn/ZhipuAI/AutoGLM-Phone-9B.git # 国际用户可选Hugging Face # git clone https://huggingface.co/zai-org/AutoGLM-Phone-9B5. 启动模型服务:基于vLLM部署API
5.1 安装vLLM推理引擎
pip install vllm验证CUDA是否可用(NVIDIA GPU用户):
nvidia-smi # 若显示显卡信息,则CUDA环境正常5.2 创建启动脚本
Linux/macOS用户:创建start_model.sh
#!/bin/bash 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":5000000}' \ --max-model-len 25480 \ --chat-template-content-format string \ --limit-mm-per-prompt '{"image":10}' \ --model ./AutoGLM-Phone-9B \ --port 8000Windows用户:创建start_model.bat
python -m vllm.entrypoints.openai.api_server ^ --served-model-name autoglm-phone-9b ^ --model ./AutoGLM-Phone-9B ^ --port 80005.3 启动服务
# Linux/macOS chmod +x start_model.sh ./start_model.sh # Windows start_model.bat成功标志:看到
Uvicorn running on http://0.0.0.0:8000即表示服务启动成功。
6. 设备连接与控制方式
6.1 USB连接设备
- 使用数据线连接手机与电脑
- 手机端确认“允许USB调试”
- 命令行检查设备状态:
adb devices # 输出示例: # 123abcde device6.2 WiFi远程连接(免线缆)
适用于长期运行或远程调试场景。
步骤如下:
# 1. 先通过USB连接,开启TCP/IP模式 adb tcpip 5555 # 2. 断开USB,获取设备IP(可在WiFi设置中查看) adb connect 192.168.x.x:5555提示:确保手机与主机在同一局域网下。
7. 实战运行:让AI接管手机
7.1 命令行模式执行任务
python main.py \ --device-id 123abcde \ --base-url http://localhost:8000/v1 \ --model "autoglm-phone-9b" \ "打开抖音搜索抖音号为:dycwo11nt61d 的博主并关注他!"参数说明:
--device-id:来自adb devices的设备ID--base-url:vLLM服务地址(本地为http://localhost:8000/v1)- 最后字符串:自然语言指令
预期输出:
💭 思考过程: 正在桌面,需打开抖音App 🎯 执行动作: {"action": "Launch", "app": "抖音"} ... ✅ 任务完成:已关注目标用户7.2 Python API编程调用
对于开发者,可通过API集成到自定义应用中。
from phone_agent import PhoneAgent from phone_agent.model import ModelConfig # 配置模型连接 model_config = ModelConfig( base_url="http://localhost:8000/v1", model_name="autoglm-phone-9b" ) # 初始化代理 agent = PhoneAgent(model_config=model_config) # 执行任务 result = agent.run("打开美团,搜索附近评分最高的川菜馆") print(f"任务结果: {result}")8. 安全机制与人工干预
8.1 敏感操作确认机制
当涉及支付、删除、权限变更等高风险操作时,系统默认暂停并请求人工确认。
自定义确认回调函数:
def confirm_handler(message): print(f"\n⚠️ 安全提醒: {message}") choice = input("继续执行? (y/n): ") return choice.lower() == 'y' agent = PhoneAgent( model_config=model_config, confirmation_callback=confirm_handler )运行时将出现交互提示:
⚠️ 安全提醒: 即将支付28.5元订单,确认继续? 继续执行? (y/n):8.2 登录与验证码处理
对于需要登录或短信验证的场景,系统支持人工接管:
- AI执行至登录页后自动暂停
- 用户手动完成验证
- 继续交还控制权给AI
建议策略:将敏感信息操作拆分为多个子任务,关键节点插入人工验证环节。
9. 进阶配置与优化技巧
9.1 自定义系统提示词增强能力
编辑phone_agent/config/prompts.py中的SYSTEM_PROMPT,可引导模型更专业地处理特定任务。
示例:电商购物增强版提示词
SYSTEM_PROMPT = """ 你是一个专业的手机购物助手,擅长在淘宝、京东、拼多多等平台帮用户选购商品。 请遵循以下原则: 1. 优先筛选销量高、评价好(≥4.8分)的商品 2. 注意满减优惠与可用优惠券 3. 按价格从低到高排序展示结果 """9.2 环境变量灵活配置
通过环境变量简化命令行参数传递:
# Linux/macOS export PHONE_AGENT_BASE_URL=http://localhost:8000/v1 export PHONE_AGENT_MODEL=autoglm-phone-9b export PHONE_AGENT_DEVICE_ID=123abcde # Windows set PHONE_AGENT_BASE_URL=http://localhost:8000/v1支持的关键变量包括:
PHONE_AGENT_MAX_STEPS:单任务最大执行步数(默认100)PHONE_AGENT_TIMEOUT:每步操作超时时间(秒)
10. 常见问题排查指南
10.1 ADB连接失败
| 现象 | 可能原因 | 解决方案 |
|---|---|---|
adb devices无输出 | 未开启USB调试 | 检查开发者选项 |
显示unauthorized | 未授权电脑 | 手机端点击“允许” |
| 连接频繁断开 | WiFi不稳定 | 改用USB连接 |
10.2 模型服务异常
| 问题 | 解决方案 |
|---|---|
启动报错CUDA out of memory | 减小--max-model-len或改用CPU模式 |
| 请求返回乱码 | 检查模型路径是否正确指向AutoGLM-Phone-9B目录 |
| 接口无响应 | 查看防火墙是否拦截8000端口 |
10.3 中文输入失效
- 确认ADB Keyboard已安装且设为默认输入法
- 重启手机后重新连接ADB
- 尝试手动切换输入法后再运行任务
11. 应用场景与扩展潜力
11.1 典型应用场景
| 类别 | 示例任务 |
|---|---|
| 生活服务 | “帮我订一份海底捞外卖,预算200元以内” |
| 社交互动 | “打开微信给妈妈发消息‘我到家了’” |
| 内容消费 | “刷小红书找北京周末拍照打卡地” |
| 电商购物 | “在淘宝搜无线耳机,按销量排序” |
11.2 批量自动化脚本示例
import time def batch_like_friends(): agent = PhoneAgent(model_config=model_config) friends = ["张三", "李四", "王五"] for name in friends: agent.run(f"打开微信,进入{name}的朋友圈,点赞最新一条动态") time.sleep(3) # 避免操作过快被限制 batch_like_friends()11.3 与其他AI工具集成
可结合GPT类模型进行任务分解,再由AutoGLM执行:
# 示例:用GPT生成具体指令 response = openai.ChatCompletion.create( model="gpt-4", messages=[{"role": "user", "content": "帮我安排一顿晚餐"}] ) final_instruction = response.choices[0].message.content agent.run(final_instruction)12. 总结
本文详细介绍了如何从零部署Open-AutoGLM框架,实现AI对安卓手机的全自动操控。核心要点包括:
- 环境配置:完成Python、ADB、开发者模式等基础准备
- 模型部署:使用vLLM本地启动AutoGLM-Phone-9B多模态模型
- 设备连接:支持USB与WiFi两种连接方式,灵活适配不同场景
- 任务执行:通过命令行或Python API提交自然语言指令
- 安全机制:内置敏感操作确认与人工接管机制,保障使用安全
Open-AutoGLM作为开源AI Agent的重要实践,展示了多模态模型在真实设备控制中的巨大潜力。未来随着模型精度提升与生态完善,有望成为个人数字助理的核心基础设施。
获取更多AI镜像
想探索更多AI镜像和应用场景?访问 CSDN星图镜像广场,提供丰富的预置镜像,覆盖大模型推理、图像生成、视频生成、模型微调等多个领域,支持一键部署。