Open-AutoGLM远程调试教程:WiFi连接设备高效开发部署方法
Open-AutoGLM – 智谱开源的手机端AI Agent框架。这是一个专为移动端任务自动化设计的智能系统,结合视觉语言模型与安卓设备控制能力,让AI真正“看懂”屏幕、“操作”手机。用户只需用自然语言下达指令,整个流程即可自动完成。
AutoGLM-Phone 是一个基于视觉语言模型的 AI 手机智能助理框架。它能以多模态方式理解屏幕内容,并通过 ADB 自动操控设备。用户只需用自然语言下指令,如“打开小红书搜美食”,模型即可解析意图、理解界面并自动规划、执行操作流程,无需手动点击。
Phone Agent 是一个基于 AutoGLM 构建的手机端智能助理框架,它能够以多模态方式理解手机屏幕内容,并通过自动化操作帮助用户完成任务。系统通过 ADB(Android Debug Bridge)来控制设备,以视觉语言模型进行屏幕感知,再结合智能规划能力生成并执行操作流程。用户只需用自然语言描述需求,如“打开小红书搜索美食”,Phone Agent 即可自动解析意图、理解当前界面、规划下一步动作并完成整个流程。系统还内置敏感操作确认机制,并支持在登录或验证码场景下进行人工接管。同时,它提供远程 ADB 调试能力,可通过 WiFi 或网络连接设备,实现灵活的远程控制与开发。
1. 客户端与真机连接(本地电脑)
服务端准备就绪后,我们需要在本地电脑配置控制端,通过 ADB 控制安卓手机,并调用云端的 AI 模型。整个过程分为硬件环境准备、手机设置、代码部署和设备连接四步。下面一步步带你完成从零到运行的第一个自动化任务。
1.1 硬件与环境准备
要让 Open-AutoGLM 正常工作,你的开发环境需要满足以下基本条件:
- 操作系统:Windows 或 macOS(Linux 同样支持)
- Python 版本:建议使用 Python 3.10 或更高版本
- 安卓设备:Android 7.0 及以上系统的手机或模拟器
- ADB 工具:Android SDK Platform Tools,用于设备通信
安装并配置 ADB
ADB 是连接电脑与安卓设备的核心工具。你需要先下载 Android SDK Platform Tools 并将其添加到系统路径中。
Windows 用户配置步骤:
- 下载压缩包并解压到任意目录(例如
C:\platform-tools)。 - 按下
Win + R,输入sysdm.cpl,打开“系统属性”。 - 进入“高级”选项卡 → “环境变量”。
- 在“系统变量”区域找到
Path,点击“编辑”。 - 添加你解压后的 platform-tools 文件夹路径(如
C:\platform-tools)。 - 打开命令提示符,输入
adb version,如果显示版本号则说明安装成功。
macOS 用户快速配置:
如果你将 platform-tools 解压到了~/Downloads/platform-tools,可以在终端执行以下命令临时添加路径:
export PATH=${PATH}:~/Downloads/platform-tools若想永久生效,可将该行写入~/.zshrc或~/.bash_profile文件中。
验证是否配置成功:
adb version输出类似Android Debug Bridge version X.X.X表示一切正常。
1.2 手机端设置
为了让电脑能控制手机,必须开启开发者权限并允许调试。
开启开发者模式
进入手机“设置” → “关于手机” → 连续点击“版本号”7次,直到提示“您已进入开发者模式”。
开启 USB 调试
返回设置主菜单 → “开发者选项” → 找到“USB 调试”,勾选启用。
⚠️ 注意:不同品牌手机路径略有差异,部分机型还需开启“无线调试”或“网络ADB调试”功能。
安装 ADB Keyboard(推荐)
默认输入法无法响应 ADB 输入指令,因此建议安装专用键盘应用:
- 下载 ADB Keyboard APK 并安装。
- 进入“语言与输入法”设置 → 当前输入法 → 切换为 “ADB Keyboard”。
这样,AI 就可以通过 ADB 发送文本输入,比如填写搜索框、登录账号等。
1.3 部署控制端代码(Open-AutoGLM)
现在我们开始部署本地控制程序。Open-AutoGLM 提供了完整的客户端代码,支持命令行调用和 Python API 接口。
克隆项目仓库
打开终端或命令行工具,执行:
git clone https://github.com/zai-org/Open-AutoMLG cd Open-AutoGLM❗注意:目前 GitHub 上正确仓库名为
Open-AutoGLM,请确保拼写无误。
安装依赖库
项目依赖多个 Python 包,包括 PyTorch、transformers 和 fastapi 等。使用 pip 安装:
pip install -r requirements.txt pip install -e .其中-e .表示以可编辑模式安装,便于后续调试修改源码。
安装完成后,你可以测试是否能导入核心模块:
from phone_agent import ADBConnection, list_devices print("Open-AutoGLM 环境搭建成功!")如果没有报错,说明环境已准备就绪。
1.4 连接设备:USB 与 WiFi 两种方式
设备连接是关键一步。Open-AutoGLM 支持 USB 直连和 WiFi 远程连接两种方式。前者稳定,后者更灵活,适合远程调试或多设备管理。
使用 USB 连接(基础方式)
- 用数据线将手机连接电脑。
- 手机弹出“允许USB调试?”对话框时,点击“允许”。
- 在终端运行:
adb devices预期输出如下:
List of devices attached ABCDEF1234567890 device只要看到设备 ID 和device状态,说明连接成功。
使用 WiFi 远程连接(高效开发首选)
当你希望摆脱数据线束缚,或者需要远程调试服务器上的设备时,WiFi 连接是理想选择。
第一步:通过 USB 启动 TCP/IP 模式
先用 USB 连接设备,然后在终端执行:
adb tcpip 5555这会重启 ADB 守护进程,监听 5555 端口的 TCP 连接。
第二步:断开 USB,使用 IP 地址连接
确保手机和电脑在同一局域网内。获取手机 IP 地址的方法:
- 设置 → WLAN → 点击当前网络 → 查看“IP 地址”
- 或使用命令:
adb shell ip route show
假设手机 IP 为192.168.1.100,执行连接:
adb connect 192.168.1.100:5555成功后返回:
connected to 192.168.1.100:5555再次运行adb devices,你会看到设备出现在列表中,连接类型为 TCP/IP。
✅ 提示:此后只要不重启手机,就可以直接
adb connect,无需再走 USB 流程。
2. 启动 AI 代理:让手机自己动起来
当设备连接成功后,就可以启动 AI 代理,让它根据自然语言指令自动操作手机。
2.1 命令行方式运行任务
在项目根目录下执行主程序:
python main.py \ --device-id 192.168.1.100:5555 \ --base-url http://<你的云服务器IP>:8800/v1 \ --model "autoglm-phone-9b" \ "打开抖音搜索抖音号为:dycwo11nt61d 的博主并关注他!"参数说明:
--device-id:设备标识,可以是 USB 设备 ID 或 WiFi IP:端口--base-url:指向运行 vLLM 或其他推理服务的公网地址(需提前部署)--model:指定使用的模型名称,需与服务端注册名一致- 最后的字符串:你要下达的自然语言指令
一旦运行,程序会:
- 截取当前手机屏幕
- 将图像和指令传给云端 VLM 模型
- 模型分析屏幕元素,判断下一步操作(点击、滑动、输入等)
- 通过 ADB 执行动作
- 循环直至任务完成
例如,“搜索美食”会被拆解为:
- 打开小红书 App
- 定位首页搜索框
- 输入“美食”
- 点击搜索按钮
- 进入结果页浏览
整个过程全自动,无需人工干预。
2.2 使用 Python API 实现远程连接与控制
除了命令行,Open-AutoGLM 还提供了丰富的 Python 接口,方便集成到自己的系统中。
示例:建立远程连接并获取设备信息
from phone_agent.adb import ADBConnection, list_devices # 创建 ADB 连接管理器 conn = ADBConnection() # 连接到远程设备(WiFi) success, message = conn.connect("192.168.1.100:5555") print(f"连接状态: {message}") # 列出所有已连接设备 devices = list_devices() for device in devices: print(f"{device.device_id} - {device.connection_type.value}")获取设备 IP 地址(用于动态连接)
# 先通过 USB 启用 TCP/IP success, msg = conn.enable_tcpip(5555) if success: ip = conn.get_device_ip() print(f"设备 IP: {ip}") # 输出如 192.168.1.100 else: print("启用失败:", msg)断开连接
conn.disconnect("192.168.1.100:5555")这些 API 非常适合构建自动化测试平台、远程运维系统或批量设备管理工具。
3. 常见问题排查与优化建议
尽管 Open-AutoGLM 功能强大,但在实际使用中仍可能遇到一些问题。以下是高频问题及解决方案。
3.1 ADB 连接失败或被拒绝
现象:adb connect返回failed to connect或connection refused
原因与解决方法:
🔹 手机未开启“无线调试”或“网络ADB”功能
→ 进入开发者选项,手动开启“无线调试”或“通过网络启用ADB”🔹 防火墙阻止了 5555 端口
→ 关闭手机防火墙,或在路由器中放行该端口🔹 手机与电脑不在同一局域网
→ 确保两者连接的是同一个 WiFi 网络🔹 ADB 守护进程异常
→ 重启 ADB 服务:adb kill-server && adb start-server
3.2 设备频繁掉线(WiFi 不稳定)
现象:执行中途 ADB 断开,导致任务中断
建议方案:
- 使用高质量路由器,避免信号干扰
- 将手机靠近路由器,提升信号强度
- 在脚本中加入重连机制:
import time while True: result = os.system("adb shell echo 'ping'") if result == 0: break time.sleep(2) os.system("adb connect 192.168.1.100:5555")- 对于长期任务,优先使用 USB 连接保证稳定性
3.3 模型响应慢、乱码或无操作
现象:AI 没有反应,或输出错误操作指令
可能原因:
🔹 云端推理服务未正确启动
→ 检查 vLLM 是否运行,端口是否映射正确(如 Docker 映射-p 8800:8000)🔹 显存不足导致推理失败
→ 确保 GPU 显存 ≥ 24GB(对于 9B 模型),调整--max-model-len参数🔹 输入图像分辨率过高
→ 修改截图逻辑,降低图片尺寸(如缩放到 720p)🔹 模型权重加载错误
→ 核对 HuggingFace 模型路径,确认autoglm-phone-9b已正确下载
3.4 敏感操作安全提醒
由于 AI 会自动点击、输入甚至支付,存在误操作风险。Open-AutoGLM 内置了安全机制:
- 在涉及“删除”、“支付”、“授权”等操作时,会暂停并提示用户确认
- 验证码输入场景自动交由人工处理
- 支持设置白名单 App,限制 AI 操作范围
建议在首次使用时开启“模拟模式”(dry-run),仅展示操作路径而不实际执行,确保逻辑正确后再开启真实操作。
4. 总结
Open-AutoGLM 是一个极具潜力的手机端 AI Agent 框架,它将视觉语言模型的能力与安卓设备控制深度融合,实现了真正的“自然语言驱动操作”。通过本文介绍的远程调试方法,你可以轻松实现 WiFi 连接设备,摆脱物理线缆束缚,大幅提升开发效率。
我们从环境准备、手机设置、代码部署、设备连接到任务执行,完整走了一遍流程,并展示了命令行和 Python API 两种调用方式。同时,针对常见问题提供了实用的排查思路和优化建议。
无论你是想做自动化测试、构建个人数字助理,还是探索 AI 手机机器人的无限可能,Open-AutoGLM 都是一个值得深入研究的技术方向。
下一步,你可以尝试:
- 将多个指令组合成复杂任务流
- 集成语音识别,实现“说话就能操作手机”
- 结合 OCR 和 UI 分析,提升模型对复杂界面的理解力
AI 正在重新定义人机交互的方式,而 Open-AutoGLM 正是这场变革中的重要一环。
获取更多AI镜像
想探索更多AI镜像和应用场景?访问 CSDN星图镜像广场,提供丰富的预置镜像,覆盖大模型推理、图像生成、视频生成、模型微调等多个领域,支持一键部署。