news 2026/6/20 8:31:09

Open-AutoGLM使用全记录:从连接失败到成功执行

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Open-AutoGLM使用全记录:从连接失败到成功执行

Open-AutoGLM使用全记录:从连接失败到成功执行

1. 项目背景与核心价值

你有没有想过,有一天只要说一句话,手机就能自动帮你完成一系列操作?比如:“打开小红书搜美食”,然后它自己启动App、输入关键词、滑动浏览结果——整个过程完全不需要你动手。这听起来像科幻片的场景,现在通过Open-AutoGLM已经可以实现了。

Open-AutoGLM 是由智谱开源的一个手机端 AI Agent 框架,基于 AutoGLM 构建,专为移动端任务自动化设计。它的核心能力是结合视觉语言模型(VLM)和 ADB 控制技术,实现“看懂屏幕 + 自动操作”的闭环。用户只需用自然语言下达指令,系统就能理解当前界面、规划操作路径,并一步步执行点击、滑动、输入等动作。

这个框架特别适合以下几类人群:

  • 经常需要重复操作手机的人(如运营、测试)
  • 想体验AI如何接管设备的极客玩家
  • 希望研究多模态Agent工作原理的技术爱好者

本文将带你完整走一遍从环境搭建、连接调试到最终成功运行的全过程,重点解决我在实操中遇到的几个典型问题,尤其是那个让人抓狂的“连接失败”错误。


2. 环境准备:软硬件清单与基础配置

2.1 所需软硬件一览

类别要求
电脑系统Windows / macOS(推荐macOS)
Python版本3.10+(建议使用虚拟环境)
手机设备Android 7.0以上真机或模拟器
核心工具ADB(Android Debug Bridge)
网络环境同一局域网(WiFi连接时必需)

2.2 安装ADB并验证连通性

ADB是整个流程的“桥梁”。没有它,AI再聪明也指挥不了你的手机。

Windows 用户安装步骤:
  1. 下载 Android SDK Platform Tools
  2. 解压后进入platform-tools文件夹
  3. 右键“此电脑” → 属性 → 高级系统设置 → 环境变量
  4. 在“系统变量”中的Path添加该目录路径
  5. 打开命令行输入:
adb version

如果返回类似Android Debug Bridge version 1.0.41,说明安装成功。

macOS 用户快速配置:
export PATH=${PATH}:~/Downloads/platform-tools

你可以把这行加到.zshrc.bash_profile中永久生效。


3. 手机端设置:开启开发者权限与输入法切换

很多人卡在第一步,不是因为代码有问题,而是手机没设置对。

3.1 开启开发者选项

路径:设置 → 关于手机 → 连续点击“版本号”7次 → 输入密码确认 → 提示“您已进入开发者模式”

3.2 启用USB调试

路径:设置 → 开发者选项 → 找到“USB调试” → 勾选启用

连接电脑后,手机会弹出“允许USB调试吗?”对话框,务必点击“允许”,并且勾选“始终允许”。

3.3 安装ADB Keyboard(关键!)

这是很多人忽略但极其重要的一步。

默认输入法无法通过ADB发送文本,必须使用专门的ADB Keyboard

  • 下载地址:GitHub Release
  • 安装APK后,在手机“语言与输入法”中将其设为默认输入法

否则你会发现:AI能识别界面、能规划操作,但在需要打字的地方直接卡住!


4. 部署控制端代码:克隆项目与依赖安装

一切准备就绪,开始部署本地控制程序。

4.1 克隆仓库并安装依赖

git clone https://github.com/zai-org/Open-AutoGLM cd Open-AutoGLM

强烈建议创建一个独立的Python虚拟环境:

python -m venv venv source venv/bin/activate # Linux/macOS # 或 venv\Scripts\activate # Windows

然后安装依赖:

pip install -r requirements.txt pip install -e .

注意最后一条命令中的-e .,表示以可编辑模式安装,方便后续修改调试。


5. 设备连接方式详解:USB vs WiFi

5.1 USB连接(最稳定)

插上数据线后运行:

adb devices

