news 2026/5/1 11:35:07

Open-AutoGLM实战落地:银行账单自动截图归档流程

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Open-AutoGLM实战落地:银行账单自动截图归档流程

Open-AutoGLM实战落地:银行账单自动截图归档流程

1. 背景与需求分析

在日常财务管理中,银行账单的整理是一项高频但重复性极高的任务。许多用户需要定期将手机银行中的交易记录截图保存,用于报销、记账或财务审计。传统方式依赖手动操作:打开App、进入账单页面、逐页滑动并截图、命名保存——不仅耗时,还容易遗漏。

随着AI Agent技术的发展,自动化处理这类任务成为可能。Open-AutoGLM是由智谱开源的一款面向移动端的AI智能体框架,基于视觉语言模型(VLM)实现对手机界面的理解与交互控制。结合ADB(Android Debug Bridge),它能够以自然语言指令驱动手机完成复杂操作流程。

本文将以“银行账单自动截图归档”为实际场景,详细介绍如何使用Open-AutoGLM + AutoGLM-Phone框架实现全流程自动化,涵盖环境搭建、设备连接、任务编写与执行优化等关键环节。

2. 技术架构与核心能力解析

2.1 Open-AutoGLM 与 Phone Agent 架构概览

Open-AutoGLM 是一个端云协同的AI代理系统,其核心组件包括:

  • 视觉语言模型(VLM):部署于云端,负责理解手机屏幕截图内容,识别按钮、文本、列表项等UI元素。
  • 动作规划引擎:根据用户指令和当前界面状态,生成下一步操作序列(如点击、滑动、输入)。
  • ADB 控制层:运行在本地PC上,通过USB或WiFi连接安卓设备,执行具体操作。
  • 输入法桥接(ADB Keyboard):实现无触摸文本输入,避免权限问题。

该系统支持多模态感知与决策闭环,用户只需输入一句自然语言指令,例如:“请帮我把最近三个月的招商银行消费记录每页截图保存到‘账单备份’文件夹”,即可触发完整自动化流程。

2.2 核心优势与适用场景

特性说明
多模态理解结合图像与文字信息,精准识别动态变化的UI界面
自然语言驱动无需编程基础,普通用户也能下达复杂指令
ADB远程控制支持真机与模拟器,可通过WiFi进行远程调试
安全机制敏感操作(如转账)需人工确认,支持验证码接管
可扩展性强提供Python API,便于集成进企业自动化流程

特别适用于以下场景:

  • 批量数据采集(如订单、账单)
  • 应用测试脚本生成
  • 移动端RPA(机器人流程自动化)
  • 跨App信息整合

3. 环境准备与设备连接配置

3.1 硬件与软件要求

为确保系统稳定运行,请按以下标准准备环境:

  • 操作系统:Windows 10+ 或 macOS Monterey+
  • Python版本:建议 Python 3.10 或更高版本
  • 安卓设备:Android 7.0以上的真实手机或模拟器(推荐使用MuMu、BlueStacks)
  • 网络环境:本地电脑与云服务器之间可互通,防火墙开放指定端口
  • ADB工具包:Android SDK Platform Tools

3.2 ADB环境配置

Windows 配置步骤:
  1. 下载 Android SDK Platform Tools 并解压。
  2. 使用Win + R输入sysdm.cpl→ 高级 → 环境变量。
  3. 在“系统变量”中的Path添加ADB解压路径(如C:\platform-tools)。
  4. 打开命令行,执行:
    adb version
    若返回版本号,则表示配置成功。
macOS 配置方法:

在终端中执行以下命令(假设解压目录为~/Downloads/platform-tools):

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

可将其写入.zshrc.bash_profile实现永久生效。

3.3 手机端设置

  1. 开启开发者模式
    进入「设置」→「关于手机」→ 连续点击“版本号”7次,提示已开启开发者选项。

  2. 启用USB调试
    返回设置主菜单 →「开发者选项」→ 开启“USB调试”。

  3. 安装 ADB Keyboard

    • 从官方渠道下载 ADB Keyboard APK 并安装。
    • 进入「设置」→「语言与输入法」→「当前输入法」→ 切换为 ADB Keyboard。

