长文本(Long-context)大模型的性能,在很大程度上取决于它是否能够全面理解长上下文场景中的复杂信息。
目前,合成有监督微调(SFT)数据因缺乏人工审核,常常会影响长文本大模型的性能,使得SFT模型存在诸如产生幻觉和未能充分利用上下文信息等固有缺陷。
尽管强化学习通过适当的奖励信号已被证实能够有效减少SFT模型的这些问题,使其更符合人类偏好,但在长上下文场景下如何获取可靠的奖励信号,仍然是一个尚未解决的问题。
为此,我们提出了一种名为LongReward的新方法,该方法利用现有的大型语言模型(LLM)从四个维度(帮助性、逻辑性、忠实性和完整性)为长文本模型的回复打分,并结合强化学习来进一步提升模型性能,从而有效改善SFT模型的表现。
论文链接:https://arxiv.org/abs/2410.21252
GitHub 地址:https://github.com/THUDM/LongReward
Hugging Face:https://huggingface.co/datasets/THUDM/LongReward-10k
LongReward不仅能够显著提升模型处理长文本的能力,还能增强它们遵循简短指令的效率。此外,应用了LongReward的长文本DPO可以与传统的短文本DPO同时使用,而不会对两者的性能产生负面影响。
LongReward 通过奖励信号解决了 SFT 在长文本模型中因缺少人类标注而导致的数据质量问题。
具体而言,我们利用一个现有的高性能 LLM 作为评分工具,基于“帮助性”、“逻辑性”、“真实性”和“完整性”四个维度对模型的生成进行评分。这些维度覆盖了模型输出的各个关键方面,确保在长文本情境下对生成内容进行全面评估。
图|LongReward 图示
LongReward 利用一个现有的大模型(M_judge,该研究中使用的 GLM-4)从四个人类重视的价值维度——有用性、逻辑性、忠实性和完整性——为长文本模型的回复提供奖励。每个维度的评分范围是 0 到 10,最终奖励是这些分数的平均值。
1.帮助性(Helpfulness)
-
评估模型回复是否与问题相关,是否提供了有用的信息,是否满足了用户的需求和要求。
-
由于帮助性主要依赖于问题和回复内容,基本与上下文无关,我们让 M_judge 通过少样本学习和思维链 (CoT) 对问题和回答进行评分。
2.逻辑性(Logicality)
-
评估模型回复的不同部分是否逻辑一致,观点是否一致,推理和计算是否正确,是否存在自相矛盾。
-
与帮助性类似,我们让 M_judge 通过少样本学习和思维链(CoT)对回答进行评分,找出可能的逻辑错误。
3.忠实性(Faithfulness)
-
评估模型回答中事实信息的比例是否与上下文一致。
-
要求 M_judge 首先将回答分解为事实性陈述,再判断每个陈述是否由最相关的上下文支持。
-
为了适应长上下文场景,将回答分解为句子级别的事实性陈述,并忽略不含事实信息的功能性句子。
4.完整性(Completeness)
-
评估模型回答是否涵盖了上下文中与问题相关的所有关键点,是否提供了足够的信息和细节来满足用户的需求。
-
首先将上下文分解为粗粒度的块,并让 M_judge 从每个块中提取与问题相关的信息。
-
然后将所有提取的相关信息拼接起来,再利用 M_judge 评估模型回复的完整性,即是否涵盖了所有重要信息。
在评分机制基础上,LongReward 与离线强化学习(RL)算法 DPO 结合,形成一个完整的 RL 框架。DPO 的目标是通过偏好数据集优化模型输出,使其更符合偏好要求。
具体来说,通过多次采样长文本 SFT 模型的回答并使用 LongReward 给每个回答打分,我们可以自动构建 DPO 所需的偏好数据集。
实验表明,LongReward 不仅显著提高了模型的长文本性能,还增强了它们遵循简短指令的能力。在 Llama-3.1-8B 和 GLM-4-9B 模型上进行的实验显示,使用 LongReward 的 DPO 模型在长文本任务上的性能分别比 SFT 模型提高了 4.9% 和 5.5%,超过了所有基线方法。
图|使用 GPT-4o 对长文本基准进行自动评估的结果。
图|以 GPT-4o-mini 为评判标准,随机抽取了 260 道来自 LongBench-Chat 和 LongBench 的问题,得出 SFT 和 dLongReward+DPO 版本的事实分数。
图|在一组 464 个人工标注的长文本偏好对中,将不同评分方法与人类偏好进行比对,其中的提问和回答分别来自 LongBench-Chat 和 Llama-3.1-8B 的 SFT 检查点。
此外,人类评估进一步验证了 LongReward 与人类偏好的良好一致性,并从所有维度(即有用性、逻辑性、忠实性和完整性)帮助改善了长文本模型,比 SFT 基线高出 46%。
图|LongReward+DPO 版本的 Llama-3.1-8B 在 LongBench Chat 上与 SFT 基线对比的人工评估结果。
同时,我们发现 LongReward 也有助于模型的简短指令遵循能力,并且可以很好地融入标准的短文本 DPO 中,共同提升长文本和短文本性能。
图|不同模型在短文本指令跟随 benchmarks 上的表现。
图|使用不同偏好数据集的 DPO 模型性能。
当然,这一研究也存在一定的局限性,主要包括以下三点:
首先,LongReward 的评估依赖于高精度、对齐良好的 LLM 模型(如 GLM-4),并且每个 QA 实例需要花费数十次 API 调用。未来,还需要尝试训练更小的长文本奖励模型,从而实现更快、更便宜的奖励计算。
此外,由于计算资源有限,该研究只在最大训练长度为 64k 的 10B 级模型上进行,限制了对更大规模模型和长序列的探索。
最后,从数据角度来看,该研究主要关注用户密集型的长上下文场景,如长文档 QA 和总结。未来可以尝试将 LongReard 推广到其他更高级的长指令任务,如终身对话和长历史 agent 任务,也是一个很有前景的方向。