大模型后处理校准方法:RARR、CRITIC 与 PURR 解析
与大语言模型的检测(Detection)不同,校准(Calibration)将重心放在模型回答的后处理上。其核心思想是先不做判断直接使用模型生成回答,再调用工具对回答进行校验和修改。这种策略旨在通过外部知识或自我反思机制,减少模型幻觉(Hallucination),提高回答的事实准确性。
目前谷歌和微软等机构提出了多种方案,尽管具体实现细节和调用工具存在差异,但整体流程通常遵循:模型生成 -> 召回相关知识 -> 对生成结果进行校验和修复。
1. 指令微调方案
1.1 RARR: Researching and Revising What Language Models Say
基础方案由 RARR 论文提出,采用 Research-then-revise(研究后修订)框架。整个流程分为三个阶段:
Generation Stage(生成阶段)
首先让 LLM 直接生成问题回答 X。此阶段不进行任何约束,允许模型自由发挥,以保留原始意图。
Research Stage(研究阶段)
用于收集可以校验回答的事实性证据。针对生成的回答 X,使用 Few-shot Prompt 生成多个用于校验的搜索问题。每个问题分别进行网络搜索并召回 Top5 内容。
值得注意的是,该方案未直接使用搜索自带的 snippet,而是对网页内容进行分块(每 4 个句子一块),并使用 T5-Encoder 计算每个 chunk 和 query 的相似度,保留 Top-J 个内容块。最终得到一个 (Q1, chunk1), (Q1, chunk2), (Q2, chunk1)... 的(问题,事实)列表。
Revise Stage(修订阶段)
获取所有检索到的事实之后,进入校验阶段。论文遍历上述列表,针对每一个问题,先使用 Few-shot CoT 判断每个事实和模型回答 X 之间是否一致(Agreement Model)。
- 如果一致,则遍历下一个事实。
- 如果不一致,则使用 Few-shot Prompt 让大模型基于事实 + 问题对模型回答进行修改(Revision Model)。
在修改回答时,系统会先定位原始回答 X 中哪个 Span 和事实不符再进行修改,从而避免大幅修改原始回答导致语义偏离。
评估指标
后处理方案需要兼顾对模型原始回答的保留和事实性,RARR 提出了两个关键指标:
- Attribution Score(归因得分):给定所有事实,计算修改后回答 Y 中每个句子和所有事实的最大 NLI(自然语言推理)打分的平均值,即整体回答能获得事实性支撑的平均概率。
- Preservation Score(保留率):由回答原始意图的保留概率 * 前后答案的未改变率(编辑距离度量)得到。
局限性:RARR 最大的问题在于效率。一方面是大模型的推理效率,另一方面是最后的 Revise 部分采用了串行修改,耗时较长。
1.2 CRITIC: Large Language Models Can Self-Correct with Tool-Interactive Critiquing
另一篇论文 CRITIC 提出的 Verify-then-correct(验证后修正)和 RARR 非常相似,主要区别在于工具调用的灵活性。它在不同的任务上尝试使用了不同的外部工具进行校验:
- 在开放问答上使用搜索引擎。
- 在代码问题上使用代码解释器。
虽然未涉及动态的工具选择逻辑,只是在不同数据集上固定选用不同的工具,但其核心思路是通过交互式工具增强模型的自我纠错能力。
2. 微调优化方案
为了克服 RARR 的效率瓶颈,后续研究转向了微调方案,将大模型的能力蒸馏到小模型中。
2.1 PURR: Efficiently Editing Language Model Hallucinations by Denoising
PURR 针对 RARR 的效率问题进行了优化,核心思路是将最耗时的 Revise 部分使用 T5-large 模型来实现,Query 生成的部分也用 T5-large 来实现,并将串行修改的方案优化为所有事实进行一次性融合修改。


