详解 Kimi K3 技术报告
赛博浮世绘 · 晓风乾 · 20 站拆解
回首页
详解 Kimi K3 深度与宽度 4.3 · Quantile Balancing
篇章四 · 4.3

Quantile Balancing · 负载均衡

选谁和占多少,分开

896 个专家最怕扎堆:热门的挤爆、冷门的闲置、GPU 互相等。QB 的精妙在于偏置只动选谁、不动权重。

偏置只走上路(选谁),不影响下路(权重)
路由打分 Score + 偏置(分位数) → Top-k 选谁 偏置只走这条路 原始 Score → 占多少权重 这条路不受偏置影响 加权输出 选谁 × 权重
选谁变了,但每个被选专家占多大比重没变——模型判断不被破坏。

扎堆为什么是问题。 模型容易反复选少数热门专家,由此产生三个连锁问题:热门专家收到大量 token,拖慢整轮训练;冷门专家几乎没有 token,训练不充分;不同 GPU 分到的专家不同,工作量不均,整轮都在等最慢那张卡。

偏置怎么算。 QB 给每个专家维护一个偏置值,用分位数动态算。被选太多的热门专家,偏置往负走,抬高它进 Top-k 的门槛;被选太少的冷门专家,偏置往正走,降低门槛。门槛高了就少被选、低了就多被选,形成一个自动反馈:越热门越难选、越冷门越容易选,token 流向被动态拉向均衡。

为什么只影响选择不影响权重。 关键在于:偏置只加在"选谁"那一步的分数上。选专家时把原始分数加上偏置再排序取 Top-k——偏置改变了排序,于是改变了谁被选中。但一旦专家被选中,最后混合各专家输出时,用的是没有偏置的原始 Score。所以选谁变了,但每个被选专家占多大比重没变,模型本来的判断不被破坏。

未启用 QB · 热门扎堆 8 个专家的 token 分配
点上面按钮亲手切换
分位数是什么
不是固定阈值,而是看当前所有专家的负载分布,按分位数(比如 75% 分位)动态确定偏置——分布变了偏置就跟着变,自动适应。