Claude

AI 老爱胡扯怎么办:把问答改成资料加工,再加一道校验

编辑部阅读约 6 分钟

用 AI 学外语时,它常把动词标成副词,或者给出听着有道理、实际错误的解释。这篇文章把这类「胡扯」拆成三类任务,说明哪些能靠提示词规避、哪些必须加校验,并给出可直接抄用的提示词模板、降温度与拆步骤的做法、RAG 和微调的适用场景,以及一份外语学习场景的检查清单。

让 AI 帮忙出一份外语选择题,它给的题目格式齐整、选项对称;让它按「第三人称单数、词尾变化规律」列一份词表,它列得满满当当——然后你发现某个词明明是动词,却被标成了副词。更麻烦的是那些一眼看不穿的错误:讲一个语法点时头头是道,逻辑也顺,结论却是错的。

这类需求背后其实有两个诉求:内容要准;宁可它答得少一点、笨一点,也别瞎编。下面把可行的思路整理成一套可以照着做的流程。

先分清你要 AI 做的是哪一类事

任务类型不同,出错概率差一个量级,处理方式也完全不同。

  1. 有源可依的加工:给定课文、词表、语法笔记,让模型抽取、标注、按规则改写。最可控,因为答案就在你给的材料里。
  2. 受约束的生成:按某种规律生成新内容,比如「出十道考查过去式的选择题」。模型要自己挑词、自己造句,出错空间立刻变大。
  3. 开放式知识问答:比如「这个词为什么是副词」。回答读起来通顺,但它是在续写一段像样的话,不是去查证。这类最容易一本正经地错。

很多人第一反应是找一个「能力弱一点但更老实」的模型,这条路基本走不通:模型能力弱通常意味着错得更多,而不是更少;不同模型对「我不知道」的表达倾向确实有差异,可以自己实测,但不存在「笨而准确」的选项。真正有效的做法是换任务形式——尽量把第 2、3 类任务改造成第 1 类。

它为什么会自由发挥

  • 模型的训练目标是写出像样的下一段文字,不是保证每句为真;
  • 它不天然清楚自己的能力边界,也不知道约束到底卡在哪;
  • 约束一旦模糊(「符合特定规律」),它就会用最省事的方式补全;
  • 一轮里要求太多(出题 + 标词性 + 讲解 + 给答案),每一环都可能松动;
  • 采样温度偏高、要求「内容丰富多样」,都会放大偏离。

做法一:把「回答问题」改成「加工我给的资料」

投入产出比最高的一招。把原文、词表、词典释义直接贴进去,明确禁止引入外部内容,并规定输出格式:

你是词表标注工具。只处理我给出的词表,不得补充表外的词。
对每个词输出一行:
词 | 词性(只能取:名词/动词/形容词/副词/介词/连词/代词/数词) | 原句位置(第几句第几个词)
无法确定时输出「不确定」,不要猜测。
词表:
……

几个要点:

  • 枚举型字段用封闭集合,比如词性只允许从给定标签里选,不给发挥空间;
  • 明确允许「不确定」这个出口,比逼它猜要安全得多;
  • 要求给出依据(第几句、第几行、原文片段),方便你抽查;
  • 一次只做一件事:标注就只标注,讲解另开一轮。

做法二:把随机性压下去

  • 把 temperature 调到 0 或接近 0(各接口参数名和取值范围不同,按文档设置),同样的输入多次调用结果应基本一致;
  • 用固定模板或 JSON schema 约束输出,字段缺失就重试;
  • 长任务拆步骤:第一步只出题,第二步只给答案,第三步只核对;
  • 不要让同一轮对话既生成又给自己打分,自评往往偏宽松。换一个新会话、甚至换一个模型做审校,效果更好。

做法三:加一道校验

不管前面多小心,都要假设输出里有个位数百分比的问题。低成本的做法有:

  • 程序化校验:把输出解析成结构化数据,检查词是否都在原文或词表里、词性是否属于允许集合、选项数量对不对;
  • 交叉验证:同一个问题问两次,或让另一个模型独立作答,只人工比对不一致的那几项;
  • 抽样核对:批量内容不可能全查,按比例抽查,错误集中的模板就回头改提示词;
  • 要求自报依据:让它逐条写明「依据是原文第几行」,写不出或对不上的,直接标记为可疑。

外语学习场景可以直接套用这份清单:

  • 生成词表前先固定词性标签集
  • 要求每个词附原文例句
  • 用脚本校验所有词都在给定范围内
  • 选择题的干扰项要求同类、同难度,避免靠排除法就能猜对
  • 语法规则、固定搭配等关键结论,另查词典或教材确认

做法四:RAG、微调,以及先找现成方案

资料一多,「每次贴一遍」就不现实了。可以把教材、笔记、词库做成本地检索库,先检索出相关片段,再让模型基于片段回答——这就是 RAG 的思路,本质仍然是「让它加工资料」,只是资料由系统自动找。

微调(包括 LoRA 这类轻量方式)适合任务高度固定、量大、并且有标注数据的场景,比如长期批量做同一种标注。代价是要准备数据、要维护,而且微调并不能消掉幻觉,只是把输出往你的格式和习惯上靠。

动手之前先搜一下有没有现成项目,语言学习类的开源工具和提示词模板很多,直接复用通常比从零搭更划算。

做法 成本 见效 适合场景
降温度 + 固定格式 低 小到中 所有场景先做
给资料 + 只做加工 低 大 有明确来源的知识
交叉校验 / 程序校验 中 中 高价值输出
RAG 中 大 资料多、问题杂
微调 / LoRA 高 大 任务固定、数据充足

需要接受的现实

有研究者把幻觉看作这类模型的固有特性,能压低但很难归零;也有理论工作试图证明在某些设定下幻觉不可避免,这类结论的适用条件建议自己读原文确认。人其实也有类似问题:对久远的事情记错却十分笃定。所以目标不是「绝不犯错」,而是「错误率可接受,且错误能被发现」。

实践中的判断标准可以很简单:

  • 只用于自己学习参考的内容,允许有小错,但必须能追溯到原文;
  • 要对外发布、写进代码或交给别人的结论,一律二次确认;
  • 越是你自己不懂的领域,越要强制它给出处。

什么时候需要一台长期在线的机器

偶尔问几句,本地客户端足够了。但一旦把校验做成流程——批量生成、脚本自动比对、长时间跑评测——本地机器的睡眠、断网、任务中断就会变成新的麻烦。这种情况下,把长期运行的脚本和 AI 工具放在一台常年开机的远程机器上是可选做法之一,例如整台 Mac mini 放在机房的独享远程 Mac,按月租用、通过网络连接使用,适合需要稳定在线运行 Claude Code 或批量任务的场景。需要注意,这只是改善运行环境,不会提升模型本身的准确率。

小结

  • 「换个笨模型」解决不了胡扯,换任务形式才行;
  • 优先把问答改造成「基于我给出的材料做加工」,用封闭集合约束输出,允许它说「不确定」;
  • 降低随机性、拆分步骤,再加一道程序化或交叉校验;
  • 资料规模上来再考虑 RAG,任务固定且量大再考虑微调;
  • 任何高价值结论,都保留人工确认这一步。

提示词工程AI 幻觉模型微调RAG外语学习