注意:此输入法允许通过ADB发送文本,绕过部分App对自动化输入的限制。

4. 控制端部署与设备连接

4.1 克隆并安装 Open-AutoGLM

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

# 克隆仓库 git clone https://github.com/zai-org/Open-AutoGLM cd Open-AutoGLM # 安装依赖 pip install -r requirements.txt pip install -e .

安装完成后,项目结构如下:

Open-AutoGLM/ ├── main.py # 主入口 ├── phone_agent/ # 核心模块 │ ├── adb.py # ADB通信封装 │ ├── planner.py # 动作规划器 │ └── utils.py └── config/ # 配置文件

4.2 设备连接方式

USB 连接(推荐用于调试)
  1. 使用数据线连接手机与电脑。
  2. 手机弹出“允许USB调试?”对话框时,勾选“始终允许”并确认。
  3. 执行命令查看设备状态:
    adb devices
    正常输出示例:
    List of devices attached 1234567890ABCDEF device
WiFi 远程连接(适合长期运行)

若需脱离USB线缆,可启用无线ADB:

# 第一步:通过USB启用TCP/IP模式 adb tcpip 5555 # 第二步:断开USB,连接设备IP(需在同一局域网) adb connect 192.168.1.105:5555

连接成功后,即使拔掉USB线,仍可通过IP控制设备。

4.3 Python API 实现设备管理

对于需要程序化控制的场景,可使用内置API进行设备管理:

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

5. 实战案例:银行账单自动截图归档

5.1 任务目标定义

我们要实现的目标是:

“自动打开招商银行App,进入‘收支明细’页面,向上滑动浏览最近三个月的交易记录,每页截图一次,并将图片按时间顺序命名后保存至‘/sdcard/账单备份/’目录。”

5.2 自然语言指令设计

将上述需求转化为AI可理解的指令:

打开招商银行App,进入收支明细页面,连续向上滑动5次,每次滑动后等待2秒并截图,截图保存到“账单备份”文件夹,文件名格式为 bill_01.png, bill_02.png...

5.3 启动AI代理执行任务

在项目根目录下运行:

python main.py \ --device-id 1234567890ABCDEF \ --base-url http://<your-server-ip>:8800/v1 \ --model "autoglm-phone-9b" \ "打开招商银行App,进入收支明细页面,连续向上滑动5次,每次滑动后等待2秒并截图,截图保存到“账单备份”文件夹,文件名格式为 bill_01.png, bill_02.png..."

参数说明:

  • --device-id:来自adb devices的设备ID
  • --base-url:云端vLLM服务地址(需提前部署AutoGLM模型)
  • --model:指定使用的模型名称
  • 最后字符串:自然语言任务描述

5.4 执行过程日志分析

典型执行流程如下:

  1. AI识别桌面图标,找到“招商银行”并点击打开。
  2. 等待App加载完成,检测是否出现登录界面(如有则暂停,提示人工输入密码)。
  3. 导航至“首页”→“账户”→“收支明细”。
  4. 检测当前页面是否有交易记录,开始第一次截图(命名为bill_01.png)。
  5. 执行上滑手势,等待新内容加载,再次截图。
  6. 重复第5步共5次。
  7. 所有截图完成后,通知用户任务结束。

提示:系统会自动创建/sdcard/账单备份/目录(如不存在),并通过ADB pull命令将文件同步回本地。

6. 常见问题与优化建议

6.1 常见故障排查

问题现象可能原因解决方案
ADB无法识别设备USB调试未开启检查开发者选项中“USB调试”是否启用
连接被拒绝(connect fail)防火墙阻断开放云服务器8800等映射端口
截图失败或乱码模型输出异常检查vLLM启动参数,尤其是max-model-len=8192是否设置
App闪退或卡顿内存不足关闭后台无关应用,优先在高端机型运行
输入中文失败ADB Keyboard未设为默认回到输入法设置重新切换

