提示缓存,但用于 RL 训练——在长提示/短回复负载上实现 7.5 倍加速
摘要
一种面向开源 RL 训练引擎的全新优化技术在训练过程中引入了提示缓存,通过减少冗余计算,在长提示、短回复负载场景下实现了高达 7.5 倍的加速。
大多数开源 RL 引擎采用朴素的方式打包序列:提示 + 回复,对组内的每个样本都重复此操作。这对于短提示、长补全负载尚可,但对于长提示、短补全负载则效率低下。当 G=8 时,若提示为 1000 token,回复为 100 token,你实际上处理了 8800 个 token,而其中只有 1800 个是唯一的。大约浪费了 5 倍的计算量。
修复方案在概念上很简单:只计算一次提示,然后在其后计算所有 G 个回复。这类似于推理阶段的前缀缓存,不同的是训练需要梯度回传通过提示部分,而在直观的实现中这会破坏因果注意力机制。要正确实现这一点,针对全注意力层和线性注意力层需要不同的技巧。你可以在评论中的博客文章里了解更多详情。
Qwen3.5-4B 上的数据:
- 16k 提示 / 64 输出 → 7.5x
- 16k / 128 → 7.3x
- 16k / 1k → 5.4x
- 8k / 4k → 1.7x
相似文章
API 中的提示词缓存
OpenAI 推出提示词缓存功能,这是一项自动特性,通过在 GPT-4o、GPT-4o mini、o1-preview 和 o1-mini 模型上重用最近缓存的输入令牌,可将 API 成本降低 50% 并改善延迟。该功能会自动应用于超过 1,024 个令牌的提示词,无需开发者进行集成更改。
使用 Prime-RL 后训练构建快速准确的智能体(22 分钟阅读)
Ramp 介绍了一项案例研究,利用强化学习后训练构建了 Fast Ask,这是一种专门的电子表格检索智能体,与通用模型相比,它提高了准确性并降低了延迟。
@LakshyAAAgrawal: 从丰富的文本反馈(错误、轨迹、部分推理)中学习,对于LLM优化来说,优于仅使用标量奖励。…
快速-慢速训练(FST)将上下文优化(通过GEPA)与通过强化学习进行的模型权重更新交替进行,在数学、代码和物理推理上实现了比单独使用RL高3倍的样本效率,同时保持了可塑性并实现了持续学习。
大幅提升 --n-cpu-moe 部分卸载模型的提示词处理速度
本文分享了一个 llama.cpp 的性能优化技巧,展示了增大微批大小(`-ub`)并结合部分 CPU 卸载(`--n-cpu-moe`)可以显著提升 gpt-oss-120b 等大型模型在消费级 GPU 上的提示词处理速度。
自监督提示优化
本文提出了一种名为自监督提示优化(SPO)的框架,该框架通过输出对比来优化大语言模型的提示词,无需外部参考,显著降低了成本和数据需求。