LLM-42:用验证式推测执行保证 LLM 推理确定性(SOSP 2026)

原题:LLM-42: Enabling Determinism in LLM Inference with Verified Speculation

一句话总结:动态批处理改变 GPU 归约顺序,同一提示可能因浮点非结合性输出不同。LLM-42 先以普通高吞吐解码产生候选,再用固定形状归约验证并回滚不一致 token,只对要求确定性的流量付验证成本;10% 确定性流量时 ShareGPT 吞吐比 SGLang 确定模式高约 33%(§4–§5)。

问题与动机

同一个模型、提示和采样参数下,系统层面仍可能出现不同输出:动态 batch 大小会让 GEMM、attention、归一化选不同的 GPU reduction schedule,浮点非结合性把微小数值差异放大到 token 选择(§1–§2)。这妨碍测试复现、调试和 RL 训练反馈。直接使用 batch-invariant kernel 可以保证确定性,但需要维护特殊内核,并让所有请求付固定吞吐代价,即使多数请求不要求确定性。

这里保证的是给定模型、硬件和固定采样超参数下的系统可复现性。改变温度、top-k/top-p、权重或随机种子不在同一个输出保证中(§1 注释)。论文也没有声称“零开销确定性”;其系统以较少吞吐损失换取可选择的确定性。

关键观察 / 隐含假设

  • 已一致的前缀通常会继续一致:即使动态 batch 改变部分算子的归约次序,多数候选 token 与固定形状重算结果相同。因此先快跑再核验可能比全程固定形状更省(§3、图 4)。这依赖所测模型和批次下回滚率较低;长提示 ArXiv 负载的回滚明显更多。
  • 固定验证形状可充当确定性的裁判:把多条请求的候选 token 汇总成固定大小的验证批次,使用稳定 reduction schedule;通过的前缀可提交,首次不匹配处必须回滚重算(§4.2–§4.3)。
  • 确定性需求是混合流量:服务端能区分哪些请求需要可复现输出,从而只验证这些请求;如果 100% 请求都需要确定性,优势会缩小(§4.1、§5)。

核心方法

LLM-42 将前填充与解码分开。前填充采用确定性执行安排,为请求建立一致的初始状态;解码阶段仍使用常规动态批处理及现有高效 kernel,先产出一个候选窗口(§4.1)。随后验证器按固定 token 形状重新计算需要确定性的候选,比较是否与稳定轨迹一致。匹配部分提交;首次不匹配时丢弃此后的候选、回滚对应 KV 状态并从已提交前缀继续(§4.2、图 8)。非确定性请求走普通快路径。

验证过大窗口可以摊薄核验启动成本,却会在某个不匹配发生时浪费更多候选计算。论文用分组验证:例如合计 256 token 的批次由多条请求的小窗口组成,仍保持固定验证形状,但避免单条请求一次生成 256 token 后大面积回滚(§4.3)。这也改善在线服务的 P99。验证与回滚是调度协议层的改造,并非为每个 GPU 算子重写 batch-invariant 版本。

该方法与通常的 speculative decoding 有共同的“候选—核验”形式,但目的不同:它用同一个模型快速生成候选,再证明输出与确定性路径一致;不是用小草稿模型预测大模型输出(§4.2)。

设计取舍

  • 常规 kernel 复用换核验和回滚成本:回滚率随提示长度与 batch 形态变化,ArXiv 长提示的代价远高于 ShareGPT。
  • 选择性确定性换混合服务复杂度:验证期间论文实现会暂停其他在途请求;确定性流量高时非确定性请求也受干扰(§5、局限)。
  • 前填充与解码不同归约策略:系统不满足 prefill-decode invariant,当前不能安全共享跨请求 prefix cache;论文也未集成现成 speculative decoding(§5、局限)。

实验与结果

  • 平台与基线:基于 SGLang 0.5.3rc0、Llama-3.1-8B-Instruct 和四张 H100 PCIe 80GB,比较 SGLang 非确定模式、SGLang batch-invariant 确定模式与 LLM-42;数据包括合成提示、ShareGPT 和长提示 ArXiv。确定性请求比例从 2% 到 100%(§5)。
  • 离线吞吐:对 4096 请求一组,SGLang 确定模式比非确定模式慢 24–36%;10% 确定性流量时 LLM-42 在 ShareGPT 比确定模式快约 33%,合成负载最高 48%,ArXiv 最高 41%。100% 确定性时并非总赢:ShareGPT 比确定基线慢约 6%(§5.1、图 9)。
  • 回滚分布:4096 个请求、100% 确定性时,ArXiv 有 3351 次回滚、额外重算 token 占 10.97%;ShareGPT 只有 96 次、0.32%。这直接解释两种负载收益不同,不能把低回滚当通用规律(§5.1、表 2)。
  • 在线延迟:ShareGPT、12 QPS 时,确定基线端到端 P50/P99 为 4.64/28 秒,非确定基线为 2.15/13.2 秒;18 QPS 时分别为 10.6/71.1 与 2.84/17.4 秒。LLM-42 的具体延迟随确定性比例变化;18 QPS、100% 确定性时其 TTFT P90 为 101.2 ms,确定基线为 171.6 ms(§5.2、图 11、表 5)。
  • 验证窗口消融:跨 4–16 条请求合计验证约 256 token 时 P99 约 34–35 秒;单请求大窗口易回滚,过小窗口核验频繁,两端都劣于分组方案(§5.3、图 12)。

论断—证据表

论断证据评测边界置信度
选择性确定性可节省吞吐损失10% 确定性时 ShareGPT 吞吐 +33% 对确定基线(§5.1)四张 H100,Llama-3.1-8B强(该配置)
收益依赖低回滚ShareGPT 0.32% vs ArXiv 10.97% 重算 token(§5.1、表 2)4096 请求,100% 确定性强
100% 确定性不保证吞吐占优ShareGPT 约慢 6%(§5.1)同平台与基线强(负结果)
分组核验改善尾延迟最佳约 256 token 分组,P99 34–35 秒(§5.3)ShareGPT 在线负载中

批判性分析

论证链条

论文没有假设快路径天然确定,而用固定形状重算验证,因此正确性逻辑比“观察到大多相同”更强。吞吐证据说明选择性服务的价值,同时表 2 揭示它高度依赖回滚率;ShareGPT 的 6% 负结果划出全确定性流量的边界。原先“完全不牺牲吞吐”的简介并不准确。

假设压力测试

长上下文、更多模型类型或不同 GPU kernel 可能增加候选不一致,导致重算吞吐和尾延迟上升。若服务大量共享前缀,失去 prefix cache 的机会成本可能超过核验节省。采样 RNG 状态和模型版本必须与核验协议一致,不能把“固定随机种子”当作完整系统确定性证明。

实验可信度

有确定与非确定两类 SGLang 基线、不同确定性比例和回滚账本,能同时看收益与成本。不过硬件限于四张 H100、一个 8B 模型,跨机张量并行、MoE、长上下文服务和混合 prefill/decode 调度未形成同等强度验证。

系统性缺陷

验证全局暂停在途请求、前填充不合批、缺少 prefix cache 共享与现有 speculative decoding 组合,都是论文实现明确的限制(§5、局限)。在线多租户环境中,这些限制可能比平均吞吐更影响隔离与 P99。

局限与后续工作

  • 在跨机 TP、MoE、prefix cache 高复用负载下比较系统总吞吐与确定性/非确定性请求各自的 P99。
  • 将核验拆成不阻塞其他请求的后台路径,并测高回滚率时的资源隔离。

相关