news 2026/2/10 18:12:42

新手友好!Open-AutoGLM手机AI代理从0到1搭建

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
新手友好!Open-AutoGLM手机AI代理从0到1搭建

新手友好!Open-AutoGLM手机AI代理从0到1搭建

1. 项目背景与核心价值

随着移动设备在日常生活中的深度渗透,用户对智能化操作的需求日益增长。传统自动化工具如按键精灵、Tasker等依赖规则脚本,难以应对复杂多变的应用界面和交互逻辑。而基于大模型的AI代理正在成为下一代智能助手的核心方向。

Open-AutoGLM 是由智谱开源推出的手机端AI Agent框架,名为Phone Agent,它结合视觉语言模型(VLM)与Android调试桥(ADB),实现了真正意义上的“自然语言驱动”手机操作。用户只需输入一句指令,例如“打开小红书搜索美食推荐”,系统即可自动理解屏幕内容、解析用户意图,并规划出完整的操作路径——包括启动应用、输入关键词、点击搜索按钮等,最终完成任务。

该框架不仅支持本地部署保障数据隐私,还具备敏感操作确认机制,在涉及登录或验证码场景时可暂停执行并交由人工接管,兼顾智能性与安全性。


2. 技术架构与工作原理

2.1 系统整体架构

Open-AutoGLM 的运行流程可分为四个关键阶段:

  1. 屏幕感知:通过 ADB 截图获取当前手机界面图像。
  2. 多模态理解:将截图与用户指令一同送入视觉语言模型进行联合推理。
  3. 动作规划:模型输出结构化操作命令(如点击坐标、滑动方向、文本输入等)。
  4. 设备控制:通过 ADB 执行具体操作,并循环反馈结果直至任务完成。

整个过程形成一个闭环控制系统,具备较强的容错能力和环境适应能力。

2.2 核心组件解析

  • Phone Agent 主体模块
    负责协调各子系统,管理会话状态,调用模型接口并解析响应。其设计兼容 OpenAI 风格 API,便于集成各类后端服务。

  • ADB 控制层
    封装了设备连接、截图抓取、触控模拟、键盘输入等功能。特别地,项目推荐使用 ADB Keyboard 实现无焦点文本输入,避免原生输入法弹窗干扰。

  • 视觉语言模型(VLM)
    使用 AutoGLM-Phone 系列模型,专为移动端UI理解优化。支持最多10张连续截图输入,最大上下文长度达25,480 tokens,足以处理长序列任务。

  • 安全机制
    内置风险检测模块,当识别到支付、账号修改等高危操作时,自动暂停并提示用户确认;同时支持在验证码页面手动介入,确保关键环节可控。


3. 本地环境准备与设备连接

3.1 硬件与软件要求

项目要求
操作系统Windows / macOS
Python 版本3.10 或以上
安卓设备Android 7.0+ 真机或模拟器
ADB 工具平台工具包 platform-tools

3.2 安装与配置 ADB

Windows 用户
  1. 下载 Android Platform Tools 并解压。
  2. Win + R输入sysdm.cpl→ 高级 → 环境变量。
  3. 在“系统变量”中找到Path,添加解压目录路径(如C:\platform-tools)。
  4. 打开命令行,执行:bash adb version若显示版本信息则安装成功。
macOS 用户

在终端中执行以下命令(假设文件解压至 Downloads 目录):

export PATH=${PATH}:~/Downloads/platform-tools

建议将此行加入.zshrc.bash_profile文件以永久生效。


4. 手机端设置步骤

4.1 开启开发者选项与USB调试

  1. 进入手机“设置” → “关于手机”。
  2. 连续点击“版本号”7次,直到提示“您已开启开发者模式”。
  3. 返回设置主菜单 → “开发者选项” → 启用“USB调试”。

⚠️ 注意:部分厂商需额外授权“允许通过USB调试”权限,请根据提示操作。

4.2 安装 ADB Keyboard

为实现稳定文本输入,建议安装专用输入法:

  1. 下载 ADB Keyboard APK。
  2. 安装完成后进入“语言与输入法”设置。
  3. 将默认输入法切换为ADB Keyboard

此后所有文本输入均可通过 ADB 命令完成,无需手动弹出软键盘。


5. 部署控制端代码

5.1 克隆项目仓库

在本地电脑执行以下命令:

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

5.2 安装依赖库

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

若需进行二次开发,可安装完整开发依赖:

pip install -e ".[dev]"

6. 设备连接方式详解

6.1 USB 连接(推荐初学者)

  1. 使用数据线连接手机与电脑。
  2. 手机端弹出“允许USB调试?”对话框时,点击“确定”。
  3. 在终端运行:bash adb devices输出示例:List of devices attached 1234567890abc device

若显示unauthorized,请重新插拔并确认授权。

6.2 WiFi 远程连接(适合无线调试)

首次需通过 USB 启用 TCP/IP 模式:

adb tcpip 5555

断开USB后,连接同一局域网,执行:

adb connect 192.168.x.x:5555

其中 IP 地址可通过手机“设置 → WLAN → 当前网络详情”查看。

连接成功后可用adb devices验证。


7. 启动AI代理并执行任务

7.1 命令行快速运行

确保模型服务已在云端或本地启动(参考下一节),然后执行:

python main.py \ --device-id 1234567890abc \ --base-url http://<服务器IP>:8000/v1 \ --model "autoglm-phone-9b" \ "打开抖音搜索抖音号为:dycwo11nt61d 的博主并关注他!"

