Kimi K3‑in‑C:2.78万亿参数大模型,仅8GB内存就能在CPU上跑
一、大模型部署的固有逻辑被打破 很多人一直有一个固化认知:参数量越大的大模型,就必须要更大显存、更高配置硬件才能运行。想要跑通万亿参数级模型,就得组建 GPU 集群,普通笔记本、消费级 CPU 根本没有机会接触前沿大模型。 这个开源项目 kimi‑k3‑in‑C 直接推翻这套固有逻辑。完整 Kimi K3 模型磁盘权重文件达到 1.56TB,总参数量 2.78 万亿,原生支持接近 100 万 token 上下文窗口,属于当前第一梯队 MoE 稀疏大模型。但这套 C 语言编写的推理引擎,在普通 CPU 环境下,峰值内存占用仅仅 8.24GB。 项目采用可移植 C99 标准开发,编译之后程序本体大小仅 176KB,核心思路不再要求把全部模型权重加载进内存,而是直接从硬盘流式读取模型数据。 项目现状:完全开源免费开放,项目发布之后受到技术圈广泛关注。 这一突破价值非常直观:过去普通开发者想调试万亿参数大模型,硬件门槛直接把绝大多数人挡在门外。现在普通消费级硬件就可以完成架构验证、路由逻辑调试、正确性测试。但我们也要理性看待,它不等于可以直接拿来做流畅对话,实际生成速度依旧存在短板。 这就引出一个值得所有人思考的问题:评判大模型部署能力,到底要看磁盘总参数量,还是实际运行时的内存工作集? 过去行业几乎全部盯着显存总量做文章,拼命量化压缩权重、多卡分片部署。而这个项目告诉我们,对于 MoE 稀疏模型,磁盘模型大小和运行实际占用内存,完全可以相差上千倍。 二、核心拆解:技术原理与实操部署步骤 2.1 Kimi K3 模型基础架构 Kimi K3 属于原生支持智能 Agent 能力的多模态 MoE 混合专家模型。 总参数:2.78T 每个 token 实际激活参数:104B 网络层数:93 层,其中 69 层 KDA 层,24 层门控 MLA 层 每一层 MoE 专家池 896 个专家,每一次运算只选中 16 个专家,附带 2 个共享专家 隐藏维度 7168,原生上下文窗口 1048576 token 专家权重原生 MXFP4 格式存储 稠密大模型每一轮运算,需要加载全部权重矩阵。但是稀疏 MoE 模型只需要可以访问全部专家,仅读取被路由选中的一小部分专家权重。 “可访问” 和 “常驻内存”,就是整套方案最核心的突破口。 推理引擎把 1.56TB 模型文件划分成三类: 路由专家库约 1.45TB:存放在 NVMe 硬盘,按需读取,不用常驻内存 稠密主干网络约 108.8GB:根据机器内存大小,尽可能多驻留,剩余部分流式读取 极小常驻状态:词嵌入、循环状态、临时计算空间 内存不再是 “能跑或者不能跑” 的硬性门槛,而是一个可调旋钮。内存越大,驻留的主干网络越多,重复读取硬盘的数据越少,推理延迟越低;内存越小,硬盘读取次数增加,生成速度变慢,但是模型输出结果不会发生改变。 这套推理引擎运行逻辑,和数据库系统高度相似: 路由模块等价查询规划器 系统内存等价缓冲池 NVMe 固态硬盘等价底层存储 预加载机制等价预测 IO 模型架构直接决定缓存命中效率 项目也实测发现:传统 LRU 缓存对于这套模型收益很低。K3 使用分位数均衡算法,专家调用分布十分平均,不存在高频热点专家。把有限内存分配给稠密主干网络,远比拿来做专家缓存效果更好。同时引擎直接读取 MXFP4 压缩权重做矩阵运算,不在内存中解压放大,避免带来巨大带宽开销。 在注意力机制层面,KDA 层采用循环状态,状态大小不会跟随上下文长度膨胀,解决长会话 Agent 越跑越吃内存的痛点。当前限制是提示词上限 32768 token,分块预填充功能还在开发计划中。 2.2 实操部署流程 运行前提:仅支持 Linux x86‑64 平台,CPU 必须支持 AVX2、FMA 指令集,GCC9 以上或者 Clang10 以上编译器 优先测试引擎正确性,不需要下载 1.56TB 完整权重文件,项目自带小型测试张量图,可以验证内核、路由、解码逻辑正确性。 git clone kimi-k3-in-ccd kimi-k3-in-cmake -jmake test 测试全部通过之后,可以查看内置硬件预设方案,不同预设对应不同内存分配策略 ./bin/k3 --list-presets 预设 主干内存 专家缓存 峰值内存占用 laptop 笔记本 3GB 1GB 约 8.2GB desktop 台式机 16GB 10GB 约 31.9GB workstation 工作站 60GB 30GB 约 95.5GB server 服务器 110GB 13GB 约 128GB 执行环境检测脚本,工具会自动评估硬件给出推荐预设 ./scripts/k3-doctor.sh 设置 HuggingFace 读取令牌,下载模型、打包