银川市网站建设_网站建设公司_Spring_seo优化
2026/1/16 2:35:15 网站建设 项目流程

Open-AutoGLM实战教程:微信聊天记录自动整理流程

1. 引言

1.1 技术背景与学习目标

Open-AutoGLM 是智谱开源的一款面向手机端的 AI Agent 框架,基于视觉语言模型(VLM)实现对移动设备的智能操控。它通过 ADB(Android Debug Bridge)与安卓设备通信,结合多模态理解能力,能够解析屏幕内容、识别 UI 元素,并根据自然语言指令自动规划和执行操作流程。

本文将围绕“使用 Open-AutoGLM 实现微信聊天记录自动整理”这一实际场景,手把手带你完成从环境搭建到任务落地的完整实践。你将学会如何部署控制端、连接真机、调用云端模型,并编写自动化脚本完成复杂交互任务。

1.2 前置知识要求

  • 熟悉基本命令行操作
  • 了解 Python 编程基础
  • 对 ADB 工具有初步认知
  • 拥有一台 Android 7.0+ 的手机或模拟器

1.3 教程价值

本教程不仅适用于希望提升手机自动化效率的开发者,也适合想深入理解 AI Agent 在移动端落地逻辑的技术爱好者。通过真实案例驱动,我们将展示如何让大模型“看懂”手机界面并“动手”完成任务。


2. 环境准备与设备连接

2.1 硬件与软件依赖

为确保流程顺利,请提前准备好以下资源:

  • 操作系统:Windows 或 macOS
  • Python 版本:建议 3.10+
  • 安卓设备:Android 7.0 及以上版本(支持 USB 调试)
  • ADB 工具包:Android SDK Platform Tools
  • 网络环境:本地电脑与云服务器可互通

2.2 安装并配置 ADB

