开源端侧 AI Agent 全栈架构解析:Mano-P 模型 + Cider 推理加速 + AFK 自动构建
端侧 AI Agent 不只是"在本地跑个模型"那么简单。从视觉理解到高效推理,再到自动化应用交付,每一层都有独立的工程挑战。本文以明略科技开源的 Mano-P 全栈架构为例,拆解端侧 Agent 的三层技术栈设计。
一、为什么端侧 AI Agent 需要全栈方案
当前大多数 AI Agent 产品依赖云端大模型 API:用户操作指令发往服务器,模型推理后返回动作序列,再由本地执行器操作 GUI。这种架构在延迟、隐私和离线可用性上存在天然硬伤。
端侧 Agent 的理想形态是:模型运行在用户设备上,数据不出本机,交互延迟足够低。但要实现这个目标,仅有一个小模型远远不够:
- 模型层:需要在有限参数量下保持 GUI 理解和操作规划能力
- 加速层:端侧硬件算力有限,必须有针对性的推理加速方案
- 应用层:Agent 的价值最终体现为自动完成复杂任务,需要稳定的执行框架
这三层能力缺一不可,任何一层的短板都会让端侧 Agent 停留在"Demo 能跑"的阶段。
二、架构总览:三层协同设计
明略科技开源的端侧 Agent 全栈方案包含三个独立仓库,分别对应三层能力:
| 层级 | 项目 | 定位 | GitHub |
|---|---|---|---|
| 模型层 | Mano-P | GUI-VLA 视觉语言动作模型 | github.com/Mininglamp-AI/Mano-P |
| 加速层 | Cider SDK | 激活量化推理引擎 | github.com/Mininglamp-AI/cider |
| 应用层 | Mano-AFK | 全自动应用构建框架 | github.com/Mininglamp-AI/mano-afk |
三层各自独立开源(Apache 2.0 协议),可以单独使用,也可以组合形成完整的端侧 Agent 流水线。
三、模型层:Mano-P — GUI 视觉语言动作模型
3.1 核心设计思路
Mano-P 是一个专为 GUI 操作设计的 VLA(Vision-Language-Action)模型。与通用 VLM 不同,Mano-P 的训练目标不是"看图说话",而是"看到界面 → 理解状态 → 规划动作 → 执行操作"。
3.2 训练方法:三阶段递进
Mano-P 的训练采用三阶段方案,逐步提升模型的 GUI 操作能力:
Stage 1 — Supervised Fine-Tuning (SFT)
基于 OSWorld 等 GUI 操作数据集进行监督微调,让模型学会基本的界面理解和动作映射。
Stage 2 — Offline Reinforcement Learning
利用离线轨迹数据进行强化学习,优化模型在多步操作序列中的决策质量。
Stage 3 — Online Reinforcement Learning
在真实环境中进行在线 RL 训练,模型通过与操作系统的实际交互来修正策略偏差。
3.3 推理机制:Think-Act-Verify 循环
Mano-P 的推理不是一次性输出动作序列,而是采用 Think-Act-Verify 循环:
- Think:分析当前屏幕截图,理解任务上下文和界面状态
- Act:基于分析结果输出下一步操作(点击、输入、滚动等)
- Verify:执行后再次截图,验证操作是否达到预期效果
这种循环机制使 Agent 具备自纠错能力,不会因为一次误操作导致任务失败。
3.4 视觉 Token 剪枝:GSPruning
GUI 截图包含大量冗余信息(空白区域、重复图标),直接送入模型会浪费大量计算资源。Mano-P 引入 GSPruning(Guided Sparse Pruning)机制:
- 在保留仅 25.09% 的视觉 tokens 时,任务成功率(SR)为 0.370,对比未剪枝 baseline 的 0.390,性能损失极小
- 换来的是 2-3x 的推理吞吐加速
这意味着端侧设备可以在不显著损失精度的前提下,大幅降低每次推理的计算开销。
3.5 性能数据
| 模型 | Benchmark | 得分 | 备注 |
|---|---|---|---|
| Mano-P 72B | OSWorld | 58.2% | 排名第一,第二名 45.0% |
| WebRetriever | NavEval | 41.7 | Gemini 2.5 Pro: 40.9, Claude 4.5: 31.3 |
四、加速层:Cider SDK — 激活量化推理引擎
4.1 为什么需要 Cider
Apple Silicon 生态已有 MLX 框架提供高效推理,但 MLX 目前主要支持权重量化(Weight-only Quantization,如 W4A16),即只量化权重、激活值保持 FP16。
Cider SDK 的定位是补充 MLX 缺失的激活量化能力,支持 W8A8 和 W4A8 方案——同时量化权重和激活值。激活量化可以:
- 减少矩阵乘法中的计算量(INT8 × INT8 比 FP16 × FP16 更快)
- 降低内存带宽压力
- 在 Apple Silicon 的 ANE/GPU 上获得更好的硬件利用率
4.2 量化方案对比
| 方案 | 权重精度 | 激活精度 | 相比 MLX W4A16 加速 | 平台 |
|---|---|---|---|---|
| Cider W8A8 per-channel | INT8 | INT8 | 1.8x prefill 加速 | M5 Pro |
| Cider W8A8 per-group gs=128 | INT8 | INT8 | 1.5x prefill 加速 | M5 Pro |
| Cider W8A8 per-group gs=64 | INT8 | INT8 | 1.3x prefill 加速 | M5 Pro |
| Cider W4A8 | INT4 | INT8 | 1.4-2.2x 范围 | M5 Pro |
量化粒度越粗(per-channel > per-group),速度越快但精度损失越大。实际部署时需要根据模型和任务做 trade-off。
4.3 精度影响评估
在 CUA Benchmark(M5 16GB 设备)上的测试结果:
| 量化方案 | 准确率 |
|---|---|
| W8A16 | 58.0% |
| W8A8 | 54.0% |
W8A8 相比半精度激活损失约 4 个百分点,对于端侧实时交互场景,这是一个可接受的精度-速度 trade-off。
4.4 端侧推理性能
Mano-P 4B 在 Apple Silicon 上的实测性能:
| 芯片 | 量化方案 | Prefill | Decode | 峰值内存 |
|---|---|---|---|---|
| M5 Pro | - | - | ~80 tok/s | - |
| M4 Pro | W4A16 | 476 tok/s | 76 tok/s | 4.3 GB |
4.3 GB 的峰值内存占用意味着 32 GB 内存的 Mac 可以在运行其他日常应用的同时部署 Agent,不会出现内存压力。
五、应用层:Mano-AFK — 全自动应用构建框架
5.1 定位
Mano-AFK 是端侧 Agent 的"应用交付层"。它的目标是:给定一个产品需求描述(PRD),自动完成从代码生成到部署测试的全流程,零人工干预。
5.2 全闭环流程
PRD 输入 → 代码生成 → 自动部署 → 自动化测试 → Bug 修复 → 交付
每一步都由 Agent 自主完成:
- PRD 解析:理解需求文档,拆分为可执行的技术任务
- 代码生成:基于任务描述生成代码实现
- 自动部署:将生成的代码部署到目标环境
- 自动化测试:执行功能测试和回归测试
- Bug 修复:根据测试结果自动定位并修复问题
- 循环迭代:直到所有测试通过,完成交付
5.3 与模型层的配合
Mano-AFK 底层调用 Mano-P 的 GUI 操作能力:当需要操作 IDE、浏览器、终端时,通过 Think-Act-Verify 循环驱动界面交互。Cider SDK 保证每次推理的响应速度足够快,不会让自动化流程因为等待模型推理而卡顿。
三层协同形成完整链路:Mano-P 提供智能 → Cider 提供速度 → AFK 提供自动化。
六、技术细节深入
6.1 Think-Act-Verify 的工程实现
在实际实现中,Think-Act-Verify 循环需要处理几个关键问题:
- 截图频率:每次 Act 后等待 UI 渲染完成再截图,避免捕获中间态
- 失败重试:Verify 失败后不是简单重试同一动作,而是回到 Think 阶段重新分析当前状态
- 超时控制:对整个任务和单步操作都设置超时,防止 Agent 陷入死循环
6.2 GSPruning 的实现原理
GSPruning 不是随机丢弃视觉 token,而是基于注意力分布进行引导式剪枝:
- 在前几层 Transformer 中计算每个视觉 token 的注意力权重
- 根据权重分布保留信息密度高的 token(如文字区域、按钮、输入框)
- 丢弃低信息密度的 token(如纯色背景、重复图案)
这种方式保证了对 GUI 操作关键区域的感知能力不受影响。
6.3 三阶段训练的数据来源
| 训练阶段 | 数据来源 | 规模 |
|---|---|---|
| SFT | OSWorld 操作轨迹 + 内部标注数据 | 大规模 GUI 操作对 |
| Offline RL | 历史成功/失败轨迹 | 正负样本对比学习 |
| Online RL | 真实 OS 环境在线交互 | 实时反馈优化 |
七、硬件要求与部署建议
最低配置
- Mac mini 或 MacBook
- Apple M4 芯片
- 32GB 内存
推荐配置
- Apple M4 Pro / M5 Pro + 32 GB RAM
- 可同时运行 Agent 和日常办公应用
需要注意的是,当前版本对 Intel Mac 和低于 M4 的 Apple Silicon 设备不提供官方支持。
八、总结
端侧 AI Agent 的核心挑战不在于"能不能在本地跑模型",而在于如何在有限算力下构建一个精度够用、速度够快、能力够全的完整方案。
Mano-P 全栈架构的设计哲学是分层解耦:
- 模型层专注 GUI 理解和操作规划,通过三阶段训练和 GSPruning 在精度和效率间取得平衡
- 加速层通过激活量化突破权重量化的速度天花板,为端侧实时交互提供保障
- 应用层将 Agent 能力封装为自动化工作流,让技术能力转化为实际生产力
三个项目均以 Apache 2.0 协议开源,欢迎在 GitHub 上查看源码、提交 Issue 或参与贡献:
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐
所有评论(0)