正常输出应为:

List of devices attached ABCDEF1234567890 device

只要看到device而不是unauthorized或空列表,就说明连接成功。

常见问题:出现unauthorized

原因是手机未授权电脑。拔掉重连,确保弹窗出现时点击“允许”。

5.2 WiFi远程连接(更灵活)

无线连接更适合长期运行或远程调试。

第一步:先用USB连接,开启TCP/IP模式
adb tcpip 5555
第二步:断开USB,用IP连接

先查手机IP地址(设置 → 关于手机 → 状态信息 → IP地址),然后:

adb connect 192.168.1.100:5555

再次运行adb devices,应该能看到设备在线。

注意:部分路由器会限制设备间通信,若连接失败,请检查是否开启了“客户端隔离”功能。


6. 启动AI代理:命令行调用实战

终于到了最关键的一步——让AI接管手机!

6.1 准备云端模型服务

Open-AutoGLM本身只是一个“控制器”,真正的“大脑”是部署在服务器上的视觉语言模型。你需要提前在云主机上启动vLLM服务。

启动命令如下:

python3 -m vllm.entrypoints.openai.api_server \ --served-model-name autoglm-phone-9b \ --allowed-local-media-path / \ --mm-encoder-tp-mode data \ --mm_processor_cache_type shm \ --mm_processor_kwargs '{"max_pixels":5000000}' \ --max-model-len 25480 \ --chat-template-content-format string \ --limit-mm-per-prompt '{"image":10}' \ --model zai-org/AutoGLM-Phone-9B \ --port 8000

启动成功后,可通过http://<公网IP>:8000/v1访问API。

安全提示:请配合Nginx反向代理 + HTTPS + 认证机制使用,避免暴露在公网。

6.2 本地执行AI指令

回到本地终端,运行:

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

参数说明:

  • --device-id:来自adb devices的设备ID
  • --base-url:云服务器的API地址
  • 最后的字符串:你要下达的自然语言指令

7. 故障排查:那些让我熬夜的坑

7.1 连接被拒绝?检查防火墙!

最常见的问题是:明明服务跑起来了,本地却连不上。

原因通常是云服务器防火墙未开放端口。

解决方案:

  • 登录云平台控制台
  • 找到安全组规则
  • 添加入方向规则:允许TCP协议,端口8000(或其他你指定的)

测试是否通了:

curl http://123.45.67.89:8000/health

返回{"status":"ok"}表示服务正常。

7.2 ADB频繁掉线?换USB试试

WiFi连接虽然方便,但稳定性远不如USB。特别是在执行长时间任务时,容易因网络波动中断。

建议:

  • 初次测试一律用USB线连接
  • 成熟后再切WiFi进行远程控制

7.3 模型乱码或无响应?检查vLLM参数

我曾遇到AI一直输出乱七八糟的动作,比如“点击坐标(0,0)”、“输入”,根本无法执行。

排查发现是--max-model-len设置过小,导致上下文截断,模型看不懂历史。

正确设置应为:

--max-model-len 25480

同时确保:

--allowed-local-media-path / --limit-mm-per-prompt '{"image":10}'

这些参数决定了模型能否正确接收截图和处理多轮交互。

7.4 输入失败?确认ADB Keyboard已启用

如果你发现AI总是在“输入内容”这一步卡住,大概率是输入法问题。

请回到手机设置,确认两点:

  1. ADB Keyboard 是否已安装
  2. 是否已在“语言与输入法”中设为默认

可以在终端手动测试输入:

adb shell input text "hello"

如果屏幕上没反应,那就是输入法没配好。


8. Python API进阶用法:集成到自己的项目

除了命令行,Open-AutoGLM也支持编程调用,便于集成到自动化脚本或Web服务中。

8.1 创建代理实例

from phone_agent import PhoneAgent from phone_agent.model import ModelConfig # 配置模型连接 model_config = ModelConfig( base_url="http://123.45.67.89:8000/v1", model_name="autoglm-phone-9b", ) # 初始化代理 agent = PhoneAgent(model_config=model_config)

