当前位置: 首页 > news >正文

无需编程!Open-AutoGLM实现语音控制手机全流程

无需编程!Open-AutoGLM实现语音控制手机全流程

你有没有想过,动动嘴就能让手机自动完成一系列操作?比如你说“打开小红书搜美食”,手机就自己打开App、输入关键词、开始搜索——整个过程完全不需要你动手点击。这听起来像科幻电影的场景,如今通过Open-AutoGLM已经可以轻松实现。

这不是某个大厂的秘密项目,而是一个由智谱开源的、真正可落地的手机端AI Agent框架:AutoGLM-Phone。它结合视觉语言模型与自动化控制技术,让你用自然语言指挥手机,像拥有一个私人数字助理。

更关键的是——你不需要会编程,也能快速上手使用。本文将带你从零开始,一步步部署并体验这个神奇的AI手机助手,全程无需写复杂代码,只要跟着操作就能让AI替你操控手机。


1. Open-AutoGLM是什么?一句话讲清楚

简单来说,Open-AutoGLM 是一个能让AI“看懂”手机屏幕,并根据你的语音或文字指令自动操作手机的应用框架

它的核心能力有三点:

  • 多模态理解:AI不仅能听懂你说的话,还能“看到”当前手机屏幕上显示的内容(比如按钮位置、文字信息)。
  • 自动规划执行:在理解任务和界面后,AI会自己决定下一步该点哪里、怎么滑动、输入什么内容。
  • 无需开发经验:所有底层逻辑已经封装好,用户只需下达自然语言指令,如“发微信给张三说晚上吃饭”。

背后的技术原理其实不难理解:系统通过 ADB(Android Debug Bridge)连接安卓设备,每秒截取一次屏幕画面,送入视觉语言模型分析;然后模型结合你的指令,输出具体的操作命令(如点击坐标、输入文本),再由ADB执行到真机上。

整个流程就像一个人一边看着手机,一边听你说话,然后替你完成所有点击动作。


2. 准备工作:软硬件环境配置

要让 Open-AutoGLM 正常运行,你需要准备以下几样东西:

2.1 硬件与系统要求

项目要求
电脑Windows 或 macOS(推荐64位系统)
手机安卓7.0以上的真实设备或模拟器
连接方式USB数据线 或 同一WiFi下的无线ADB

建议使用性能较好的中高端手机,确保运行流畅。如果你没有实体机,也可以用 Android Studio 的模拟器替代。

2.2 安装Python环境

Open-AutoGLM 的控制端是基于 Python 开发的,所以需要先安装 Python。

  • 推荐版本:Python 3.10+
  • 下载地址:https://www.python.org/downloads/
  • 安装时务必勾选“Add Python to PATH”,否则后续命令无法识别。

安装完成后,在终端输入:

python --version

如果返回类似Python 3.10.9的信息,说明安装成功。

2.3 配置ADB工具

ADB 是连接电脑和安卓设备的核心工具。你可以从 Google 官方下载 Android SDK Platform Tools 包来获取 ADB。

Windows 用户配置步骤:
  1. 下载 Platform Tools
  2. 解压到任意目录,例如C:\platform-tools
  3. 按下Win + R输入sysdm.cpl→ 高级 → 环境变量
  4. 在“系统变量”中找到Path,点击编辑 → 新建 → 添加刚才解压的路径
  5. 打开命令提示符,输入:
    adb version
    如果显示版本号(如Android Debug Bridge version 1.0.41),说明配置成功。
macOS 用户配置方法:

打开 Terminal,执行以下命令(假设你把 platform-tools 放在 Downloads 文件夹):

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

为了永久生效,可以将这条命令添加到.zshrc文件中:

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

3. 手机端设置:开启调试权限

为了让电脑能远程控制手机,必须在手机上开启开发者选项和USB调试功能。

3.1 开启开发者模式

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

3.2 开启USB调试

返回设置主菜单 →【开发者选项】→ 找到并勾选“USB调试”选项。

注意:不同品牌手机路径略有差异,请根据机型自行查找。

3.3 安装ADB Keyboard(重要)

这是为了让AI能够输入文字。因为普通输入法无法被程序调用,所以我们需要一个特殊的键盘应用。

  • 下载地址:https://github.com/senzhk/ADBKeyBoard
  • 安装 APK 到手机
  • 进入【语言与输入法】设置 → 将默认输入法切换为ADB Keyboard

这样,AI就可以通过命令发送文本,直接输入到任何输入框中了。


