news 2026/3/1 3:50:26

Open-AutoGLM+WiFi ADB:远程控制手机部署教程

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Open-AutoGLM+WiFi ADB:远程控制手机部署教程

Open-AutoGLM+WiFi ADB:远程控制手机部署教程

1. 什么是 Open-AutoGLM?一个真正能“看懂”手机屏幕的 AI 助理框架

Open-AutoGLM 是智谱开源的一套面向移动端的 AI Agent 框架,它不是简单地把大模型塞进手机里跑,而是构建了一套“视觉理解 + 意图解析 + 自动执行”的完整闭环。它的核心目标很实在:让 AI 真正像人一样操作手机——不是靠预设脚本,而是靠实时“看”屏幕、“想”下一步、“点”对位置。

你可能用过语音助手,但它只能听指令、调用固定功能;你也可能试过自动化工具,但它们需要你手动录屏、写规则、反复调试。而 Open-AutoGLM 走的是另一条路:它把手机屏幕当成一张张图片喂给视觉语言模型(VLM),让模型自己理解当前界面长什么样、按钮在哪、文字说什么;再结合自然语言指令,推理出用户到底想干什么;最后通过 ADB 发送精准的点击、滑动、输入命令,完成整套操作。

这背后的关键突破在于“多模态感知”和“动作规划”的融合。它不依赖 App 的内部 API,也不要求你提前知道页面结构——哪怕是一个刚安装、从未见过的新 App,只要界面元素清晰可见,它就能识别并交互。这种能力,让 AI 第一次具备了在真实手机环境中“边看边做”的自主性。

2. Phone Agent:从指令到动作,全程无需手动点击

Phone Agent 是基于 Open-AutoGLM 构建的落地应用实例,也是目前最成熟可用的手机端智能助理实现。你可以把它理解成一个装在电脑上的“远程手指”+“AI大脑”组合体:电脑负责运行逻辑和调用云端模型,手机只负责展示界面和执行指令,轻量、安全、可扩展。

它的典型工作流是这样的:

  • 你输入一句自然语言:“打开小红书搜美食”,系统不会去猜你要点哪个图标,而是先截取当前手机屏幕;
  • 把截图和这句话一起发给云端的 AutoGLM-Phone 模型(比如 9B 参数版本);
  • 模型分析画面:识别出桌面有哪些 App 图标,定位“小红书”图标的位置,判断当前是否已登录;
  • 规划动作序列:先点击小红书图标 → 等待启动 → 找到搜索框 → 点击 → 输入“美食” → 点击搜索按钮;
  • 将每一步转化为 ADB 命令(如adb shell input tap x yadb shell input text "美食"),逐条下发执行。

整个过程完全自动,中间还能处理常见卡点:比如遇到登录页,它会暂停并提示“检测到账号登录界面,是否人工接管?”;碰到验证码弹窗,会主动停止并等待你手动输入;甚至在输入法不兼容时,自动切换为 ADB Keyboard 完成文字输入——这些细节,正是它区别于普通自动化脚本的核心价值。

更关键的是,它支持 WiFi ADB 远程连接。这意味着你不需要一直用 USB 线连着手机,只要手机和电脑在同一局域网,或者你有一台带公网 IP 的云服务器中转,就能实现真正的“隔空操控”。开会时让 AI 帮你回消息,出差时远程检查测试机状态,甚至搭建一个家庭自动化中控——这些场景,第一次变得触手可及。

3. 本地环境准备:让电脑学会“认出”你的手机

在让 AI 开始干活之前,得先让本地电脑和安卓设备建立稳定、可信的通信通道。这不是装个软件就完事,而是一套需要耐心配置的“信任握手”流程。

3.1 硬件与基础工具清单

  • 你的电脑:Windows 或 macOS 都可以,推荐使用 Python 3.10+(避免因版本差异导致依赖冲突);
  • 你的手机:Android 7.0 及以上系统,真机优先(模拟器虽可测试,但部分权限和硬件交互受限);
  • ADB 工具包:这是 Android Debug Bridge 的简称,是所有远程控制的底层基石。它不是 App,而是一组命令行程序,必须正确安装并加入系统路径。

