跳转至

Canoe: Teaching LLMs to Maintain Contextual Faithfulness via Synthetic Tasks and RL

会议: AAAI 2026 arXiv: 2505.16483 代码: GitHub 领域: LLM Alignment 关键词: 上下文忠实度, 强化学习, 合成数据, GRPO, 幻觉抑制

一句话总结

提出 Canoe 框架,通过从 Wikidata 三元组合成四类可验证的短形式 QA 数据,配合 Dual-GRPO(含准确率奖励、长形式代理奖励和格式奖励)同时优化短/长形式生成的忠实度,使 Llama-3-8B 在 11 个下游任务上平均提升 22.6%,超越 GPT-4o。

研究背景与动机

  1. 领域现状:LLM 在基于上下文的信息检索系统中被广泛使用(如文档 QA、文本摘要),但经常生成与输入上下文不一致的回答(忠实度幻觉),破坏可信度。
  2. 现有痛点:(a) 忠实度不随规模提升——更大的模型有更多参数化知识,反而更容易与提供的上下文产生知识冲突,忽视上下文;(b) 现有方法特定于任务——如 Context-DPO 改善短形式 QA 但无法泛化到摘要等任务;(c) 长形式忠实度数据难以标注——短形式 QA 有标准答案可验证,但长形式生成的忠实度无法通过规则验证,人工标注不可扩展。
  3. 核心矛盾:短形式数据容易验证但无法直接训练长形式忠实度;直接用短形式数据和 GRPO 会导致模型学到"从上下文复制文本片段"的捷径,丧失长形式生成能力。
  4. 切入角度:设计代理奖励——用短形式答案的正确性间接评估长形式回答的忠实度(如果长形式回答能引导模型正确回答短形式问题,说明它是忠实的)。
  5. 核心 idea:合成可验证的短形式 QA 数据(4 类多样性任务)+ Dual-GRPO(三种规则奖励同时优化短/长形式生成),无需人工标注即可跨 11 个任务提升忠实度。

方法详解

整体框架

两大组成部分:(1) 从 Wikidata 知识库合成训练数据(10K 对);(2) Dual-GRPO 规则奖励 RL 训练。

关键设计

  1. 合成数据生成(4 类 QA 任务)
  2. 数据来源:30K Wikidata 头-关系-尾三元组 \((h, r, t)\),用 GPT-4o 生成上下文和问题,尾实体 \(t\) 作为答案保证正确性
  3. 直接上下文:上下文明确包含答案,测试信息定位能力
  4. 推理上下文:构造 2-4 跳子图路径,需要多步推理
  5. 不一致上下文:混合多个无关上下文,需要过滤噪声聚焦相关信息
  6. 反事实上下文:用相似但不正确的实体替换答案,迫使模型依赖上下文而非参数化知识
  7. 设计动机:4 类任务涵盖不同类型的忠实度挑战,确保训练数据的复杂性和多样性

  8. Dual-GRPO(核心训练方法)

  9. 做什么:在 GRPO 中同时优化短形式和长形式响应的生成
  10. 系统提示设计:要求模型按顺序输出推理过程 → 长形式答案(详细句子)→ 短形式答案(几个词),然后对两种输出分别计算奖励
  11. 三种规则奖励
    • 准确率奖励(短形式):短形式答案与真实答案的精确匹配(EM),1 或 0
    • 代理奖励(长形式,核心创新):用生成的长形式答案 \(y_{lf}\) 替代原始上下文,重新让 LLM 回答短形式问题——如果还能答对,说明长形式回答是忠实且完整的,得分 1;否则 0
    • 格式奖励:检查输出是否符合 <think>/<long_answer>/<short_answer> 结构
  12. 最终奖励 = 三种奖励之和
  13. 设计动机:代理奖励巧妙地将"长形式忠实度"这个难以直接评估的问题转化为可验证的短形式正确性问题——如果长形式回答能"教会"模型得到正确答案,那它一定忠实且可理解

  14. 为什么不直接用短形式数据训练

  15. 早期实验发现:仅用短形式 QA 数据 + 准确率奖励训练,模型会学到"从上下文复制文本段"的捷径,在短形式任务上高分但完全丧失长形式生成能力
  16. Dual-GRPO 通过同时优化两种形式避免了这个过拟合问题

