引入关键令牌搜索(PTS):在大型语言模型训练中定位关键决策点
社区文章 发布于2025年5月17日
概述
今天我很高兴发布 关键令牌搜索 (PTS),这是一种用于识别和优化语言模型生成中关键决策点的新技术。受 微软最近的 Phi-4 论文 的启发,PTS 有助于识别那些显著改变成功生成概率的特定“关键令牌”。
问题
传统的直接偏好优化 (DPO) 在从偏好学习时平等对待所有令牌。然而,在许多复杂的推理任务中,生成的成功往往取决于少数几个关键决策。例如,在解决数学问题时,选择“交叉相乘”而不是“两边同时乘以”可能会显著影响模型是否能得出正确答案,即使两种方法在数学上都是有效的。
PTS 的工作原理
PTS 使用二分搜索算法来识别导致生成成功概率显著变化的令牌
- 对于给定的提示和完成,我们估算生成过程中不同点的 P(成功|前缀)
- 我们递归地细分序列,以找到添加单个令牌会导致该概率发生巨大变化的节点
- 然后,我们专门针对这些关键令牌创建偏好对
这种有针对性的方法比标准 DPO 具有多项优势
- 通过关注关键决策,学习信号更有效
- 更好地处理首选/拒绝响应都包含有效推理的情况
- 无需额外数据即可增强推理能力
发布资源
实现
我们的 GitHub 仓库 包含
- PTS 算法的完整实现
- 数据生成管道
- 评估工具和指标
- 使用示例
数据集
我们正在发布多个针对不同领域的 PTS 生成数据集
pts
: 使用 PTS 发现的关键令牌pts-dpo-pairs
: 使用关键令牌导出的可用于 DPO 的偏好对pts-steering-vectors
: 从关键令牌导出的激活向量,可用于推理过程中的引导
模型
请尝试我们的 使用 PTS 优化过的微调模型
- 使用 PTS 偏好对微调的基础模型
- 针对 DeepSeek-R1 和 Qwen3 的专用模型
用例示例
在微调模型以解决数学问题时,传统方法可能会提供一个完整的正确解决方案作为偏好示例。而使用 PTS,我们可以识别出关键决策在于选择分解二次方程而不是配方。通过仅针对该关键令牌创建偏好对,我们提供了更清晰的学习信号。
未来方向
我们正在积极探索
- 多令牌关键序列
- 应用于代理轨迹优化
- 使用 PTS 进行模型可解释性
- 将 PTS 与其他对齐技术相结合
参与其中
我们欢迎社区贡献!在您自己的任务中尝试 PTS,试验我们的数据集,或为代码库做出贡献。
- 📦 GitHub: https://github.com/codelion/pts
- 📊 数据集: https://huggingface.co/datasets?other=pts
- 🤖 模型: https://huggingface.co/models?other=pts
如果您有任何问题或反馈,请在评论中告诉我!