黄南藏族自治州网站建设_网站建设公司_UI设计_seo优化
2026/1/21 7:28:29 网站建设 项目流程

无需手动输入!Open-AutoGLM结合ADB键盘解放双手

1. 引言:让AI替你操作手机,真的可以做到吗?

你有没有这样的经历:想在小红书搜个美食探店推荐,结果刚打开App就被各种推送打断;或者要给某个抖音博主一键关注,却得一步步点击、确认、返回……这些看似简单的操作,其实都在悄悄消耗你的注意力和时间。

但现在,这一切可能要改变了。Open-AutoGLM——由智谱开源的手机端AI Agent框架,正在让“动口不动手”成为现实。你只需要说一句:“打开小红书搜美食”,它就能自动理解屏幕内容、规划操作路径,并通过ADB(Android Debug Bridge)真正帮你点开App、输入关键词、滑动浏览,全程无需你动手。

更关键的是,这个系统不仅支持命令行调用,还能结合ADB Keyboard实现自然语言输入自动化,彻底摆脱手动打字的烦恼。本文将带你从零开始部署这套系统,深入理解它的运行机制,并展示它是如何真正实现“AI代劳”的。


2. Open-AutoGLM是什么?不只是一个自动化脚本

2.1 核心能力解析

Open-AutoGLM 并不是一个传统的自动化工具(比如Tasker或Auto.js),而是一个基于视觉语言模型(VLM)的智能代理(Agent)。它的核心能力包括:

  • 多模态感知:能“看懂”手机屏幕上的文字、按钮、图标布局。
  • 意图理解:通过自然语言指令解析用户需求,比如“找一家附近评分高的咖啡馆”。
  • 动作规划:自动拆解任务为一系列可执行的操作步骤,如“打开地图→定位当前位置→搜索关键词→筛选评分4.5以上”。
  • 自主执行:通过ADB发送点击、滑动、输入等指令,完成全流程操作。

这意味着,它不是预设流程的“机器人”,而是具备一定推理能力的“数字助手”。

2.2 技术架构概览

整个系统的运行依赖三个关键组件协同工作:

组件功能
视觉语言模型(VLM)理解当前屏幕画面,识别UI元素及其语义
任务规划模块将自然语言指令转化为具体操作序列
ADB控制层实现对安卓设备的实际操控

其中,模型通常部署在云端服务器上,本地仅运行轻量级控制程序,通过HTTP API与远端模型通信。

一句话总结:你告诉它“做什么”,它自己决定“怎么做”,然后真的“做出来”。


3. 准备工作:环境搭建与设备配置

3.1 硬件与软件要求

要使用 Open-AutoGLM,你需要准备以下几样东西:

  • 一台电脑:Windows 或 macOS 均可,用于运行控制端代码
  • 一部安卓手机:Android 7.0 及以上版本,建议开启开发者模式
  • Python 3.10+:用于安装依赖和运行脚本
  • ADB 工具包:Android SDK Platform Tools
  • 网络连接:确保手机与电脑在同一局域网(若使用WiFi连接)

3.2 安装并配置ADB

Windows 用户:
  1. 下载 Android SDK Platform Tools
  2. 解压后,将文件夹路径添加到系统环境变量Path
  3. 打开命令提示符,输入adb version,看到版本号即表示安装成功
macOS 用户:

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

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

你可以将这行加入.zshrc.bash_profile文件,避免每次重启终端都要重新设置。

3.3 手机端设置

为了让AI能够“输入文字”,我们需要安装一个特殊的输入法——ADB Keyboard

步骤如下:
  1. 在手机上开启“开发者选项”:
    • 进入「设置」→「关于手机」→ 连续点击“版本号”7次
  2. 开启“USB调试”:
    • 返回「设置」→「开发者选项」→ 启用“USB调试”
  3. 安装 ADB Keyboard:
    • 下载 ADBKeyboard.apk 并安装
  4. 设置默认输入法:
    • 进入「语言与输入法」→ 将默认输入法切换为 “ADB Keyboard”

✅ 验证是否生效:连接手机后,在电脑终端执行
adb shell input text "Hello"
如果手机输入框出现“Hello”,说明ADB键盘已正常工作!


4. 部署 Open-AutoGLM 控制端

4.1 克隆项目并安装依赖

在本地电脑上打开终端,执行以下命令:

git clone https://github.com/zai-org/Open-AutoGLM cd Open-AutoGLM # 创建虚拟环境(推荐) python -m venv venv source venv/bin/activate # Linux/macOS # 或 venv\Scripts\activate # Windows # 安装依赖 pip install -r requirements.txt pip install -e .

4.2 检查设备连接状态

确保手机通过USB线连接电脑,然后运行:

adb devices

你应该能看到类似输出:

List of devices attached 1234567890ABCDEF device

如果显示unauthorized,请在手机上弹出的授权对话框中点击“允许”。


5. 启动AI代理:让AI接管手机

5.1 使用命令行运行任务

当你准备好云服务地址(即运行 AutoGLM 模型的服务器IP和端口),就可以启动主程序了。

python main.py \ --device-id 1234567890ABCDEF \ --base-url http://your-server-ip:8800/v1 \ --model "autoglm-phone-9b" \ "打开抖音搜索抖音号为:dycwo11nt61d 的博主并关注他!"

