跳转到内容

投机解码为什么能一次输出多个 Token?会不会改变答案质量?

投机解码先用便宜的方法提出多个候选 Token,再让目标模型一次验证。接受的前缀可以一起输出;遇到拒绝点,按算法修正,再继续下一轮。它减少目标模型串行生成的轮数,不是跳过目标模型检查。

草稿可以来自小模型、辅助预测头或其他方法。目标模型已拿到候选序列,因此能并行计算这些位置的条件概率;单独生成时,下一位置要等前一位置选出来。

当前已确认前缀草稿提出多个候选目标模型一次计算验证概率候选能接受到哪里?接受合法前缀拒绝处按算法修正丢弃后续草稿更新已确认前缀

候选经常被拒绝,草稿和验证就成了额外工作。候选长度太长,也可能让验证更贵。看接受 Token 数、草稿耗时、目标模型耗时,以及当前并发下的吞吐和延迟。

目标模型在低并发时受权重搬运限制,投机解码可能有收益;高并发已充分利用计算时,额外验证未必更划算。固定一个“草稿长度最优值”不能套到所有负载。

无损投机解码,意味着输出文本完全一样吗?

Section titled “无损投机解码,意味着输出文本完全一样吗?”

严格按接受与修正算法实现时,可以保持目标模型的采样分布。分布一致不等于每次随机抽样都得到同一串文本。近似方法、数值精度和实现差异也要单独验证。

DeepSeek 的 MTP 就等于投机解码吗?

Section titled “DeepSeek 的 MTP 就等于投机解码吗?”

MTP 是多 Token 预测机制,可用其预测模块提出草稿,参与投机解码;草稿提出与目标模型验证仍是不同职责。不能因为模型能预测多个位置,就把预测直接当成最终输出。

资料

核对于 2026-10-13。DeepSeek-V3 MTP 与推理、投机解码原始论文、vLLM 投机解码说明。收益需要在目标负载实测。