← 返回部落格
紫微新加坡8 分钟阅读

AI 读错你的盘,是因为它在数竖线

AI 读错你的盘,是因为它在数竖线

昨天有个人在知乎上回了我一条评论,把我的话往下推了一层。

我原本说的是,AI 算命出问题,得先分清是排盘错了还是解读错了。排盘是算术,十分钟能查完。解读是判断,永远查不完。

他说,不止。他说他自己不在任何临界值上,出生时间平平无奇,直接把排好的盘丢给模型,让它别自己排,结果它还是断错了。错法很具体,印星落在哪一柱,它看错了。落位一错,后面整套推论跟着换方向。

我看完愣了一下。

因为他说的这个,不在我那两层里面。盘是对的,算术没出错。模型也没有胡编,它认认真真在推。它只是把盘上的东西读串了。

这是第三层,读取。

三层摊开来看,性质差得挺远。第一层是算术错,输入进去出来的四柱本身就不对,这个可以对着万年历核,是非分明。第三层是判断错,同一张对的盘,两个人读出两个结论,这层永远没有裁判。中间这一层最麻烦,它长得像判断错,其实是机械错,而且它不报错。

模型给你的答案通顺、自信、有理有据,只是它论述的那张盘,跟你手上那张不完全是同一张。

我以前对这件事的解释是,模型没有位置的概念。它拿到的是一串平铺的字,甲在年干还是甲在时干,对它来说区别只在文本里隔了多少个字,不在盘上隔了几格。

这个解释是错的。至少是不准的。

哈尔滨工业大学今年二月放出来一篇机制分析,专门拆语言模型怎么在表格里定位一个单元格。他们用激活修补、线性探测、注意力消融那一套,把过程拆成三段。第一段叫语义绑定,把你的问题跟表头对上。第二段叫坐标定位,算出目标格子的行列。第三段才是把那个格子里的值取出来。

所以位置这个概念,模型是有的。

关键在第二段。它的坐标是数出来的

论文里说得很直接,模型解析坐标靠的是一套序数机制,机制的动作是数分隔符。也就是数竖线。表格里那些 | 不是排版装饰,它是模型建立坐标系的钉子。他们把分隔符做了因果实验,去掉之后这套计数机制就不激活了。

更有意思的是探测出来的形状。列索引在激活空间里是锯齿形,行索引是阶梯形。它不是一次性看懂了整张表,它是一格一格数过去的,数完落在一个线性子空间里,还能做向量加减。

所以模型读你的四柱,做的事情跟你想的不太一样。你以为它在看一张表。它在数竖线。

那读错就有了很物理的解释。

数出来的东西会漂。一路数下去,越靠后的位置越容易差一格。四柱从年到时排四列,年柱在最前面,时柱在最后面。如果偏差真的随着计数累积,那时柱应该比年柱更容易被读错。这条我得诚实标一下,是从论文机制推出来的,我自己还没系统跑过对照实验,只在少量样本上见过时柱被读串的情况,样本太小说明不了什么。

但另一条推论已经能验了,而且很好验。

既然坐标靠分隔符撑起来,那你喂进去的排版就直接决定了读取的正确率。同一组干支,你写成一行流水字,前后就是空格隔开,模型手里没有钉子可数,坐标系立不起来,它只能靠语义猜。你写成一行一柱、每格都有竖线的表格,那套计数机制才有东西可数。

这不是玄学,这是给它一把尺子还是不给。

我是真的觉得这件事有点反常识。大家讨论 AI 算命准不准,讨论的都是模型懂不懂命理、语料里有多少古籍、要不要微调一个专门的模型。很少有人往下想一层,说这活儿可能不卡在懂不懂,卡在盘长什么样。

顺着这个再往回看古书,感觉挺不一样的。

《渊海子平》里有一段叫五行提纲,说凡看命排下八字,以日干为主,取年为根,为上祖财产,取月为苗,为父母,日干为己身,日支为妻妾。这段话在做什么。它在给每一个位置分配语义。年那一格管祖上,月那一格管父母,日干那一格是你自己,日支那一格是配偶。同样一个甲字,落在年上和落在日上,说的是完全不同的两件事。

