☰
iPhone 也能跑 35B 大模型?Edge0 端侧推理深度体验与五大平台横向对比
2026/10/5 0:59:11 网站建设 项目流程

iPhone 也能跑 35B 大模型?Edge0 端侧推理深度体验与五大平台横向对比

【免费下载链接】Edge0项目地址: https://gitcode.com/gh_mirrors/ed/Edge0

Edge0是一个开源的流式 MoE 推理框架,核心配方是「SSD 专家卸载 + Recover-LoRA + Prerouter 路由预测」,能把 35B 级别的混合专家(MoE)大模型完整跑在 iPhone、Mac、Android、Windows 等消费级设备上。这篇文章带你实测它的 iPhone 端侧推理 App,并横向对比 iOS、macOS、Android、Windows、Python 五大平台的性能表现。

一、为什么 35B MoE 能塞进手机?

传统认知里,35B 参数模型至少要几十 GB 显存。Edge0 的解法很巧妙:MoE 模型每个 token 只会激活一小部分专家,所以不必把全部权重装进内存——

  • SSD 专家卸载:专家权重以 4-bit 量化后放在磁盘上,按需流式加载进内存/GPU,峰值内存由「活跃专家集」决定,而不是总参数量;
  • Prerouter 路由预测:一个训练好的小型预测头提前一个 token 预判下一层要用哪些专家,让权重加载与生成过程并行,解码吞吐最高提升 59%;
  • Recover-LoRA:4-bit 基座冻结不动,用蒸馏训练的 LoRA 适配器找回大部分量化损失。

详细原理可以阅读 docs/streaming.md、docs/prerouter.md 和 docs/moe.md。

二、iPhone 端:Edge0 35B 实测体验

iOS 版 App(源码位于 ios/)是一个 SwiftUI 应用,推理核心为Edge0MLX(Swift + MLX Swift,计算走 Metal),检查点解析在Edge0Core模块,部署目标是 iOS 17+。

手机 App 的实际表现

模型设备Prefill首 token 延迟 (TTFT)Decode
8BiPhone 16 Pro (iOS 26.6.2)7.2 tok/s3.6 s10.9 tok/s
35BiPhone 16 Pro (iOS 26.6.2)4.9 tok/s2.1 s6.4 tok/s

几条值得注意的体验细节:

  • 35B 版本需要把原始检查点重打包:官方发布格式每个专家是「19 GB 大文件里的 9 次散读」,在 iPhone 上太慢,构建时用 ios/tools/repack_experts.py 重写成「每个专家一次顺序读 + 每层一个文件」,打包后约 20 GB;
  • 模型选择后才会加载,8B 与 35B不会同时驻留内存,切换模型即卸载上一个;
  • 每条回复下方直接显示 token 数、TTFT、prefill/decode 速率和峰值内存,数据透明;
  • 前缀缓存(Prefix Cache)存放在 Application Support 目录,源码见 ios/Sources/Edge0MLX/Edge035B/PrefixCache.swift。

6.4 tok/s 的解码速度意味着手机上「边想边打字」的体验已经成立——对于不需要实时交互的场景(写作、代码、问答)完全可用。

三、五大平台横向对比

Edge0 是「一套配方、五个运行时」:同一模型、同一套 LoRA + Prerouter 适配器,在不同平台各有一套原生引擎。以下是各平台的实测数据(数据取自各目录 README 的 Performance 章节):

平台参考设备35B Decode35B Prefill技术栈
📱iOSiPhone 16 Pro6.4 tok/s4.9 tok/sSwift + MLX Swift (Metal)
💻macOS (App)MacBook Air M310–12 tok/s70–130 tok/sRust + Tauri 2
🐧macOS (Python)Mac mini M4 Pro 24GB14.9–17.7 tok/s113/140 tok/sPython + MLX
🤖Android骁龙 8 Elite · 16GB6–9 tok/s(持续 9.46)首个增量轮次约 1 sKotlin + llama.cpp (NEON)
🪟Windowsi7-14700K + RX 9070 GRE约 27.7 tok/s约 70 tok/sC++ + Vulkan

(同机 8B 档参考:Android 约 10 t/s 稳态、Windows 约 44.8 t/s、iOS 约 10.9 t/s。)

几点横向观察:

  1. 桌面平台明显更快——Windows 版 35B 解码接近 28 tok/s,是 iPhone 的 4 倍多,得益于独立显卡(Vulkan)与更大内存带宽;
  2. 两个移动平台速度接近(6–9 tok/s),但工程路线完全不同:iOS 走 MLX/Metal 统一内存,Android 走纯 CPU + ARM-NEON 专家按需换页(12–16GB 内存即可跑 35B);
  3. 移动端有「冷池代价」:Android 版在全新话题的第一轮会冷启动专家池,TTFT 可达 10–15 s,之后热轮次降到 1.1 s 左右;
  4. 所有平台共用「峰值内存只算活跃专家」的设计,35B 在 Mac 上峰值活跃内存仅约2.9 GiB、iOS 上 4 GB 常驻。

各平台源码与构建指南:ios/README.md、macos/README.md、android/README.md、windows/README.md。

四、速度之外的关键:质量损失有多大?

端侧量化最大的顾虑是「变慢还能忍,变笨怎么办」。官方用 OpenCompass 对 int4 管线与 fp16 原模型做了同条件评测:

Benchmarkedge0-35b (int4)基座 fp16差距
AIME 202686.692.7-6.1
HumanEval90.995.1-4.2
GPQA-Diamond79.881.8-2.0
MMLU-Pro81.084.6-3.6
平均79.283.2-3.9

平均只掉 3.9 分(8B 档掉 2.8 分),MMLU-Pro 甚至超过部分基线——这正是 Recover-LoRA 的作用。评测细节见主 README.md 的 Quality 章节。

五、快速上手指南

  • 想体验 iOS 版:需要 Apple Silicon Mac + Xcode + iOS 17 以上的 iPhone(开启开发者模式)。按 ios/README.md 下载模型放入Models/目录,35B 额外执行一次repack_experts.py重打包,Xcode 里改好签名后 Run 即可;
  • Python 玩法(macOS):pip install -e '.[dev,fetch]'后一条命令起步,edge0 serve还提供 OpenAI 兼容的/v1/chat/completions接口,源码在 python/src/edge0/server/;
  • 进阶研究:整体架构见 docs/architecture.md,35B 模型规格(40 层 × 256 专家、Top-4、33 个 Prerouter 头)见 docs/models/edge0-35b.md。

六、总结:Edge0 适合谁?

  • ✅ 想在手机上离线跑大模型、看重隐私与无网可用;
  • ✅ 开发者想研究「SSD 流式 MoE 推理」这套方法论(框架、补丁集、各平台引擎全部开源,Apache-2.0);
  • ✅ 需要 OpenAI 兼容 API 自托管端侧模型的团队。

它的取舍也很明确:移动端解码速度在 6–12 tok/s 量级,换来的是隐私、离线、无需服务器;桌面端(尤其 Windows + 独显)体验则接近可用的流畅度。项目规划中 2026 Q4 还将发布统一推理框架,一套 API 自动适配五大平台——这是端侧大模型领域少见的、把「系统工程」做到底子的开源项目。

【免费下载链接】Edge0项目地址: https://gitcode.com/gh_mirrors/ed/Edge0

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询