推理与部署工具
spec-decode:从零实现 GPT-2 投机解码与 KV 缓存的性能实测项目
AryenP/spec-decode · Speculative decoding and a KV cache written from scratch on GPT-2, measured on an M2 Pro and an RTX 4090: up to 2.69x over a KV cache, fp32 output byte-identical
ELI5:它是什么,解决什么问题
该项目在 GPT-2 上从零实现前向计算、逐行回滚的 KV 缓存以及投机解码生成器,仅使用 HuggingFace 加载权重和分词器。项目在 M2 Pro 和 RTX 4090 上对比了全量重算、KV 缓存、带草稿模型的投机解码与无草稿模型的 prompt lookup 方法,记录吞吐数据、批处理表现、采样与 bf16 精度下的差异,并保留测试与完整实验配置。
核心能力与快速开始
★ 0 · Python
- 能做什么
- 从零实现 GPT-2 前向计算与支持逐行回滚的 KV 缓存;实现无缓存、KV 缓存、投机解码、批量投机解码和 prompt lookup 等多种生成函数;提供基准脚本测量不同设备、γ 值、批次大小和精度下的吞吐;附带与 transformers 的 logits 对比、缓存一致性、贪心输出等价性和采样正确性测试。
- 适用场景
- 研究或学习投机解码与 KV 缓存实现细节;在单张 RTX 4090 或 M2 Pro 上复现不同解码策略的吞吐对比;评估草稿模型、prompt lookup、批处理、温度和 bf16 对投机解码收益的影响。
- 项目形态
- 研究实现
- 部署方式
- 未说明;需按 README 使用 uv 本地运行脚本与基准。
- 主要依赖
- 未说明;README 提到使用 PyTorch,测试约两分钟并在 CPU 上运行,基准在 M2 Pro(MPS)和 RTX 4090(CUDA)上执行。
- 使用限制
- 未说明许可证之外的使用限制;实测结果局限于 GPT-2 系列模型和特定硬件,批处理超过 B=2 后投机解码收益低于 KV 缓存,bf16 输出不保证与单 token 解码逐字节一致,温度 0.8 时收益明显下降。
- 许可证
- MIT
- 最近推送
- 2026-11-03 08:38
资料检查:2026-11-04 07:00 · 卡片整理:2026-11-04 07:00
卡片由 AI 根据仓库资料整理,未进行安装或运行验证
职业应用
程序员
用于学习和研究 LLM 推理优化:项目从零实现 GPT-2 前向计算、逐行回滚的 KV 缓存、投机解码与 prompt lookup 生成器,并提供吞吐基准脚本与测试,程序员可据此理解并对比全量重算、KV 缓存和投机解码的性能差异。
查看内容依据
The forward pass, the KV cache with per-row rollback, and the decoders are in `specdecode/`, about 600 lines.
由 AI 根据来源材料整理,未进行安装或运行验证
讨论 0
登录后参与讨论,阅读资讯无需注册。
还没有评论,来分享第一个看法。