HOW 技术原理

Transformer 直觉:它只是在猜下一个词

公式可以跳过。记住一件事就够:它每次只做一道题,按前文猜下一个词,猜完再接下一个。

Transformer 直觉:它只是在猜下一个词
题图 / Unsplash

一句话原理

给它一段文字,它算出下一个词最可能是什么,加进去,再算下一个。循环几百次,就是一段回答。

所谓“思考”,是这段文字里出现了推理的句式;所谓“知识”,是它在训练时见过大量类似搭配。

这解释了为什么它写东西那么顺:它一生只练一件事,就是让下一个词看起来合理。

所以“它知不知道”这个问题,要换成“它有没有见过足够多的相关文本”。

太空背景中的机器人
场景配图 / Unsplash

这个原理能解释的四个毛病

会编。合理不等于真实。一个不存在的条款号,在句式上完全合理,所以它照样生成。

算不准。它没有计算器,多位数乘法靠模式匹配,位数一多就错。要算数就给它工具。

前后矛盾。它每次只看前文,前面说过什么它“看到”但不一定“遵守”,长文里尤其明显。

不会说“我不知道”。训练数据里很少出现这个句式,除非你明确要求。

这也解释了为什么它对自己的错误那么自信:自信是句式,不是判断。

为什么它看起来会推理

训练数据里有大量解题过程、分析文章、代码注释。它学会了“先列条件、再推导、最后给结论”这个形式。

形式上对,内容不一定对。它可能在一个正确的推理框架里填错一个数,然后一路推下去,结论看起来很有说服力。

看推理过程的价值在于定位错在哪一步,不在于相信这个过程。

要求它分步写,本质是给你一个可检查的中间结果。

但要注意,分步写出来的过程也可能是事后补的,不一定是它真实的计算路径。

暗色屏幕上的代码
场景配图 / Unsplash

知道这些之后怎么用

要事实,给材料。别问它“是什么”,把原文贴进去问“这段说了什么”。

要计算,给工具。让它写公式、写代码,别让它心算。

要稳定,压随机性。温度调低,格式写死,同一提示词多跑几次看是否一致。

要它承认不知道,就明说:材料里没有的,请回答“未提及”。这句话比任何技巧都管用。

还可以加一句:不确定的地方标出来,不要用模糊表述盖过去。

书本与字母积木,从基础讲起
场景配图 / Unsplash

常见问题

参数量越大越聪明吗?

同代同架构下大致成立,跨代就不一定了。训练数据质量和后训练方法的影响,往往比参数量更大。

为什么它有时会重复一句话?

生成时陷入了高概率循环。降低温度、加频率惩罚、或者换个说法重新提问,都能缓解。

它真的理解语义吗?

这个问题学界还在争。从使用角度看,把它当成“非常擅长模式匹配的工具”比当成“理解者”更不容易出错。