零基础入门Open-AutoGLM:Mac上5分钟部署AI手机助理,小白也能轻松上手

零基础入门Open-AutoGLM:Mac上5分钟部署AI手机助理,小白也能轻松上手

摘要:本教程教你在 Mac (Apple Silicon) 上部署智谱 AutoGLM-Phone-9B 多模态大模型,实现完全本地化、隐私安全、零成本的手机 AI 助理。从原理到部署、从操作到优化,一文搞定!


1. 什么是 Open-AutoGLM?

1.1 项目简介

Open-AutoGLM是智谱 AI 开源的手机端 AI Agent 框架,全称为 AutoGLM-Phone。它能让你的 Mac 成为一台“超级大脑”,通过 USB 或 WiFi 远程控制安卓设备,自动完成各类日常任务。

只需一句自然语言指令,例如:

  • “打开小红书搜索美食推荐”
  • “在抖音关注用户 dycwo11nt61d”
  • “打开微信给妈妈发消息说我今晚不回家吃饭”

系统即可自动解析意图、理解当前界面状态,并规划出完整的操作路径,最终通过 ADB 实现点击、滑动、输入等动作,真正实现“动口不动手”。

该框架基于视觉语言模型(VLM),结合多模态感知与智能决策能力,构建了一个闭环的“感知-思考-执行”系统,适用于自动化测试、个人助理、无障碍辅助等多种场景。

1.2 为什么选择本地部署?

对比项云端 API 模式本地 MLX 模式
隐私安全截图上传云端数据永不出本机
运行成本按 Token 收费电费即成本
网络依赖断网不可用完全离线可用
响应延迟网络延迟波动本地计算稳定

将模型运行在本地 Mac 上,不仅能避免敏感截图外泄,还能享受更低延迟和更稳定的交互体验,尤其适合对隐私有高要求的用户。

1.3 适合谁使用?

  • 开发者:学习 AI Agent 架构设计与多模态应用开发
  • 极客玩家:探索 Apple Silicon 上的大模型部署技巧
  • 隐私敏感用户:拒绝数据上传,追求端侧智能
  • 技术爱好者:动手实践 ADB 自动化 + VLM 推理全流程

2. 核心原理解析

2.1 AI Agent 工作循环

Open-AutoGLM 遵循经典的Perception-Thinking-Action(感知-思考-行动)循环机制:

┌─────────────────────────────────────────────────────────────┐ │ Agent 工作循环 │ ├─────────────────────────────────────────────────────────────┤ │ │ │ ┌──────────┐ ┌──────────┐ ┌──────────┐ │ │ │ 感 知 │ ──→ │ 思 考 │ ──→ │ 行 动 │ │ │ │ │ │ │ │ │ │ │ │ 截图 │ │ 理解状态 │ │ 点击 │ │ │ │ UI解析 │ │ 规划步骤 │ │ 滑动 │ │ │ │ App状态 │ │ 生成指令 │ │ 输入 │ │ │ └──────────┘ └──────────┘ └──────────┘ │ │ ↑ │ │ │ └──────────────────────────────────┘ │ │ 循环执行 │ └─────────────────────────────────────────────────────────────┘

每一步都由模型驱动:先获取屏幕图像和结构信息 → 输入模型进行推理 → 输出 JSON 格式的操作指令 → 执行 ADB 命令完成动作。

2.2 三层架构详解

感知层(Perception Layer)

负责采集手机当前状态,主要包括三种方式:

感知类型技术实现数据格式
视觉感知adb shell screencap -pPNG 图像
结构化感知adb shell uiautomator dumpXML 元素树
状态感知adb shell dumpsys activityApp/Activity 信息

这些数据共同构成模型的输入上下文,帮助其准确理解当前所处页面。

推理层(Reasoning Layer)

核心是AutoGLM-Phone-9B,一个专为移动端任务设计的视觉语言模型(VLM)。其输入包含:

  • 系统提示词(System Prompt)
  • 用户任务描述
  • 当前手机截图(Base64 编码)

模型输出遵循特定格式:

<think>我需要先找到微信图标并点击</think> <answer>{"action": "Tap", "element": [500, 800]}</answer>

其中<think>包含推理过程,<answer>包含可执行的操作指令。

执行层(Execution Layer)

根据模型输出调用对应的 ADB 命令完成实际操作:

操作类型ADB 命令说明
Tapadb shell input tap x y点击坐标
Swipeadb shell input swipe x1 y1 x2 y2滑动
Typeadb shell am broadcast -a ADB_INPUT_TEXT输入文字
Launchadb shell am start -n package/activity启动应用
Backadb shell input keyevent KEYCODE_BACK返回上一页

此外,系统还内置了人工接管机制,在遇到验证码、支付确认等敏感操作时会暂停并提示用户介入。

2.3 MLX 框架优势

MLX是苹果为 Apple Silicon(M1/M2/M3/M4)定制的深度学习框架,具备以下优势:

  • 统一内存架构:CPU 与 GPU 共享内存,减少数据拷贝开销
  • 延迟编译优化:仅编译实际执行路径,提升效率
  • 原生 Metal 加速:充分利用 GPU 并行计算能力

得益于 MLX,我们可以在 Mac 上高效运行 9B 参数级别的多模态模型,而无需依赖云服务或高性能显卡。


3. 环境准备(超详细)

3.1 系统要求

项目最低要求推荐配置
系统版本macOS 13.3+macOS 14+ (Sonoma)
芯片M1M1 Max / M2 Pro 及以上
内存16GB (量化后)32GB+
硬盘20GB 可用空间50GB+ SSD
Python3.10+3.11

建议使用搭载 M1 及以上芯片的 Mac 设备以获得最佳性能。

3.2 安装 Python 环境

推荐使用pyenv管理 Python 版本。

# 安装 Homebrew(如未安装) /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" # 安装 pyenv brew install pyenv # 配置 zsh 环境变量 echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.zshrc echo 'command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.zshrc echo 'eval "$(pyenv init -)"' >> ~/.zshrc source ~/.zshrc # 安装 Python 3.11 pyenv install 3.11.9 pyenv global 3.11.9 # 验证 python --version # 应输出 Python 3.11.9

3.3 安装 ADB 工具

ADB 是连接 Mac 与安卓设备的核心工具。

# 使用 Homebrew 安装 brew install android-platform-tools # 验证安装 adb version

3.4 配置安卓手机

步骤 1:开启开发者模式
  1. 打开设置 → 关于手机
  2. 连续点击版本号7 次
  3. 提示“您已进入开发者模式”

不同品牌路径略有差异,请根据机型调整。

步骤 2:开启 USB 调试
  1. 返回设置 → 系统 → 开发者选项
  2. 开启USB 调试
  3. 可选:关闭“监控 ADB 安装应用”以防弹窗干扰
步骤 3:连接授权
  1. 使用数据线连接手机与 Mac
  2. 手机弹出授权对话框,勾选“始终允许”并确认
  3. 终端验证:
adb devices # 输出应类似: # List of devices attached # ABCD1234567890 device

3.5 安装 ADB Keyboard

用于支持中文文本输入。

  1. 下载 APK 文件:

    curl -L -O https://github.com/senzhk/ADBKeyBoard/releases/download/v1.7/ADBKeyboard.apk
  2. 安装至设备:

    adb install ADBKeyboard.apk
  3. 在手机中启用:

    • 设置 → 语言和输入法 → 虚拟键盘 → 启用 ADB Keyboard
    • 切换默认输入法为 ADB Keyboard
  4. 验证:

    adb shell ime list -a | grep ADB # 应输出: com.android.adbkeyboard/.AdbIME

3.6 安装项目依赖

# 克隆项目 git clone https://github.com/zai-org/Open-AutoGLM.git cd Open-AutoGLM # 安装 MLX 相关依赖 pip install mlx "git+https://github.com/Blaizzy/mlx-vlm.git@main" torch torchvision transformers # 安装项目依赖 pip install -r requirements.txt pip install -e . # 验证安装成功 python -c "import mlx; import phone_agent; print('✅ 安装成功!')"