3.2 ADB 环境变量配置(两步到位)

Windows 用户

  1. 去 Android SDK Platform-Tools 官网 下载最新版 ZIP 包;
  2. 解压到一个固定路径,比如C:\platform-tools
  3. Win + R输入sysdm.cpl→ “高级”选项卡 → “环境变量” → 在“系统变量”中找到Path→ “编辑” → “新建” → 粘贴你刚才的解压路径;
  4. 打开新终端窗口,输入adb version,看到类似Android Debug Bridge version 1.0.41的输出,说明配置成功。

macOS 用户

  1. 同样下载 platform-tools 并解压,假设放在~/Downloads/platform-tools
  2. 打开 Terminal,运行以下命令(只需执行一次):
echo 'export PATH=$PATH:~/Downloads/platform-tools' >> ~/.zshrc source ~/.zshrc
  1. 输入adb version验证,有版本号即成功。

小提醒:别跳过验证这步。很多后续问题,根源都在这里——比如adb devices返回空,八成是环境变量没生效。

3.3 手机端三步设置:开启“被控制权”

光有电脑不行,手机也得点头同意。这个过程叫“授权调试”,一共三步,缺一不可:

  1. 开启开发者模式:进入「设置」→「关于手机」→ 连续点击「版本号」7 次,直到弹出“您现在处于开发者模式”的提示;
  2. 启用 USB 调试:回到「设置」→「系统」→「开发者选项」→ 找到「USB 调试」并开启开关;
  3. 安装 ADB Keyboard(关键!)
    • 去 GitHub 搜索adb-keyboard,下载最新 APK 安装包(如adb-keyboard-v1.0.0.apk);
    • 安装后,进入「设置」→「语言与输入法」→「当前输入法」→ 切换为ADB Keyboard
    • 这一步决定了 AI 能不能“打字”。没有它,遇到搜索、登录等需要输入的场景,流程就会卡住。

做完这三步,你的手机就正式准备好接受远程指令了。

4. 控制端部署:从克隆代码到运行第一条指令

现在,轮到 Open-AutoGLM 登场。它就是那个坐在电脑前、指挥全局的“AI调度员”。

4.1 获取并安装控制代码

打开终端(Windows 用 PowerShell 或 CMD,macOS 用 Terminal),依次执行:

# 1. 克隆官方仓库(注意:不是 fork,是原项目) 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 pip install -e .

为什么用-e安装?
这表示“开发模式安装”,意味着你后续修改源码(比如调整日志级别、加个调试打印),不用重新 pip install 就能立即生效,对调试极其友好。

4.2 设备连接:USB 快速上手,WiFi 实现真远程

连接方式有两种,推荐先用 USB 确保流程通顺,再切到 WiFi。

USB 连接(新手首选)

  • 用原装数据线连接手机和电脑;
  • 手机弹出“允许 USB 调试吗?”提示,勾选“始终允许”,点确定;
  • 终端输入:
adb devices
  • 如果看到类似ZY223456789 device的输出,说明连接成功。那一串字母数字就是你的device-id

WiFi 远程连接(进阶必备)

  • 先用 USB 连接一次,执行:
adb tcpip 5555
  • 拔掉 USB 线,确保手机和电脑连在同一个 WiFi 下;
  • 查看手机 IP 地址(设置 → 关于手机 → 状态信息 → IP 地址),假设是192.168.1.105
  • 终端输入:
adb connect 192.168.1.105:5555
  • 再次运行adb devices,应显示192.168.1.105:5555 device

小技巧:如果adb connect失败,大概率是手机 WiFi 和电脑不在同一子网,或路由器开启了 AP 隔离。换个热点试试,或直接用手机开热点给电脑连。

5. 启动 AI 代理:用一句话,让手机自己动起来