也就是说,八字从设计的第一天起,就是一张位置携带意义的二维表。

紫微那边说得更狠。《紫微斗数全书》开篇的太微赋里有一句,星有同躔,数有分定,须明其生克之要,必详乎得垣失度之分。同躔是同宫,同一批星凑在一起,定出来的数各有分别。后半句那四个字,得垣失度,说的就是这颗星落对了位置还是落错了位置。

古人把话说到这个程度了。位置本身就是信息。

而现在的做法是,把这张二维的东西压成一维的一串字,再交给一个靠数竖线找位置的系统。

紫微比八字还要吃亏一点。四柱好歹只有四列,压平了也还是四组挨着。紫微是十二宫排成一个环,三方四正取的是本宫、对宫和两个三合宫,这四个宫在盘面上是有几何关系的。压成文本之后,本宫和它的对宫之间可能隔了几百个字,中间还塞着别的宫的星曜。你让它去看三方四正,它得跨过这一段距离把关系重新拼出来。

所以那位答主说的印星看错落位,在我看来不算模型笨。是我们把一张图给拆了,然后要求它凭数数把图还原回来。

聊到这儿,说点能今天就动手的。

第一个动作,改喂法。别把整张盘一段话糊过去。一柱一行,每行写全这一柱叫什么、天干是什么、地支是什么、十神是什么,用竖线隔开。十神你自己算好写上去,不要让模型自己去数位置再算。这一步就把读取层的风险压掉大半。

第二个动作,做个复述测试。把盘给它之后,先别问结论。先让它把每个十神在哪一柱复述一遍。复述就错,你抓到的是读取问题,换排版重来。复述全对,接下来断错了,那是判断问题,跟排版没关系,得换个方向治。这一步的价值是把两种错分开,不然你永远不知道该改提示词还是该换模型。

第三个动作,验它是在算还是在背。十神不是贴在字上的固定标签,它是拿日干去比出来的。所以你把同一组干支留着,只把日干换掉,重新喂一遍。十神应该跟着全变。如果它给你的十神跟上一次差不多,那它不是在算,它在复述语料里见过的组合。

这三个动作加起来大概十分钟,不需要懂命理,也不需要懂模型。

回到那位答主。他那句话的原话是,结果全变。

他说的是他的盘。但这句话也可以往回读一层。一个格子读串,结果全变。这套东西之所以经得起几百年的抄传,是因为每一格的位置都被定死了,谁来算都落在同一格。真正脆的地方从来不是解释得准不准,是有没有人偷偷把格子挪了一下。

信不信这套东西,是一回事。它读的是不是你那张盘,是另一回事。后面这件事,你自己十分钟能查。

Louis

常见问题

我把排好的盘发给它了,为什么还会错?

盘对了只保证算术那一层没问题。模型接下来要做的是在这张盘上定位,比如印星在哪一柱、化忌落在哪个宫。定位这一步是它靠数分隔符重建出来的,跟盘本身对不对无关。所以排版糊在一段话里,它就更容易数偏。

用表格喂真的有区别吗?

有,而且有机制上的理由。哈工大那篇机制分析做过因果实验,分隔符 token 是激活模型内部那套坐标计数机制的关键,去掉之后机制不启动。所以一行一柱、带竖线的表格,跟一段流水文字,对模型来说不是美观差异。

那是不是干脆不该让 AI 碰命理?

我的看法是分工。历法算术这一层交给确定性的程序,它每次都给同一个答案。整理、对照、把一堆结构翻译成人话这一层,模型做得不错。中间的读取层是可以靠喂法改善的,上面那三个动作就是干这个用的。至于最后那层判断,谁做都没有裁判,你自己得留一份怀疑。

⚠️ 『FateStar』根据中国传统文化『紫微斗数』生成『命盘』进行分析推理, 内容仅供参考.

关于作者

Louis
Louis

FateStar 创办人. 2020 年开始系统学习三合派紫微斗数, 负责产品方法、资料整理与内容审核. 个人经验不作为科学预测证明.

了解更多 →