SGLang团队发了一篇很详细的他们如何适配kimi k3的文章,里面有大量的可视化图表。可以当做k3的架构解读。|
blog内容包括:
🌟为可原地修改的 KDA 循环状态重新设计前缀缓存,通过写时复制、快照和状态转交,在避免竞态的同时实现状态复用;同时提出统一内存池,让固定大小的 KDA 状态和随 token 增长的 MLA KV 缓存动态共享显存。
🌟接入 DSpark 投机解码,并根据预测置信度与实际硬件成本,动态裁剪不值得验证的候选 token;ReplaySSM 不保存每一步的完整状态,而是保存轻量原始输入并在确认后重放,使草稿窗口的相关内存下降约 32 倍。
🌟通过算子融合、通信融合和关键路径优化,把单请求、投机解码前的生成速度提升到约 113 token/s;加入 DSpark 后达到约 423 token/s。
🌟针对预填充和解码采用不同并行策略:预填充使用分块流水线并行,解码使用按 token 位置切分 KV 缓存的 DCP。在测试中,DCP8 将逻辑 KV 容量从约 150 万 token 提升到 1220 万 token;结合预填充/解码分离后,某些吞吐配置达到每 GPU 2,808 token/s。
🌟Miles 支持直接在原生 MXFP4 权重上进行 LoRA 强化学习,只同步 BF16 LoRA 适配器。在一次 64 张 GB300、持续 12 小时的数学训练实验中,AIME 2024 的贪心评测成绩由 43.3% 提升至 76.7%,同时训练端与推理端的分布差异保持稳定。