灵光 · 灵光 · · 国科智飞 Gavin
因果阶梯:为什么修好的问题总是复发?
一口干涸的井,三拨人给出了三种答案——一个关于「因果阶梯」的寓言:只修症状不补水位,等于一边漏水一边打井。
青石镇有一条河,河边有三口井。
三口井都挖在百步之内,深度却不同:浅井只挖了三丈,清泉日夜涌出;中井挖了六丈,泉眼更清更稳;深井挖了十二丈,井壁阴凉,井水甘甜,能照出人的脸。
三百年来,镇上人都去浅井打水。中井和深井,没人问。
这一年的夏天,浅井突然干涸了。不是一点点干,是一夜之间井底朝天。镇长紧急召开全村大会。
第一拨来的是镇上的看水使。他趴在浅井边看了半天,对镇长说:「水位是零。」
镇长说:「我要的是为什么没水。」
看水使又看了一遍:「水位是零,没有水了。」
「以前是几?」
「昨天还有三丈,今天是零。」
看水使答得都对。他答的是井里正在发生的事——水位。但他答不了为什么没水。
村民甲说:是不是天太热?村民乙说:是不是上游堵了?村民丙说:是不是三年没修井壁,水渗走了?三种猜测,没人能验证。全村人开始按自己的猜测修井:信天热的,在井口搭凉棚,等天凉;信上游堵的,派了八个人去上游巡逻;信井壁漏的,往井里灌了三车泥浆,想堵缝。三种修复在井口同时进行,井还是干的。
第二拨来的是外乡人,叫勘井师。他看完井口,听完三种猜测,摇了摇头,直接下到井里。他带着一个水桶、一根绳、一只眼睛,在井壁上摸了一圈,又在井底刨了两下,然后爬上来对镇长说:「我知道问题在井里了。」
「井里怎么了?」
「井壁西侧,第六块青石下面,有一个拳头大的缝。水从那个缝流走了——不是漏到地下,是漏到旁边的旧河道去了。那条旧河道三百年前被填了,但地下还有暗槽。」他指了指中井的方向,「中井在浅井西面三十丈。浅井流走的水,全都流到了中井。」
村民跑去中井一看——中井的水位涨了一丈。
「所以问题不是浅井没水,是浅井的水被旁边一口井偷走了。」
镇长大喜:「那把缝堵上!」
勘井师拿来三袋糯米灰浆,把缝糊上了。第二天,浅井果然出水了。镇长送了他一块匾:「勘井如神」。
但勘井师走后的那一年里,浅井又干涸了两次。每次都是同一个缝裂开——糯米灰浆扛不住水压。每次都是勘井师被请回来,再堵一次;每次堵完,镇长再送一块匾。镇上开始传:「勘井师是神人。」「浅井的病根,就是那条缝。」
第三拨来的是个老人,在第六年。
老人没有下井,没有看水位,没有看缝。他坐在井边,抽了一袋烟,然后问了镇长三个问题。
「第一个问题——这条河三百年来水大水小,你记得吗?」
镇长答:「记得。乾隆那年大旱,河干了三个月,但浅井没涸——那时候井还冒水。」
「第二个问题——这条河的上游五十里外有个铁冶镇。铁冶镇这六年开了一座炼铁炉,炉子用水从河里抽。你知道吗?」
镇长愣了:「听说过,但这跟我这井有什么关系?」
「第三个问题——这条河下游每年夏天有个堰,拦水灌田。今年堰放得早了一天,你知道吗?」
镇长说:「今年……好像是的。六月放堰,放到五月底。」
老人把烟袋锅在井沿上磕了磕:「你看——勘井师说的是对的,那个缝是事实。但那个缝一直在那。三百年来它就在那,乾隆大旱都没事。为什么今年出事?不是缝变大了,是水位变低了。上游铁冶镇抽水,下游堰放早了——河的水少了。河的水少了,浅井的水位就低了。水位一低,那个缝刚好露在水面之上——它本来在水面下,水压从里头撑着它。现在水位一降,缝露出来,水开始往旧河道漏。」
「所以浅井干涸的真因不是缝,是水位降了。缝只是真因发作的通道。」
镇长结巴了:「那……那之前勘井师堵缝,都是错的?」
老人摇头:「他没修错——缝是该堵。但你只堵缝不补水位,等于一边漏水一边打井。你得两件事一起做:去上游找铁冶镇谈,要么他改从别处取水,要么镇上出钱让他绕道;跟下游的村协调,堰不能放这么早,至少放到六月底;缝还是要堵——但这件事的优先级最低。三年之后再来看,浅井就稳了。」
镇长按老人说的做了。三年后,浅井再也没干涸过。那条缝被糯米灰浆堵住了,但它其实没再发作——因为水位重新稳在缝之上,水压从里头撑着它。
镇上后来立了三块碑。看水使的碑刻着:「我答了井里正在发生什么。」勘井师的碑刻着:「我答了井里为什么这样。」老人的碑刻着:「我答了井和河、和上下游、和三年时间的关系。」碑文下面有一行小字,三块碑各不相同:一块刻「观」,一块刻「行」,一块刻「思」。
老人临走前,对镇长说了最后一句话:「我不是比勘井师聪明。我只是问了一个他没问的问题——『这个缝,前几年为什么没出事?』这个问题不能从井里问出来,必须跳出井来。勘井师是个好匠人,但他一辈子只修井,没看过河。」
镇长半天才说:「那你是个看河的人?」
老人摇头:「我也不是看河的人。我是个看时间的人——我看这口井在时间里,是什么样的。」
概念:因果阶梯
因果阶梯(Ladder of Causation)由图灵奖得主朱迪亚·珀尔(Judea Pearl)在《为什么》(The Book of Why,2018)中提出,把「回答为什么」的能力分成三层。
第一层是观测(Seeing),回答「是什么」:看数据、看现象、找相关。第二层是干预(Doing),回答「怎么办」:做一个动作,看结果会不会变。第三层是反事实(Imagining),回答「为什么是这样而不是那样」:在心里重启时间线,想象一个没发生的世界,再和真实世界对照。
上一层需要下一层作为基础,但它不是下一层的高级版——能干预的人,不一定能反事实。绝大多数修复停在第一、第二层,所以同一个问题会周期性地回来。
故事里的映射
| 看水使 | 第一层观测者:数据看板、监控、记录,只答「是什么」 | | 勘井师 | 第二层干预者:能定位并修复具体病灶 | | 反复裂开的缝 | 只修症状的代价:根因未动,问题周期回归 | | 三块匾 | 虚假的成功庆祝:症状消失,不等于问题解决 | | 老人 | 第三层反事实者:问「为什么是现在」 | | 铁冶镇抽水与堰放早 | 井外的环境变化,才是真正的根因 | | 缝是通道不是原因 | 根因等于病灶加条件,病灶要发作需要条件 | | 三块碑:观、行、思 | 回答「为什么」的三个层级 |
现实中的因果阶梯
- 客户抱怨「AI 回答不准」:改 prompt、换模型是干预层;反事实层是问「客户的用户群这半年变了什么——模型还在替谁回答」
- 反复复发的软件故障:打补丁是干预层;反事实层是问「为什么这个 bug 是这周爆的——并发、数据规模、部署环境变了什么」
- 招不到人:提薪改招聘文案是干预层;反事实层是问「行业人才结构是否已经变了,我们要的人在市场上还有没有」
- 看病反复发作:开药是干预层;反事实层是问「为什么是现在发作,前五年为什么没发」
给 AI 时代的企业
大多数团队把「修好症状」当成「问题解决」。在变化缓慢的年代,这个习惯可以蒙混很久;但在 AI 时代,环境本身成了变量,企业需要有人定期问出反事实层的那个问题:为什么是现在?这个缝,前几年为什么没出事?
症状消失不等于根因消除——「已修复」和「根因已消除」,是两件独立的事。
灵光 · 用一个故事讲清楚一个概念。