Windows 用户
  1. 下载 Android SDK Platform Tools 并解压。
  2. 打开系统设置:
  3. Win + R输入sysdm.cpl
  4. 进入“高级” → “环境变量”
  5. 在“系统变量”中找到Path,点击编辑
  6. 添加 ADB 解压路径(如C:\platform-tools
  7. 验证安装:
adb version

若输出版本号,则表示配置成功。

macOS 用户

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

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

可将其写入.zshrc.bash_profile以永久生效:

echo 'export PATH=${PATH}:~/Downloads/platform-tools' >> ~/.zshrc source ~/.zshrc

再次运行adb version验证是否生效。


3. 手机端设置与输入法配置

3.1 开启开发者选项

  1. 进入手机“设置” → “关于手机”
  2. 连续点击“版本号”7次,直到提示“您已进入开发者模式”

3.2 启用 USB 调试

  1. 返回“设置”主菜单 → “开发者选项”
  2. 打开“USB 调试”开关
  3. 当首次连接电脑时,授权弹窗中确认“允许调试”

注意:部分厂商(如小米、华为)需额外开启“OEM 解锁”或关闭“MIUI 优化”。

3.3 安装 ADB Keyboard(关键步骤)

由于 AI Agent 需要自动输入文本(如搜索关键词),而多数应用禁止非用户输入法注入文字,因此必须使用专用于 ADB 的虚拟键盘。

  1. 下载 ADB Keyboard APK 并安装
  2. 进入“设置” → “语言与输入法” → “默认键盘”
  3. 切换为 “ADB Keyboard”

这样即可通过 ADB 命令发送文本,绕过常规输入限制。


4. 部署 Open-AutoGLM 控制端

4.1 克隆项目代码

在本地电脑打开终端,执行:

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

4.2 安装依赖库

推荐使用虚拟环境隔离依赖:

python -m venv venv source venv/bin/activate # Linux/macOS # 或 venv\Scripts\activate.bat (Windows)

安装所需包:

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

-e .表示以开发模式安装,便于后续修改源码调试。


5. 设备连接方式详解

5.1 USB 连接(推荐初学者)

  1. 使用数据线连接手机与电脑
  2. 手机端确认“允许调试”权限
  3. 执行命令查看设备状态:
adb devices

正常输出应类似:

List of devices attached ABCDEF1234567890 device

其中ABCDEF1234567890即为你的设备 ID。

5.2 WiFi 远程连接(支持无线控制)

适用于远程调试或无 USB 接口场景。

第一步:通过 USB 启动 TCP/IP 模式
adb tcpip 5555

此命令使设备监听 5555 端口。

第二步:断开 USB,使用 IP 连接

获取手机局域网 IP 地址(可在“设置”→“WLAN”中查看),例如192.168.1.100

adb connect 192.168.1.100:5555

成功后再次运行adb devices应显示该 IP 地址。

提示:重启手机后需重新执行adb tcpip 5555


6. 实战:微信聊天记录自动整理流程

6.1 任务目标定义

我们希望实现如下功能:

“打开微信,进入与‘张三’的聊天窗口,查找所有包含‘合同’关键词的消息,并将这些消息的时间、发送人、内容导出为本地文本文件。”

这是一个典型的多步交互任务,涉及: - 应用启动 - 页面导航 - 文本搜索 - 内容提取 - 数据保存

6.2 准备云端推理服务

Open-AutoGLM 的核心模型运行在云端(如 vLLM 部署的 AutoGLM-Phone-9B)。你需要确保:

  • 云服务器已部署模型服务
  • API 端点暴露(如http://<public-ip>:8800/v1
  • 防火墙开放对应端口(如 8800)

示例启动命令(vLLM):

python -m vllm.entrypoints.openai.api_server \ --model zhipu-autobots/autoglm-phone-9b \ --host 0.0.0.0 --port 8800 \ --max-model-len 4096 \ --gpu-memory-utilization 0.9

7. 执行自动化指令

7.1 命令行方式运行任务

在本地 Open-AutoGLM 根目录下执行:

python main.py \ --device-id ABCDEF1234567890 \ --base-url http://123.45.67.89:8800/v1 \ --model "autoglm-phone-9b" \ "打开微信,找到与‘张三’的对话,搜索所有包含‘合同’的消息,并把每条消息的时间、发送者和内容整理成列表发给我。"

参数说明:

参数说明
--device-id通过adb devices获取的设备标识
--base-url云端模型服务地址(需公网可达)
--model指定使用的模型名称
最后字符串自然语言任务描述

AI Agent 将自动执行以下动作: 1. 启动微信 App 2. 在聊天列表中定位“张三” 3. 进入会话页面 4. 触发右上角菜单 → 查找聊天记录 → 输入“合同” 5. 滚动加载全部结果 6. 截图分析每条匹配消息的内容 7. 结构化输出 JSON 或文本格式结果

7.2 Python API 方式集成(进阶用法)

对于更复杂的逻辑控制,推荐使用 Python API 编程调用。

from phone_agent.adb import ADBConnection from phone_agent.client import PhoneAgentClient # 初始化连接 conn = ADBConnection() success, msg = conn.connect("ABCDEF1234567890") # 替换为真实设备ID if not success: raise Exception(f"连接失败: {msg}") # 初始化 AI 客户端 client = PhoneAgentClient( base_url="http://123.45.67.89:8800/v1", model="autoglm-phone-9b" ) # 发送任务指令 instruction = """ 请执行以下操作: 1. 打开微信 2. 进入与‘张三’的聊天界面 3. 搜索所有包含‘合同’的消息 4. 提取每条消息的【时间】【发送人】【内容】 5. 将结果以 Markdown 表格形式返回 """ response = client.run(instruction) print("AI 返回结果:") print(response.text) # 可选:保存结果到本地 with open("wechat_contracts.txt", "w", encoding="utf-8") as f: f.write(response.text)

8. 关键机制与安全设计

8.1 敏感操作人工确认

为防止误操作(如转账、删除联系人),系统内置了敏感行为拦截机制

  • 当检测到支付、账号注销、卸载应用等高风险动作时
  • AI 会暂停执行并等待人工确认
  • 用户可通过命令行输入y/n决定是否继续

这保证了自动化过程的安全可控。

8.2 登录与验证码场景处理

遇到登录页或短信验证码输入时,AI 默认不会尝试破解或绕过验证。此时有两种应对策略:

  1. 人工接管模式:暂停流程,由用户手动完成验证后再恢复
  2. 预设凭证注入(仅限测试环境):通过 ADB 输入预存密码(需配合无障碍服务)

生产环境中强烈建议启用人工介入机制。


9. 常见问题与排查指南

9.1 连接类问题

问题现象可能原因解决方案
adb devices无设备未开启 USB 调试检查开发者选项
显示unauthorized未授权调试重新插拔并确认弹窗
connect failed: Connection refused网络不通或端口未开放检查防火墙、路由器设置

9.2 模型响应异常

问题现象原因分析建议措施
返回乱码或空响应显存不足或 max-model-len 设置过小调整 vLLM 启动参数
操作卡顿或失败屏幕分辨率不兼容使用标准 1080×2340 分辨率测试
输入无法发送ADB Keyboard 未设为默认回到输入法设置重新切换

9.3 微信反自动化限制

微信对频繁操作有一定防护机制,可能导致:

  • 搜索功能被限流
  • 快速滑动触发风控

缓解方法: - 在main.py中增加随机延迟(sleep between steps) - 避免连续高频点击同一区域 - 使用截图+OCR 替代纯坐标点击


10. 总结

10.1 核心收获回顾

本文详细讲解了如何利用Open-AutoGLM框架实现微信聊天记录的自动化整理。我们完成了:

  • ADB 环境搭建与设备连接
  • 手机端 ADB Keyboard 配置
  • 控制端代码部署与依赖安装
  • 本地与云端协同调用
  • 复杂多步任务的实际执行
  • Python API 集成与结果导出

整个流程体现了 AI Agent 在移动端“感知—决策—执行”闭环的能力。

10.2 最佳实践建议

  1. 优先使用 USB 调试:稳定性高于 WiFi
  2. 保持屏幕常亮:避免因息屏中断任务
  3. 定期清理缓存:防止 ADB 缓存导致连接异常
  4. 结构化输出格式:便于后续数据分析
  5. 加入日志记录:方便调试与复现问题

10.3 下一步学习路径

  • 探索更多应用场景:自动打卡、信息采集、竞品监控
  • 结合 RPA 工具构建企业级自动化流水线
  • 尝试微调 AutoGLM 模型适配特定业务场景
  • 参与社区贡献新功能模块

获取更多AI镜像

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

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询