第一章 那个能帮你写情书的AI,到底是个啥?
你有没有过这样的经历:深夜emo的时候,掏出手机问ChatGPT“怎么给 crush 写情书”,半分钟不到它就给你整出了三段从文艺古风到土味情话的不同版本;出门前随手搜一句“明天北京适合穿什么衣服”,它不仅告诉你穿薄羽绒服,还贴心提醒你带伞因为预报有小雨——这时候你难免会嘀咕:这AI该不会真的有感情、有脑子吧?别急,先泼一盆凉水:它那哪是懂感情懂天气啊,本质上就是个“超级文本接龙工具”,所有的“聪明劲儿”全是从海量文本里“背”出来的,根本没有你以为的“思考能力”。为了让你彻底搞明白这个东西到底是怎么运作的,我们先拿你最熟悉的“写情书”“查天气”这两个场景拆解看看。
<LLM基础> <核心概念> <案例拆解>
我们先来看一个真实的对话案例,你输入:“帮我写一段给喜欢打篮球的男生的情书,要活泼一点,适合在比赛后发的朋友圈”,它输出的内容大概率是这样的: > 致我球场上最帅的23号: > 今天看你投进绝杀三分的时候,我手里的奶茶都差点摔了! > 不是被你的球技帅的,是被你投完球转头对我笑的那一下晃的。 > 以后你的比赛我场场都来,矿泉水我提前冰好,输了没关系,我陪你一起复盘,赢了的话……能不能让我抱一下? > #我的男孩是MVP
看起来是不是特别懂你的心思?甚至比你闺蜜给你出的主意还靠谱?但如果你知道它生成这段内容的整个过程,可能就不会觉得它“聪明”了。它的整个工作流程其实特别简单,和你玩“词语接龙”游戏几乎一模一样,只不过它的“词汇量”不是几百个常用词,而是整个互联网的公开文本,相当于背完了全人类写过的所有公开文章、书籍、帖子、论文。
我们可以用下面这个流程图把它的工作过程拆解得明明白白:
```mermaid graph LR A[用户输入问题] --> B[AI拆解问题为关键词片段] B --> C[从训练数据中匹配所有相关的文本片段] C --> D[计算每个可能的下一个词/短语的出现概率] D --> E[选择概率最高的词拼接成句子] E --> F[输出完整回答] F --> G[若用户继续提问,将新回答加入上下文,继续后续接龙] ```
<纸书排版:流程图居中,下方标注“图1-1 大语言模型基础工作流程”>
你输入的“帮我写一段给喜欢打篮球的男生的情书,要活泼一点,适合在比赛后发的朋友圈”这句话,首先会被AI拆成“写情书”“喜欢打篮球”“男生”“活泼”“比赛后”“朋友圈”这些关键词片段,然后它会去自己“背”过的几千万条情书、校园小说、社交平台文案、体育相关帖子里,疯狂匹配所有符合这些关键词的文本片段。比如它“背”过无数条“致我球场上最帅的XX”“投进绝杀三分”“矿泉水提前冰好”“陪你一起复盘”这样的表达,然后它会计算:在符合这些关键词的文本里,“致我球场上最帅的”后面接“23号”的概率是最高的——毕竟篮球相关的文本里,23号(乔丹、詹姆斯的经典球衣号码)出现的概率远高于其他数字;“投进绝杀三分的时候”后面接“手里的奶茶都差点摔了”的概率也很高,因为社交平台上表达“被帅到”的时候,用“奶茶摔了”“手机掉了”这类日常化的表达比“我太激动了”要多得多;最后“赢了能不能抱一下”也是校园恋爱类文案里的高频组合,所以它就顺理成章把这些片段拼在了一起,输出给你。
你可能会说:那它怎么知道“23号”是篮球相关的?怎么知道“奶茶摔了”是表达激动?其实它根本不知道,它只是“背”过太多“23号+篮球+男生”“奶茶摔了+激动+被帅到”的文本片段,这些片段在训练数据里出现的次数太多了,它就记住了“这些词放在一起的概率很高”,根本不需要理解“23号是球衣号码”“奶茶是用来喝的”这些常识。就像你让一个没出过国的老外背了1000句“在美国点餐要说什么”,他也能接得头头是道,但你问他“汉堡里能不能加辣条”,他大概率会愣住,因为他根本没理解“汉堡”“辣条”是什么,只是背过句子而已。
<电子版侧边栏> 💡 小实验:你可以现在打开任意一个大语言模型,输入“请证明1+1=3”,看看它会怎么接龙?大概率它会给你编出一堆看似合理的理由,比如“在二进制里1+1=10,要是把10看成3的话,1+1就等于3了”,或者“如果1代表一个苹果,另一个1代表一个梨,加起来就是三种水果,所以1+1=3”。这些理由看起来头头是道,但其实是它从训练数据里无数个“证明1+1=3”的搞笑内容里接出来的,根本不是它自己推导出来的——这就是文本接龙的典型特征:只要概率够高,什么话都能接出来。 </电子版侧边栏>
<常见误解> <误区澄清>
现在你可能还有个疑问:那它和以前的Siri、小爱同学有啥区别?不都是回答问题吗?区别可大了,以前的AI是“规则式回答”,现在的AI是“生成式回答”,这俩完全不是一个物种。
你问Siri“明天北京适合穿什么”,它会先去调用天气预报的接口,拿到明天的温度、降水、风力数据,然后按照程序员提前写好的规则回答:“明天北京气温5到12度,有小雨,建议穿薄羽绒服,带伞”——这个回答的所有内容都是提前写好的逻辑,Siri根本不会“生成”新内容,你问一百遍这个问题,它的回答几乎一模一样。但如果你问大语言模型同样的问题,它不仅会告诉你穿薄羽绒服带伞,还可能多一句“路面湿滑的话穿防滑的鞋子不容易摔”,甚至还会补一句“要是你约了人出门,记得提前10分钟走,下雨天容易堵车”——多出来的这两句,就是它实时生成的,是从训练数据里无数个“北京下雨+穿防滑鞋”“下雨天+提前出门”的文本里接出来的,是之前从来没有出现过的定制化内容,这就是生成式AI的核心魅力:它不是调用现成的答案,而是当场给你写一个全新的答案。
但正因为它是当场“写”的,不是调用现成的,所以它特别爱“瞎编”,也就是我们常说的“AI幻觉”。举个最常见的例子:你问它“《三体》的作者刘慈欣有没有获得过诺贝尔文学奖”,它大概率会斩钉截铁地回答“获得了,2023年获得的,获奖作品就是《三体》”。但实际上刘慈欣从来没拿过诺贝尔文学奖,2023年的诺贝尔文学奖得主是挪威剧作家约恩·福瑟。为什么AI会瞎编?因为训练数据里有太多自媒体写的“刘慈欣离诺贝尔文学奖最近的一次”“刘慈欣有望冲击诺贝尔文学奖”的内容,还有很多网友误传他拿过奖,AI把这些内容拼在一起,就觉得“刘慈欣+诺贝尔文学奖”后面接“2023年获得”的概率最高,于是就输出出来了——它根本不会去查证诺贝尔奖的官方名单,因为它没有“求真”的能力,只会接概率最高的词。
<数据支撑> 📌 脚注1:根据斯坦福大学2024年AI指数报告,截至2023年底,全球已有超过60%的大学生曾经使用过大语言模型辅助完成作业,其中近30%的学生反馈曾被AI的“幻觉”内容坑过,比如编造不存在的参考文献、算错数学题、伪造历史事件等。 </数据支撑>
还有个更典型的翻车案例:很多人让AI帮忙写论文参考文献,输入“请给我列5篇关于大语言模型的英文参考文献,格式要符合APA格式”,AI大概率会给你输出这样的内容: > 1. Brown, T. B., Mann, B., Ryder, N., et al. (2020). Language Models are Few-Shot Learners. *Advances in Neural Information Processing Systems*, 33, 1877-1887. > 2. Devlin, J., Chang, M. W., Lee, K., et al. (2019). BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding. *Proceedings of NAACL-HLT*, 4171-4186. > 3. Zhang, Y., Li, X., Wang, H., et al. (2024). A Novel Approach to Large Language Model Alignment. *Journal of Artificial Intelligence Research*, 70, 123-145.
前两篇确实是真实存在的经典论文,但第三篇完全是AI编造的:作者“Zhang, Y.”太常见了,题目“大语言模型对齐的新方法”也太泛了,期刊也存在,但这篇论文根本不存在——AI只是“背”过太多APA格式的参考文献,知道“作者+年份+题目+期刊+页码”是这个格式,所以就随便拼了一篇符合格式的内容出来,根本不会去查证这篇论文是不是真的发表过。要是你不注意直接用到论文里,轻则被导师骂,重则被判定学术不端,这就是AI“瞎编”的典型危害。
<局限性> <核心特征>
你可能会问:那它连1+1都不会算吗?其实大部分时候它会算对,但本质也不是它在“算”,而是它“背”过太多“1+1=2”的文本片段,所以接出来的答案刚好是对的。但你要是让它算个复杂点的乘法,比如“987654321乘以123456789等于多少”,它大概率会算错,输出一个看起来很像正确答案的数字,因为它根本没有计算能力,只是从训练数据里找类似的乘法结果接出来,要是训练数据里没有这道 exact 的题,它就会瞎编一个。就像你让一个背过乘法口诀表但没学过乘法运算的小学生算“12*13”,他可能背过“12*12=144”,就瞎接一个“156”,看起来像模像样,其实是错的。
还有个更搞笑的例子:你问它“怎么把大象装进冰箱”,它大概率会给你分三步:“第一步打开冰箱门,第二步把大象放进去,第三步关上冰箱门”,看起来逻辑特别清晰,但实际上它根本不知道大象有多大、冰箱有多小,只是训练数据里太多这个冷笑话,它“背”过,所以就接出来了——它根本没有“大象比冰箱大所以装不进去”的常识,只是知道这句话接在这里大家会觉得好笑。
<互动实验> 💡 电子版专属互动:点击此处查看真实用户让AI写情书的10大翻车案例 👉 [跳转链接] </互动实验>
<纸书排版:此处可插入手绘插画,内容是“用户问AI怎么把大象装进冰箱,AI给出三步回答,旁边画着一头大象卡在冰箱里,AI在旁边挠头”>
现在你已经搞明白大语言模型的核心特征了:它就是个“超级文本接龙工具”,所有的能力都来自对海量文本的学习,没有意识,不会真的思考,不会主动求索真相,只会接概率最高的内容。那问题来了:这个接龙工具是怎么从以前那个只会说固定话的聊天机器人,进化到现在能写情书、写代码、写论文的?为什么以前的AI接龙最多接个“小红帽”的故事,现在的能接出一整篇科幻小说?
秘密就在两个核心
秘密就在两个核心:第一是它“背书”的量够大、够全,第二是它“背书”的方法够聪明,知道怎么
秘密就在两个核心:第一是它“背书”的量够大、够全,第二是它“背书”的方法够聪明,知道怎么把背过的内容揉成连贯的、符合你需求的答案。我们先来说说这个“背书量”到底有多夸张。
<LLM基础> <核心概念> <训练数据>
现在主流的大语言模型,比如大家最熟悉的ChatGPT背后的GPT系列,训练数据的总量大概是45TB——这是什么概念?我们平时看的一本普通小说,比如《三体》全集,大概是3MB,45TB相当于可以装下1500万本《三体》,要是换成纸质书摞起来,得有4500米高,比世界第一高楼迪拜哈利法塔还高300米。这还不止,这些数据不是随便抓的,是来自整个互联网的公开内容:从全世界的维基百科、学术论文、新闻网站,到豆瓣的书评、微博的帖子、小红书的情书文案、抖音的短视频字幕,甚至包括GitHub上的公开代码、专利局的公开专利文件,只要是公开的、能被爬取到的文本,几乎都被塞进了模型的“脑子”里。
<纸书排版:此处插入数据对比图,左侧是摞成4500米高的《三体》书堆示意图,右侧是45TB硬盘的实物图,下方标注“图1-3 大语言模型训练数据量级直观对比”>
你可能会问:背这么多东西,它不会乱吗?当然不会,这里就要说到它“背书的方法”有多聪明了。早期的文本接龙工具,比如1960年代出现的第一个聊天机器人ELIZA,就是个典型的“笨背书”的例子:它的“脑子”里只有几百条固定的对话规则,比如你说“我心情不好”,它就接“你为什么心情不好?”,你说“因为工作太累”,它就接“工作太累是怎么样的感觉?”,完全不会变通,你问一百遍同样的问题,它的回答一模一样,因为它根本没有“背”足够多的内容,只能按固定的规则接话。
但大语言模型的“背书方法”完全不一样,它不是在背固定的句子,而是在背“词和词之间的概率关系”。就像你背英语单词的时候,不是只背“apple”是“苹果”,还要背“apple”后面常接“pie”(苹果派)、“juice”(苹果汁),而很少接“car”(汽车),大语言模型背的就是这种“组合关系”,而且它背的不是单个词的组合,是整段话里所有词的概率关系:你输入的“帮我写一段给喜欢打篮球的男生的情书,要活泼一点,适合在比赛后发的朋友圈”这句话里的每一个词,和后面可能出现的每一个词之间的概率,它都算得清清楚楚。
<LLM基础> <技术原理> <概率计算>
我们可以用更直观的例子来理解:假设你问它“今天北京天气怎么样”,它“背”过的内容里,“北京”后面接“天气”的概率是99%,“天气”后面接“怎么样”的概率是98%,“怎么样”后面接“今天”的概率是70%,“今天”后面接“气温”的概率是60%,“气温”后面接“15度”的概率是30%,“15度”后面接“适合穿”的概率是20%,“适合穿”后面接“薄外套”的概率是15%——这些概率加起来,它就会输出“今天北京天气怎么样,气温15度,适合穿薄外套”。但如果你后面补一句“我在北京出差,明天要见客户”,它就会重新计算概率:“见客户”后面接“建议穿”的概率是40%,“建议穿”后面接“正装”的概率是35%,所以它会接着输出“建议穿正装”。你看,它不是背固定的回答,而是根据你输入的每一句话,实时计算后面最可能接什么内容,这就是它能给出定制化回答的核心原因。
<电子版侧边栏> 💡 小实验:你可以试试连续问大语言模型三个问题:“猫喜欢吃什么?”“猫为什么喜欢抓老鼠?”“猫和狗有什么区别?”,你会发现它回答第三个问题的时候,会主动提到前面两个问题里提到的“猫”“老鼠”的内容,这就是因为它把前面的对话都放到了“上下文”里,计算概率的时候会参考前面的所有内容,就像你聊天的时候也会记得前面说过什么一样。但如果你中间插入20句无关的内容,比如“1+1等于几?”“李白写过哪些诗?”“怎么煮鸡蛋?”,再回去问“猫和狗有什么区别?”,它大概率会忘掉前面猫和老鼠的内容,因为它的“上下文记忆”是有限的,一般最多只能记住几万到十几万个词,相当于一本短篇小说的长度,超过这个长度它就会“忘事”。 </电子版侧边栏>
<常见误解> <误区澄清>
现在你可能还有个疑问:那它和百度谷歌搜出来的答案有啥区别?不都是给你信息吗?区别可太大了。搜索引擎是“帮你找现成的答案”,它会把互联网上已经存在的相关内容列给你,比如你搜“北京明天天气”,它会给你跳转到天气预报的页面,里面是气象台已经算好的准确数据;但大语言模型是“帮你编一个答案”,它不会给你跳转到原始页面,而是把所有相关的信息揉碎了,重新拼成一个全新的回答给你。
举个真实的例子:你问搜索引擎“刘慈欣有没有拿过诺贝尔文学奖”,它会给你列出一堆网页,第一条肯定是“刘慈欣未获得过诺贝尔文学奖,2023年得主是约恩·福瑟”,你一看就知道答案是什么;但你问大语言模型同样的问题,它大概率会斩钉截铁地告诉你“获得了,2023年获得的,获奖作品是《三体》”,因为它把所有“刘慈欣”“诺贝尔文学奖”“2023年”这些词的相关内容拼在一起,刚好拼出了这个错误的答案,而且它说得特别肯定,特别容易误导人。
这就是为什么我们说大语言模型是“超级文本接龙工具”,它不是“找答案”,是“编答案”,编得好不好,全看它背的内容够不够多、概率算得够不够准。那为什么它有时候能编得和真人写的一样好,甚至比真人写得还好?这就说到AI领域一个特别有意思的现象——涌现能力。
<LLM基础> <核心概念> <涌现能力>
什么是涌现能力?你可以把它理解成“背多了突然就会了”。就像你小时候背古诗,一开始背10首只会背那10首,背到100首的时候突然就会自己写两句打油诗了,背到1000首的时候突然就会写律诗了,没人教过你怎么写,就是背多了突然就会了。大语言模型的涌现能力也是一样:当它的训练数据量、参数规模(也就是“脑子”的大小)大到一定程度的时候,它会突然出现一些之前小模型根本没有的能力。
<数据支撑> 📌 脚注2:根据斯坦福大学2024年AI指数报告,2020年发布的GPT-3参数规模为1750亿,是2019年发布的GPT-2的100倍,当时研究人员发现,GPT-3不仅能写文章、写诗,还能做简单的数学题、写代码、甚至做逻辑推理,这些都是参数只有15亿的GPT-2完全做不到的,这种“量变引起质变”的现象就是典型的涌现能力。 </数据支撑>
我们可以做个对比:2020年之前的小语言模型,参数只有几亿到几十亿,训练数据只有几百GB,你让它写情书,它大概率会写:“亲爱的,你像春天的花一样美丽,我爱你”,特别老套,根本不会有什么“奶茶差点摔了”“冰好的矿泉水”这种接地气的内容;但2022年之后的大语言模型,参数有几千亿,训练数据有几十TB,你让它写情书,它能给你写出三段不同风格的,还能符合“给打篮球的男生”“比赛后发朋友圈”的所有要求,甚至还能给你加emoji加话题标签,这就是涌现能力的体现——没人教过它怎么写朋友圈文案,它只是背了太多朋友圈的内容,突然就会写了。
<纸书排版:此处插入对比图,左侧是2020年小模型写的情书,文字老套,旁边画个挠头的小人;右侧是2022年大模型写的情书,活泼接地气,旁边画个点赞的小人,下方标注“图1-4 不同规模模型写情书的效果对比”>
你可能会说:那它这么会写,该不会真的懂感情吧?别傻了,它根本不懂。你让它写“给打篮球的男生的情书”,它能写得这么贴合,只是因为它背了太多“篮球+恋爱+朋友圈”的内容,刚好把这些内容拼在了一起,你要是让它写“给喜欢跳芭蕾的男生的情书”,它大概率会给你写出一堆“你跳跃的样子像天鹅”这种奇怪的内容,因为它背的“芭蕾+男生”的内容太少了,拼出来的内容就会很离谱。就像你背了很多关于篮球的作文范文,让你写一篇关于芭蕾的作文,你大概率会写跑题,不是因为你懂芭蕾,是你背的篮球内容太多了,忍不住要往篮球上靠。
还有个更典型的例子:你让AI写一首藏头诗,藏“生日快乐”,它能写得特别好,每句的第一个字刚好是“生”“日”“快”“乐”,看起来特别有才华,但其实它根本不懂什么是生日,什么是快乐,只是它背了太多藏头诗,知道怎么把字藏在每句的开头而已。你要是让它藏“我是猪”,它也能给你写出一首特别文雅的藏头诗,完全不会觉得不好意思,因为它根本没有“猪”这个概念的贬义,只是知道这几个字要放在每句的开头。
<局限性> <核心特征>
现在我们已经搞明白大语言模型的两个核心了:第一是背书量足够大,从几GB到几十TB,背了全人类几乎所有的公开文本;第二是背书方法足够聪明,不是背固定的句子,而是背词和词之间的概率关系,能根据你的输入实时组合出新的内容。再加上量变引起