首页 / 资讯中心 / 文章详情

思考慢到 13.4 秒?用 MTP 投机解码把 GEV 的 System 2 提速 1.8 倍

思考慢到 13.4 秒?用 MTP 投机解码把 GEV 的 System 2 提速 1.8 倍 ★ FEATURED ARTICLE
思考慢到 13.4 秒用 MTP 投机解码把 GEV 的 System 2 提速 1.8 倍【免费下载链接】GEV-26B-Decide项目地址: https://ai.gitcode.com/hf_mirrors/autotrust/GEV-26B-Decide当一个大模型「回答一个问题要等 13 秒」你会怎么想如果这不是一个普通的聊天模型而是一个被设计成「先直觉秒答、拿不准才深入思考」的双系统决策模型这个延迟就是它最大的软肋System 1 单次前向传播只要约 45 ms但一旦触发 System 2 深度思考10 个知识推理基准上的中位延迟直接飙到 13.4 秒90 分位更是达到 32.9 秒。AutoTrust AI 开源的 GEV-26B-Decide基于 Gemma-4-26B-A4B-it 的决策模型给出的答案是挂上一个 Google 官方的 MTP 草稿模型用投机解码speculative decoding把 System 2 的思考吞吐从 247 拉到 438 tokens/s中位延迟降到 7.7 秒——整体约 1.8 倍加速且输出分布完全不变。这篇文章带你从「13.4 秒是怎么来的」一路拆到「MTP1 一行环境变量怎么开」把提速的账算明白。为什么思考会成为延迟瓶颈GEV-26B-Decide 的「双系统」设计来自一个朴素观察不是所有决策都需要深度推理。于是它把决策拆成两档System 1把决策头做成lm_head的 LoRA一次前向传播就对每个选项输出校准概率单请求中位延迟约 45 ms64 并发下能到 257 decisions/sAdaptive thinkingthinking: autoSystem 1 置信度低于阈值默认 0.8时自动切换到 System 2——即未修改的 Gemma-4 思考模式做逐步推理再把推理结果按 p ½·p1 ½·p2 折回最终概率。这套机制在知识推理上效果显著Decision Index 0.2.1 的 Knowledge Reasoning 区域技能从 System 1 的 0.429 提升到自适应的 0.602整体 Decision Index 58.02 → 62.48在 1,754 题外部校验集上准确率从 73.3% 涨到 83.4%而只有 47.8% 的题真正触发思考。但代价是思考本身极慢。原因在仓库的 reports/adaptive_latency_summary.json 里写得很清楚在 Decision Index 的 10 个知识推理基准33,856 个请求上65.9% 的请求至少触发过一次思考而思考长度中位数因题而异——GPQA Diamond、HLE、ChessBench 直接顶满 8,192 token 的预算MMLU-Pro 约 5,361BBH 约 3,255。按单请求在空闲 B200 上「思考 ≈ 250 tokens/s」估算基准思考题占比思考 token 中位数预算打满占比无 MTP 中位延迟GPQA Diamond86.9%8,19265.7%≈ 32.9 sHLE87.9%8,19261.4%≈ 32.9 sChessBench87.6%8,19275.5%≈ 32.9 sMMLU-Pro78.4%5,36128.0%≈ 16.6 sBBH fixed-option59.7%3,2558.2%≈ 5.3 sGSM8K5.3%8897.9%≈ 0.04 s全部十项51.0%——中位 13.4 s / P90 32.9 s换句话说延迟瓶颈不在 System 1 的 45 ms而在 System 2 那动辄数千 token 的思考流。思考质量越高、推理越深等待越不可接受——这就是投机解码要解决的矛盾。MTP 投机解码让「草稿模型」预判一串 token投机解码的思路是让一个大模型和小模型合作小模型草稿模型先快速生成一串候选 token大模型目标模型一次前向验证整串——验证通过的地方白赚失败的地方才回退重来。因为解码瓶颈在于逐个 token 的串行前向传播投机解码把「串行生 token」变成了「一次验证一串」让每次前向传播的产出从 1 个 token 变成平均 N 个。GEV-26B-Decide 用的不是通用的小草稿模型而是 Google 为 Gemma-4-26B-A4B-it 专门配套的MTPMulti-Token Prediction草稿模型google/gemma-4-26B-A4B-it-assistant约 0.9 GB。它在训练时就以「预测未来多个 token」为监督目标天然适合给完整模型打草稿配合 vLLM 的--speculative-config一次性投机 4 个 tokennum_speculative_tokens: 4。在仓库的 serve.sh 中开关被收敛成一个环境变量MTP1 bash GEV-26B-Decide/serve.sh脚本内部做的事情等价于给serve_decide.py追加投机解码配置EXTRA(--speculative-config {model: google/gemma-4-26B-A4B-it-assistant, num_speculative_tokens: 4})整个服务仍然是「一个引擎、两套系统」System 2 走标准 OpenAI 端点System 1 走POST /v1/decideLoRA 模块jev-decision投机解码只加速 System 2 的思考生成不改变输出的概率分布——这是投机解码最重要的性质它让「加速」和「精度」解耦。实测1.8 倍加速的账是怎么算的仓库在 README 和 reports/adaptive_latency_summary.json 里给出了单卡 B200 上的完整实测单请求吞吐System 2 思考从 247 tokens/s 提升到438 tokens/s约 1.8–1.9×高并发吞吐128 并发下从 7,072 提升到13,505 tokens/s草稿接受率平均接受长度 3.5–3.7 / 4即投机 4 个 token多数时候能全部接受端到端延迟10 个知识推理基准的中位延迟从13.4 s 降到 7.7 s90 分位从 32.9 s 降到 18.8 s。落到每个基准上est_median_s估算值基准无 MTP 中位延迟开 MTP 中位延迟GPQA Diamond / HLE / ChessBench≈ 32.9 s≈ 18.8 sMMLU-Pro≈ 16.6 s≈ 9.5 sCLadder≈ 6.7 s≈ 3.9 sSATA-Bench≈ 15.2 s≈ 8.7 sMuSR≈ 5.4 s≈ 3.1 sBBH fixed-option≈ 5.3 s≈ 3.1 sGSM8K / CRUXEval≈ 0.04 s≈ 0.05 s注意 GSM8K、CRUXEval 这类「基本不用思考」的基准延迟反而略升因为投机解码自身有少量开销。所以 README 的建议很明确主要在思考场景下用 MTP。另一个副作用是System 1 决策在高并发下的吞吐会从 257 掉到 140 decisions/s64 并发因此如果业务以 System 1 即时决策为主就不必开这个开关。动手配置三件事一次说清1. 启动服务# 下载并启动默认不含投机解码 hf download autotrust/GEV-26B-Decide --local-dir GEV-26B-Decide bash GEV-26B-Decide/serve.sh # 开启 MTP 投机解码System 2 思考约 1.8–1.9× 加速 MTP1 bash GEV-26B-Decide/serve.shserve.sh默认还带了--max-logprobs 256和--logprobs-mode processed_logprobs——这两项是为投机解码下的答案读取路径准备的serve_decide.py的读取逻辑会优先用allowed_token_ids该路径兼容投机解码失败时才回退到logprob_token_ids这正是 README 提到的「6 个 BBH 18 选项问题」在旧读取路径下的兼容修复。2. 触发思考/v1/decidecurl localhost:8000/v1/decide -H Content-Type: application/json -d { kind: choice, state: A bat and a ball cost $1.10 in total. The bat costs $1.00 more than the ball., question: How much does the ball cost?, options: [$0.10, $0.05, $1.00, $0.55], thinking: auto}thinking: auto表示 System 1 置信度低于 0.8 时才思考响应中的thinking.think_tokens、thinking.think_seconds、thinking.finished_within_budget字段可以直接用来观测投机解码是否生效、思考是否在预算内完成。3. 按场景调参想进一步压延迟调低threshold减少触发思考的比例或调低think_budget限制思考 token 上限用精度换速度想完全不思考thinking: off每个决策都保持单次前向的 45 ms 级延迟场景属于分类/检索/工具路由BFCL、CLINC150、BANKING77 这类README 实测思考对这些任务增益极小甚至有害建议保持 System 1 直答。一点提醒加速不改变「思考该不该开」MTP 让 System 2 变快了但没有改变「思考的价值边界」。仓库的验证数据提醒我们思考对 GPQA Diamond42.9% → 78.6%、CRUXEval、CLadder、MMLU-Pro、BBH 是实打实的增益对 HLE 只是回到猜谜水平对 ChessBench 思考顶满 8,192 token 预算后答案反而没有提升截断的思考输出还更过度自信对 BANKING77 这类 System 1 训练过的任务未训练过的 System 2 甚至会用过度自信的错误答案推翻正确的 System 1macro-F1 88.0 → 85.0。threshold与mix是在 1,754 道外部题上拟合的reports/adaptive_validation_summary.json里能看到每个数据集的完整折线。所以 1.8 倍加速的真正价值不是让所有任务都「无脑思考」而是把「该思考的任务」从 13 秒拉到 7.7 秒——让 System 2 真正进入可用的实时决策循环而不是只活在批处理脚本里。对想要「直觉秒答、必要时深入思考」的决策模型用户来说MTP1是成本最低、且不改变模型输出分布的一步优化值得放进你的部署脚本。【免费下载链接】GEV-26B-Decide项目地址: https://ai.gitcode.com/hf_mirrors/autotrust/GEV-26B-Decide创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
阅读完成 · 觉得有帮助?
咨询建站