纯浏览器跑 37GB Qwen MoE:专家权重从磁盘流式加载,输出对齐 llama.cpp
naklitechie · reddit · 2026-10-06
LocalMind 是一个纯静态网页(无服务器、无安装),通过 WebGPU 在浏览器标签页里跑本地模型。新版本实现生成时从磁盘流式读取 MoE 专家权重,让模型可以超过机器内存大小,且输出与 llama.cpp 逐 token 对齐。
实现方式:GGUF 首次加载进浏览器私有文件系统 OPFS;稠密权重、路由器和 KV cache 放 GPU,被路由的专家留在磁盘,由 worker 池按需同步读入 GPU 槽位缓存(LRU + 两层预取);trunk 内核是手写 WGSL,照 llama.cpp 计算图实现,便于逐 token 对拍。
实测数据(MacBook M4 Pro 24GB,Chrome):
- Gemma 4 26B-A4B(QAT Q40,14.4GB):9/9 组对话输出与 llama.cpp Metal 完全一致,15/16 新 prompt 逐 token 一致;解码 23.6 tok/s(llama.cpp 为 70.6,约慢 3 倍);GPU 进程仅占 6.9GB,8.6GB 专家留在磁盘。
- Qwen3.6 35B-A3B(Q80,36.9GB,超过机器内存):GPU 进程 7.3GB,解码 9.9 tok/s;逐 token 分析显示约 23ms GPU 计算、39ms 路由往返、35ms SSD 专家读取;把路由搬上 GPU 无增益(缺失的专家无法预测)。
- Gemma 4 E2B 的 1.2GB 逐层嵌入表也可留在磁盘:显存 4.27→2.07GB,输出不变,解码仅慢 3-8%。
整个应用仍是单个 index.html(brotli 后 854KB),磁盘层单独抽成了库 diskformer.js。作者检索后认为这是首个生成期间从磁盘读权重的浏览器引擎;限制是仅测过 Chrome/Edge + WebGPU 一台机器,且速度仍慢于原生。
「编程与Agent」频道最新
- 跑了几十小时端到端基准,Strata 推理服务器在完整构建任务上翻车 — julianharris · 2026-10-06
- SourceLearn 让智能体沉淀源级能力,15 项评测 13 项第一 — GeorgiaTech · 2026-10-06
- PSA 搜索代理写程序筛选候选,两基准成功率提升 4-7.6 个百分点 — _reachsumit · 2026-10-06
- SWE-Race 基准发布:188 个真实并发 bug,GPT-5.6 Luna 硬题仅 23% — heyitsdannyle · 2026-10-06
- SearchJev 论文:System-1 快速决策让搜索 Agent 提速 4 倍还更准 — _reachsumit · 2026-10-06
- Speck 把认知搬进运行时:qwen3:4b 跑赢裸跑 8B,速度快一倍 — Electronic-Space-736 · 2026-10-06