一篇题为《Faster prompt lookup drafting in llama.cpp》的技术文章在开发者博客发布,讨论如何在 llama.cpp 中进一步加速"prompt lookup drafting"(提示查找式草稿)这一推理优化路径。原文地址:https://jadidbourbaki.github.io/blog/prompt-lookup-llama-cpp/
大模型自回归推理的瓶颈在于逐 token 串行生成。推测解码(speculative decoding)的思路是先用低成本方式产出若干候选 token,再让目标模型一次性并行验证;若验证通过,就能在一次前向中接受多个 token,从而降低端到端延迟。
prompt lookup drafting 是推测解码的一种轻量变体,特点是不引入独立的草稿模型,而是直接从当前上下文中查找与已生成后缀匹配的文本片段,把片段中紧随其后的 token 作为草稿候选。由于这些 token 原本就出现在提示词、对话历史或检索文档里,被目标模型接受的先验概率相对较高,因此在代码补全、AI 词典:检索增强生成">检索增强生成、长文档改写与摘要等"已有文本被大量复用"的场景中更容易发挥作用。
对 llama.cpp 这类以本地部署为目标的推理项目而言,这条路径的吸引力在于不增加模型权重,显存与内存开销小,并且能与既有的采样、批处理流程共存,无需额外的模型加载与调度逻辑。
此次文章关注的正是"在此基础上还能怎么更快"。其具体实现思路、对比设置与结论,需以原文为准。
