news 2026/6/10 11:17:43

一文搞定:Open-AutoGLM环境配置+模型下载+运行

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
一文搞定:Open-AutoGLM环境配置+模型下载+运行

一文搞定:Open-AutoGLM环境配置+模型下载+运行

摘要:本文手把手带你完成 Open-AutoGLM 全流程落地——从零开始配置本地开发环境、下载并量化 AutoGLM-Phone-9B 模型、连接真实安卓设备,到执行第一条自然语言指令。不依赖云端API,全程离线运行,数据不出本机,兼顾隐私安全与工程可用性。适合开发者、AI爱好者及注重数据主权的实践者。


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

1.1 它不是另一个聊天机器人

Open-AutoGLM 是智谱 AI 开源的手机端 AI Agent 框架,核心能力是:
“看懂你的手机屏幕 + 听懂你的中文指令 + 自动帮你点、滑、输、开”

它不生成诗歌,不写周报,而是专注解决一个具体问题:
你动嘴,它动手

比如输入这句话:

“打开小红书,搜索‘北京咖啡探店’,点开第一篇笔记,截图发到微信给李四”

Open-AutoGLM 会自动完成:
启动小红书 App
点击搜索框 → 输入文字 → 点击搜索
解析搜索结果页 → 定位第一篇笔记 → 点击进入
截图当前页面
切换到微信 → 找到李四 → 粘贴发送

整个过程无需你碰一次手机,所有操作由 ADB 驱动,所有决策由本地多模态大模型完成。

1.2 和普通大模型有什么本质区别?

