Chain-of-Verification — 验证链
Chain-of-Verification (CoVe) 是一种旨在减少大型语言模型(LLM)中“幻觉”(即生成事实不正确但看似合理的回答)的方法[1]。该方法由 Meta AI 的 Shehzaad Dhuliawala 领导的研究团队开发,并在其 2023 年的论文《Chain-of-Verification Reduces Hallucination in Large Language Models》中提出,属于 LLM 的自验证(self-verification)或自修正方法类别[2]。CoVe 的核心思想是,模型在不借助外部信息源的情况下,对生成的答案进行分步验证[2]。这促使系统在向用户呈现答案之前,花费更多“理性的”努力进行自我审视和纠正错误[2]。
背景:语言模型中的幻觉
大型语言模型(LLM)常常会产生“幻觉”现象——即生成看似合理但实际上不正确的答案[3]。这个问题在自然语言处理(NLP)领域被广泛认为是一个尚未解决的难题:即使是先进的模型也可能非常自信地提供虚假信息,从而误导用户[1]。例如,模型可能会令人信服地“编造”一个不存在的事实,或混淆某位名人的生平细节。由于这类事实性错误在没有详细核查的情况下难以发现,研究人员正积极开发各种方法来减少 LLM 回答中的幻觉。
CoVe 方法的步骤
Chain-of-Verification 方法通过以下四个连续步骤实现[2][2]:
- 生成基准回答。模型在没有特殊指令的情况下,对原始查询生成一个初步回答(基准回答假说)[3]。这个草稿作为起点,可能包含幻觉,有待后续步骤发现和纠正。
- 规划验证问题。基于原始问题和生成的回答,模型会制定一个验证性问题列表,用于核实基准回答中各项声明的事实准确性[3]。这些验证问题(verification questions)针对回答中的关键事实,旨在发现潜在的错误或不准确之处。
- 执行验证。接着,模型会逐个、独立地回答每一个验证问题,并尽量不依赖于最初的回答,以避免偏见[3]。将这些问题的答案与基准回答进行比较,以发现矛盾或错误,从而识别出基准回答中未经事实支持的部分。
- 生成最终回答。最后,模型根据发现的差异生成一个修正后的最终回答[3]。这个回答会结合验证结果进行调整,从而提高事实准确性,并减少产生幻觉的可能性。
这些步骤中的每一步都是通过向同一个 LLM 发出带有不同指令的附加提示来完成的[2]。也就是说,模型依次扮演了回答者、验证者(提出问题并回答问题)和最终输出的编辑者这几个角色。
验证的实现方式
该方法的作者们尝试了多种实现验证步骤的模式,这些模式在提出和回答验证问题的方式上有所不同[2]:
- 联合方法 (Joint)。模型在单次提示中同时生成验证问题和相应的答案。这种方式不太理想,因为模型在立即回答时可能会产生幻觉,并因认知偏差而重复基准回答中的错误[3]。
- 两步法 (2-Step)。先通过一个独立的提示生成验证问题,然后在下一个提示中让模型回答这些问题[3]。将步骤分开有助于在生成问题时避免受到基准回答的影响。
- 分解验证 (Factored)。模型逐一回答每个验证问题,每个问题使用一次独立的提示[3]。这种方法可以防止模型简单地复制粘贴基准回答中的片段,因为对验证问题的回答是独立生成的,从而降低了重复原始幻觉的风险。其缺点是计算成本增加,因为提示的数量与问题的数量成正比。
- 分解验证加修正 (Factored + Revise)。在获得所有验证问题的答案后,模型会执行一个额外的比较和修正步骤。它通过一个单独的提示,将获得的事实与基准回答进行对比,并明确指出不一致之处,然后生成包含修正内容的最终回答[3]。这个额外的步骤促使系统更仔细地分析差异,并将修正后的信息整合到最终结论中。
实验结果
Chain-of-Verification 方法在一系列对事实准确性要求较高的任务上进行了测试[1]。测试任务包括:基于知识库(如 Wikidata 列表和维基百科分类)的事实列举问题、需要从文本不同部分提取多个答案的问题(MultiSpanQA),以及长文本生成任务(如撰写传记)[1]。
结果显示,与未使用自验证的基准模型相比,采用 CoVe 的模型在所有类型的任务上都实现了幻觉的显著减少[1]。 “分解验证加修正”(factored + revise)方案——即分解验证并进行最终事实核对——被证明最为有效。该方法在准确性上表现最佳:例如,在传记生成任务中,将 CoVe 应用于 LLaMA-65B 模型(一个拥有 650 亿参数的 LLM)后,其事实性评分指标 FactScore 从约 63.7 分提高到约 71.4 分[2]。FactScore 的提升表明,最终的回答包含了更多经过验证的事实和更少的虚构信息。
更重要的是,集成了验证链的 LLM 甚至能够超越一些功能更强大或经过特殊优化的系统。例如,应用了 CoVe 的 LLaMA-65B 在 FactScore 上的表现优于 ChatGPT(OpenAI 的模型),并且超过了 Perplexity.ai——一个通过互联网搜索来为回答提供事实支持的模型[2]。这一点值得注意,因为 Perplexity.ai 依赖外部信源进行信息检索,而 CoVe 仅依靠模型自身的推理和自验证能力就实现了质量提升[2]。诚然,在处理极为罕见的、需要特定知识的事实时,像 Perplexity.ai 这样的检索增强系统仍然具有优势,但在大多数问题上,CoVe 提供了更准确的回答[2]。
局限性与展望
值得注意的是,尽管 Chain-of-Verification 显著减少了幻觉的发生率,但该方法并不能完全消除幻觉。如果验证问题未能覆盖到某个错误的细节,或者 LLM 本身不知道正确的事实,模型仍然可能出错。此外,CoVe 增加了计算负担:处理单个用户请求需要对模型进行多次 последовательных调用(生成回答、生成问题、回答问题、最终整合),而常规模型只需一步即可作答[2]。尽管如此,研究者指出,就总成本而言,CoVe 与其他多步幻觉检测方法的成本相当,因此仍不失为一个实用的解决方案[2]。
在论文中,Meta AI 的研究人员指出了改进该方法的几个可能方向。一个显而易见的方向是将 CoVe 与外部工具相结合,例如,在验证阶段接入互联网搜索模块或知识库[2]。这将有助于从外部获取可靠信息,从而更稳健地证实或证伪基准回答中的事实。因此,Chain-of-Verification 是迈向更负责任、更精确的 AI 系统的关键一步。它证明了通过促使模型批判性地审视自身回答,可以显著提升其输出质量,并减少生成文本中虚假信息的传播[2]。
链接
- 《Chain-of-Verification Reduces Hallucination in Large Language Models》论文原文(arXiv)
- 《Chain-of-Verification Reduces Hallucination in Large Language Models》论文(ACL Anthology)
- Chain of Verification (CoVe) — 理解与实现 — Medium 文章
参考文献
- Dhuliawala, S. et al. (2023). Chain-of-Verification Reduces Hallucination in Large Language Models. arXiv:2309.11495.
- Manakul, P. et al. (2023). SelfCheckGPT: Zero-Resource Black-Box Hallucination Detection for Generative Large Language Models. arXiv:2303.08896.
- Yang, B. et al. (2025). Hallucination Detection in Large Language Models with Metamorphic Relations. arXiv:2502.15844.
- Liang, X. et al. (2024). Internal Consistency and Self-Feedback in Large Language Models: A Survey. arXiv:2407.14507.
- Lightman, H. et al. (2023). Let’s Verify Step by Step. arXiv:2305.20050.
- Ling, Z. et al. (2023). Deductive Verification of Chain-of-Thought Reasoning. arXiv:2306.03872.
- Lyu, Q. et al. (2023). Faithful Chain-of-Thought Reasoning. arXiv:2301.13379.
- Madaan, A. et al. (2023). Self-Refine: Iterative Refinement with Self-Feedback. arXiv:2303.17651.
- Wei, J. et al. (2022). Chain-of-Thought Prompting Elicits Reasoning in Large Language Models. arXiv:2201.11903.
- Wang, X. et al. (2022). Self-Consistency Improves Chain of Thought Reasoning in Language Models. arXiv:2203.11171.
- Yao, S. et al. (2023). Tree of Thoughts: Deliberate Problem Solving with Large Language Models. arXiv:2305.10601.
注释
- ↑ 1.0 1.1 1.2 1.3 1.4 Dhuliawala, Shehzaad et al. «Chain-of-Verification Reduces Hallucination in Large Language Models». arXiv. [1]
- ↑ 2.00 2.01 2.02 2.03 2.04 2.05 2.06 2.07 2.08 2.09 2.10 2.11 2.12 2.13 2.14 Dhuliawala, Shehzaad et al. «Chain-of-Verification Reduces Hallucination in Large Language Models». ACL Anthology. [2]
- ↑ 3.0 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 chowdhury, sourajit roy. «Chain of Verification (CoVe) — Understanding & Implementation». Medium. [3]