你告诉一个模型:“Uriah Hawthorne 是《Abyssal Melodies》的作曲者。”训练完再问它:“《Abyssal Melodies》是谁作曲的?”它可能答不上来。

这听起来反常。人类读一句话,通常会顺手把关系翻过来存一份。但一篇 arXiv 论文把这个问题挑明了:自回归大语言模型学会“A is B”,不代表它能自动回答“B is A”。作者把这种失败叫 Reversal Curse,反向诅咒。

这篇论文真正说了什么

论文来自 arXiv:2309.12288,题为《The Reversal Curse: LLMs trained on “A is B” fail to learn “B is A”》。它不是说大模型完全不会逻辑推理,也不是说模型永远不能反向回答。

它说的是一件更窄、也更要命的事:写进参数里的知识,可能带方向。

项目论文里的发现边界
核心定义训练中出现“A 是 B”,不代表模型能自动回答“B 是 A”说的是参数化知识的反向泛化
实验对象微调 GPT-3 和 Llama-1 学习虚构事实不是所有模型、所有任务的总评
典型例子学会“某人是某作品作者”,仍答不出“某作品是谁写的”正向会,不等于反向会
真实问答GPT-4 回答“Tom Cruise 的母亲是谁”正确率 79%;反向“Mary Lee Pfeiffer 的儿子是谁”正确率 33%这是该实验集上的对比
例外情况如果“A 是 B”直接出现在上下文里,模型可现场推出反向关系in-context 推理和参数记忆要分开看

最扎眼的是那个 79% 对 33%。同一段现实关系,换个提问方向,表现直接塌一截。

这不是幻觉。幻觉更像“没有也编”。反向诅咒更像“仓库里有货,但货架只从一个门能进去”。

被戳破的是“懂了”的幻觉

我更在意的不是模型答错了几题,而是它暴露了训练目标的价格。

自回归模型的基本任务,是根据前文预测下一个 token。这个目标很强,强到能压出语法、风格、事实片段、推理表象。但它并不天然要求模型把一个关系整理成可查询、可翻转、可组合的知识图谱。

“天下熙熙,皆为利来。”放到这里,利就是预测损失下降。训练目标奖励的是把下一词猜准,不是把世界关系登记成双向索引。模型当然会沿着奖励走。

这会影响三类人。

做知识问答的人,不能看到模型知道“A 是 B”,就默认它能处理各种问法。问法改写不是包装问题,而是能力问题。

做 RAG 的人,也别以为把资料塞进去就万事大吉。好消息是,论文承认如果事实直接在上下文里,模型可以现场推出反向关系。坏消息是,检索没命中、上下文没放对,模型仍可能回到那套有方向的参数记忆。

做企业知识库的人,更要小心。企业里的知识关系常常不是单句事实,而是人、合同、产品、权限、流程之间的网。模型如果只擅长顺着文本出现的方向走,很多“反查”“追责”“溯源”问题就会变脆。

这也解释了为什么大模型产品演示常常很惊艳,落到严肃知识系统里却开始磨人。模型看着更强,产品反而更虚。因为用户要的不是会接话,而是稳定取数、反向定位、跨字段关联。

当然,别把这篇论文读成“大模型不行”。恰恰相反,它把能力边界画得更清楚了:上下文里明摆着的关系,模型能推;已经烙进参数里的关系,未必能反向调出来。

差别就在这里。

这对工程实践的提醒很直接:关键事实要结构化,重要关系要多方向覆盖,评测集要包含反向问法。别只测模型会不会背正面题,也要测它能不能从背面摸到同一枚硬币。

大模型不是一本会说话的百科全书。更像一座按语料路径长出来的城市。路很多,灯很亮,但有些地方,确实没有回头路。