大数跨境

FreeToken开源:8GB显卡跑35B MoE模型,速度39 tokens/s, 真的要本地自由了吗

FreeToken开源:8GB显卡跑35B MoE模型,速度39 tokens/s, 真的要本地自由了吗 AI工程化
2026-08-23
1

UC Berkeley开源了FreeToken,一个专门为MoE模型设计的本地推理引擎。官方称其本地推理速度比Ollama快2-4倍。

性能数据:

  • Qwen3.6-35B:8GB GPU,39.3 tokens/s
  • DeepSeek-V4-Flash 284B:32GB GPU,22 tokens/s
  • GLM-5.2 753B:96GB GPU,14.9 tokens/s

一个35B模型,16位精度下光权重就要约70GB,4位量化也要接近18GB。FreeToken却让它跑在了8GB显存的机器上。它选择绕开显存限制:权重放在系统内存,GPU只保留最近用过的专家缓存。

这里的关键是MoE。这类模型每一层有几百个专家,一个小路由器给每个token选几个。Qwen3.6-35B每token实际激活约3B参数;DeepSeek-V4-Flash每层从256个专家里选6个,同时运行约13B。计算量从来不是瓶颈——单个step碰到的权重能轻松放进消费级GPU。

但路由器可能选中的每个专家,还是得存在某个地方。FreeToken把它们放在系统内存里。问题变成:当路由器选中的专家不在GPU上时,怎么办?

两种选择:通过PCIe拷到GPU上算,或者直接在CPU上算——反正专家已经在内存里。两条路读的是同一块系统内存,共享同一个带宽池。现有推理引擎在模型加载时固定选一条路,但路由每个token都在变,固定策略会漏掉大部分请求。

FreeToken先在你的机器上实测两种带宽,然后按比例把每个step的miss分给两条路。GPU和CPU的计算结果精确合并,没有近似。同一块GPU在不同机器上可能得出完全相反的调度策略:RTX 5090在游戏台式机上应该几乎全部走PCIe;8GB笔记本则更适合在CPU上算大部分miss。这些从规格表上读不出来,所以引擎每台机器只profile一次。

GPU的算力增长远快于内存带宽,单token生成时每个权重只被读一次,算术强度接近1 ops/byte,而当前GPU的平衡点在300左右。所以生成速度几乎完全由内存带宽决定。FreeToken的思路就是绕开显存容量限制,把系统内存变成权重仓库,再按需调度。

后半部分设计跟agent有关。编码agent不断重写自己的历史,每次编辑通常迫使几千个token重新过一遍prefill。FreeToken在agent框架的切分点保存checkpoint,只重算新增部分。其最慢首token不到44秒,而llama.cpp峰值232秒,KTransformers 946秒。它还提供OpenAI和Anthropic兼容API,Claude Code和Codex可以直接指向它。

发布后社区有争议。有网友贴出自己的实测:Qwen3.6 35B UO-Q2_K_XL,RTX 5060 8GB + 32GB DDR5,llama.cpp能跑到34.9 t/s,认为FreeToken的39.3不算突破。但FreeToken的价值在于CPU和GPU的统一调度,以及agent场景的增量prefill。也有网友担心首token延迟:8GB GPU上MoE offload通常会在prefill阶段吃回性能。

开放权重只决定谁能下载模型,不决定谁跑得起。现在有超过一亿台带独显的消费机器大部分时间闲置。FreeToken没造新硬件,只是把已有的东西用对了。

项目以Apache 2.0开源,代码在 GitHub (https://github.com/FlashML-org/FreeToken),论文在 arXiv (https://arxiv.org/pdf/2608.16157)。

关注公众号回复“进群”入群讨论


【声明】内容源于网络
0
0
AI工程化
专注于AI领域(大模型、MLOPS/LLMOPS 、AI应用开发、AI infra)前沿产品技术信息和实践经验分享。
内容 633
粉丝 0
AI工程化 专注于AI领域(大模型、MLOPS/LLMOPS 、AI应用开发、AI infra)前沿产品技术信息和实践经验分享。
总阅读4.3k
粉丝0
内容633