实验关键数据

主实验(11 个下游任务)

模型 短形式EM平均 短形式Acc平均 长形式平均 总平均
Llama-3-8B (vanilla) 49.2 58.3 ~44 47.7
Context-DPO-8B 66.3 72.9 ~54 59.8
SCOPEsum-8B 35.7 64.6 ~59 63.3
Canoe-Llama-8B 73.5 80.9 ~65 70.3
GPT-4o - - - 58.8
OpenAI o1 - - - ~62

消融实验

配置 短形式EM 长形式质量 说明
Full Canoe (Dual-GRPO) 67.7 完整模型
仅准确率奖励(原始 GRPO) 60.5 23.5% QualityScore 出现"文本复制"捷径
去掉反事实上下文 62.6 - -5.1pp
去掉推理上下文 63.7 - -4.0pp
去掉不一致上下文 64.4 - -3.3pp

关键发现

  • 7B 模型超越 GPT-4o:Canoe-Llama-8B 平均 70.3 vs GPT-4o 58.8,Qwen-2.5-7B + Canoe 达 68.0,也超过 GPT-4o——证明针对性 RL 训练比单纯增大模型规模更有效
  • Dual-GRPO 是防止退化的关键:没有代理奖励时,模型学到从上下文复制文本的捷径,长形式质量仅 23.5%;加上代理奖励后长形式质量显著恢复
  • 4 类合成数据缺一不可:反事实上下文贡献最大(-5.1pp),因为它最直接地迫使模型依赖上下文而非参数化知识
  • 多跳推理能力显著提升:ConFiQA 上 EM 从 49.2 提升到 73.5(+24.3),推理类上下文的训练效果尤为突出
  • 过度自信被缓解:Canoe 对不忠实样本产生更高的困惑度(更低的置信度),表明模型学会了在不确定时"犹豫"

亮点与洞察

  • 代理奖励的设计是本文最精彩的贡献——将"长形式回答是否忠实"这个开放性、难以规则验证的问题,巧妙地转化为"用长形式回答替代上下文后能否引导正确的短形式回答"这个可验证的问题。这个思路可以推广到其他难以直接评估但可以间接验证的场景
  • 完全不依赖人工标注和奖励模型——合成数据来自知识库(保证正确性),所有奖励都是规则化的。这使得方法极易复现和迁移到新领域,前提是有结构化知识库可用

局限性 / 可改进方向

  • 合成数据依赖结构化知识库(Wikidata),对于没有结构化 KB 的领域(如文学、法律)难以直接应用
  • 代理奖励的假设有局限——"能引导正确短形式答案 = 忠实"不一定总成立,长形式回答可能恰好包含正确信息但整体不忠实
  • 仅在英语上实验,多语言场景的效果未知
  • 训练成本未详细报告(GRPO 需要每个输入生成多个候选)
  • 反事实上下文的实体替换质量依赖于 GPT-4o 的能力

相关工作与启发

  • vs Context-DPO:用 DPO 对齐短形式忠实度,但无法改善长形式。Canoe 通过 Dual-GRPO 的代理奖励同时优化两者
  • vs RLHF/DPO:传统需要人工标注偏好数据或训练奖励模型。Canoe 完全用规则奖励,更轻量可扩展
  • vs Self-RAG:Self-RAG 通过自反思标签改善忠实度,但需要特定标签训练数据。Canoe 更通用且在 11 个任务上一致有效
  • vs SCOPEsum:专注于摘要任务的忠实度提升,Canoe 在短形式和长形式任务上都有效

评分

  • 新颖性: ⭐⭐⭐⭐⭐ Dual-GRPO 的代理奖励设计极为巧妙,解决了长形式忠实度难以规则评估的核心难题
  • 实验充分度: ⭐⭐⭐⭐⭐ 11 个下游任务、多个基座模型、详细消融和各任务类型的贡献分析
  • 写作质量: ⭐⭐⭐⭐ 方法动机推导清晰,代理奖励的设计理由充分
  • 价值: ⭐⭐⭐⭐⭐ 7B 模型超越 GPT-4o 是重大实证结论,对开源社区意义重大