适用于谁
- 搜「ai幻觉怎么解决」「减少ai幻觉」「ai 一本正经胡说八道」的人;
- 被 AI 编造的文献、数据、法条、链接坑过,想知道怎么问才更可靠的人。
本文根据 Anthropic、Google、OpenAI 的官方文档整理,资料核对于 2026-10-11。
结论先说
- 幻觉指模型生成了事实错误、或与给定上下文不一致的内容。Anthropic 文档的说法是,即使最先进的语言模型有时也会这样。
- 没有哪种方法能根除幻觉。Anthropic 在文档末尾明确写道:这些技巧能显著减少幻觉,但不能完全消除,关键信息一定要自己验证,尤其是高风险的决定。
- 最有效的三件事:允许它说「不知道」;让它基于你提供的资料并引用原文;涉及新信息和计算时让它用工具(联网、代码执行)。
- 重要结论要有可核对的出处,而你要真的去核对。
幻觉从哪里来
理解三个常见来源,就知道该用哪种对策:
| 来源 | 表现 | 对策 |
|---|---|---|
| 模型不知道,但被要求必须回答 | 编造文献、人名、数据 | 允许说不知道 |
| 资料太长,没读准或记混 | 张冠李戴、引用不存在的段落 | 先摘录原文再回答 |
| 知识过时,或需要精确计算 | 说错最新情况、算错数 | 联网搜索、代码执行 |
步骤
1. 明确允许它说「不知道」
Anthropic 把这条列为第一项基础策略:明确给予模型承认不确定的许可,官方称这个简单的办法能大幅减少错误信息。
官方示例的写法是在任务最后加一句:如果你对某个方面不确定,或者报告缺少必要的信息,就说「我没有足够的信息来有把握地评估这一点」。
可以直接用的版本:
如果你不确定,或者现有信息不足以得出结论,请直接说「我不确定」并说明还缺什么信息。
不要为了给出完整答案而猜测;猜测的内容请明确标注为「推测」。
2. 先引用原文,再回答
Anthropic 的第二项策略,针对长文档任务(官方给的量级是超过 2 万 token):先让模型逐字提取相关引文,再基于引文完成任务,把回答锚定在实际文本上。
1. 从文档中逐字摘录与问题最相关的原文,逐条编号。
如果找不到相关原文,请写「未找到相关引文」。
2. 只根据这些摘录进行分析,引用时注明编号。
3. 逐条核对:找不到依据就撤回
第三项策略是让回答变得可审计:要求模型为每一个论断给出引文和来源。Anthropic 还给了一个更严格的版本:让模型在写完之后,为每个论断找一条支持它的引文;找不到的,就必须撤回这个论断。
写完初稿后,逐句检查:每个事实性陈述都要能在上面的资料里找到一条原文支持。
找不到支持的陈述请删除,并在文末列出「因缺少依据而删除的内容」。
最后那一句的作用是让你看到它删了什么,有时被删掉的恰恰是需要你另外查证的点。
4. 限定只用给定资料
Anthropic 的进阶技巧之一:明确指示模型只使用所提供文档里的信息,不使用它自己的通用知识。
Google 的文档给了一段为提升「基于给定上下文作答」而设计的系统指令,大意是:你是一个严格基于资料的助手,只能依据用户提供的上下文里直接提到的事实来回答;不要使用自己的知识或常识;不要从给定事实中做假设或推断;把提供的上下文当作事实的绝对边界。
这种写法适合客服、制度问答、合同审阅等「答错比不答更糟」的场景。日常问答不要用,它会让模型连常识都不敢用。
5. 新信息和计算,交给工具
Google 文档说得很直接:Gemini 可以借助工具来避免在某些场景下产生幻觉。
- 联网搜索:只要模型可能需要知道冷门或最新的事实,就应该开启搜索;
- 代码执行:只要模型需要做任何算术、计数或计算,就应该开启代码执行,让它写代码算出来,而不是「心算」。
其他产品同理:问新闻、价格、版本号、政策时打开联网;算数、统计、处理表格时用数据分析或代码功能。
OpenAI 文档从另一个角度讲了同一件事:在提示词里加入相关的上下文信息(即检索增强生成,RAG),可以让模型用上训练数据之外的资料,并把回答限定在你选定的资源范围内。
6. 多问几次,交叉比较
Anthropic 列出的另外几个进阶技巧:
- 多次生成对比(Best-of-N):同一个问题跑几次,比较结果。几次回答不一致的地方,很可能就是幻觉所在;
- 迭代核查:把模型的回答作为下一轮的输入,要求它核实或展开其中的陈述,可以发现前后矛盾;
- 查看思考过程:开启思考后,在答案看起来不对时查看思考摘要,往往能看出错误的假设或逻辑。
对聊天用户来说,最容易操作的是第一条:重要的问题点一次「重新生成」,或者换一个模型再问一遍,重点看两次回答不一样的地方。
一个通用的防幻觉提示词
请基于下面的资料回答问题。
<资料>
[粘贴资料,或说明「见上传的文件」]
</资料>
问题:[你的问题]
要求:
1. 先逐字摘录与问题相关的原文并编号;找不到就写「资料中未找到」。
2. 回答中的每个事实都标注所依据的摘录编号。
3. 资料没有覆盖的部分,明确写「资料中未提及」,不要用常识或推测补全。
4. 需要计算时,写出计算过程。
5. 最后单独列出:哪些结论你把握不大,建议我另外核实。
哪些内容必须人工核对
无论用了多少技巧,下面这些内容都按「可能是错的」来对待:
- 文献、书名、作者、DOI、法条编号、判例;
- 具体数字、日期、价格、版本号、统计数据;
- 链接和联系方式;
- 人物的言论和经历;
- 医疗、法律、财务方面的具体结论。
核对方法很朴素:引文去原文里搜;文献去数据库里查;链接点开看;数字找原始出处。
常见问题
Q:把温度调到 0 能消除幻觉吗?
不能。温度影响的是输出的随机性,模型不知道的事,调低温度只会让它更稳定地给出同一个错误答案。另外 Google 文档对 Gemini 3 系列的建议是保持这些采样参数为默认值。
Q:联网之后就不会错了吗?
会少很多,但模型仍可能误读搜到的网页,或者引用了质量不高的来源。看它给出的来源链接,重要内容点进去确认。
Q:结构化输出能防幻觉吗?
它能防的是「格式上的幻觉」。OpenAI 文档的说法是,结构化输出让你不用担心模型漏掉必填字段,或者编造一个不在枚举范围内的值。字段里的内容是否属实,仍然要靠上面的方法。
Q:为什么它编的东西看起来那么像真的?
因为模型生成的是「看起来合理的文本」。格式越规范、语气越肯定,并不代表越可信。这也是为什么要靠出处而不是靠语气来判断。
Q:有没有幻觉更少的模型?
各家都在改进,但官方文档都没有承诺为零。选模型时更值得关注的是它能否联网、能否引用来源、能否运行代码。
参考资料
- Anthropic 文档:Reduce hallucinations — https://platform.claude.com/docs/en/test-and-evaluate/strengthen-guardrails/reduce-hallucinations
- Google 文档:Prompt design strategies(Grounding and code execution、Gemini 3 Flash strategies)— https://ai.google.dev/gemini-api/docs/prompting-strategies
- OpenAI 文档:Prompt engineering(Include relevant context information)— https://developers.openai.com/api/docs/guides/prompt-engineering
- OpenAI 文档:Structured model outputs — https://developers.openai.com/api/docs/guides/structured-outputs
0 条评论
还没有评论,来抢沙发~