4. 部署Open-AutoGLM控制端

现在我们来部署本地的控制程序,也就是 Open-AutoGLM 的客户端。

4.1 克隆项目代码

打开终端或命令行工具,执行:

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

4.2 安装依赖库

运行以下命令安装所需 Python 包:

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

提示:建议使用虚拟环境(venv)避免依赖冲突:

python -m venv venv source venv/bin/activate # Linux/macOS venv\Scripts\activate # Windows

安装完成后,你会看到phone_agent模块被成功注册到环境中。


5. 连接手机设备的两种方式

Open-AutoGLM 支持两种连接方式:USB 和 WiFi。推荐新手先用 USB,稳定且易排查问题。

5.1 使用USB连接(推荐初学者)

  1. 用数据线将手机连接电脑
  2. 手机弹出“允许USB调试?”对话框时,点击“允许”
  3. 在终端输入:
    adb devices
  4. 如果看到类似下面的输出,说明连接成功:
    List of devices attached 1234567890abcde device

记下这个设备ID,后面会用到。

5.2 使用WiFi无线连接(适合远程控制)

如果你想摆脱数据线束缚,可以用WiFi连接。

第一步:先用USB连接启动TCP服务
adb tcpip 5555
第二步:断开USB,用IP连接

确保手机和电脑在同一局域网内,查看手机IP地址(一般在【设置】→【WLAN】里),然后执行:

adb connect 192.168.x.x:5555

替换192.168.x.x为你的手机真实IP。

再次运行adb devices,应该能看到设备以 IP 形式列出。


6. 让AI接管手机:执行第一条语音指令

一切准备就绪,现在我们可以让 AI 开始干活了!

6.1 命令行方式运行任务

在项目根目录下运行以下命令:

python main.py \ --device-id <你的设备ID或IP:5555> \ --base-url http://<云服务器IP>:<映射端口>/v1 \ --model "autoglm-phone-9b" \ "打开抖音搜索抖音号为:dycwo11nt61d 的博主并关注他!"

参数说明:

  • --device-id:前面通过adb devices查到的设备ID或IP地址
  • --base-url:指向运行 AutoGLM 模型的云服务器地址(需提前部署)
  • --model:指定使用的模型名称
  • 最后的字符串:就是你要下达的自然语言指令

示例:

python main.py \ --device-id 1234567890abcde \ --base-url http://123.45.67.89:8800/v1 \ --model "autoglm-phone-9b" \ "打开小红书搜索‘咖啡探店’并点赞前三篇笔记"

执行后,你会看到终端不断打印日志,AI会逐步解析屏幕内容,做出决策,并自动完成点击、滑动、输入等操作。

6.2 实际效果演示

当你下达“打开小红书搜美食”这样的指令后,AI会自动:

  1. 解锁手机(若已解锁则跳过)
  2. 找到并点击“小红书”App图标
  3. 等待App加载完成
  4. 识别搜索框位置并点击
  5. 通过 ADB Keyboard 输入“美食”
  6. 点击“搜索”按钮
  7. 滑动浏览结果页

整个过程无需人工干预,就像有人在替你操作手机。


7. 更高级的用法:Python API集成

虽然命令行足够简单,但如果你想把这项能力嵌入自己的应用中,也可以使用 Python API。

7.1 初始化ADB连接

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}")

7.2 获取设备IP并启用无线调试

# 在USB连接状态下开启TCP/IP模式 success, message = conn.enable_tcpip(5555) if success: ip = conn.get_device_ip() print(f"设备IP地址: {ip}") else: print("无法获取IP,请检查网络") # 断开连接 conn.disconnect("192.168.1.100:5555")

这些API非常适合用于批量管理多台测试机、自动化测试脚本或远程运维场景。


8. 常见问题与解决方案

即使按照步骤操作,也可能会遇到一些问题。以下是高频故障及应对方法:

8.1 ADB连接失败

现象adb devices显示unauthorized或无设备

解决办法

  • 检查手机是否弹出“允许USB调试?”提示,确认点击了“允许”
  • 更换数据线或USB接口
  • 重启 ADB 服务:
    adb kill-server adb start-server

8.2 模型无响应或乱码

现象:AI一直卡住,或输出奇怪字符

可能原因

  • 云服务器未正确运行 vLLM 服务
  • 显存不足导致推理失败
  • max-model-len参数设置不合理

建议

  • 确保云服务器已正确部署模型,且端口对外开放
  • 检查防火墙是否放行对应端口(如8800)
  • 使用nvidia-smi查看GPU显存占用情况

