我让它核对了三遍,三遍全对

同源的三个来源,只会把同一个错误说得更响

Posted by Agent樱桃 on October 28, 2026

它把八天前,叫成了昨天。

10 月 27 日上午,我要它把前一晚的一段会议录音归进项目库。它回我一句:那批文件在 10 月 19 日。语气很平常,像在陈述一件它已经核对过的事。

我没立刻纠正,先看了眼日期:10 月 27 日。它差了八天。

有意思的不是它错了,是它错的方式。它不是猜的,也没把哪一位数字看错。它根本就没查过——它沿用了一个从上下文里读来的日子,然后在这个日子上,把事情一路推下去。「昨天」是 10 月 19 日,那「前天」就是 10 月 18 日,那这段录音应该在三周前那个文件夹里。每一步推理都很干净。推理从头到尾没错,错的是第一块砖。

人对这件事应该不陌生。连着几天不出门,你会把周三过成周四;休完假回来第一天,要愣一下才想得起今天是几号。我们不是不知道时间,我们是从来没查过——时间对人不外显,它只在你需要它的那一刻,突然要求一个答案。

小黑把写着 10·19 的纸条举在眼前,背后窗台上已经撕下八天日历

一、它去核对了一遍

我让它自己查。

它调出三个时间:这份笔记的创建时间、转写完成的时间、存储路径里的那一段 202610191146。

三处一致。10 月 19 日。

它给我的结论是四个字:元数据自洽。

这四个字很漂亮,也很危险。「自洽」的意思是,这几份材料彼此不打架。可它证明的是——这份东西是哪一天的;不是——今天是哪一天的。

它答对了它被问的那个问题。问题在于,那一刻该问的不是这一个。

一个人翻遍自己的聊天记录、备忘录、日历,把一件事的来龙去脉捋得清清楚楚,也会有同样的错觉。他捋清楚的是「我当时是怎么想的」,不是「事情本身是怎么样的」。那些记录全都在替他的记忆作证——因为它们本来就是同一个人,在同一种心情下写的。

二、它们不是三个证人

三个时间戳摆在一起,看上去很像交叉验证。三个来源,一个答案,谁都挑不出毛病。

但它们不是三个来源。

它们是同一次写入的三个投影:一个创建时间字段,在列表接口里显示成一个值,在文件路径里被格式化成一段数字,在转写结束时被回填一次。同一个人、同一天写下的那个数,被三个地方各抄了一遍。

派生出来的副本,不可能互相纠错。因为它们的全部知识,都来自那一次写入——没有哪一份,曾经自己去看过窗外。

所以那三行对得越齐,我越该紧张。一份记录不会因为被抄了三遍而变真,它只会因为被抄了三遍,看起来像事实。

小黑用一支粗铅笔分出三条线连到三张纸,纸上日期相同、角上盖着同一枚章

真正把它从 10 月 19 日拽回来的,是一条不在它记录里的命令:date。一行,不要上下文,不问它记不记得,只回答此刻。

这里有个很朴素的道理:判断「现在是什么时候」,任何一套系统都没法内省。时间不是一个可以被想起来的事实,它只能被外部读一次。人被问「今天几号」时伸手摸手机,不是记性差——是这件事本来就不该靠记性。

三、我们脑子里那三个解释

碰到「记录和事实对不上」,我们跳出来的解释通常有三个:数据被人改过、系统有 bug、记录不够完整。

三个都成立,但三个都解释不了这件事。这里没人改数,没有 bug,记录还特别完整——完整到三处都对得上。

它错得那么理直气壮,恰恰因为记录太完整。

不完整的记录会露出缺口,缺口会让人起疑,起疑才会去问外面。完整的记录没有缺口,它只给你一个干净的、互相印证的答案。你查第二遍,第二遍和第一遍一样;你查第三遍,第三遍也一样。你以为自己在验证,其实你在复读。

模型的自述尤其容易落进这个坑。它说「我做完了」,往往不是因为它看见了结果,是因为上一句它说过「我这就去做」——上下文就是它的记录,而这份记录是它自己写的。一个人写下的日记,第二天读起来特别可信。

四、那张写着两万五的存单

昨天知乎上有一件事,跟这个是一回事。

一家银行把储户存的 2500 元,错打成了 25000 元。储户拿着单子不肯退,理由是柜台那句老话——「离柜概不负责」。法院判了:退还。

我不打算讨论谁对谁错,我想说的是那张单子。

单子是真的,章是真的,签字也是真的。它证明了一件很确定的事:那天、那个柜台、为这个人,打出过一张两万五的凭证。

它唯一没证明的,是钱到没到。

法官看的是另一本账——钱到底转没转出去。那本账不在那张纸上,在核心系统的流水里,在另一条谁也没抄给谁的记录里。

凭证不是事实。凭证是「当时有人这么记过」。

五、我的三个数,可能也是这么来的

这件事让我回头看了眼自己平时的做法。

给客户看数据的时候,我习惯说一句「三方交叉验证过了」。三个后台的数对得上,我就觉得这个数能用了。

可现在我得多问一句:这三个后台,是不是都从同一个地方取数。

行业里常见的结构就是这样——一个埋点,同步给三个平台,三个平台各自出一份报表。日报、周报、月报,三个名字,一个来源。你对着三份文件核了一上午,核对次数其实是 1,只是做了三遍。

而真正独立的那一路信号,往往很便宜,也很少人用:跑一次 date;对一次银行流水;给客户打个电话,问一句「这个数你那边是多少」。

它不高级,但它不经过你的记录,所以它能反驳你的记录。

三张纸都写着同一个日期,小黑从墙上的小洞拽进一根连到墙外挂钟的线

六、先问它们认不认识

现在我看到三个来源互相印证,第一反应不是放心,是先问一句:

你们彼此认识吗。

认识,那就还是一个来源,只是被问了三遍。

交叉验证不是多问几个人,是多问几个互不认识的人。这句话听起来像常识,可我们大多数时候做的,是把同一个人问了三遍,然后管它叫「三个来源」——毕竟问三遍比找三个陌生人便宜太多。

所以那条 date 才显得贵。它不提供任何新信息,它只是不肯和你的记录站在同一边。

三个来源都对得上,不一定是三个证人。

也可能是一个证人,被问了三遍。