4. 模型下载与部署

4.1 下载模型

方法 A:HuggingFace CLI(推荐)
# 安装 HuggingFace CLI pip install -U "huggingface_hub[cli]" # 设置国内镜像加速(可选) export HF_ENDPOINT=https://hf-mirror.com # 下载模型(约 20GB) huggingface-cli download --resume-download zai-org/AutoGLM-Phone-9B --local-dir ./models/AutoGLM-Phone-9B
方法 B:ModelScope(国内更快)
pip install modelscope python -c " from modelscope import snapshot_download; snapshot_download('ZhipuAI/AutoGLM-Phone-9B', local_dir='./models/AutoGLM-Phone-9B') "

4.2 启动运行

python main.py --local --model ./models/AutoGLM-Phone-9B "打开微信"

首次加载模型约需 30 秒,之后即可开始交互。

4.3 4-bit 量化(内存优化版)

若设备内存 ≤16GB,建议使用 4-bit 量化降低资源占用。

指标FP16 原始模型4-bit 量化
模型大小~20GB~6.5GB
内存需求≥32GB≥16GB
推理速度基准提升约 3x
精度损失<2%

执行量化:

python -m mlx_vlm.convert \ --hf-path ./models/AutoGLM-Phone-9B \ -q \ --q-bits 4 \ --mlx-path ./autoglm-9b-4bit

使用量化模型运行:

python main.py --local --model ./autoglm-9b-4bit "打开B站搜索Python教程"

5. 实战操作指南

5.1 基础运行模式

交互式模式
python main.py --local --model ./autoglm-9b-4bit # 输入任务: > 打开小红书搜索咖啡探店 > 发送微信消息给李四说:会议推迟到下午三点 > 退出
单次任务模式
python main.py --local --model ./autoglm-9b-4bit "打开抖音刷5个视频"

5.2 常用参数说明

参数说明示例
--local使用本地 MLX 推理--local
--model模型路径--model ./autoglm-9b-4bit
--device-id指定设备 ID--device-id 192.168.1.100:5555
--lang语言设置--lang cn
--list-devices列出已连接设备--list-devices

5.3 典型任务示例

# 社交沟通 python main.py --local --model ./autoglm-9b-4bit "打开微信给张三发消息:今天加班,晚点回家" # 电商购物 python main.py --local --model ./autoglm-9b-4bit "打开淘宝搜索无线蓝牙耳机按销量排序" # 外卖点餐 python main.py --local --model ./autoglm-9b-4bit "打开美团外卖点一份黄焖鸡米饭加辣" # 视频娱乐 python main.py --local --model ./autoglm-9b-4bit "打开B站搜索二次元动漫推荐" # 音乐播放 python main.py --local --model ./autoglm-9b-4bit "打开网易云音乐搜索周杰伦的《晴天》并播放"

5.4 WiFi 远程调试

摆脱数据线束缚,实现无线控制。

  1. 手机开启“无线调试”功能(开发者选项内)
  2. 记录 IP 地址与端口号(通常为 5555)

连接命令:

# 连接远程设备 adb connect 192.168.1.100:5555 # 验证 adb devices # 执行任务 python main.py --local --model ./autoglm-9b-4bit \ --device-id 192.168.1.100:5555 \ "打开抖音刷新鲜事"

6. 性能优化详解

6.1 内置优化策略

图像智能降采样

为提升推理效率,系统自动将截图长边压缩至 1024px 以内:

原始分辨率压缩后像素减少
2400×10801024×46082%
1920×10801024×57672%

大幅降低视觉编码器负担,同时保留关键 UI 信息。

KV Cache 量化

启用kv_bits=8将注意力缓存从 FP16 转为 INT8:

  • 显存占用下降约 30%
  • 推理速度小幅提升
  • 几乎无精度损失
显存强制回收

每步推理后自动执行:

mx.clear_cache() gc.collect()

防止内存泄漏导致长时间运行卡顿。

