news 2026/4/23 15:22:17

AutoGLM-Phone实战案例:小红书美食搜索自动化流程详解

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
AutoGLM-Phone实战案例:小红书美食搜索自动化流程详解

AutoGLM-Phone实战案例:小红书美食搜索自动化流程详解

1. 背景与技术概述

随着移动设备在日常生活中的深度渗透,用户对智能化操作的需求日益增长。传统手动操作手机的方式效率低下,尤其在重复性任务(如信息检索、账号管理)中尤为明显。为解决这一问题,智谱AI推出了Open-AutoGLM——一个开源的手机端AI Agent框架,旨在通过自然语言驱动实现安卓设备的全自动化操作。

该框架的核心是AutoGLM-Phone,它基于视觉语言模型(Vision-Language Model, VLM),结合Android Debug Bridge(ADB)技术,构建了一个能够“看懂屏幕、理解意图、执行动作”的智能代理系统。用户只需输入一句自然语言指令,例如“打开小红书搜索附近的川菜馆”,系统即可自动解析语义、识别当前界面元素、规划操作路径,并完成点击、滑动、输入等交互行为。

更进一步地,基于此框架开发的Phone Agent系统,不仅具备多模态感知能力,还集成了任务规划、远程调试和安全确认机制。在涉及敏感操作(如支付、登录)时,系统支持人工接管;同时提供WiFi远程控制能力,极大提升了开发与部署的灵活性。

本文将围绕一个典型应用场景——“小红书美食搜索自动化”展开,详细介绍从环境搭建到指令执行的完整实践流程,帮助开发者快速上手并落地此类自动化任务。

2. 系统架构与核心技术原理

2.1 整体架构设计

Phone Agent 的运行依赖于三个核心组件的协同工作:

  • 客户端(Control Client):部署在本地电脑或边缘设备上的控制程序,负责接收用户指令、调用AI模型、发送ADB命令。
  • 服务端(Inference Server):运行视觉语言模型的服务节点,通常部署在GPU服务器上,提供推理接口。
  • 目标设备(Android Device):被控的安卓手机或模拟器,通过ADB接受操作指令。

数据流如下: 1. 用户输入自然语言指令; 2. 客户端截取当前设备屏幕图像; 3. 屏幕图像 + 指令文本上传至服务端模型; 4. 模型输出下一步操作(如“点击搜索框”、“输入‘火锅’”); 5. 客户端解析动作并通过ADB执行; 6. 循环直至任务完成。

2.2 多模态理解与动作生成机制

AutoGLM-Phone 使用的视觉语言模型以CLIP-like结构为基础,融合了图像编码器与大语言模型(LLM)。其输入为: - 当前屏幕截图(RGB图像) - 历史操作轨迹(可选) - 用户原始指令(自然语言)

模型经过训练后,能将视觉信息与语义指令对齐,输出结构化动作指令,格式通常为:

{"action": "tap", "coordinates": [x, y], "description": "点击搜索图标"}

{"action": "input_text", "text": "川菜", "target": "搜索框"}

这种端到端的建模方式避免了传统UI自动化中繁琐的选择器编写过程,显著降低了维护成本。

2.3 ADB控制与输入法集成

为了实现精确操控,系统通过ADB协议与设备通信,主要使用以下命令: -adb shell screencap:获取屏幕截图 -adb shell input tap x y:模拟点击 -adb shell input text "xxx":输入文本 -adb shell input swipe x1 y1 x2 y2 duration:滑动操作

特别地,由于标准ADB不支持中文输入,项目内置了ADB Keyboard输入法。安装后将其设为默认输入法,即可通过ADB命令直接输入Unicode字符,解决了中文场景下的文本输入难题。

3. 实战部署:连接本地电脑与真机

本节将指导你完成从零开始的环境配置,确保控制端可以成功连接并操控安卓设备。

3.1 硬件与软件准备

