Open-AutoGLM 是一款专为移动端设计的智能助理框架,其核心思想是通过自然语言指令来驱动Android设备完成自动化操作。该框架巧妙地将先进的视觉-语言模型与成熟的ADB调试工具相结合,构建了一个能够“看懂”屏幕并“动手”执行的智能系统。
核心架构
Open-AutoGLM 采用了清晰的模块化设计,主要由以下几个核心组件协同工作:
- 视觉-语言模型 (AutoGLM-Phone-9B):作为系统的“大脑”,这是一个经过专门优化的模型,擅长理解和解析移动设备的图形用户界面。它以手机屏幕截图作为输入,经过分析后输出结构化的操作指令。
- PhoneAgent 类:扮演“指挥官”的角色,负责任务执行生命周期的管理,协调感知、推理、执行各环节的流程流转。
- ADB 控制模块:作为系统的“手”,负责与Android设备进行底层通信,具体执行如点击、滑动、文本输入等物理操作。
- 模型客户端:提供与视觉-语言模型交互的标准接口,支持调用兼容 OpenAI 格式的 API。

工作原理
整个自动化流程可以概括为“感知-思考-执行”的循环。
1. 感知阶段
系统首先通过ADB命令捕获当前设备的屏幕截图,并识别当前处于前台的应用程序。这些视觉信息与用户下达的自然语言任务描述一同被封装,准备发送给模型进行处理。
2. 推理阶段
视觉-语言模型接收到屏幕截图和任务描述后,开始进行分析。它会理解当前界面的状态、可操作的元素以及用户的最终目标,并推理出下一步最应该执行的操作。模型的输出通常包含推理链和具体的操作指令,格式规整易于解析。
3. 执行阶段
PhoneAgent 解析模型输出的操作指令,将其转化为具体的ADB命令,并由ADB控制模块在真实设备上执行。操作完成后,系统会进入下一个循环,再次捕获新的屏幕状态进行判断,直至任务完成或达到预设的步骤上限。

关键技术细节
视觉-语言模型集成
框架所使用的 AutoGLM-Phone-9B 模型针对移动端界面识别进行了专项优化。该模型支持通过 vLLM 或 SGLang 等高性能推理框架进行部署,并以提供 OpenAI 兼容的 API 方式提供服务,便于集成。
ADB自动化机制
系统通过调用一系列ADB命令来实现对设备的精确控制,例如:
tap(x, y):在屏幕指定坐标点进行点击。
swipe(start_x, start_y, end_x, end_y):实现从起点到终点的滑动操作。
input text "内容":在当前聚焦的输入框中输入指定文本。
keyevent KEYCODE_BACK:模拟按下设备的返回键。
为了确保文本输入的可靠性,系统在需要时会自动将设备输入法切换为 ADB Keyboard。
任务执行生命周期
PhoneAgent 管理着一个完整的任务执行周期:
- 初始化:创建模型客户端连接与ADB控制器实例。
- 接收任务:获取用户以自然语言形式描述的任务目标。
- 循环执行:迭代执行“截图->模型推理->执行操作”的流程,直至任务完成或触发停止条件。
- 结束:汇总执行过程并返回最终状态与结果。
安全特性
Open-AutoGLM 在设计上考虑了安全性,对于涉及支付、修改隐私设置等敏感操作,框架可以设置为需要用户手动确认。此外,在遇到需要登录或输入验证码等模型难以处理的场景时,系统支持临时中断自动化流程,由用户进行人工接管操作。
总结
Open-AutoGLM 通过整合前沿的视觉-语言模型技术与稳定可靠的ADB自动化协议,为Android设备提供了强大的自然语言交互与自动化能力。其模块化的架构不仅保证了系统的可扩展性和可维护性,也为实现更复杂的移动端智能辅助与自动化任务奠定了坚实的技术基础。
|