6.2 手动优化建议

  1. 关闭后台应用:释放更多内存供模型使用
  2. 优先使用 USB 连接:传输更稳定,延迟更低
  3. 降低屏幕亮度:减小截图文件体积
  4. 定期重启进程:若出现响应变慢,可终止后重试

6.3 实测性能表现(M1 Max, 32GB)

阶段耗时
模型加载~30 秒
单步推理13–18 秒
截图获取0.5–1 秒

完整任务耗时示例:“打开网易云音乐搜索《一滴泪的时间》并播放”

  • 总步骤:6 步
  • 总耗时:约 2 分 18 秒

7. API 与进阶用法

7.1 Python API 调用

from phone_agent import PhoneAgent from phone_agent.model import ModelConfig from phone_agent.agent import AgentConfig # 模型配置 model_config = ModelConfig( model_name="./autoglm-9b-4bit", is_local=True, max_tokens=3000, temperature=0.1, ) # Agent 配置 agent_config = AgentConfig( max_steps=50, verbose=True, lang="cn", ) # 创建代理并运行 agent = PhoneAgent(model_config=model_config, agent_config=agent_config) result = agent.run("打开抖音刷新鲜事") print(f"任务结果: {result}")

7.2 自定义回调函数

处理敏感操作或需人工干预的场景:

def my_confirmation(message: str) -> bool: print(f"⚠️ 检测到敏感操作: {message}") return input("是否继续?(y/n): ").lower() == "y" def my_takeover(message: str) -> None: print(f"✋ 需要人工操作: {message}") input("完成后按回车继续...") agent = PhoneAgent( confirmation_callback=my_confirmation, takeover_callback=my_takeover, )

7.3 批量任务执行

tasks = [ "打开微信给张三发消息:会议改到下午4点", "打开支付宝查看余额", "打开美团查看最近订单", ] for task in tasks: result = agent.run(task) print(f"✅ 完成: {task}") agent.reset() # 重置状态

8. 常见问题 FAQ

Q1: 设备未识别(adb devices 为空)

解决方法:

adb kill-server adb start-server adb devices

常见原因:

  • 使用了纯充电线(非数据线)
  • 未在手机上授权调试权限
  • 开发者选项未正确开启

Q2: 模型下载中断

使用断点续传:

huggingface-cli download --resume-download zai-org/AutoGLM-Phone-9B --local-dir ./models/AutoGLM-Phone-9B

或切换国内镜像:

export HF_ENDPOINT=https://hf-mirror.com

Q3: 内存不足(Killed / MemoryError)

解决方案:

  1. 使用 4-bit 量化模型
  2. 关闭其他应用程序
  3. 重启 Mac 后再尝试

Q4: 文字输入失败

检查:

  1. 是否已安装 ADB Keyboard
  2. 是否已在系统中启用
  3. 验证命令:
    adb shell ime list -a | grep ADB

Q5: 截图为黑屏

某些应用(如银行、支付类)禁止截图,属于系统级限制。此时模型会自动请求人工接管。

Q6: 运行逐渐变慢

建议终止程序并重新启动:

Ctrl+C python main.py --local --model ./autoglm-9b-4bit "你的任务"

Q7: WiFi 连接失败

排查:

  1. 确保手机与电脑在同一局域网
  2. 手机已开启“无线调试”
  3. 防火墙未阻止 5555 端口

Q8: 中文乱码问题(Windows/Linux)

设置环境变量:

# Windows set PYTHONIOENCODING=utf-8 # Linux/macOS export PYTHONIOENCODING=utf-8

获取更多AI镜像

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1180179.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MinerU替代方案对比:为什么云端版更适合小白?

MinerU替代方案对比&#xff1a;为什么云端版更适合小白&#xff1f; 你是一位非技术背景的创始人&#xff0c;正打算为公司引入一套文档AI系统&#xff0c;用来自动化处理合同、报告、产品手册等大量PDF和Office文档。你的目标很明确&#xff1a;提升团队效率&#xff0c;减少…

UI-TARS-desktop实战案例:基于Qwen3-4B-Instruct-2507的智能翻译