项目要求
操作系统Windows 10+/macOS Monterey+
Python版本3.10 或以上
安卓设备Android 7.0 及以上版本
工具包ADB调试工具

3.2 ADB环境配置

Windows系统配置步骤:
  1. 下载 Android SDK Platform Tools 并解压。
  2. Win + R输入sysdm.cpl打开系统属性。
  3. 进入“高级” → “环境变量”。
  4. 在“系统变量”中找到Path,点击编辑,添加平台工具所在目录路径(如C:\platform-tools)。
  5. 打开命令提示符,执行:bash adb version若返回版本号,则说明配置成功。
macOS系统配置方法:

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

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

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

3.3 手机端设置

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

  2. 启用USB调试
    返回设置主界面 → “开发者选项” → 开启“USB调试”。

  3. 安装ADB Keyboard

  4. 访问 ADB Keyboard GitHub Release 页面 下载最新APK。
  5. 将APK传输至手机并安装。
  6. 进入“设置” → “语言与输入法” → “当前输入法” → 切换为“ADB Keyboard”。

注意:若未正确切换输入法,后续无法进行中文输入。

3.4 部署控制端代码

在本地电脑执行以下命令克隆并安装 Open-AutoGLM 控制端:

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

安装完成后,可通过运行示例脚本验证是否正常:

python examples/test_connection.py

4. 设备连接方式详解

4.1 USB连接方式

最稳定且推荐的初始连接方式。

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

若无设备显示,请检查驱动是否安装、USB调试是否开启。

4.2 WiFi远程连接方式

适用于无线调试和远程部署场景。

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

adb tcpip 5555

断开USB线后,使用设备IP地址连接:

adb connect 192.168.x.x:5555

其中IP地址可通过以下方式获取: - 在手机“设置” → “WLAN” → 点击当前网络查看IP - 或通过ADB命令:bash adb shell ip route | awk '{print $9}'

连接成功后,再次执行adb devices应能看到设备ID及tcpip标记。

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

一切准备就绪后,即可启动AI代理执行自然语言指令。

5.1 命令行方式运行

在项目根目录下执行:

python main.py \ --device-id 1234567890ABCDEF \ --base-url http://192.168.1.200:8800/v1 \ --model "autoglm-phone-9b" \ "打开小红书搜索附近的川菜馆"

参数说明: ---device-id:通过adb devices获取的真实设备ID或IP:端口 ---base-url:vLLM服务暴露的API地址(需提前部署) ---model:指定使用的模型名称 - 最后的字符串:用户自然语言指令

执行过程中,系统会: 1. 截图当前屏幕 2. 发送图文请求至服务端模型 3. 解析返回的动作并执行 4. 循环直到任务完成或超时

5.2 Python API方式远程控制

对于需要嵌入到其他系统的场景,可使用SDK提供的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}") # (可选)为USB设备开启TCP/IP模式 success, message = conn.enable_tcpip(5555) if success: ip = conn.get_device_ip() print(f"设备IP: {ip}") # 断开连接 conn.disconnect("192.168.1.100:5555")

该API可用于自动化测试、批量设备管理等高级场景。

6. 小红书美食搜索自动化案例详解

我们以“打开小红书搜索附近的好评火锅店”为例,详细拆解整个自动化流程。

6.1 任务分解逻辑

AI代理会将高层指令拆解为一系列原子操作:

  1. 启动小红书App(若未运行)
  2. 定位首页底部导航栏“发现”页
  3. 点击顶部搜索框
  4. 输入关键词“火锅”
  5. 触发搜索
  6. 向下滑动浏览结果
  7. 结束任务并返回摘要

每一步均由模型根据当前屏幕内容动态决策,无需预设UI路径。

6.2 关键挑战与应对策略

挑战解决方案
不同品牌手机UI差异大模型训练时包含多种设备截图,增强泛化能力
输入法冲突导致文字无法输入强制使用ADB Keyboard作为默认输入法
搜索结果加载延迟设置等待机制,检测新页面特征后再继续
权限弹窗干扰内置异常处理模块,识别弹窗并自动关闭