6.2 性能优化建议

  1. 提升响应速度

    • 使用高性能GPU部署vLLM服务(如A10/A100)
    • 设置合理的--tensor-parallel-size参数以充分利用多卡
  2. 增强稳定性

    • 在关键节点添加显式等待(如“等待‘加载完成’字样消失”)
    • 对滚动类操作增加边界判断(如检测到底部则停止)
  3. 提高安全性

    • 启用敏感操作拦截功能,防止误触支付按钮
    • 在涉及隐私数据的操作前插入人工确认环节
  4. 批量任务调度

    • 编写Shell脚本定时拉起多个任务
    • 结合Airflow等调度工具实现企业级自动化流水线

7. 总结

Open-AutoGLM作为一款开源的手机端AI Agent框架,凭借其强大的多模态理解能力和灵活的ADB控制机制,为移动端自动化提供了全新的解决方案。本文以“银行账单截图归档”为例,完整展示了从环境搭建、设备连接到任务执行的全过程。

通过自然语言驱动的方式,即使是非技术人员也能轻松构建复杂的手机自动化流程。未来,随着模型轻量化和推理效率的提升,此类AI Agent有望广泛应用于金融、电商、客服等领域,真正实现“一句话完成一串操作”的智能体验。


获取更多AI镜像

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

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

voxCPM-1.5-WEBUI语音风格:儿童/新闻/客服模式切换

voxCPM-1.5-WEBUI语音风格&#xff1a;儿童/新闻/客服模式切换 1. 技术背景与应用场景 随着人工智能在语音合成领域的持续演进&#xff0c;高质量、低延迟的文本转语音&#xff08;TTS&#xff09;系统正逐步成为智能客服、教育产品、有声内容创作等场景的核心组件。传统的TT…

作者头像 李华
网站建设 2026/4/26 5:19:13

基于MGeo的智能选址系统搭建:多场景落地部署完整流程

基于MGeo的智能选址系统搭建&#xff1a;多场景落地部署完整流程 1. 引言&#xff1a;智能选址中的地址匹配挑战 在零售、物流、城市规划等多类业务场景中&#xff0c;精准的选址决策依赖于高质量的空间数据整合。其中&#xff0c;地址信息的标准化与实体对齐是构建统一地理数…

作者头像 李华
网站建设 2026/5/1 10:54:28

语义匹配阈值怎么设?BAAI/bge-m3实际项目调参经验

语义匹配阈值怎么设&#xff1f;BAAI/bge-m3实际项目调参经验 1. 引言&#xff1a;语义相似度在真实场景中的挑战 在构建检索增强生成&#xff08;RAG&#xff09;系统、智能客服或知识库问答引擎时&#xff0c;语义匹配的准确性直接决定了系统的可用性。尽管 BAAI/bge-m3 模…

作者头像 李华
网站建设 2026/5/1 15:13:37

GPU驱动残留清理:DDU工具深度剖析

GPU驱动为何越用越卡&#xff1f;一个被忽视的“清道夫”正在默默拯救你的电脑 你有没有遇到过这种情况&#xff1a;明明刚装了最新的显卡驱动&#xff0c;游戏却开始频繁闪退&#xff1b;或者设备管理器里突然冒出个“基本显示适配器”&#xff0c;分辨率锁死在800600&#x…

作者头像 李华
网站建设 2026/5/1 6:10:17

通义千问2.5-7B-Instruct手把手教学:从零到部署仅30分钟

通义千问2.5-7B-Instruct手把手教学&#xff1a;从零到部署仅30分钟 你是不是也遇到过这样的情况&#xff1f;应届生面试官突然问&#xff1a;“你有大模型项目经验吗&#xff1f;”你心里一紧&#xff0c;脑子里飞速回忆——好像只听说过“通义千问”&#xff0c;但从没真正上…

作者头像 李华
网站建设 2026/5/1 3:30:03

工业电机控制项目中的vivado2020.2安装过程梳理

从零搭建工业电机控制开发环境&#xff1a;vivado2020.2 安装实战全记录 在做第一个基于Zynq的伺服驱动项目时&#xff0c;我花了整整三天才把开发环境搭起来——不是版本不兼容&#xff0c;就是IP核加载失败。后来才发现&#xff0c;问题根源不在代码&#xff0c;而在最基础的…

作者头像 李华