参数说明: ---device-id:来自adb devices的设备标识。 ---base-url:vLLM 或 SGlang 提供的 OpenAI 兼容接口地址。 - 最后字符串:自然语言指令,支持中文/英文混合表达。

7.2 Python API 调用示例

适用于嵌入其他系统或批量任务调度:

from phone_agent.adb import ADBConnection, list_devices # 创建连接管理器 conn = ADBConnection() # 连接远程设备 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(用于WiFi连接) ip = conn.get_device_ip() print(f"设备 IP: {ip}") # 断开连接 conn.disconnect("192.168.1.100:5555")

更高级用法可结合PhoneAgent类直接调用模型:

from phone_agent import PhoneAgent from phone_agent.model import ModelConfig model_config = ModelConfig( base_url="http://localhost:8000/v1", model_name="autoglm-phone-9b", ) agent = PhoneAgent(model_config=model_config) result = agent.run("打开淘宝搜索无线耳机") print(result)

8. 模型部署与服务启动

8.1 使用 vLLM 部署模型

推荐使用 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/models可返回模型信息。

8.2 支持的模型列表

模型名称语言支持下载地址
AutoGLM-Phone-9B中文优化Hugging Face / ModelScope
AutoGLM-Phone-9B-Multilingual多语言支持Hugging Face / ModelScope

可根据实际需求选择对应版本。


9. 常见问题排查指南

问题现象可能原因解决方案
ADB 无法识别设备未开启USB调试或驱动异常重新启用开发者选项,更换数据线或端口
连接被拒绝(Connection Refused)云服务器防火墙未放行端口检查安全组规则,开放对应端口(如8000)
模型响应乱码或卡顿显存不足或 max-model-len 设置过小增加 GPU 显存分配,确保参数一致
ADB Keyboard 无法输入未设为默认输入法进入系统设置强制切换
WiFi连接频繁掉线网络不稳定改用USB连接,或重启路由器

10. 总结

Open-AutoGLM 作为一款面向手机端的AI代理框架,凭借其强大的多模态理解能力与灵活的部署方式,为自动化操作提供了全新的解决方案。无论是个人效率提升还是企业级RPA应用,都展现出广阔前景。

本文详细介绍了从环境搭建、设备连接到模型部署与任务执行的全流程,帮助新手用户零基础完成AI代理的构建。通过命令行与Python API两种调用方式,既满足快速体验需求,也支持深度定制开发。

未来,随着视觉语言模型的持续进化,此类手机AI代理将在智能家居控制、跨App信息整合、无障碍辅助等领域发挥更大作用。


获取更多AI镜像

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

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

Instagram视频下载完整指南:5分钟快速上手的免费工具

Instagram视频下载完整指南&#xff1a;5分钟快速上手的免费工具 【免费下载链接】instagram-video-downloader Simple website made with Next.js for downloading instagram videos with an API that can be used to integrate it in other applications. 项目地址: https…

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

Visual Studio终极卸载工具:如何彻底清理开发环境残留文件

Visual Studio终极卸载工具&#xff1a;如何彻底清理开发环境残留文件 【免费下载链接】VisualStudioUninstaller Visual Studio Uninstallation sometimes can be unreliable and often leave out a lot of unwanted artifacts. Visual Studio Uninstaller is designed to tho…

作者头像 李华
网站建设 2026/2/10 8:40:37

Qwen3思维增强版:30B模型如何实现推理能力大升级?

Qwen3思维增强版&#xff1a;30B模型如何实现推理能力大升级&#xff1f; 【免费下载链接】Qwen3-30B-A3B-Thinking-2507-FP8 项目地址: https://ai.gitcode.com/hf_mirrors/Qwen/Qwen3-30B-A3B-Thinking-2507-FP8 导语&#xff1a;Qwen3-30B-A3B-Thinking-2507-FP8模型…

作者头像 李华
网站建设 2026/2/6 10:07:23

如何用AI创作古典音乐?NotaGen镜像全解析

如何用AI创作古典音乐&#xff1f;NotaGen镜像全解析 在人工智能不断渗透创意领域的今天&#xff0c;音乐创作正迎来一场静默的革命。传统上被视为人类情感与灵感专属表达的古典音乐&#xff0c;如今也能通过AI模型生成结构严谨、风格逼真的作品。这其中&#xff0c;NotaGen 作…

作者头像 李华
网站建设 2026/2/7 11:20:03

语义搜索与推荐系统利器|GTE中文向量模型轻量部署方案

语义搜索与推荐系统利器&#xff5c;GTE中文向量模型轻量部署方案 1. 技术背景与核心价值 在当前信息爆炸的时代&#xff0c;传统的关键词匹配已难以满足用户对精准内容理解的需求。尤其是在搜索、推荐、问答系统等场景中&#xff0c;如何判断两段文本的语义相似度&#xff0…

作者头像 李华
网站建设 2026/2/9 16:03:25

LibRaw完整教程:RAW图像处理库的快速入门指南

LibRaw完整教程&#xff1a;RAW图像处理库的快速入门指南 【免费下载链接】LibRaw LibRaw is a library for reading RAW files from digital cameras 项目地址: https://gitcode.com/gh_mirrors/li/LibRaw LibRaw是一个功能强大的开源库&#xff0c;专门用于读取和处理…

作者头像 李华