6.3 敏感操作保护机制

当检测到可能涉及隐私或资金的操作(如跳转至支付页面、申请权限),系统会暂停执行并提示用户确认。例如:

[WARNING] 检测到疑似支付页面,是否继续? [Y/n]:

用户输入n可中断流程,保障安全性。

7. 常见问题排查指南

7.1 连接类问题

问题现象可能原因解决方案
adb devices无输出USB调试未开启检查开发者选项
显示unauthorized未授权电脑调试重新插拔并确认授权弹窗
connect failed: Connection refused防火墙阻断放行5555端口或改用USB

7.2 模型推理问题

问题现象可能原因解决方案
返回乱码或无效动作模型加载错误检查vLLM启动参数,特别是--max-model-len
响应极慢显存不足减少--gpu-memory-utilization
动作循环重复上下文理解失败添加更多上下文历史或调整prompt模板

7.3 输入与显示问题

  • 无法输入中文:确认ADB Keyboard已安装并设为默认输入法
  • 屏幕旋转导致坐标错乱:建议锁定竖屏模式
  • 高分辨率设备适配差:可在配置中设置缩放比例(如0.5)

获取更多AI镜像

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

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

DeepSeek-R1-Distill-Qwen-1.5B低成本方案:NVIDIA T4实现每秒10次推理

DeepSeek-R1-Distill-Qwen-1.5B低成本方案:NVIDIA T4实现每秒10次推理 1. 引言 随着大模型在实际业务场景中的广泛应用,如何在有限硬件资源下实现高效、低成本的推理部署成为工程落地的关键挑战。DeepSeek-R1-Distill-Qwen-1.5B作为一款轻量化且性能优…

作者头像 李华
网站建设 2026/4/16 14:23:25

AB实验提升显著性 之 概率转换神器 P2BB

在 A/B 实验的决策环节,数据科学团队和业务团队之间常存在一道难以逾越的鸿沟。业务方关心的是“B 策略比 A 策略好吗?好多少?”,而统计学给出的答案往往是“P 值等于 0.06,差异不显著,无法拒绝零假设”。 …

作者头像 李华
网站建设 2026/4/18 9:46:48

避开“排名陷阱”:科学戒除孩子网瘾的三大核心路径

——基于16年家庭教育指导经验的深度分析 引言:当“网瘾”成为家庭教育的头号难题“孩子一回家就抱着手机,作业拖到凌晨,成绩直线下滑”“说两句就摔门,亲子关系降到冰点”“沉迷游戏、短视频,甚至出现抑郁倾向”………

作者头像 李华
网站建设 2026/4/23 14:45:35

MaxKB知识库系统对接PyTorch镜像,实现本地大模型快速接入

MaxKB知识库系统对接PyTorch镜像,实现本地大模型快速接入 1. 背景与需求分析 随着大语言模型(LLM)在企业级应用中的广泛落地,如何高效地将私有化部署的模型与业务系统集成,成为技术团队面临的核心挑战之一。MaxKB作为…

作者头像 李华
网站建设 2026/4/23 14:35:34

Jupyter一键启动Qwen3-1.7B,环境配置全搞定

Jupyter一键启动Qwen3-1.7B,环境配置全搞定 1. 引言:为什么选择在Jupyter中快速调用Qwen3-1.7B? 随着大语言模型的普及,越来越多开发者希望以最低门槛体验前沿模型能力。Qwen3(千问3)是阿里巴巴集团于202…

作者头像 李华
网站建设 2026/4/23 14:34:47

双非本科,非科班,拿下 2 个互联网大厂 Offer!

大家好,我是R哥。今天我又来分享一个励志的辅导案例,这兄弟基本信息如下:年龄:马上快 35⼯作年限:10年学历:双非本科/非科班薪资:20k核心诉求:进大厂,薪资达到40w说实话&…

作者头像 李华