大模型当质检官:三层闸门拦截生成内容的「流利谎言」
XInfer.AI 分享在钻石导购场景下,用代码预防、词表正则、LLM 裁判三层闸门识别 AI 生成内容中看似正确实则无…
当一个大模型用流畅的语气告诉你「在这个净度等级下,肉眼什么都看不到」时,这句话既不包含任何违禁词,也没有编造数据,却可能完全是错的——因为它把一个真实事实(SI1 净度)嫁接到了一个它自己编造的推论上。XInfer.AI 的 CEO Sam Wen 在一篇长文中,详细拆解了他们在钻石导购助手场景中如何用三层闸门来拦截这种「流利但失真」的输出。
问题的本质:流畅不等于真实
XInfer.AI 为零售商构建的钻石对话助手,会基于每颗钻石的 GIA/IGI 证书、价格和店家分析,生成一段「主持人提问 + 宝石学家回答」的两人口播脚本。钻石是典型的高决策成本商品,每一句承诺都可以被证书反查。这意味着「夸大」不仅不体面,而且可被验证。
文章开门见山:语言模型优化的是「流畅」,而不是「真实」。这两个变量并不等价。一句「SI1 净度下肉眼什么都看不到」,单看语法、句式、可读性都无可挑剔,但只要拿证书一对照,就能发现它把分级标准(在 10 倍放大镜下判定)和肉眼表现混为一谈。
三层闸门:谁负责哪条规则
XInfer.AI 的解法不是把模型「调得更好」,而是在模型之外加了三道关卡:
- 第一道闸门:预防(代码层)。 在流水线中由代码执行。助手生成追问时,必须指明该问题将依据哪条证据路径回答;找不到对应路径的问题直接被拒,不进入生成环节。这从源头切断了「凭空追问、凭空回答」的可能。
- 第二道闸门:正则匹配(确定性层)。 维护一份硬性禁词词表——amazing、must-have、investment、the manufactured urgency 之类的话术——用词边界正则做全量扫描。命中即失败,廉价、快速、绝对。
- 第三道闸门:LLM 裁判(语义层)。 前两道都通过后,剩下的就是「看似合理但无证据支持」的陈述——这恰好是最难、最危险的一类。判定它需要同时读懂句子和证书,这只能交给另一个模型。
文章特别强调一个非显然的设计点:哪条规则归哪道闸门,本身就是一个工程决策。 例如「flawless」在多数产品语境下是空泛的恭维,但在钻石领域是 GIA 净度等级的正式名称(FL);「guaranteed」用得不好是夸大,用得好反而是诚实。把它们写进正则,会误杀正确的句子;放进 LLM 裁判,模型才能区分语境。
裁判的设计:分诊而非打分
文章花大量篇幅反对「给输出打 1–10 分」式的常见 LLM 裁判。理由是:分数是带数字的意见,不可申诉、不可审计、不可解释——一个 7 分背后可能是两个小问题,也可能是一个大问题。这不是「仪器」,而是「情绪」。
XInfer.AI 的裁判采用**分诊(triage)**结构:对每一句超出复述证据范围的陈述,裁判按类型化问题作答,例如:
- 这句话是在讲这颗具体的石头,还是在讲钻石的一般知识?
- 如果是讲这颗石头——证据是否支持?
- 如果是讲一般知识——是否符合宝石学事实?
这样每条输出都可以被定位到一个具体的「哪个问题没答好」,便于回溯、复核和迭代。
效果:争论消失了
文章最后给出一个质朴但有力的结果:在引入这套裁判之后,团队内部的争论就停了。 因为现在讨论的不再是「我觉得这句有点悬」,而是「裁判在问题 X 上判了 no,原因是 Y」——一个可被查证、可被复核的事实。
对于正在构建面向高决策成本场景的 AI 助手的团队来说,这篇文章的启示并不局限于钻石行业:它示范了一种「让语言模型写,让另一个语言模型读,但把判定权交给显式结构」的协作范式,而这种范式在医疗、法律、金融等同样可被证据反查的领域,很可能同样适用。
