📌 项目地址:FlashML-org/FreeToken | ⭐ 15,382 颗星 | 🔧 Python | 📜 未标注

FlashML-org/FreeToken 项目插图

本地跑大模型的都知道那个死结:模型越大,显存要求越高,一张 4090 的 24GB 装不下几百 B 的权重。FreeToken(15382 stars,Python)解这个结的方式不是压缩模型,而是重新分配活儿:GPU 显存装不下的部分放内存和 CPU 里,用的时候按需搬。

这条路对 MoE 模型特别划算。MoE 每次推理只激活一小部分专家,大部分权重躺在那不动。既然如此,活跃的专家放 GPU,不活跃的放 CPU 内存,FreeToken 就把 GPU、CPU、主机内存和总线带宽当成一个整体来调度。

真正值钱的四个设计

带宽自适应的 CPU-GPU 协同执行(q* 策略)。根据实际带宽动态决定专家权重跑在 CPU 还是 GPU 上。配套的全层双缓冲 prefill 流式处理和全局 LRU 专家缓存,都是为了减少权重搬运时的空等。

语义感知缓存。这是我认为最容易被低估的功能。跑过 coding agent 的人都遇到过:每次工具调用、每段思考块的变化都会改动上下文,传统做法下整段上下文要重新算。FreeToken 用“语义锚点检查点”,上下文被编辑时复用已算好的 KV 缓存,跳过重复的 prefill 计算。长会话 agent 场景里,这直接决定响应速度。

弹性内存管理。运行时可以在专家缓存和 KV 内存之间动态重新分配显存,不用重启引擎,也不用重新加载权重。

FTW 快速权重格式。一套为上述执行路径设计的模型格式。代价是模型需要转换,这点后面会说。

安装

最省事的路径是桌面应用:去 flashml.ai 下载 Windows 或 Linux 版本,自带 GUI。

命令行用户推荐用 uv:

uv pip install "freetoken[accel]"

或者从源码构建:

git clone https://github.com/FlashML-org/FreeToken.git && cd FreeToken
uv venv && source .venv/bin/activate
uv pip install -e ".[accel]"

README 没给安装后的启动命令,具体用法要看官方文档:docs/quickstart.md(快速上手)、docs/cli.md(命令参考)、docs/models.md(支持模型)、docs/install.md(安装细节)。

另外两份文档值得单独点名:docs/ftw-hotfix.md 讲怎么修复旧的 FTW checkpoint,scripts/checkpoint_diagnose/README.md 讲怎么诊断加载失败的 checkpoint。官方专门写这两份文档,说明 FTW 格式转换出问题、checkpoint 损坏在实际使用中真会遇到。模型加载失败时先跑诊断脚本,别急着怀疑显卡。

支持什么

模型:DeepSeek-V4-Flash、Qwen3.6-35B-A3B、GLM-5.2 等,量化格式覆盖 MXFP4、NVFP4、FP8、BF16。

API:兼容 OpenAI 和 Anthropic 协议,可以直接接 Codex、Claude Code、OpenCode、OpenClaw、DeepSeek Harness。也就是说,你平时用的 coding agent 换个 API 地址就能切到本地模型上。

硬件:原生支持 NVIDIA RTX 30、40、50 系列,从笔记本到工作站 GPU 都能跑。

和 llama.cpp、vLLM 怎么选

llama.cpp 和 ollama 通用性强,但面对 290B 级的 MoE,CPU-GPU 分工策略偏简单。vLLM 为数据中心多卡环境设计,单张消费级显卡跑这个规模的模型不在它的目标场景里。

FreeToken 卡的是“消费级硬件 + 前沿 MoE”这个缝隙:带宽自适应调度、全局专家缓存、语义锚点、运行时显存重分配,这些能力在通用框架里要么没有,要么不是重点。跑稠密模型选 llama.cpp,多卡服务器选 vLLM。

用之前想清楚这几件事

  1. 只支持 NVIDIA。RTX 30/40/50 之外,AMD、Intel 显卡和 Apple Silicon 都不行。
  2. FTW 格式有额外成本。模型要转换成 FTW 才能发挥完整性能,旧 checkpoint 还可能要修复,官方为此专门写了 hotfix 文档。
  3. 只支持 MoE 架构。想跑 Llama 这类稠密模型,FreeToken 帮不上忙。
  4. 许可证未确认。README 在 Citation 部分被截断,license 信息看不到,商用前自己到仓库确认。
这篇文章对你有帮助吗?

发表回复