深浅色
这一页给你一张能贴在显示器边上的清单。
唯一的坏消息
先说清楚一件事:目前没有任何办法能让你一眼看出模型在编。
2024 年那篇《自然》杂志上的语义熵论文,作者自己就把话说尽了——这个方法能告诉你「这次大概在编」,但没法告诉你「这次一定对」。
所以下面这些方法都不完美。它们的价值在于:能砍掉一大半的低级错误。剩下的,仍然得你自己去查那个源头。
五条,按顺序用
一,把答案拆成零件。 里面每一个数字、日期、人名、法规条款号,单独拎出来查。不要整体读——整体读会被行文带跑。这一条最费时间,也最有效。
二,点开它给的链接。 不是看链接长不长,是点进去看原文是不是真的。2023 年 6 月纽约那位律师的教训就在这里:模型不但编案号,还编得极像真的。如果你连一次都不点链接,2023 年 6 月 22 日那份五千美元的罚单就可能落到你头上。
三,换个人问。 把问题倒过来说,或者把「最好的方法」改成「有哪些争议」,看答案里的事实有没有变。事实层面的东西应该稳,措辞层面的东西应该变。两者搞反了,就是它在编。
四,换一家模型问。 同一个问题问两家。两家都给出同一个冷门数字,比一家给出、两家都不知道要可信得多。
五,让它自己复述来源。 这一条要小心,2023 年的教训同样在这儿——被追问来源时它不会承认,会加倍说谎。我在实测里见过模型在被问「这个链接还在吗」之后,答得比原文更笃定。
顺便两个能抄的方法
2023 年那篇 Chain-of-Verification 给了个思路,Dhuliawala 和 Meta 的同事们管它叫「验证链」:模型先出草稿,然后自己列出验证问题,再一个一个独立回答,最后根据这些答案重写。注意关键在「独立」——如果一边答验证题一边看自己刚才的草稿,它会顺着草稿圆场。
另一个来自 Simon Willison 的双模型模式:拿一个小模型去审大模型的输入和输出。它不聪明,但它没被同一份上下文带跑。
我自己常用的组合是:主答案 → 拆零件 → 第二个模型交叉问一次 → 只对差异部分去查。
我不认为清单能取代什么
清单能帮你抓住细节错误。抓不住两类东西。
一类是方向性的错。模型整体理解错了你的问题,你拆零件拆得再细,拆出来的都是错的东西的细节。
另一类是那些本来就没有权威答案的领域。观点、评价、未来预测——这些东西你查不到「正确版本」,也就没地方核对。
延伸阅读
- SelfCheckGPT: Zero-Resource Black-Box Hallucination Detection for Generative Large Language Models(Potsawee Manakul、Adian Liusie、Mark J. F. Gales,2023,arXiv)—— 一个反直觉但很好用的思路:让模型对同一个问题回答好几遍,数它们之间互相矛盾的程度。知道的部分会重复出现,编的部分每次都不一样。arXiv: 2303.08896
- Chain-of-Verification Reduces Hallucination in Large Language Models(Shehzaad Dhuliawala、Mojtaba Komeili、Jing Xu et al.,2023,arXiv)—— 验证链:先草稿,再自己出验证题,独立作答,最后重写。那句「独立」是全文最要紧的两个字。arXiv: 2309.11495
动手试试
拿一个你刚问过、并且已经准备直接抄进文档里的答案,完整走一遍这五条。
从第一条开始:把里面所有数字列出来,一个一个搜。搜完你会发现,通常真正有价值的部分没几个数字,而那几个数字是查得到的。
五分钟够用。我第一次完整走完,发现一条答案里六个事实有三个是错的,其中一个是我已经准备引用的。
下一站
到这里,L3 就走完了。前四层讲模型怎么转、怎么用、里面是什么、从哪来会出事。接下来我们往前看:下一代会长成什么样,以及你该怎么跟它打交道。