Open-AutoGLM快速上手:从克隆代码到执行关注抖音号完整指南
1. 什么是Open-AutoGLM?手机上的“会看会动”的AI助理
Open-AutoGLM 是智谱开源的一套面向移动端的 AI Agent 框架,核心目标很实在:让手机自己“看懂屏幕、听懂人话、动手做事”。它不是另一个聊天机器人,而是一个能真正和安卓设备深度交互的智能体。
你可能用过语音助手,但它们大多只能调用固定功能;你也可能见过截图识别工具,但它们不会自动点击、滑动、输入文字。Open-AutoGLM 的特别之处在于——它把视觉理解、语言推理和设备操控三件事串成了一条流水线。
举个最直白的例子:你说一句“打开小红书搜美食”,它就能自动解锁手机、找到小红书图标、点击进入、在搜索框里输入“美食”、点搜索、再把结果页面展示给你。整个过程不需要你碰一下屏幕,也不需要提前写脚本。背后靠的是 AutoGLM-Phone 这个轻量但扎实的多模态框架:它用视觉语言模型实时分析手机当前屏幕画面,再结合你的自然语言指令做意图解析,最后通过 ADB(Android Debug Bridge)精准发出点击、滑动、输入等操作命令。
更关键的是,它考虑了真实使用场景。比如遇到登录页或验证码弹窗,系统会主动暂停,等你手动处理完再继续;也支持 WiFi 远程连接,意味着你可以在笔记本上控制放在桌边的手机,甚至调试家里的测试机——不用线、不插拔,开发体验顺滑很多。
这已经不是“能跑起来”的 Demo,而是朝着“能用、敢用、好用”走了一大步的手机端 AI 助理雏形。
2. 本地电脑端准备:四步搞定控制环境
要让 Open-AutoGLM 在你电脑上指挥手机干活,得先搭好“指挥台”。整个过程不依赖高配显卡,普通笔记本就能胜任,重点是把几个基础组件连通。我们分四块说清楚:硬件与系统、ADB 配置、手机设置、代码部署。
2.1 硬件与系统要求
- 操作系统:Windows 10/11 或 macOS Monterey 及以上(Apple Silicon 和 Intel 芯片都支持)
- Python 版本:强烈建议 Python 3.10,避免因版本差异导致依赖冲突(3.11+ 个别包尚未完全适配)
- 安卓设备:Android 7.0(Nougat)及以上,真机优先(模拟器对 ADB 键盘和屏幕捕获支持有限)
- 网络环境:USB 数据线一根,或确保电脑与手机在同一局域网(WiFi)
注意:这里所有操作都在本地电脑完成,云端模型服务是另一套部署(如 vLLM 托管在服务器),本指南聚焦“你手边这台电脑怎么当好指挥官”。
2.2 ADB 工具安装与环境配置
ADB 是安卓调试的基石,Open-AutoGLM 所有设备操作都靠它。配置成功后,你在命令行敲adb devices就能看到手机,这是后续一切的前提。
Windows 用户(推荐方式)
- 去 Android SDK Platform-Tools 官网 下载最新 ZIP 包(如
platform-tools-latest-windows.zip) - 解压到一个固定路径,例如
C:\adb - 按
Win + R输入sysdm.cpl→ “高级”选项卡 → “环境变量” - 在“系统变量”中找到
Path→ “编辑” → “新建” → 粘贴你解压的路径(如C:\adb) - 打开新命令提示符(CMD 或 PowerShell),输入:
若显示类似adb versionAndroid Debug Bridge version 1.0.41,说明配置成功。
macOS 用户(终端一行搞定)
假设你把 platform-tools 解压到了~/Downloads/platform-tools:
echo 'export PATH=$PATH:~/Downloads/platform-tools' >> ~/.zshrc source ~/.zshrc adb version如果看到版本号,就齐活了。
小贴士:别跳过验证步骤。很多后续问题(比如设备不识别、命令报错)根源都在 ADB 没配对。
2.3 手机端设置:三步打开“被控制权”
手机不是生来就接受远程指令的,得手动开几个开关:
开启开发者模式
进入「设置」→「关于手机」→ 连续点击「版本号」7 次,直到弹出“您现在处于开发者模式”的提示。启用 USB 调试
返回「设置」→「系统」→「开发者选项」→ 找到并开启「USB 调试」。首次开启会弹窗确认,点“确定”。安装并启用 ADB Keyboard(关键!)
Open-AutoGLM 需要向手机输入文字(比如搜索关键词),而标准输入法无法被 ADB 直接调用。ADB Keyboard 是专为此设计的轻量输入法:- 去 GitHub 搜索
adb-keyboard,下载最新.apk文件(如adb-keyboard-v1.0.0.apk) - 用数据线传到手机,或直接用浏览器下载安装
- 安装后,进入「设置」→「语言与输入法」→「当前键盘」→ 切换为
ADB Keyboard
- 去 GitHub 搜索
这一步极易被忽略,但它是“自动输入”的前提。没装或没切换,AI 下达“输入抖音号”指令时,手机会卡住不动。
2.4 克隆与安装 Open-AutoGLM 控制端
现在,本地环境已具备“发号施令”的能力,下一步是把 Open-AutoGLM 的控制代码请进你的电脑。
打开终端(Windows 用 PowerShell 或 CMD,macOS 用 Terminal),依次执行:
# 1. 克隆官方仓库(国内用户若慢,可加 --depth=1 减少历史) git clone https://github.com/zai-org/Open-AutoGLM cd Open-AutoGLM # 2. 创建虚拟环境(推荐,避免污染全局 Python) python -m venv venv source venv/bin/activate # macOS/Linux # venv\Scripts\activate # Windows # 3. 安装依赖(requirements.txt 已包含核心包) pip install -r requirements.txt # 4. 安装本项目为可编辑包(让 Python 能直接 import phone_agent) pip install -e .执行完pip install -e .后,你就可以在任意 Python 脚本里import phone_agent了——这意味着控制逻辑已就位,只差一个指令、一台手机、一个云端模型。
3. 连接手机:USB 与 WiFi 两种方式实测对比
设备连通是临门一脚。Open-AutoGLM 支持 USB 直连(稳定)和 WiFi 远程(灵活),我们分别说明,并告诉你什么情况下该选哪一种。
3.1 USB 连接:新手首选,即插即用
这是最简单、最可靠的入门方式:
- 用原装数据线将手机连接电脑
- 手机弹出“允许 USB 调试吗?”提示,勾选“始终允许”,点“确定”
- 在电脑终端运行:
正常输出应类似:adb devices
这串字符就是你的List of devices attached 8A9X1234567890AB devicedevice-id,后面启动命令要用。
优势:延迟低、不掉线、无需额外网络配置
❌ 局限:线缆长度限制,不方便多设备并行调试
3.2 WiFi 远程连接:摆脱线缆,开发更自由
适合以下场景:手机放在支架上方便录屏、多台测试机集中管理、或你就是不想被线捆着。
操作分两步,必须先用 USB 连一次:
USB 连接状态下,开启 TCP/IP 模式
adb tcpip 5555成功后会提示
restarting in TCP mode port: 5555断开 USB 线,用 WiFi 连接
先查手机 IP(手机「设置」→「Wi-Fi」→ 点当前网络 → 查看 IP 地址,通常是192.168.x.x)
然后在电脑终端执行:adb connect 192.168.1.100:5555 # 替换为你的手机真实 IP若返回
connected to 192.168.1.100:5555,就成功了。
优势:无线自由、支持批量设备(adb connect多次)、方便远程协作
❌ 局限:同一局域网内才有效;WiFi 不稳时易断连(此时adb disconnect再重连即可)
实测建议:第一次务必用 USB 连通并验证
adb devices,再切 WiFi。这样能排除“手机没授权”或“ADB 服务异常”等底层问题。
4. 启动 AI 代理:一条命令,让手机自己关注抖音号
万事俱备,现在进入最激动人心的环节:下达指令,见证 AI 接管手机。我们以“打开抖音、搜索指定抖音号、进入主页、点击关注”为完整任务链,演示两种调用方式——命令行快速验证,和 Python API 灵活集成。
4.1 命令行一键执行(推荐首次尝试)
确保你已:
- 获取到设备 ID(USB 方式)或 IP(WiFi 方式)
- 知道云端模型服务地址(如
http://192.168.1.200:8800/v1,这是 vLLM 服务映射出的地址) - 确认模型名是
autoglm-phone-9b(Open-AutoGLM 默认支持)
在Open-AutoGLM项目根目录下,运行:
python main.py \ --device-id 8A9X1234567890AB \ --base-url http://192.168.1.200:8800/v1 \ --model "autoglm-phone-9b" \ "打开抖音搜索抖音号为:dycwo11nt61d 的博主并关注他!"参数说明:
--device-id:填adb devices显示的 ID(USB)或IP:5555(WiFi)--base-url:指向你部署好的 vLLM 服务,格式必须带/v1- 最后字符串:纯自然语言,越接近日常说话越好,无需特殊格式
执行后,你会看到终端滚动日志:
Capturing screen...(截取当前屏幕)Sending image and prompt to model...(上传截图+指令)Model response: {"action": "click", "target": "search_icon"}(AI 规划动作)- 终端每行日志对应手机一次操作:点击抖音图标 → 点击搜索框 → 输入
dycwo11nt61d→ 点击搜索 → 点击第一个结果 → 滑动到关注按钮 → 点击关注
整个过程约 20–40 秒,取决于网络和模型响应速度。完成后,手机抖音 App 已自动完成全部操作,你只需确认关注成功即可。
4.2 Python API 调用:嵌入你自己的工作流
如果你希望把 Open-AutoGLM 集成进自动化脚本、测试平台或内部工具,phone_agent.adb提供了清晰的 Python 接口:
from phone_agent.adb import ADBConnection, list_devices # 1. 初始化连接管理器 conn = ADBConnection() # 2. 连接设备(支持 USB 或 WiFi) success, message = conn.connect("192.168.1.100:5555") # WiFi # success, message = conn.connect("8A9X1234567890AB") # USB print(f"连接状态: {message}") # 3. 列出所有已连接设备(用于调试) devices = list_devices() for device in devices: print(f"{device.device_id} - {device.connection_type.value}") # 4. (可选)为 USB 设备开启 WiFi 调试(方便后续切远程) success, message = conn.enable_tcpip(5555) if success: ip = conn.get_device_ip() print(f"设备已开启 TCP/IP,IP 为: {ip}") # 5. 断开连接(干净收尾) conn.disconnect("192.168.1.100:5555")这段代码展示了如何程序化地管理设备连接。实际业务中,你可以:
- 在 CI/CD 流水线里自动执行 App UI 回归测试
- 为客服团队搭建“一键复现用户问题”工具(输入用户描述,AI 自动操作到对应页面)
- 构建无障碍辅助功能,帮视障用户语音控制手机
关键洞察:Open-AutoGLM 的价值不仅在于“能做”,更在于“易集成”。它把复杂的多模态推理封装成简单函数调用,把 ADB 底层细节屏蔽掉,让你专注在“想让它做什么”上。
5. 常见问题排查:这些坑,我们都踩过了
即使按指南一步步来,也可能遇到意料之外的卡点。以下是实测中最常出现的三类问题及解决思路,按发生频率排序:
5.1 “Connection refused” 或 “Failed to connect to server”
现象:运行main.py时,终端报错ConnectionRefusedError: [Errno 111] Connection refused
原因:不是本地问题,而是云端模型服务没跑起来,或防火墙拦住了端口
解决:
- 登录你的云服务器,检查 vLLM 进程是否存活:
ps aux | grep vllm - 确认启动命令中
--host 0.0.0.0(而非127.0.0.1),否则只监听本地 - 检查服务器防火墙:
sudo ufw status(Ubuntu)或sudo firewall-cmd --list-ports(CentOS),确保映射端口(如 8800)已放行 - 用
curl http://<服务器IP>:8800/v1/models在本地电脑测试能否访问(返回 JSON 即通)
5.2 ADB 设备显示 “unauthorized” 或 “offline”
现象:adb devices输出XXXXXXX unauthorized或XXXXXXX offline
原因:手机未授权电脑调试,或 ADB 服务异常
解决:
- 拔掉数据线,关闭手机“USB 调试”,再重新开启
- 电脑端重启 ADB 服务:
adb kill-server && adb start-server - 重新插线,手机弹窗务必点“允许”,并勾选“始终允许”
- 若仍不行,尝试更换数据线或 USB 口(部分充电线不支持数据传输)
5.3 AI 执行卡在某一步,或反复点击错误位置
现象:手机屏幕没变化,或点击了广告、返回键等无关区域
原因:屏幕截图质量差,或模型对当前界面理解偏差
解决:
- 检查手机亮度是否足够(太暗会导致截图模糊,影响视觉模型识别)
- 确保手机未开启“深色模式”或“极简桌面”,复杂壁纸/小组件会干扰识别
- 在
main.py中临时增加截图保存逻辑,查看screen_capture.png是否清晰 - 指令尽量具体:“打开抖音 App” 比 “打开抖音” 更可靠;“点击搜索框” 比 “找地方输字” 更明确
经验之谈:前两次失败很正常。Open-AutoGLM 是一个仍在快速迭代的框架,它的鲁棒性会随数据积累和模型升级持续提升。每次报错,其实都是在帮你定位真实世界的边界。
6. 总结:这不是玩具,而是手机自动化的起点
回看整个流程——从克隆代码、配置 ADB、设置手机,到输入一句“打开抖音关注某某”,最终看到手机自己完成一整套操作——你完成的不只是一个技术教程,而是亲手启动了一个手机端 AI Agent 的最小可行闭环。
Open-AutoGLM 的意义,不在于它今天能完美处理所有 App,而在于它把过去需要写几十行 UI Automator 脚本、或依赖特定 Accessibility Service 的事情,简化成了“一句话指令”。它把视觉、语言、动作三个模态真正拧在了一起,而且开源、可定制、可部署。
对开发者,它是构建下一代移动智能体的脚手架;
对测试工程师,它是 UI 自动化的新范式;
对普通用户,它预示着一个“告诉手机做什么,它就去做什么”的未来。
当然,它还有很长的路:App 兼容性需扩展、长任务稳定性待加强、离线能力尚在规划。但正如当年第一个能识别图片的 CNN 模型,真正的突破往往始于一个能跑通的 demo。
你现在拥有的,是一把钥匙。接下来,是打开哪扇门,由你决定。
获取更多AI镜像
想探索更多AI镜像和应用场景?访问 CSDN星图镜像广场,提供丰富的预置镜像,覆盖大模型推理、图像生成、视频生成、模型微调等多个领域,支持一键部署。