Open-AutoGLM解决手机操作繁琐自动回复消息、设置闹钟实战“嘿帮我给张三回个消息就说‘晚上老地方见’。” “明天早上7点记得叫我起床。”这些日常操作你还在手动戳屏幕吗今天我们来玩点不一样的——让AI帮你操作手机。智谱AI开源的Open-AutoGLM就是一个能让你的安卓手机“活”起来的AI智能体框架。它就像一个住在你手机里的虚拟助手能“看懂”屏幕“听懂”你的话然后自己动手去点、去滑完成你交代的任务。听起来像科幻电影其实部署起来比你想象的要简单。这篇文章我就带你从零开始手把手搭建一个属于你自己的手机AI管家并用它来完成“自动回复微信消息”和“设置闹钟”这两个高频又有点烦人的任务。1. 环境准备连接你的手机与电脑要让AI控制你的手机首先得在它们之间搭一座“桥”。这座桥就是ADBAndroid Debug Bridge一个安卓调试工具。别被名字吓到配置过程其实很直观。1.1 在电脑上安装ADB工具ADB是控制安卓设备的命令行工具。我们需要先把它下载到你的电脑上。下载ADB工具包访问安卓开发者官网或可靠的第三方镜像站下载对应你电脑系统Windows或macOS的“Platform-Tools”压缩包。解压并配置环境变量以Windows为例将下载的压缩包解压到一个容易找到的目录例如C:\platform-tools。按下Win R键输入sysdm.cpl并回车打开系统属性。点击“高级”选项卡然后点击“环境变量”。在“系统变量”区域找到并选中名为Path的变量点击“编辑”。点击“新建”然后将你解压的ADB工具路径例如C:\platform-tools添加进去。一路点击“确定”保存。验证安装打开命令提示符CMD或PowerShell输入adb version并回车。如果看到类似Android Debug Bridge version 1.0.41的版本信息说明安装成功。对于macOS用户解压后在终端Terminal中临时添加路径即可使用# 假设解压到了 Downloads 文件夹 export PATH$PATH:~/Downloads/platform-tools # 然后就可以使用 adb 命令了 adb version为了方便你也可以将上述export命令添加到你的~/.zshrc或~/.bash_profile文件中。1.2 在手机上开启调试模式现在轮到手机端做准备了。开启开发者选项进入手机的“设置” - “关于手机”连续点击“版本号”7次左右直到出现“您已处于开发者模式”的提示。启用USB调试返回“设置”找到新出现的“开发者选项”或“系统开发者选项”进入后开启“USB调试”开关。安装ADB Keyboard关键一步为了让AI能模拟键盘输入文字我们需要一个特殊的输入法。在手机浏览器中搜索并下载ADB Keyboard的APK安装文件进行安装。安装后进入手机“设置” - “系统管理/更多设置” - “语言与输入法” - “虚拟键盘/当前输入法”。将默认输入法切换为ADB Keyboard。1.3 连接设备用USB数据线将手机连接到电脑。在电脑的命令行中执行adb devices你会看到类似以下的输出List of devices attached abcdef123456 device这串abcdef123456就是你的设备ID说明连接成功。如果显示unauthorized请在手机弹出的“允许USB调试吗”对话框中点击“确定”。想摆脱数据线用WiFi连接# 先用USB线执行一次开启网络调试端口 adb tcpip 5555 # 断开USB线查看手机WiFi的IP地址通常在设置-关于手机-状态信息中 adb connect 192.168.1.100:5555 # 将IP替换为你手机的IP连接成功后同样用adb devices检查会看到设备以IP:5555的形式列出。2. 部署Open-AutoGLM控制端环境搭好了现在把“AI大脑”——Open-AutoGLM的控制程序部署到你的电脑上。2.1 获取项目代码打开命令行找一个你喜欢的目录执行以下命令# 1. 克隆智谱AI的开源仓库 git clone https://github.com/zai-org/Open-AutoGLM # 2. 进入项目目录 cd Open-AutoGLM2.2 安装Python依赖确保你的电脑安装了Python 3.10或更高版本。然后在项目目录下安装必要的库# 安装项目所需的所有依赖包 pip install -r requirements.txt # 以可编辑模式安装当前项目方便后续调用 pip install -e .这个过程可能会花费几分钟取决于你的网络速度。3. 实战演练一让AI自动回复微信消息准备工作全部就绪让我们开始第一个实战任务假设你正在忙需要让AI助手帮你回复一条微信消息。任务描述打开微信找到与“张三”的聊天窗口发送消息“晚上老地方见大概8点到”。3.1 启动AI代理在Open-AutoGLM项目目录下打开命令行。由于我们本地可能没有强大的GPU来运行9B参数的大模型这里我们采用连接云端服务的模式。你需要一个已经部署好autoglm-phone-9b模型的云服务器或使用一些提供API服务的平台。假设你的云端服务地址是http://123.45.67.89:8000启动命令如下python main.py \ --device-id abcdef123456 \ # 替换为你的设备ID或IP:5555 --base-url http://123.45.67.89:8000/v1 \ # 替换为你的模型API地址 --model “autoglm-phone-9b” \ “打开微信找到和张三的聊天发送消息‘晚上老地方见大概8点到’。”命令解析--device-id: 指定要控制的手机。--base-url: 指定云端AI模型服务的地址。--model: 指定使用的模型名称。最后的字符串就是你用自然语言下达的指令。3.2 观察AI如何工作执行命令后神奇的事情发生了屏幕解析AI首先通过ADB截取当前手机屏幕。意图理解截图和你的指令被一同发送给云端的大模型。模型会识别屏幕上的元素图标、文字、按钮并理解你的意图是“在微信中找人并发消息”。规划与执行模型规划出一系列操作步骤例如如果屏幕是桌面则“找到并点击微信图标”。进入微信后“点击通讯录或搜索图标”。“在搜索框输入‘张三’”。“点击进入聊天窗口”。“点击输入框”。“通过ADB Keyboard输入指定文本”。“点击发送按钮”。自动操作规划好的每一步操作都会通过ADB转换成对应的触摸tap、滑动swipe或输入text命令发送到你的手机执行。你会看到你的手机屏幕在自己跳动图标被点击文字被输入消息成功发送。整个过程完全自动化就像有一个隐形的手指在帮你操作。3.3 可能遇到的问题与技巧识别偏差如果通讯录里有多个“张三”AI可能会选错。更精确的指令可以是“打开微信在搜索框搜索‘张三全名’然后发消息...”。权限弹窗首次操作某个APP时可能会弹出权限申请如读取通讯录。目前Open-AutoGLM遇到复杂弹窗可能会暂停需要你手动点击一下“允许”。输入法切换确保如前面所述已将默认输入法切换为ADB Keyboard否则AI无法输入文字。4. 实战演练二让AI智能设置闹钟第二个任务更贴近系统级操作设置一个明天早上7点的闹钟。任务描述设置一个工作日的闹钟早上7点响铃命名为“上班”。启动命令python main.py \ --device-id abcdef123456 \ --base-url http://123.45.67.89:8000/v1 \ --model “autoglm-phone-9b” \ “打开时钟应用添加一个明天早上7点的闹钟重复设置为工作日标签命名为‘上班’。”这个任务展示了AI处理更复杂逻辑的能力应用识别AI需要识别并打开“时钟”或“闹钟”应用。界面导航在闹钟界面中找到“添加”按钮。复杂设置依次设置时间滚动选择7:00 AM、重复周期勾选周一至周五、标签输入“上班”。保存退出最后点击“保存”或“完成”。整个过程涉及点击、滚动、再次点击、输入等多种操作AI需要准确理解界面布局和元素关系才能顺利完成。通过这个例子你可以感受到Open-AutoGLM将自然语言指令分解为具体原子操作的能力。5. 深入探索使用Python API进行精细控制除了命令行Open-AutoGLM还提供了Python API让你可以编写更灵活、强大的脚本。from phone_agent.adb import ADBConnection, list_devices from phone_agent.agent import PhoneAgent import time # 1. 创建ADB连接并连接到设备 conn ADBConnection() device_id “192.168.1.100:5555” # 你的设备IP或ID success, message conn.connect(device_id) print(f“连接状态: {message}”) if success: # 2. 列出所有已连接设备可选 devices list_devices() for d in devices: print(f“{d.device_id} - {d.connection_type.value}”) # 3. 创建Phone Agent连接云端模型 agent PhoneAgent( device_iddevice_id, base_url“http://123.45.67.89:8000/v1”, model“autoglm-phone-9b” ) # 4. 执行一个复杂任务链 tasks [ “解锁手机屏幕” “打开微信” “找到文件传输助手” “发送消息‘测试消息发送时间’加上当前时间” ] for task in tasks: print(f“执行任务: {task}”) result agent.run(task) # 执行单个指令 print(f“结果: {result}”) time.sleep(2) # 给操作留出一点间隔时间 # 5. 任务完成后断开连接 conn.disconnect(device_id) print(“任务完成连接已断开。”)这段代码展示了如何以编程方式管理设备连接。创建AI代理实例。按顺序执行一系列任务。在每个步骤后处理结果。你可以基于此扩展实现定时任务、条件判断如“如果收到某人的消息则自动回复”、甚至与其他系统联动的自动化流程。6. 总结与展望通过以上两个实战案例我们亲身体验了Open-AutoGLM如何将“动口不动手”的愿景变为现实。它不再是概念演示而是一个能够实际完成任务的工具。它的核心价值在于自动化繁琐操作将重复、固定的手机操作流程自动化如每日打卡、信息转发、应用设置等。自然交互用最直白的语言下达指令无需学习复杂的自动化脚本编写。跨应用能力理论上可以操作任何安卓应用突破了单个应用内自动化的限制。当前的主要挑战部署门槛需要一定的技术背景来配置ADB、部署或连接模型服务对纯小白用户不够友好。稳定性与泛化能力面对千变万化的APP界面、弹窗和网络延迟AI的决策链条可能出错需要人工干预或更精细的指令。生态兼容性正如一些深度评测所指出的涉及金融、社交等核心APP的敏感操作可能会被应用本身的安全机制拦截这是技术之外需要解决的生态问题。尽管如此Open-AutoGLM的开源无疑打开了一扇大门。对于开发者、极客和自动化爱好者来说它提供了一个强大的基础框架。你可以基于它开发个性化的手机自动化助手。为视障人士或行动不便者开发辅助工具。进行APP的自动化测试。探索更多“AI自动化”的创新场景。技术的进步总是先解决“能不能”再优化“好不好用”。Open-AutoGLM已经证明了“AI操作手机”的可行性。下一步就是降低使用门槛、提升鲁棒性并推动行业形成更开放的交互标准。也许不久的将来这种能力会像语音助手一样被无缝集成到我们的系统中。获取更多AI镜像想探索更多AI镜像和应用场景访问 CSDN星图镜像广场提供丰富的预置镜像覆盖大模型推理、图像生成、视频生成、模型微调等多个领域支持一键部署。