万事俱备,只欠东风。现在,我们用一条命令,唤醒这个能“看”会“想”还“能干”的 AI 助理。

5.1 命令行一键启动(最简方式)

确保你已在Open-AutoGLM目录下,并且已确认:

  • device-id(USB 是ZY223456789,WiFi 是192.168.1.105:5555);
  • 云服务器已部署好autoglm-phone-9b模型,且通过 vLLM 或类似服务暴露了/v1/chat/completions接口,端口映射为8800
  • 服务器防火墙已放行8800端口。

然后,执行:

python main.py \ --device-id 192.168.1.105:5555 \ --base-url http://123.45.67.89:8800/v1 \ --model "autoglm-phone-9b" \ "打开抖音搜索抖音号为:dycwo11nt61d 的博主并关注他!"

你会看到终端开始滚动日志:

  • 📸 截取屏幕...
  • 🧠 发送请求至云端模型...
  • 模型返回动作:[{'action': 'tap', 'x': 520, 'y': 1120}, {'action': 'input', 'text': 'dycwo11nt61d'}]
  • 执行点击, 执行输入...

几秒钟后,你的手机屏幕上,抖音已经自动打开、搜索框被点击、ID 被输入、搜索结果出现,甚至“关注”按钮已被点亮——整个过程,你只需要看着,不用碰一下。

5.2 Python API 方式(适合集成进自己的工具)

如果你希望把 Phone Agent 的能力嵌入到自己的脚本或 Web 应用中,官方提供了干净的 Python 接口:

from phone_agent.adb import ADBConnection, list_devices # 初始化连接管理器 conn = ADBConnection() # 连接远程设备(WiFi) success, message = conn.connect("192.168.1.105:5555") print(f"连接状态: {message}") # 输出:连接成功 # 查看所有已连接设备 devices = list_devices() for device in devices: print(f"{device.device_id} - {device.connection_type.value}") # 如:192.168.1.105:5555 - wifi # (可选)为 USB 设备开启 TCP/IP,方便后续切 WiFi success, message = conn.enable_tcpip(5555) ip = conn.get_device_ip() # 自动获取手机 IP print(f"设备 IP: {ip}") # 断开连接 conn.disconnect("192.168.1.105:5555")

这段代码展示了如何用编程方式管理设备连接,比命令行更灵活。你可以把它封装成一个服务,供前端调用,或者写个定时任务,每天早上 8 点自动打开天气 App 截图发到钉钉群。

6. 常见问题与实战排障指南

部署过程中,90% 的问题都出在“连接”和“权限”上。以下是高频问题的真实解决方案,来自多次踩坑后的经验总结:

6.1 “Connection refused” —— 云服务器连不上?

  • 第一反应:检查端口。在服务器上运行netstat -tuln | grep 8800,确认服务确实在监听;
  • 第二反应:查防火墙。Ubuntu 用户执行sudo ufw status,若为active,则运行sudo ufw allow 8800;CentOS 用户用sudo firewall-cmd --permanent --add-port=8800/tcp && sudo firewall-cmd --reload
  • 第三反应:看 vLLM 日志。启动命令末尾加上--host 0.0.0.0(默认只监听 127.0.0.1),并确认--port 8800与客户端一致。

6.2 “Device not found” —— ADB 找不到手机?

  • USB 连接时,手机是否弹出了“允许调试”提示?没点确定,ADB 就是“瞎子”;
  • WiFi 连接时,adb connect后立刻运行adb devices,如果显示unauthorized,说明手机没点“允许”——拔线重连一次,这次务必点确定;
  • 检查手机 USB 连接模式:下拉通知栏,把“传输文件”改成“仅充电”或“MTP”,有时“文件传输”模式反而会干扰 ADB。