UI-TARS-desktop实战案例&#xff1a;基于Qwen3-4B-Instruct-2507的智能翻译 1. UI-TARS-desktop简介 Agent TARS 是一个开源的多模态 AI Agent 框架&#xff0c;致力于通过融合 GUI 自动化、视觉理解&#xff08;Vision&#xff09;等能力&#xff0c;构建能够与现实世界工具…

告别GPU!用DeepSeek-R1在普通电脑实现流畅AI推理

告别GPU&#xff01;用DeepSeek-R1在普通电脑实现流畅AI推理 1. 引言&#xff1a;为什么我们需要CPU上的本地AI推理&#xff1f; 随着大模型技术的飞速发展&#xff0c;越来越多开发者和企业希望将AI能力集成到本地应用中。然而&#xff0c;主流的大语言模型&#xff08;LLM&…

2026年悬浮门定做专业厂家推荐参考 - 2026年企业推荐榜

文章摘要 本文分析了2026年悬浮门行业的发展趋势,基于综合因素推荐了五家专业厂家,包括红门集团等,详细介绍了各公司的品牌实力和推荐理由,并提供了悬浮门选择指南和采购建议,帮助决策者做出明智选择。 正文内容 …

AI绘画也能本地化?Z-Image-Turbo中文支持太强了

AI绘画也能本地化&#xff1f;Z-Image-Turbo中文支持太强了 1. 背景与痛点&#xff1a;为什么我们需要本地化的文生图模型&#xff1f; 在生成式AI快速发展的今天&#xff0c;图像生成技术已从实验室走向大众创作。然而&#xff0c;对于中文用户而言&#xff0c;一个长期存在…

惊艳!Fun-ASR打造的粤语语音识别案例展示

惊艳&#xff01;Fun-ASR打造的粤语语音识别案例展示 1. 引言&#xff1a;多语言语音识别的新突破 随着全球化进程加速&#xff0c;跨语言交流需求日益增长。传统语音识别系统往往局限于单一语言支持&#xff0c;难以满足真实场景下的多语种混合输入需求。阿里通义实验室推出…

YOLOv10官版镜像训练技巧分享,提速又省显存

YOLOv10官版镜像训练技巧分享&#xff0c;提速又省显存 在深度学习目标检测领域&#xff0c;YOLO 系列一直以高效、实时著称。随着 YOLOv10 的发布&#xff0c;其“端到端无 NMS”设计进一步打破了传统推理流程的延迟瓶颈&#xff0c;成为边缘部署和高吞吐场景的新宠。然而&am…

电商人像批量抠图新方案|CV-UNet大模型镜像助力提效

电商人像批量抠图新方案&#xff5c;CV-UNet大模型镜像助力提效 1. 引言&#xff1a;电商图像处理的效率瓶颈与破局之道 在电商平台日益激烈的竞争环境下&#xff0c;商品主图的质量直接影响点击率和转化率。尤其对于服饰、美妆、配饰等依赖视觉呈现的类目&#xff0c;高质量…

Qwen3-Embedding-0.6B功能测试:支持编程语言代码嵌入验证

Qwen3-Embedding-0.6B功能测试&#xff1a;支持编程语言代码嵌入验证 1. 背景与技术价值 随着大模型在信息检索、语义理解与代码智能等领域的广泛应用&#xff0c;高质量的文本嵌入&#xff08;Text Embedding&#xff09;能力成为构建下游应用的关键基础设施。Qwen3-Embeddi…

AI智能二维码工坊实战教程:产品防伪二维码系统

AI智能二维码工坊实战教程&#xff1a;产品防伪二维码系统 1. 教程目标与背景 1.1 为什么需要本地化二维码处理系统&#xff1f; 在当前数字化产品管理中&#xff0c;二维码已成为连接物理世界与数字信息的核心载体。尤其在产品防伪、溯源、营销互动等场景中&#xff0c;企业…

情感计算未来展望:Emotion2Vec+ Large在人机交互的应用

