Agent对抗AI文献幻觉

AI 越来越强,我和身边不少医生同事都已经习惯用 ChatGPT、豆包、千问这些工具。有时是想快速了解一个陌生问题,有时是写文章、做课题。

AI 确实大大提升了效率,数分钟内就可以写出让我自愧不如的文章。但对临床医生和科研工作者来说,最头痛一个问题是不知道它的哪句话可以相信,不知道它在哪里给你埋一个雷。

AI列出的几十篇参考文献,题目、作者、期刊、年份甚至 DOI 都写得像模像样。问题是,当你真的去 PubMed 或期刊网站逐条核对时,会发现里面可能混着根本不存在的文献;还有一些文献确实存在,但作者、年份、页码对不上,甚至论文说的内容和 AI 的总结也不是一回事。

如果最后还是要把每一篇文献重新检索一遍,再删除错误文献、寻找替代文献,AI 带来的效率提升就被抵消了一大半。

这半年多模型能力提升飞快,但参考文献的幻觉或错误率,根据我个人体会,基本仍然在 30%-40% 左右。在我看来,查文献这件事情并不需要多高级的智能水平。我甚至有时候会觉得,AI越来越聪明,也越来越会欺骗我们。

想让AI帮忙省点时间,却在第一步就卡在了文献幻觉上。

明明告诉它“不要编”,为什么还是会编?

我首先尝试的解决方法,是完善提示词。我反复告诉 AI:不要编造文献;必须保证文献真实存在;如果不确定,就告诉我不知道。

但实际用下来,幻觉还是会出现。特别是一次需要很多篇文献时,“无中生有”、“张冠李戴”,各种类型的错误防不胜防。

为什么已经明确说了“不要编”,它还是会编?具体原因我也不知道,但我是这么理解的:

这就像让一个听过很多歌的人,凭记忆给你唱某首歌的完整歌词。他很可能会把别的歌的句子串进来——不是他想编,而是脑子里存过太多相似的句子,自己分不清哪句是哪首歌的。你叮嘱他“不确定就别说”,对他没用——在他心里,每一句都“就是这么唱的”。

不是它记不住,而是它分不清哪些记忆是真的、哪些是自己拼出来的

它也是一个非常任务导向的执行者——你交代什么,它就努力把什么完成。当我们说“请推荐 10 篇相关文献”时,在它眼里,任务就是“交付 10 篇看起来像文献的东西”。至于这些文献从哪里来、是不是真去 PubMed 检索过、中间过程怎么走——你没说,它就自己发挥;你说了,但是如果按照你的要求完成不了,它就要自己想办法完成。

你跟它说“不要编”,对它来说其实是个无法执行的指令。因为它给出的每一篇,在它自己看来都是真的——作者、期刊、年份、DOI 都“就是这么回事”,和它回答一篇真实存在的文献,内部没有任何区别。它没有一个声音提醒它“这一篇是我拼的”。它不觉得自己在编,自然也不会因为这句叮嘱停下来。

它可能把相似题目、真实作者、常见期刊和合理年份重新组合起来,生成一篇每个部分都很像真的、合在一起却并不存在的文献。

它不是故意欺骗我们——它擅长生成“看起来像正确答案”的回答,但不一定已经证明这个答案真实存在。

专业工具很好,但未必完全适合我的流程

文献幻觉这个问题很普遍,解决这个问题在专业领域存在巨大市场,国外已经有 OpenEvidence、Consensus 等专门面向医学或科研检索的 AI 产品。国内也有一些仿品,但数据库资源不太全。它们会连接专业的医学或学术资料,再根据真实论文生成带出处的回答,比单纯依靠聊天模型的内部记忆可靠得多。

但体验过很多工具以后,发现没有一个可以完全适合我的工作流。我不只是想得到一个答案——我还希望 AI 帮我筛选文献、核对信息、导入文献管理工具、整理笔记,并在后面写作时继续找到原始依据。

Agent 工具出现后,我很兴奋,首先想到的就是解决文献幻觉的问题。我开始尝试用 OpenClaw、Claude Code 这类工具去搭建一套更适合自己的文献管理流程。

Agent 改变的,是“查文献”这条命令

刚开始我也以为,Agent 只是能力更强的聊天式 AI。用了一段时间,我才发现两者最大的区别不是谁更“聪明”,而是它们对任务的处理方式不同。

以前,我说“帮我查一下这个领域的文献”,任务的终点通常是一份参考文献列表。为了完成这份列表,AI 会努力把答案补齐。

现在,同样一句话交给 Agent,会被我的 Skill 拆成一串具体动作:

确定数据库并执行真实检索 → 获取 DOI、PMID 等原始记录 → 核对文献身份和题录信息 → 使用权威元数据导入 Zotero → 导入后重新读取检查 → 根据摘要或全文核验研究内容 → 最后交付

这时候,“查文献”不再等于“马上给我一份列表”,而是先完成第一步,再根据真实结果执行下一步。

如果数据库没有返回结果,它就停在“没有找到”;如果 DOI 和题目对应不上,就把文献放进“待核验”;如果无法获得全文,就只能说明“目前依据摘要”,不能顺手把缺少的数据补出来。

这套方法依靠两道防线。

第一,把一个结果型任务拆成一系列具体动作。 每一步都知道去哪里、拿什么、下一步做什么,减少 AI 为了交付完整答案而自行补全的机会。

第二,在关键节点设置核验。 流程拆得再细,AI 仍然可能犯错。DOI 是否对应这篇文章、Zotero 里的信息有没有写错、AI 概括的结论能不能在原文中找到,都要分别检查。

前者减少错误发生的机会,后者把仍然发生的错误拦在交付之前。

查到正确的文献,只是一个良好的开始

文献真实,不代表研究质量一定可靠;题录完全正确,也不代表 AI 对文章的理解一定正确。用于论文写作、研究结论和临床决策的重要证据,最后仍然需要研究者自己阅读和判断。

各位科研的同行们暂时还失业不了。

现在和Agent工作,就像培训一个员工——你不需要这个员工绝顶聪明才能做事情。关键是这套方法对不对:每一步去做什么、去哪里找、找不到怎么办、做完怎么核对。

我对 AI 这件事的态度也变了——我并不需要等一个“完全不会编文献”的超级模型出现。我需要的是把“查文献”拆成清楚的步骤,让任何一代模型按这套流程走,都能把幻觉压到可控范围。

当然,随着配套工具的不断完善,AI能力的不断增强,我所提供的流程可能越来越不重要,就像现在的大部分Skill一样。

想交流AI使用技巧,关注AI+医疗的朋友,我建了一个交流群。欢迎添加WX:drfuweiliang,加入讨论。