news 2026/2/21 10:24:56

Open-AutoGLM快速上手:从克隆代码到执行关注抖音号完整指南

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Open-AutoGLM快速上手:从克隆代码到执行关注抖音号完整指南

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 用户(推荐方式)
  1. 去 Android SDK Platform-Tools 官网 下载最新 ZIP 包(如platform-tools-latest-windows.zip
  2. 解压到一个固定路径,例如C:\adb
  3. Win + R输入sysdm.cpl→ “高级”选项卡 → “环境变量”
  4. 在“系统变量”中找到Path→ “编辑” → “新建” → 粘贴你解压的路径(如C:\adb
  5. 打开新命令提示符(CMD 或 PowerShell),输入:
    adb version
    若显示类似Android 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 手机端设置:三步打开“被控制权”

手机不是生来就接受远程指令的,得手动开几个开关:

  1. 开启开发者模式
    进入「设置」→「关于手机」→ 连续点击「版本号」7 次,直到弹出“您现在处于开发者模式”的提示。

  2. 启用 USB 调试
    返回「设置」→「系统」→「开发者选项」→ 找到并开启「USB 调试」。首次开启会弹窗确认,点“确定”。

  3. 安装并启用 ADB Keyboard(关键!)
    Open-AutoGLM 需要向手机输入文字(比如搜索关键词),而标准输入法无法被 ADB 直接调用。ADB Keyboard 是专为此设计的轻量输入法:

    • 去 GitHub 搜索adb-keyboard,下载最新.apk文件(如adb-keyboard-v1.0.0.apk
    • 用数据线传到手机,或直接用浏览器下载安装
    • 安装后,进入「设置」→「语言与输入法」→「当前键盘」→ 切换为ADB Keyboard

这一步极易被忽略,但它是“自动输入”的前提。没装或没切换,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 连接:新手首选,即插即用

这是最简单、最可靠的入门方式:

  1. 用原装数据线将手机连接电脑
  2. 手机弹出“允许 USB 调试吗?”提示,勾选“始终允许”,点“确定”
  3. 在电脑终端运行:
    adb devices
    正常输出应类似:
    List of devices attached 8A9X1234567890AB device
    这串字符就是你的device-id,后面启动命令要用。

优势:延迟低、不掉线、无需额外网络配置
❌ 局限:线缆长度限制,不方便多设备并行调试

3.2 WiFi 远程连接:摆脱线缆,开发更自由

适合以下场景:手机放在支架上方便录屏、多台测试机集中管理、或你就是不想被线捆着。

操作分两步,必须先用 USB 连一次

  1. USB 连接状态下,开启 TCP/IP 模式

    adb tcpip 5555

    成功后会提示restarting in TCP mode port: 5555

  2. 断开 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 unauthorizedXXXXXXX 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星图镜像广场,提供丰富的预置镜像,覆盖大模型推理、图像生成、视频生成、模型微调等多个领域,支持一键部署。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/17 23:34:24

Zotero插件管理平台:3分钟打造你的学术增强系统

Zotero插件管理平台&#xff1a;3分钟打造你的学术增强系统 【免费下载链接】zotero-addons Zotero add-on to list and install add-ons in Zotero 项目地址: https://gitcode.com/gh_mirrors/zo/zotero-addons 还在为插件安装流程繁琐而头疼&#xff1f;这款专为Zoter…

作者头像 李华
网站建设 2026/2/18 19:42:17

RimSort智能管理:RimWorld模组冲突解决方案

RimSort智能管理&#xff1a;RimWorld模组冲突解决方案 【免费下载链接】RimSort 项目地址: https://gitcode.com/gh_mirrors/ri/RimSort 高效模组管理是RimWorld玩家构建理想殖民地的关键环节。然而&#xff0c;传统手动排序方式往往导致加载顺序混乱、游戏频繁崩溃、…

作者头像 李华
网站建设 2026/2/10 10:22:22

GetQzonehistory:解决社交数据丢失痛点的数字记忆备份方案

GetQzonehistory&#xff1a;解决社交数据丢失痛点的数字记忆备份方案 【免费下载链接】GetQzonehistory 获取QQ空间发布的历史说说 项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory 你是否曾因误删QQ空间说说而懊悔&#xff1f;那些记录青春岁月的文…

作者头像 李华
网站建设 2026/2/7 17:59:14

如何高效获取无损音乐?网易云音乐FLAC下载工具全解析

如何高效获取无损音乐&#xff1f;网易云音乐FLAC下载工具全解析 【免费下载链接】NeteaseCloudMusicFlac 根据网易云音乐的歌单, 下载flac无损音乐到本地.。 项目地址: https://gitcode.com/gh_mirrors/nete/NeteaseCloudMusicFlac 在数字音乐普及的今天&#xff0c;无…

作者头像 李华
网站建设 2026/2/4 8:24:20

通义千问3-14B显存溢出?Non-thinking模式部署优化案例

通义千问3-14B显存溢出&#xff1f;Non-thinking模式部署优化案例 1. 问题背景&#xff1a;为什么14B模型也会OOM&#xff1f; 你有没有遇到过这种情况&#xff1a;明明RTX 4090有24GB显存&#xff0c;跑一个148亿参数的Qwen3-14B FP8量化版&#xff08;仅需14GB&#xff09;…

作者头像 李华
网站建设 2026/2/17 23:23:11

窗口置顶工具AlwaysOnTop:提升多窗口管理效率的实用方案

窗口置顶工具AlwaysOnTop&#xff1a;提升多窗口管理效率的实用方案 【免费下载链接】AlwaysOnTop Make a Windows application always run on top 项目地址: https://gitcode.com/gh_mirrors/al/AlwaysOnTop 在数字化办公环境中&#xff0c;多窗口切换已成为影响工作效…

作者头像 李华