一键部署教程:Open-AutoGLM手机AI代理快速上手指南
你是否试过一边盯着手机屏幕,一边在心里默念:“要是它能自己点开小红书、搜‘周末咖啡馆’、点进第三家店、再截图发给朋友就好了”?
现在,不用“默念”了——Open-AutoGLM 让这句话变成一句可执行的指令。它不是另一个聊天机器人,而是一个真正能“看见”你手机屏幕、“理解”你意图、“动手”完成任务的AI代理。不写代码、不配环境、不调模型参数,只要几步配置,你的电脑就能指挥安卓手机,自动完成从打开App到点击关注的整套操作。
本文是一份面向新手的实战部署指南,全程聚焦“怎么让AI真正动起来”。不讲大模型原理,不堆技术术语,只告诉你:
哪些硬件和软件必须准备
手机怎么设置才不会连不上
控制端代码怎么装、怎么跑
第一条自然语言指令该怎么写、怎么改
遇到“设备未授权”“连接超时”“模型没响应”怎么办
所有步骤均经实测验证(Windows 11 + 小米13 + Python 3.10 + vLLM云服务),耗时约12分钟即可完成首次成功执行。我们不假设你懂ADB,也不要求你会调参——只要你能复制粘贴命令、能看懂手机设置菜单,就能走完全程。
1. 准备工作:三件套齐了,才能让AI开始干活
别急着敲代码。Open-AutoGLM不是纯云端服务,它需要“眼睛”(看屏幕)、“大脑”(理解+规划)、“手”(点按滑动)三者协同。而“手”的部分,依赖你本地电脑对安卓设备的物理控制能力。所以第一步,是把这三件基础能力配齐。
1.1 你得有一台能“说话”的电脑
- 操作系统:Windows 10/11 或 macOS Monterey 及以上(Linux也可,但本教程以Win/macOS为主)
- Python版本:强烈建议使用Python 3.10(3.11/3.12亦可,但3.9及以下可能因依赖冲突报错)
- 验证方式:打开终端(Windows用CMD或PowerShell,macOS用Terminal),输入:
输出应为python --versionPython 3.10.x或类似。
提示:如果你用的是Anaconda或Miniconda,建议新建一个干净环境:
conda create -n autoglm python=3.10 conda activate autoglm
1.2 你得有一台能“听话”的安卓手机
- 系统要求:Android 7.0(Nougat)及以上(绝大多数2016年后发布的机型都满足)
- 关键能力:支持USB调试 + 允许通过ADB安装应用 + 能连接同一WiFi网络(用于无线调试)
实测兼容机型:小米13/14、华为Mate 50/P60、OPPO Find X6、vivo X90、三星S22/S23、Pixel 6/7/8(含模拟器如BlueStacks 5、MuMu模拟器12)
1.3 你得装好“翻译官”:ADB工具
ADB(Android Debug Bridge)是电脑和安卓设备之间的通信桥梁。Open-AutoGLM正是靠它来截图、点击、输入文字、启动App的。
Windows用户快速配置:
- 去Android SDK Platform-Tools官网下载ZIP包(选Windows版)
- 解压到一个无中文、无空格的路径,例如:
C:\adb - 按
Win + R→ 输入sysdm.cpl→ “高级” → “环境变量” → 在“系统变量”中找到Path→ “编辑” → “新建” → 粘贴你解压的路径(如C:\adb) - 重启终端,输入:
若显示类似adb versionAndroid Debug Bridge version 1.0.41,说明配置成功。
macOS用户快速配置:
- 下载ZIP包后解压,假设路径为
~/Downloads/platform-tools - 打开Terminal,运行:
echo 'export PATH=$PATH:~/Downloads/platform-tools' >> ~/.zshrc source ~/.zshrc - 输入
adb version验证。
小技巧:配置完后,任意目录下都能直接运行
adb devices,无需cd到adb文件夹。
2. 手机端设置:三步打开“被操控”的权限
很多新手卡在这一步——明明线连上了,adb devices却显示unauthorized或根本没设备。问题不在代码,而在手机没“点头同意”。
2.1 开启开发者选项(一次设置,永久有效)
- 进入手机【设置】→【关于手机】→连续点击【版本号】7次
- 弹出“您已处于开发者模式”提示即成功
2.2 开启USB调试(每次重连可能需确认)
- 返回【设置】→【更多设置】→【开发者选项】→ 打开【USB调试】
- 重要:勾选下方的【USB调试(安全设置)】(部分厂商叫“USB调试授权”或“调试期间允许模拟点击”)
安全提醒:开启后,只有你主动点击“允许”授权的电脑才能控制手机。其他设备连接时会弹窗询问,你点“拒绝”即可。
2.3 安装ADB Keyboard(让AI能“打字”)
Open-AutoGLM要输入文字(比如搜索关键词),必须绕过系统输入法限制。ADB Keyboard就是那个“无声的键盘”。
- 前往 ADB Keyboard GitHub Release页 下载最新APK(如
ADBKeyboard_v1.5.apk) - 用数据线传输到手机,或通过浏览器直接下载安装(需在【设置】→【安全】中开启“未知来源应用安装”)
- 安装完成后,进入【设置】→【语言与输入法】→【当前输入法】→ 切换为ADB Keyboard
验证方法:在微信聊天框长按输入框 → 选择“输入法” → 应能看到 ADB Keyboard 选项并成功切换。
3. 部署控制端:三行命令,让本地电脑成为AI指挥中心
Open-AutoGLM的控制端(client)运行在你本地电脑上,它负责:
① 抓取手机当前屏幕画面 → ② 发送给云端AI模型分析 → ③ 接收模型返回的操作指令 → ④ 用ADB执行点击/滑动/输入
它本身不包含大模型,只是一个轻量级调度器。所以部署极快。
3.1 克隆代码并安装依赖
打开终端(确保已激活Python 3.10环境),依次执行:
# 1. 克隆官方仓库 git clone https://github.com/zai-org/Open-AutoGLM cd Open-AutoGLM # 2. 安装核心依赖(含ADB通信库、HTTP客户端等) pip install -r requirements.txt # 3. 以开发模式安装本项目(使phone_agent模块全局可用) pip install -e .⏱ 耗时约1–2分钟。若遇到
torch安装慢,可提前在国内镜像源安装(如清华源):pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
3.2 连接你的手机(USB or WiFi)
USB直连(推荐新手首选,稳定不掉线)
- 用原装数据线连接手机与电脑
- 手机弹出“允许USB调试吗?” → 勾选【始终允许】→ 点击【确定】
- 终端输入:
正常输出应为:adb devices
其中List of devices attached 1234567890abcdef device1234567890abcdef就是你的设备ID,记下来备用。
WiFi无线连接(适合想摆脱线缆的用户)
- 先用USB连一次,执行:
adb tcpip 5555 - 断开USB线,确保手机与电脑在同一WiFi下
- 查看手机IP:【设置】→【关于手机】→【状态信息】→【IP地址】(如
192.168.3.105) - 终端输入:
成功后adb connect 192.168.3.105:5555adb devices会显示192.168.3.105:5555 device
注意:WiFi连接易受路由器防火墙影响。若失败,请优先切回USB模式完成首次测试。
4. 启动AI代理:用一句话,让手机自己干活
现在,AI模型(autoglm-phone-9b)正运行在你的云服务器或本地vLLM服务上,控制端代码已就位,手机也已授权。最后一步:下达第一条自然语言指令。
4.1 命令行快速执行(最简方式)
在Open-AutoGLM目录下,运行:
python main.py \ --device-id 1234567890abcdef \ --base-url http://192.168.3.200:8800/v1 \ "打开小红书搜索‘上海周末咖啡馆’并截图"参数说明:
--device-id:替换为你自己的设备ID(USB)或IP:端口(WiFi)--base-url:替换为你的AI服务地址(格式:http://<服务器IP>:<端口>/v1)- 最后引号内:你的自然语言指令,越具体越好(见4.3节技巧)
首次运行会自动截图、上传、等待模型分析、返回操作序列、执行点击……整个过程约20–60秒,终端会实时打印每一步动作(如
CLICK on (520, 310)、INPUT text: 上海周末咖啡馆)。
4.2 Python API调用(适合集成进自己的脚本)
如果你希望把AI代理嵌入自动化流程,可以用代码方式调用:
from phone_agent.main import run_agent # 一行代码启动完整代理流程 result = run_agent( device_id="1234567890abcdef", base_url="http://192.168.3.200:8800/v1", model="autoglm-phone-9b", instruction="打开微博,搜索‘今日科技头条’,点开第一条带视频的帖子,长按保存图片" ) print("任务状态:", result.status) print("最终截图路径:", result.screenshot_path)
run_agent()是封装好的高层接口,自动处理截图、上传、轮询、执行、错误重试。返回结构化结果,便于后续逻辑判断。
4.3 写好指令的3个实用技巧(小白也能写出高成功率指令)
Open-AutoGLM不是万能的,它的表现高度依赖你“怎么说”。以下是实测总结的黄金法则:
明确App名称,避免歧义
❌ “搜美食” → 不知道用哪个App(大众点评?美团?小红书?)
“打开小红书,搜索‘杭州素食餐厅’”指定关键UI元素位置或特征(当界面复杂时)
❌ “点关注” → 当前页有多个“关注”按钮
“点右上角‘关注’按钮” 或 “点昵称为‘旅行小助手’右侧的‘关注’”拆分多步骤指令,用‘并’或‘然后’连接
❌ “订一张明天从北京到上海的高铁票”(涉及跨App跳转,当前版本暂不支持)
“打开12306 App,点击首页‘车票预订’,输入出发地‘北京’、目的地‘上海’、日期‘明天’,然后截图”
进阶提示:指令中可包含emoji(如“搜索”、“📷截图”),模型能更好识别意图;但避免使用生僻符号或特殊格式。
5. 常见问题排查:90%的问题,都在这五类里
部署过程中,你大概率会遇到以下问题。我们按发生频率排序,并给出可立即验证的解决方案。
5.1 “adb devices 显示 unauthorized”
→原因:手机弹出授权窗口,你没点“允许”,或点了“拒绝”后未清除授权记录
→解决:
① 关闭开发者选项中的【USB调试】→ 重启手机 → 重新开启 → 再次连接
② 或在手机【设置】→【开发者选项】中,找到【撤销USB调试授权】→ 点击 → 重连
5.2 “Connection refused” 或 “Failed to connect to server”
→原因:--base-url地址填错,或云服务器未启动、防火墙拦截、端口未映射
→解决:
① 在浏览器访问http://<服务器IP>:8800/v1,应返回{"error":"Not Found"}(说明服务可达)
② 若打不开,检查vLLM是否运行:ps aux | grep vllm
③ 检查服务器防火墙:sudo ufw status(Ubuntu)或sudo firewall-cmd --list-all(CentOS)
5.3 “Model returned empty action list” 或 “No valid operation found”
→原因:模型未正确加载,或提示词太模糊,或当前屏幕内容过于杂乱(如弹窗遮挡)
→解决:
① 换一个简单指令重试,如“返回桌面”
② 手动截一张图,用adb shell screencap -p /sdcard/screen.png && adb pull /sdcard/screen.png导出,观察是否清晰
③ 确保手机未锁屏、未在游戏/全屏视频等特殊界面
5.4 “Input method not active” 或 “ADB Keyboard not working”
→原因:输入法未切换成功,或ADB Keyboard权限被系统禁用
→解决:
① 进入【设置】→【语言与输入法】→ 确认默认输入法为 ADB Keyboard
② 进入【设置】→【应用管理】→ 找到 ADB Keyboard → 【权限】→ 开启【显示在其他应用上层】和【无障碍服务】
5.5 “Operation timeout after 120s”
→原因:网络延迟高,或模型推理慢(显存不足、max_model_len设太小)
→解决:
① 降低指令复杂度,先测试单步操作(如“打开微信”)
② 检查vLLM启动命令是否含--max-model-len 8192(推荐值)
③ 若用CPU推理,建议至少32GB内存 + 16核CPU,否则极易超时
🧰 附:一键诊断脚本(保存为
check_env.py运行)import subprocess print("ADB状态:", subprocess.getoutput("adb devices")) print("ADB Keyboard是否启用:", subprocess.getoutput("adb shell settings get secure default_input_method | grep adb")) print("网络连通性:", subprocess.getoutput("curl -s -o /dev/null -w '%{http_code}' http://192.168.3.200:8800/v1"))
6. 总结:你已经拥有了一个“数字分身”的起点
回顾这12分钟,你完成了:
✔ 配置了电脑与手机的通信通道(ADB)
✔ 赋予了手机“被AI操控”的权限(开发者模式+ADB Keyboard)
✔ 部署了轻量级控制端(3行命令)
✔ 下达了第一条自然语言指令,并亲眼看到手机自动执行
✔ 掌握了5类高频问题的快速定位与修复方法
Open-AutoGLM的价值,不在于它今天能做多少事,而在于它把过去需要写几十行ADB脚本、配OCR识别、写状态机逻辑的“手机自动化”,压缩成了一句话。它不是一个黑盒产品,而是一个开放的框架——你可以把它接入自己的CRM系统,让销售自动跟进客户;可以集成进测试平台,实现UI自动化回归;甚至可以教老人语音说“帮我查医保余额”,AI就替他们点开App完成操作。
下一步,你可以:
🔹 尝试更复杂的指令,如“对比京东和拼多多上iPhone 15的价格,截图价格最低的页面”
🔹 把main.py改造成Web服务,用网页表单提交指令
🔹 结合FastAPI,做一个内部团队共享的“手机操作API”
🔹 参与社区,为不支持的App贡献UI元素标注规则
技术从来不是目的,解放双手、减少重复、让人专注思考,才是AI代理存在的全部意义。
获取更多AI镜像
想探索更多AI镜像和应用场景?访问 CSDN星图镜像广场,提供丰富的预置镜像,覆盖大模型推理、图像生成、视频生成、模型微调等多个领域,支持一键部署。