维度传统大模型(如 ChatGLM)Open-AutoGLM(AutoGLM-Phone)
输入纯文本文本指令 + 实时手机截图 + UI结构化信息(XML)
输出文本回复JSON格式操作指令({"action": "Tap", "element": [320, 650]}
执行层内置 ADB 控制器,直接调用adb shell input tap等命令
运行位置服务器/云可完全本地运行(Mac/Windows/Linux)
隐私性输入可能上传云端截图、指令、推理全程在本地,不联网(可选)

它把大模型从“思考者”升级为“执行者”,是真正意义上的具身智能代理(Embodied Agent)在移动端的轻量落地


2. 环境准备:三步到位,拒绝玄学报错

2.1 你不需要高配电脑,但得避开这些坑

项目最低要求推荐配置关键提醒
操作系统Windows 10 / macOS 13 / Ubuntu 22.04macOS Sonoma(Apple Silicon)或 Windows 11(WSL2)Linux 用户建议用 WSL2 而非原生 Ubuntu,ADB 兼容性更稳
Python3.10+3.11.9(推荐 pyenv 管理)❗必须 64 位 Python,32 位会安装失败
手机Android 7.0+(真机优先)Android 10+(支持无线调试)模拟器(如 MuMu、BlueStacks)仅限调试,部分 UI 操作不可靠
ADBv34.0.5+安装android-platform-tools最新版❗Windows 用户务必关闭杀毒软件实时防护,否则 adb server 常被拦截

验证 ADB 是否就绪:终端输入adb version,看到类似Android Debug Bridge version 1.0.41即成功。

2.2 手机设置:5 分钟搞定,别跳步骤

这是最容易卡住的环节,按顺序操作:

  1. 开启开发者模式

    • 设置 → 关于手机 → 连续点击“版本号”7次 → 弹出“您已处于开发者模式”
  2. 开启 USB 调试

    • 设置 → 系统 → 开发者选项 → 打开USB 调试USB 安装网络调试(如果存在)
    • 关闭“监控 ADB 安装应用”(华为/小米常见,会导致 adb install 失败)
  3. 安装并启用 ADB Keyboard(关键!)

    • 下载 APK:ADBKeyboard.apk
    • 安装:adb install ADBKeyboard.apk
    • 启用:设置 → 语言和输入法 → 管理键盘 → 启用ADB Keyboard
    • 设为默认:设置 → 语言和输入法 → 当前输入法 → 选择ADB Keyboard
    • 验证:adb shell ime list -a | grep ADB应输出com.android.adbkeyboard/.AdbIME
  4. 首次连接授权

    • 原装数据线(非充电线)连接手机与电脑
    • 手机弹窗出现“允许 USB 调试吗?” → 勾选“始终允许”→ 点确定
    • 终端执行adb devices,输出含device字样即成功(如ABC123456789 device

小技巧:若adb devices显示unauthorized,说明未授权,拔插数据线重试;若显示空,先运行adb kill-server && adb start-server


3. 控制端部署:克隆、安装、验证三连击

3.1 下载代码与安装依赖

# 1. 克隆官方仓库(非 fork) git clone https://github.com/zai-org/Open-AutoGLM.git cd Open-AutoGLM # 2. 创建虚拟环境(强烈推荐,避免包冲突) python -m venv venv source venv/bin/activate # macOS/Linux # venv\Scripts\activate # Windows # 3. 安装基础依赖(注意:不要跳过 -e) pip install --upgrade pip pip install -r requirements.txt pip install -e . # 4. 验证核心模块可导入 python -c "from phone_agent.adb import ADBConnection; print(' ADB 模块加载成功')" python -c "from phone_agent.model import load_model; print(' 模型加载模块就绪')"

成功标志:无报错,输出两行 提示。若报ModuleNotFoundError: No module named 'mlx',说明你漏了 MLX 安装(见 3.2)。

3.2 补充安装 MLX(Apple Silicon 必装,x86 用户跳过)

MLX 是 Apple Silicon(M1/M2/M3)高效运行大模型的关键框架:

# 仅 Apple Silicon 用户执行 pip install mlx "git+https://github.com/Blaizzy/mlx-vlm.git@main" torch torchvision transformers # 验证 python -c "import mlx; print(f'MLX 版本: {mlx.__version__}')"

Windows/Linux 用户请忽略此步,直接使用--base-url连接远程 vLLM 服务(见第5节),本地不跑模型。


4. 模型下载与部署:选对方式,省下 3 小时等待

4.1 模型在哪?认准官方地址

  • Hugging Face:zai-org/AutoGLM-Phone-9B
  • ModelScope(魔搭):ZhipuAI/AutoGLM-Phone-9B

模型大小约 20GB(FP16),下载前请确保磁盘有 30GB 可用空间。

4.2 两种下载方式,按需选择

方式一:Hugging Face CLI(推荐国内用户)
# 1. 安装 CLI 工具 pip install -U "huggingface_hub[cli]" # 2. 设置国内镜像加速(关键!) export HF_ENDPOINT=https://hf-mirror.com # 3. 断点续传下载(不怕中断) huggingface-cli download \ --resume-download \ zai-org/AutoGLM-Phone-9B \ --local-dir ./models/AutoGLM-Phone-9B
方式二:ModelScope(国内最快,无需注册)
pip install modelscope python -c " from modelscope import snapshot_download snapshot_download( 'ZhipuAI/AutoGLM-Phone-9B', local_dir='./models/AutoGLM-Phone-9B' ) "

下载完成后,检查目录:ls ./models/AutoGLM-Phone-9B应包含config.json,model.safetensors,preprocessor_config.json等文件。

4.3 本地运行:一条命令启动你的手机助理

# 基础命令(Mac/Linux) python main.py \ --local \ --model ./models/AutoGLM-Phone-9B \ "打开微信" # Windows 用户(路径用反斜杠) python main.py ^ --local ^ --model .\models\AutoGLM-Phone-9B ^ "打开微信"
  • --local:启用本地 MLX 推理(Apple Silicon)或 CPU 推理(Windows/Linux)
  • --model:指向你下载的模型完整路径
  • 最后字符串:你的自然语言指令(支持中文,无需特殊格式)

首次运行会加载模型(约 30 秒),随后打印Connected to device: ABC123456789,接着开始截图、推理、执行。看到Task completed successfully即成功。


5. 远程部署:没有 Mac?用云服务器跑模型,本地只做控制

5.1 为什么需要远程模式?

  • 你的电脑是 Windows x64 或 Linux,没有 Apple Silicon
  • 你希望模型在高性能 GPU 服务器上运行,本地只负责 ADB 控制
  • 你想让多台手机共用一个模型服务

此时,你只需部署一个vLLM API 服务端,本地 Open-AutoGLM 作为客户端调用。

5.2 服务端快速启动(Ubuntu 示例)

# 1. 安装 vLLM(需 CUDA 12.1+) pip install vllm # 2. 启动 API 服务(假设模型已下载到 /data/models/AutoGLM-Phone-9B) python -m vllm.entrypoints.openai.api_server \ --model /data/models/AutoGLM-Phone-9B \ --dtype half \ --tensor-parallel-size 1 \ --max-model-len 4096 \ --port 8800 \ --host 0.0.0.0

服务启动后,访问http://<服务器IP>:8800/v1/models应返回模型信息。

5.3 客户端调用:本地电脑只管连接和指令

python main.py \ --device-id ABC123456789 \ --base-url http://192.168.1.100:8800/v1 \ # 替换为你的服务器IP和端口 --model "autoglm-phone-9b" \ "打开抖音搜索‘AI 教程’"
  • --device-idadb devices查到的设备 ID
  • --base-url:指向你的 vLLM 服务地址
  • --model:服务端注册的模型名(vLLM 默认为目录名,此处即autoglm-phone-9b

此模式下,本地电脑不加载模型,内存占用 <500MB,所有推理在服务器完成。


6. 实战运行:从第一条指令到稳定工作流

6.1 快速测试:30 秒验证全流程

# 运行交互模式(方便调试) python main.py --local --model ./models/AutoGLM-Phone-9B # 终端出现 > 提示符后,输入: > 打开设置 > 点击关于手机 > 连续点击版本号7次 > 退出

成功表现:手机自动执行全部动作,最后回到桌面。若卡在某步,按Ctrl+C中断,检查日志中ERROR行。

6.2 生产级参数组合(推荐保存为脚本)

#!/bin/bash # run_task.sh(macOS/Linux) python main.py \ --local \ --model ./models/AutoGLM-Phone-9B \ --device-id $(adb devices | sed -n '2p' | awk '{print $1}') \ --lang cn \ --max-steps 80 \ --temperature 0.01 \ "$1"

使用:chmod +x run_task.sh && ./run_task.sh "打开淘宝搜iPhone15"

6.3 敏感操作安全机制(必须了解)

Open-AutoGLM 内置双重保护:

  • 自动识别敏感动作:检测到“支付”、“转账”、“登录”、“验证码”等关键词,自动暂停并提示
  • 人工接管接口:当需要输入验证码或确认支付时,程序会输出Takeover required: Please enter verification code,你手动输入后按回车继续

这意味着它永远不会在你不知情时完成支付,安全边界清晰。


7. 常见问题排查:90% 的问题都在这里

7.1 ADB 连接类

现象原因与解法
adb devices无输出① 数据线非传输线;② 手机未授权;③ 开发者选项未开启;④ Windows 驱动未安装(去官网下 Android ADB Interface 驱动)
error: device unauthorized拔掉数据线 → 关闭开发者选项 → 重新开启 → 重连 → 授权
WiFi 连接后adb devices显示offline① 手机与电脑不在同一局域网;② 手机防火墙阻止;③ 执行adb tcpip 5555后未断开 USB 直接连 WiFi(必须先断 USB)

7.2 模型与运行类

现象原因与解法
ImportError: No module named 'mlx'Apple Silicon 用户未装 MLX;x86 用户误加--local(应删掉,走远程模式)
OSError: Unable to load weights模型路径错误,检查./models/AutoGLM-Phone-9B下是否有model.safetensors文件
运行卡住,无日志输出检查手机是否在锁屏状态(需解锁);检查 ADB Keyboard 是否启用;尝试重启 adb server(adb kill-server && adb start-server
中文输入乱码或失败① ADB Keyboard 未设为默认;② 手机系统语言非中文;③ 执行adb shell settings put secure default_input_method com.android.adbkeyboard/.AdbIME强制设置

7.3 性能优化提示

  • 内存不足(Killed):立即使用 4-bit 量化模型(见参考博文 4.3 节),16GB 内存可流畅运行
  • 截图黑屏:属系统限制(银行/支付类 App),模型会自动触发人工接管,无需干预
  • 响应慢:关闭手机后台所有非必要 App;降低手机屏幕分辨率(设置 → 显示 → 分辨率 → 选 HD+);优先使用 USB 连接而非 WiFi

8. 总结:你已经拥有了一个真正的手机 AI 助理

8.1 本文你实际掌握了什么?

  • 环境配置闭环:从 ADB 安装、手机开发者设置、ADB Keyboard 配置,到 Python 依赖安装,全部实操验证
  • 模型部署双路径:既可本地 MLX 运行(Apple Silicon),也可远程 vLLM 服务(全平台通用)
  • 指令执行全流程:理解“截图→解析UI→规划动作→生成JSON→调用ADB”的完整链路
  • 生产可用保障:掌握敏感操作防护、WiFi/USB 切换、错误日志定位等工程化要点

8.2 下一步你可以做什么?

  • 尝试更复杂的指令:“打开高德地图,搜索‘最近的苹果授权店’,导航过去,途中播放播客”
  • main.py封装为 macOS 快捷指令或 Windows 批处理,一键唤醒
  • 结合定时任务(cron / Task Scheduler),实现“每天早8点自动打卡”
  • 阅读phone_agent/agent.py源码,修改max_steps或添加自定义动作类型

Open-AutoGLM 的价值不在于炫技,而在于把前沿多模态能力,变成你手机里一个安静、可靠、永远在线的数字同事。它不替代你思考,但替你执行那些重复、琐碎、必须点按的操作——而这,正是 AI 赋能最朴实也最有力的方式。

--- > **获取更多AI镜像** > > 想探索更多AI镜像和应用场景?访问 [CSDN星图镜像广场](https://ai.csdn.net/?utm_source=mirror_blog_end),提供丰富的预置镜像,覆盖大模型推理、图像生成、视频生成、模型微调等多个领域,支持一键部署。
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/10 10:52:19

动手试了科哥的卡通化工具,结果让我惊呼太像了

动手试了科哥的卡通化工具&#xff0c;结果让我惊呼太像了 大家好&#xff0c;我是小陈&#xff0c;一个喜欢把AI工具用在日常创作里的普通用户。上周偶然看到朋友转发的“科哥人像卡通化工具”&#xff0c;标题写着“真人秒变二次元”&#xff0c;我第一反应是&#xff1a;又…

作者头像 李华
网站建设 2026/6/10 10:50:53

SiameseUIE中文-base保姆级指南:start.sh启动脚本参数定制化配置

SiameseUIE中文-base保姆级指南&#xff1a;start.sh启动脚本参数定制化配置 1. 为什么需要关注start.sh脚本&#xff1f; 你可能已经成功启动了SiameseUIE中文-base镜像&#xff0c;打开Web界面&#xff0c;输入几段文本&#xff0c;看着实体和情感被精准抽出来&#xff0c;…

作者头像 李华
网站建设 2026/6/10 2:37:49

揭秘KQL查询中的时间窗口问题

在编写KQL(Kusto Query Language)查询时,时间窗口的设置是非常关键的一环,它直接影响到查询结果的准确性和性能。本文将通过一个实际的案例,深入探讨如何在KQL查询中正确处理时间窗口,并解决常见的错误。 案例背景 最近,用户sl0th在尝试查询文件创建和重命名事件时,遇…

作者头像 李华
网站建设 2026/6/10 10:55:57

all-MiniLM-L6-v2部署教程:Ollama + Nginx反向代理 + HTTPS安全访问

all-MiniLM-L6-v2部署教程&#xff1a;Ollama Nginx反向代理 HTTPS安全访问 你是不是也遇到过这样的问题&#xff1a;想快速搭建一个轻量级的语义搜索服务&#xff0c;但又不想折腾复杂的Python环境、模型加载和API封装&#xff1f;或者正在做RAG应用&#xff0c;需要一个响…

作者头像 李华
网站建设 2026/6/10 10:54:59

GTE-Pro企业应用落地:中小型企业低成本构建语义知识库完整方案

GTE-Pro企业应用落地&#xff1a;中小型企业低成本构建语义知识库完整方案 1. 为什么中小企业现在必须拥有自己的语义知识库&#xff1f; 你有没有遇到过这些情况&#xff1f; 新员工入职一周还在到处问“报销流程在哪查”&#xff1b; 客服每天重复回答“发票怎么开”“合同…

作者头像 李华
网站建设 2026/6/10 10:51:02

BAAI/bge-m3部署全流程:从镜像拉取到结果验证

BAAI/bge-m3部署全流程&#xff1a;从镜像拉取到结果验证 1. 为什么你需要一个靠谱的语义相似度引擎 你有没有遇到过这些场景&#xff1f; 做RAG系统时&#xff0c;召回的文档明明关键词匹配&#xff0c;但内容完全不相关&#xff1b;客服知识库搜索“怎么退款”&#xff0c…

作者头像 李华