参数说明:

  • --device-id:来自adb devices的设备ID
  • --base-url:你的vLLM或FastChat服务暴露的API地址
  • --model:指定使用的模型名称
  • 最后的字符串:你要下达的自然语言指令

一旦运行,你会看到AI开始截图、分析界面、生成操作指令,并通过ADB执行点击、滑动、输入等动作。

5.2 如何实现“无需手动输入”?

这里的关键就在于我们之前安装的ADB Keyboard

当AI需要在搜索框中输入“美食”时,它不会尝试模拟手指打字,而是直接调用ADB命令:

adb shell am broadcast -a ADB_INPUT_TEXT --es msg "美食"

这条命令会触发ADB Keyboard接收文本并自动填充到当前焦点输入框,完全跳过手动输入环节。

💡 这意味着:哪怕你在微信聊天界面,AI也能帮你发消息;在浏览器里,它可以自动填写表单——全部通过远程指令完成。


6. 实际案例演示:三步完成复杂任务

我们来做一个真实测试:让AI帮我们在小红书搜索“北京周末好去处”,并点赞第一条笔记。

6.1 指令下发

python main.py \ --device-id YOUR_DEVICE_ID \ --base-url http://SERVER_IP:8800/v1 \ "打开小红书,搜索'北京周末好去处',进入第一条笔记并点赞"

6.2 AI执行过程日志(简化版)

[INFO] 当前应用:桌面 [PLAN] 启动小红书 → 等待首页加载 [ACTION] ADB tap (x=540, y=1200) [INFO] 检测到搜索栏图标 [PLAN] 点击搜索框 → 输入关键词 [ACTION] ADB tap (x=600, y=140) [ACTION] ADB input text "北京周末好去处" [INFO] 搜索结果已加载,共12条 [PLAN] 点击第一条笔记封面 [ACTION] ADB tap (x=360, y=800) [INFO] 笔记详情页加载完成 [PLAN] 查找点赞按钮并点击 [ACTION] ADB tap (x=980, y=1800) [SUCCESS] 任务完成!耗时约28秒

整个过程无需人工干预,甚至连解锁屏幕都不需要(前提是手机已处于唤醒状态)。


7. 高级功能与扩展用法

7.1 支持WiFi远程控制

如果你不想每次都插USB线,可以用WiFi进行无线连接。

先用USB连接手机,然后执行:

adb tcpip 5555

断开USB后,通过IP连接:

adb connect 192.168.1.100:5555

之后所有ADB命令都会通过网络传输,适合长期运行AI代理的场景。

7.2 Python API 调用示例

除了命令行,你也可以在自己的项目中集成 Open-AutoGLM 的功能。

from phone_agent.adb import ADBConnection from phone_agent.agent import PhoneAgent # 初始化连接 conn = ADBConnection() conn.connect("192.168.1.100:5555") # 创建AI代理 agent = PhoneAgent( base_url="http://your-server:8800/v1", model="autoglm-phone-9b" ) # 下达指令 result = agent.run("截一张图并保存到相册") print(result.status)

这种方式非常适合构建自动化测试平台、客服机器人后台、批量账号管理工具等。

7.3 敏感操作人工接管机制

出于安全考虑,系统内置了敏感操作拦截机制。例如:

  • 检测到支付页面时,自动暂停并等待用户确认
  • 遇到验证码输入,提示“请手动输入验证码”
  • 登录涉及隐私数据的应用前,弹出二次授权提醒

这样既保证了自动化效率,又避免了误操作带来的风险。


8. 常见问题与解决方案

8.1 设备无法识别

  • 现象adb devices显示空或 unauthorized
  • 解决方法
    • 重新插拔USB线
    • 在手机上确认“允许USB调试”弹窗
    • 更换USB线或接口(部分充电线不支持数据传输)

8.2 ADB Keyboard 无法输入

  • 现象adb shell input text无反应
  • 解决方法
    • 确保已在「语言与输入法」中启用 ADB Keyboard
    • 尝试重启ADB服务:adb kill-server && adb start-server
    • 检查是否有其他输入法冲突

8.3 模型响应慢或乱码

  • 现象:AI长时间无响应或输出乱码
  • 解决方法
    • 检查云服务器防火墙是否开放对应端口
    • 确认vLLM启动参数正确,尤其是--max-model-len和显存分配
    • 查看日志是否有OOM(内存溢出)错误

9. 总结:迈向“机器替人操作”的新时代

Open-AutoGLM 的出现,标志着我们正从“人操作机器”向“机器替人操作”迈进一大步。通过结合视觉语言模型与ADB自动化技术,它实现了真正的端到端任务执行能力。

更重要的是,它把“输入自由”还给了用户。借助 ADB Keyboard,我们不再受限于语音识别不准、手写输入麻烦的问题,而是让AI以最高效的方式完成信息输入——直接写入系统。

未来,这类技术有望广泛应用于:

  • 老年人辅助:帮助不熟悉智能机的长辈完成挂号、缴费、视频通话
  • 企业自动化:批量管理运营账号、自动发布内容、监控竞品动态
  • 无障碍设计:为视障用户提供更便捷的交互方式

虽然目前仍存在对复杂界面适应性不足、多语言支持有限等问题,但随着模型迭代和生态完善,这些问题都将逐步被克服。


获取更多AI镜像

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

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

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

立即咨询