你手里有一张 8GB 显存的 RTX 4060 笔记本,却想跑 35B 参数的 MoE 模型——按传统做法,模型权重大部分放在内存里,GPU 每次要用某个专家时再从 PCIe 总线拉过来,结果生成一个 token 要卡顿好几秒。FreeToken 这个新开源推理引擎想改变这件事:它不再把 GPU 当作唯一计算核心,而是让 CPU 和 GPU 像两个配合的工人一样,根据实时带宽动态分工,把 PCIe 传输和计算重叠起来。

先解释一下 MoE(混合专家模型,一种把网络拆成多个“专家”子网络、每个 token 只激活其中一小部分的大模型架构)。虽然 MoE 总参数可以做到几千亿,但每个 token 实际参与计算的参数很少,理论上推理成本应该很低。然而解码(逐字生成输出)时,路由机制需要在海量未激活的专家权重中做选择,这些权重不能全放显存。数据中心里有 NVLink(NVIDIA 的高速 GPU 互联总线,带宽可达数百 GB/s)掩盖传输开销,消费级硬件上只有 PCIe(连接 CPU 和 GPU 的标准总线,带宽通常 16–64 GB/s)和普通内存,延迟高、带宽低,于是“专家卸载”成了瓶颈。

现有的边缘推理运行时大多采用静态专家卸载:把不活跃的权重放在系统内存里,等 GPU 要用某个专家时再同步流式传输过去。一旦缓存未命中,GPU 就完全停下来等数据,生成速度惨不忍睹。

Python, Numba, and Algorithm Design: Building Efficient Models in Financial Serv
Python, Numba, and Algorithm Design: Building Efficient Models in Financial Serv

FreeToken 的做法是把它变成一个动态协同调度问题,论文里称为 q* 策略。核心思路是:GPU 等数据的时候别闲着,让 CPU 核也参与计算。系统根据实时 PCIe 吞吐量,把每个 token 的计算拆分给 CPU 和 GPU 的张量核,两边同时干活。配合一种快速权重格式 FTW(一种针对传输优化的权重存储格式)和全层双缓冲(在传输下一层权重的同时计算当前层),权重流式传输和计算层完全重叠。另外还有一个弹性内存管理器,能在运行时动态调整显存分配,在 KV cache(大模型推理时缓存中间计算结果的机制,让回答更快)和驻留专家槽之间按需切换,不需要重新加载模型。

From DVDs to Global Streaming: How Netflix’s Commerce Architecture Actuall
From DVDs to Global Streaming: How Netflix’s Commerce Architecture Actuall

更妙的是对 Agent 场景的优化。现代编码助手和自主智能体(能自己调用工具、修改代码的 AI 程序)有独特的执行模式:频繁修改提示词、插入工具调用结果、切换思考块,导致上下文窗口不断变化。标准推理引擎在前缀一变时就丢弃线性 KV cache,只能从头重新计算整个序列。FreeToken 引入了语义锚点检查点:在逻辑任务边界缓存中间注意力状态和循环激活。当智能体编辑了中间工具参数或注入外部执行输出时,它复用已有的子序列状态,而不是全部作废。

Architecting the Data Layer for AI Agents: From Transactional Systems to MCP and
Architecting the Data Layer for AI Agents: From Transactional Systems to MCP and

整体架构可以看作一个“带宽自适应”的调度器,它把主机内存、显存、CPU 算力、GPU 算力统一成一个异构计算池。

Rightsizing Platform Engineering: Building the Platform Your Organization Actual
Rightsizing Platform Engineering: Building the Platform Your Organization Actual

和生态里其他引擎对比,差异很明显:

Can Claude Fix Itself? Using LLMs for Incident Response
Can Claude Fix Itself? Using LLMs for Incident Response

- Ollama 和 llama.cpp:为 GGUF 量化(一种把模型压缩到更小、适合消费级硬件的格式)和逐层卸载优化,但缺乏对稀疏专家在 CPU/GPU 间动态负载拆分的能力。FreeToken 在同等 MoE 模型上解码速度快 3–4 倍,预填充(处理输入提示词的阶段)快 6–30 倍。

论文基准测试显示,FreeToken 在 8GB 显存的 RTX 4060 笔记本上跑 Qwen3.6-35B 达到约 39 tokens/秒;在 RTX 5090 桌面机上服务 DeepSeek-V4-Flash(284B 参数);在单个工作站 GPU 上处理 GLM-5.2(753B 参数)。CLI 和桌面客户端已经通过 FlashML.ai 和 GitHub 发布,支持 NVIDIA RTX 30/40/50 系列,Linux 和 Windows 都能用。

社区反应很有意思。Hacker News 和 Reddit 的 LocalLLaMA 论坛都在讨论“本地硬件主权”:用二手 RTX 3090/4080 配普通 DDR4/DDR5 内存,就能自托管前沿级推理智能体,不再付云 API 费用。但也有技术质疑:q* 的闭式最优解是否真的反映真实世界的 CPU 调度延迟、内存争用,以及并发 Agent 负载下专家驻留的变化?基准对比是否公平?这些争论本身说明,异构边缘编排已经从一个边缘话题变成主流关注点。

这个思路能直接用在哪?如果你在做本地推理、边缘部署,或者想用消费级硬件跑大模型,FreeToken 的动态协同调度和语义锚点缓存值得研究。要注意的坑:目前只支持 NVIDIA RTX 30/40/50 系列;实际性能高度依赖 CPU 算力和内存带宽,理论最优不等于实际最优,最好在自己的硬件上跑一遍基准测试。对于想逃离 API 锁定、把 Agent 迭代成本降到零的团队,这可能是下一个基础设施级别的转折点。

阅读原文 → 返回 AI 技术文档

内容与图片版权归原作者所有 · 原文: https://www.infoq.com/news/2026/08/freetoken-local-inference/?utm_campaign=infoq_content&utm_source=infoq&utm_medium=feed&utm_term=global