关于大语言模型的可靠性,学界与业界日益关注一个核心问题——知识冲突。简而言之,当模型固有的“记忆”与新获取的“信息”相互矛盾,或者其内部“知识”本身存在不一致时,模型会如何应对?是坚持原有认知,还是轻易被误导?又或者能做出理性的判断?
近期,由清华大学、西湖大学和香港中文大学研究者共同完成的综述论文《Knowledge Conflicts for LLMs: A Survey》系统梳理了这一议题。该综述不仅清晰划分了知识冲突的多种类型,还深入分析了其成因、模型行为表现及潜在解决路径。可以说,这份研究为我们理解大模型在复杂信息环境中的“权衡”与“抉择”提供了宝贵的地图。
一、知识冲突全景图:三种类型与一个核心
我们首先厘清核心概念。大语言模型的知识来源主要有两类:一类是固化在模型参数中的“参数化知识”(记忆),源自海量预训练数据;另一类是推理时临时输入或检索得到的“上下文知识”(语境),例如用户提问、对话历史或从网络获取的文档。
当这两类知识来源出现不一致时,问题便随之产生。论文将这种不一致归纳为三类知识冲突,如图1所示:

图1:三类知识冲突示意图。冲突可能发生在上下文与记忆之间(CM),不同上下文之间(IC),以及记忆内部(IM)。
- 上下文-记忆冲突:这是最直观的一类。例如,询问“现任法国总统是谁?”模型参数中存储的答案是“马克龙”,但提供的上下文却显示“是勒庞”。模型应当信任哪一方?
- 上下文间冲突:当模型同时参考多个外部文档时,这些文档本身可能相互矛盾。一份文档称某事件发生在春季,另一份则称在秋季,模型如何取舍?这在检索增强生成(RAG)场景中尤为常见。
- 内部记忆冲突:这是最为棘手的一类,矛盾源于模型自身。原因可能包括预训练数据本身就包含不一致的信息(例如不同来源对同一事实的描述存在差异),也可能因为知识编辑或模型解码的随机性,导致对同一问题的不同提问方式,模型给出截然不同的答案。
论文将知识冲突置于动态生命周期中审视(如图2)。它既是多种因素(如数据噪声、时间错位)导致的结果,也是引发模型不良行为(如幻觉、不一致)的直接原因。

图2:知识冲突连接了成因与模型行为,是理解和解决问题的关键枢纽。
二、深入冲突现场:原因、行为与对策
1. 上下文-记忆冲突:当新旧知识狭路相逢
这类冲突研究最为广泛,核心矛盾在于模型静态的“记忆”与动态变化的“现实”之间的错位。
两大主因:一是时间错位。使用旧数据训练的模型难以跟上新事件,这是自然衰减。二是错误信息污染。攻击者可能故意在检索文档或用户输入中注入虚假信息,诱导模型“学坏”。
模型表现如何? 研究结果并不统一,凸显了问题的复杂性。早期研究认为模型过于依赖自身记忆,忽视冲突上下文;但近期的发现恰恰相反——模型有时又会对连贯的、有说服力的外部证据过于“轻信”。更有趣的是,模型还表现出强烈的“确认偏误”,即偏爱那些符合自己已有认知的信息。面对冲突,让模型精准定位矛盾点并给出明确答案,目前仍是挑战。
解决之道:方案取决于我们希望模型“忠于”谁:
- 忠于上下文:适用于模型需严格遵循给定资料的场景。方法包括知识感知微调、上下文感知解码等,核心是放大上下文的影响权重。
- 忠于记忆:旨在提升模型对错误信息的“免疫力”。可通过提示工程让模型保持警惕,或训练专门的鉴别器来筛查可疑信息。
- 分离来源:不强行融合,而是让模型分别给出基于上下文和基于记忆的答案,把判断权交给用户。
- 追求事实性:终极目标,即整合所有可用信息产出最真实的答案。这需要更精巧的架构设计,例如利用对比解码来校准模型信心。
2. 上下文间冲突:信息洪流中的真相泥潭
在RAG技术日益普及的今天,模型经常需要消化大量来源各异、质量参差不齐的文档。它们之间的“打架”就是上下文间冲突。
两大根源:错误信息和过时信息。网络上充斥的假新闻或陈旧资料被检索进来后,便形成相互矛盾的证据。
模型表现如何? 研究发现,模型在这种混乱中往往表现不佳。它们容易受到错误信息攻击,而且偏好那些与自身记忆一致、与查询直接相关、甚至仅仅是出现频率更高的上下文。更棘手的是,它们识别矛盾的能力有限,尤其当冲突涉及主观观点时,准确率更是堪忧。
破局思路:一是专注于消除冲突,即直接检测并处理矛盾信息。可以训练专门模型,也可以为通用大模型配备事实核查工具链。二是设法提高模型鲁棒性,通过微调或查询增强等技术,让模型在冲突上下文中依然能做出相对可靠的判断。
3. 内部记忆冲突:自己与自己打架
这是最体现模型“内在矛盾”的一类。换种方式问同一个问题,它可能给出截然不同的答案,严重损害了可靠性和实用性。
三大罪魁祸首:
- 训练数据偏差:预训练语料本身质量不一、充满噪声甚至矛盾,模型全盘“吸收”后,内部知识自然一团乱麻。
- 解码策略:生成时的随机抽样会引入不确定性,导致输出波动。
- 知识编辑:后期修改模型知识时,如果编辑不一致或泛化性差,会在参数中制造新的冲突。
冲突如何体现? 最直接的就是自相矛盾。研究表明,即便是顶尖模型,在常识问题上也可能有百分之十几的不一致率。深层原因在于,知识在模型内部的表示是分散且分层的(浅层存句式,深层存语义),有时正确的知识虽然存在,却在生成时没有被正确激活。更有甚者,模型对不同语言版本的知识记忆也可能是割裂的,导致跨语言回答不一致。
治理之道:针对一致性,可通过设计一致性损失函数进行微调,或采用输出集成等后处理方法。针对事实性,则可探索像DoLa这样的对比解码方法,通过调整模型不同层之间的激活差异,来引导模型输出更真实、更确定的内容。
最后,论文将所有知识冲突的分类及相应解决方案总结于图3,并整理了相关评估数据集,为后续研究提供了清晰的框架和工具。
图3:知识冲突分类及解决方案全景图。涵盖了从预防到应对的各种策略。
表1:评估知识冲突下模型行为的代表性数据集。针对三种冲突类型,研究者们构建了不同的测试基准。
写在最后
知识冲突并非大模型的bug,而是其能力边界在复杂现实世界中的必然体现。这篇综述系统性地揭示了,大模型并非全知全能的知识宝库,而更像一个需要在相互矛盾的信息碎片中不断权衡、推理甚至“挣扎”的决策者。
从时间错位到数据污染,从幻觉到不一致,每一个冲突点都对应着一个亟待攻克的技术挑战。而论文中梳理的各类解决方案——无论是通过训练增强鲁棒性,还是通过解码策略引导输出,抑或是通过架构设计分离知识源——都为我们指明了值得深入探索的方向。
说到底,让大模型学会如何优雅地处理“不知道”和“不确定”,或许比一味追求“全知道”,更能让它们走向真正可靠与可信的智能。这篇综述,正是迈向这个目标的重要一步。