8.2 执行任务并获取结果

result = agent.run("打开淘宝搜索无线耳机") print(result.final_answer) # 输出最终反馈

8.3 支持人工接管的敏感操作

对于涉及隐私的操作(如登录、支付),框架内置了暂停机制:

result = agent.run("登录我的微博账号", require_confirmation=True)

此时AI会在关键步骤停下来,等待人工确认后再继续。


9. 实际效果展示:一次完整的任务执行

以“打开美团搜火锅店”为例,AI的实际行为流程如下:

  1. 截图分析当前桌面,识别出“美团”图标位置
  2. 发送点击事件打开App
  3. 等待首页加载完成,再次截图判断UI结构
  4. 找到搜索框并点击
  5. 通过ADB Keyboard输入“火锅”
  6. 点击搜索按钮
  7. 滑动浏览结果页
  8. 返回总结:“已为您在美团中搜索‘火锅’,共显示20家店铺。”

整个过程约45秒,完全无需人工干预。

小技巧:首次运行建议开启--verbose参数,查看每一步的推理日志,有助于理解AI是如何“思考”的。


10. 总结:从失败到成功的经验提炼

经过多次尝试和踩坑,我把整个流程的关键点总结成一张表,帮助你少走弯路。

环节易错点解决方案
ADB连接unauthorized授权弹窗要点“允许”
输入失败默认输入法不对必须使用ADB Keyboard
模型无响应vLLM参数错误检查max-model-lenallowed-local-media-path
远程连接不通防火墙未放行开放对应端口
WiFi不稳定断连频繁优先使用USB调试

Open-AutoGLM 不只是一个玩具项目,它展示了多模态AI Agent在真实设备上的落地可能性。虽然目前还存在一些局限(如复杂页面识别不准、耗电量大等),但其架构设计清晰、扩展性强,非常适合二次开发。

未来你可以基于它做很多事情:

  • 批量自动化测试App
  • 构建个人数字助理
  • 研究AI决策链路与可解释性

最重要的是,这一切都建立在一个开源、透明、可控的基础上。


获取更多AI镜像

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

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

GLM-Z1-9B:90亿参数轻量模型性能开源新突破

GLM-Z1-9B&#xff1a;90亿参数轻量模型性能开源新突破 【免费下载链接】GLM-4-9B-0414 项目地址: https://ai.gitcode.com/zai-org/GLM-4-9B-0414 导语 GLM-Z1-9B作为最新开源的轻量级大模型&#xff0c;以90亿参数实现了数学推理与通用任务性能的双重突破&#xff0…

作者头像 李华
网站建设 2026/6/15 12:36:41

Home Assistant插件管理:HACS极速版的技术突破与实践指南

Home Assistant插件管理&#xff1a;HACS极速版的技术突破与实践指南 【免费下载链接】integration 项目地址: https://gitcode.com/gh_mirrors/int/integration 技术背景&#xff1a;智能家居插件管理的挑战与机遇 随着智能家居生态的蓬勃发展&#xff0c;Home Assis…

作者头像 李华
网站建设 2026/6/12 10:45:09

告别下载焦虑:这款工具如何让你拥有全网资源自由?

告别下载焦虑&#xff1a;这款工具如何让你拥有全网资源自由&#xff1f; 【免费下载链接】res-downloader 资源下载器、网络资源嗅探&#xff0c;支持微信视频号下载、网页抖音无水印下载、网页快手无水印视频下载、酷狗音乐下载等网络资源拦截下载! 项目地址: https://gitc…

作者头像 李华
网站建设 2026/6/15 17:30:17

亲测Speech Seaco Paraformer ASR,中文语音转文字效果惊艳

亲测Speech Seaco Paraformer ASR&#xff0c;中文语音转文字效果惊艳 最近在做语音识别相关的项目时&#xff0c;接触到了一款基于阿里FunASR的中文语音识别模型——Speech Seaco Paraformer ASR。这款由“科哥”构建并开源的镜像&#xff0c;不仅部署简单、界面友好&#xf…

作者头像 李华