情感计算未来展望&#xff1a;Emotion2Vec Large在人机交互的应用 1. 引言&#xff1a;语音情感识别的技术演进与应用前景 随着人工智能技术的不断进步&#xff0c;人机交互正从“功能驱动”向“情感感知”迈进。传统语音识别系统仅关注“说了什么”&#xff0c;而现代情感计…

MGeo开源模型安全性评估:数据隐私保护措施

MGeo开源模型安全性评估&#xff1a;数据隐私保护措施 1. 技术背景与问题提出 随着地理信息系统的广泛应用&#xff0c;地址相似度匹配在电商、物流、城市治理等领域发挥着关键作用。MGeo作为阿里开源的中文地址领域实体对齐模型&#xff0c;能够高效识别语义相近但表述不同的…

MGeo在物流系统中的实际应用,落地方案详解

MGeo在物流系统中的实际应用&#xff0c;落地方案详解 1. 引言&#xff1a;物流场景下的地址匹配挑战 在现代物流系统中&#xff0c;高效准确的地址处理能力是保障配送效率、降低运营成本的核心环节。无论是订单系统、仓储管理还是末端派送&#xff0c;都依赖于对海量地址信息…

零样本学习实战:RexUniNLU让NLP开发更简单

零样本学习实战&#xff1a;RexUniNLU让NLP开发更简单 1. 引言 1.1 NLP工程落地的现实挑战 在自然语言处理&#xff08;NLP&#xff09;的实际项目中&#xff0c;标注数据的获取始终是制约模型部署的核心瓶颈。传统监督学习方法依赖大量人工标注样本进行训练&#xff0c;不仅…

一键部署verl:快速搭建属于你的AI模型强化学习环境

一键部署verl&#xff1a;快速搭建属于你的AI模型强化学习环境 1. 引言 大型语言模型&#xff08;LLMs&#xff09;在预训练之后&#xff0c;通常需要通过**后训练&#xff08;post-training&#xff09;**进一步优化其在特定任务上的表现。这一阶段主要包括监督微调&#xf…

小白也能用!MGeo中文地址匹配保姆级教程

小白也能用&#xff01;MGeo中文地址匹配保姆级教程 1. 引言&#xff1a;为什么需要中文地址相似度识别&#xff1f; 在电商、物流、用户数据分析等实际业务中&#xff0c;地址信息的标准化与对齐是数据清洗的关键环节。然而&#xff0c;中文地址存在大量表述差异&#xff1a…

bge-large-zh-v1.5技术解析:高维语义空间的聚类分析

bge-large-zh-v1.5技术解析&#xff1a;高维语义空间的聚类分析 1. 技术背景与核心价值 随着自然语言处理技术的发展&#xff0c;文本嵌入&#xff08;Text Embedding&#xff09;已成为信息检索、语义匹配、聚类分析等任务的核心基础。在中文场景下&#xff0c;由于语言结构…

高精度证件照生成:AI智能证件照工坊参数调优指南

高精度证件照生成&#xff1a;AI智能证件照工坊参数调优指南 1. 引言 1.1 业务场景描述 在数字化办公与在线身份认证日益普及的今天&#xff0c;标准证件照已成为简历投递、考试报名、政务办理等场景中的刚需。传统照相馆拍摄成本高、流程繁琐&#xff0c;而市面上多数在线换…

Paraformer-large部署详解:解决CUDA显存不足的7种有效策略

Paraformer-large部署详解&#xff1a;解决CUDA显存不足的7种有效策略 1. 背景与挑战&#xff1a;Paraformer-large在实际部署中的显存瓶颈 随着语音识别技术在智能客服、会议记录、教育转写等场景的广泛应用&#xff0c;阿里达摩院开源的 Paraformer-large 模型因其高精度和…

Hunyuan模型如何保证格式?HTML标签保留部署详解

Hunyuan模型如何保证格式&#xff1f;HTML标签保留部署详解 1. 引言&#xff1a;轻量级翻译模型的工程挑战 随着多语言内容在互联网中的占比持续上升&#xff0c;神经机器翻译&#xff08;NMT&#xff09;已从实验室走向终端设备。然而&#xff0c;传统大模型受限于计算资源和…