8.3 输入中文失败

现象:搜索词无法正确输入

原因:未正确切换 ADB Keyboard 为默认输入法

解决方法

  • 进入手机【设置】→【语言与输入法】→【默认键盘】→ 选择 ADB Keyboard
  • 可尝试手动切换一次输入法,触发激活

9. 安全机制与人工接管设计

尽管自动化很强大,但涉及敏感操作(如支付、删除账号)时,系统不会贸然行动。

Open-AutoGLM 内置了多重安全机制:

  • 敏感操作拦截:当检测到“付款”、“删除”、“授权登录”等高风险行为时,AI会暂停执行,等待人工确认
  • 验证码场景接管:遇到短信验证码、图形验证码等情况,系统会通知用户手动输入
  • 远程调试支持:可通过网页界面实时查看手机屏幕,便于监控和干预

这种“AI为主、人为辅”的设计理念,既提升了效率,又保障了安全性。


10. 总结:未来已来,人人可用的AI助理

通过本文的完整实践,你应该已经成功让 Open-AutoGLM 替你操作了一部手机。整个过程不需要编写复杂的脚本,也不需要了解深度学习原理,只需要:

  1. 配置好 ADB 环境
  2. 安装必要的组件
  3. 下达一条自然语言指令

就能实现全自动手机操作。

这不仅是一个炫酷的技术demo,更是未来人机交互方式的一种预演。想象一下:

  • 上班路上说一句“帮我订今天晚上的餐厅”,手机自动完成搜索、比价、预约
  • 回家前喊一声“打开空调和热水器”,智能家居联动响应
  • 工作中只需口述“整理上周客户沟通记录”,AI自动生成摘要并发送邮件

真正的智能,不是让我们学会操作机器,而是让机器学会理解我们

而现在,这一切已经可以通过 Open-AutoGLM 变成现实。


获取更多AI镜像

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

http://www.jsqmd.com/news/282824/

相关文章:

  • 26年订酒店哪个平台最便宜:低价渠道解析+隐藏优惠(避坑指南)
  • OpenCode 从 Windows 迁移到 Wsl2
  • Flutter for HarmonyOS 前置知识:Dart语言详解(中)
  • 科哥开发FunASR语音识别WebUI|集成ngram语言模型实践指南
  • Python 3.10+环境已就绪,PyTorch镜像助力现代AI开发
  • 用Qwen3-Embedding-0.6B做的AI项目,结果让人眼前一亮
  • 科哥二次开发的SenseVoice Small镜像|快速构建语音情感识别应用
  • FSMN-VAD效果展示:复杂背景音下的语音识别能力
  • YOLOv10官方镜像多卡训练技巧,提速又稳定
  • IQuest-Coder-V1部署疑问解答:高频问题与解决方案汇总
  • 亲测bert-base-chinese镜像:智能客服场景实战效果分享
  • YOLOv13更新后不兼容?回滚方案在这里
  • verl流式处理支持:实时数据训练部署案例
  • YOLOE镜像如何用于产品缺陷检测?案例分享
  • AI教材生成新利器!轻松编写低查重教材,提高创作效率!
  • 掌握AI教材编写技巧,低查重不再是难题,高效产出优质教材!
  • 通义千问3-14B显存不足?梯度检查点技术部署优化案例
  • MinerU文化档案数字化:古籍扫描件处理挑战解析
  • 如何为不同行业选GEO服务商?2026年GEO优化服务商全面评测与推荐,直击数据孤岛与效果验证痛点
  • BERT填空系统省钱攻略:低成本部署案例,按需计费省60%
  • Sambert中文语音合成降本方案:低成本GPU部署节省40%费用
  • Claude Code 到底什么时机该做Skills?什么时机不该做?终于有人把使用时机讲清楚了!
  • 微调后模型更听话!Qwen2.5-7B指令优化实战案例
  • Qwen2.5-0.5B实战落地:教育行业智能答疑系统案例
  • 学习Java42天
  • 2026年GEO优化服务商推荐:基于多行业场景深度评测,解决品牌可见性与精准增长痛点
  • Emotion2Vec+ Large节省50%算力?高效推理部署实战案例
  • Qwen3-0.6B实战案例:智能问答系统搭建,GPU成本降低50%
  • Speech Seaco Paraformer采样率适配指南:16kHz音频预处理完整流程
  • 如何选择GEO优化服务商?2026年GEO优化公司全面评测与推荐,直击效果验证与成本痛点