6.3 模型“不动”或“乱点”—— 理解错了怎么办?

  • 截图质量是前提。确保手机屏幕亮度足够、无遮挡、未锁屏。AutoGLM-Phone 对模糊、反光、暗光下的截图识别率会下降;
  • 指令要具体。别说“帮我看看消息”,而说“打开微信,进入‘技术交流群’,查看最新一条未读消息”;
  • 检查 ADB Keyboard 是否生效。在任意输入框长按,看候选栏是否出现“ADB Keyboard”选项,并已启用;
  • 降低预期,分步验证。先试最简单的指令:“点击屏幕中央”,成功后再叠加复杂度。

7. 总结:你刚刚部署的,不只是一个工具,而是一个新入口

回顾整个过程,我们完成的远不止是“让手机听指令”这么简单。你亲手搭建了一条从自然语言到物理操作的完整链路:文字 → 理解 → 规划 → 执行。这条链路背后,是视觉语言模型对现实界面的感知力,是 ADB 对底层系统的掌控力,更是 Open-AutoGLM 对这两者之间鸿沟的优雅弥合。

它意味着,未来你不再需要为每个 App 学一套操作逻辑;不再需要反复录制、调试自动化脚本;甚至不再需要时刻守在设备旁——只要一条指令,AI 就能替你完成那些重复、琐碎、却不得不做的手机操作。

而 WiFi ADB 的加入,更是把这个能力从“桌面延伸到了云端”。你可以把模型部署在高性能服务器上,用手机拍张照片发过去,让它帮你识别药品说明书;也可以把家里的旧安卓平板挂在网上,让 AI 每天定时播报天气、朗读新闻、监控快递物流。

技术的价值,从来不在参数有多高,而在于它能否无声无息地融入生活,把人从机械劳动中解放出来。Open-AutoGLM 正在做的,就是这件事的起点。


获取更多AI镜像

想探索更多AI镜像和应用场景?访问 CSDN星图镜像广场,提供丰富的预置镜像,覆盖大模型推理、图像生成、视频生成、模型微调等多个领域,支持一键部署。

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

foobar2000美化指南:自定义皮肤全攻略

foobar2000美化指南:自定义皮肤全攻略 【免费下载链接】foobox-cn DUI 配置 for foobar2000 项目地址: https://gitcode.com/GitHub_Trending/fo/foobox-cn foobar2000作为一款轻量级音乐播放器,以其高度的可定制性受到广大音乐爱好者的喜爱。本文…

作者头像 李华
网站建设 2026/2/25 8:34:23

Z-Image-ComfyUI部署教程:阿里开源文生图大模型一键启动实战

Z-Image-ComfyUI部署教程:阿里开源文生图大模型一键启动实战 1. 为什么Z-Image值得你花10分钟部署? 你有没有试过在本地跑一个真正能用的文生图模型?不是那种要调参、改配置、查报错半天才能出一张图的“半成品”,而是打开就能用…

作者头像 李华
网站建设 2026/2/25 14:26:31

突破Windows性能瓶颈:开源系统优化工具的革新方案

突破Windows性能瓶颈:开源系统优化工具的革新方案 【免费下载链接】Atlas 🚀 An open and lightweight modification to Windows, designed to optimize performance, privacy and security. 项目地址: https://gitcode.com/GitHub_Trending/atlas1/At…

作者头像 李华
网站建设 2026/2/15 9:39:52

新手必看:SGLang-v0.5.6快速上手保姆级教程

新手必看:SGLang-v0.5.6快速上手保姆级教程 1. 为什么你需要SGLang——不是又一个LLM框架,而是“能跑得动”的推理伙伴 你是不是也遇到过这些情况? 下载了一个大模型,本地跑起来卡得像PPT,GPU显存爆满,吞…

作者头像 李华
网站建设 2026/2/27 21:15:02

4步极速打造黑苹果EFI:OpCore Simplify让OpenCore配置不再复杂

4步极速打造黑苹果EFI:OpCore Simplify让OpenCore配置不再复杂 【免费下载链接】OpCore-Simplify A tool designed to simplify the creation of OpenCore EFI 项目地址: https://gitcode.com/GitHub_Trending/op/OpCore-Simplify 还在为OpenCore EFI配置的繁…

作者头像 李华