JOVANA
Library Glossary Getting Started Three Levels Fields How it works Mission
Join the mission
All guides

什么是大语言模型?

撕掉聊天气泡的外壳,大语言模型其实在固执地做一件极其简单的事:一次又一次地猜下一段文字。本篇为你打开引擎盖——它到底学到了什么,规模能换来什么,又有什么是它悄悄做不到的。

一份简单到离谱的工作

当你和 ChatGPT 这类系统对话时,会觉得自己在和某个真正理解你的东西交谈。但掀开引擎盖,里面的发动机只在做一件固执而狭窄的事:给定到目前为止的文字,预测接下来该出现什么。仅此而已。大语言模型(LLM)的本质,就是一台极其精巧的“猜下一块”机器,被训练到猜得好得惊人。

这正是你早先学过的语言建模目标,只是规模远远超出了以往任何尝试。把模型放在海量文本上训练:反复遮住下一块、让它来猜,猜对就给奖励。如此重复数十亿次,它就不再只是鹦鹉学舌——它开始捕捉语法、事实、习语、代码模式,以及论证的节奏,而这一切都只是它在一个预测游戏里越来越擅长的“副产品”。

词元:它所预测的“块”

LLM 预测的那个“块”,既不是单词也不是字母——而是一个词元(token)。通过分词,文本被切成常见的小块:完整的短词、词的片段、标点、空格。现代系统使用字节对编码,它直接从数据中学出自己的词表,于是高频词保持完整,而罕见词被拆成可复用的零件。“Unhappiness”可能被切成“un”“happ”“iness”;一个表情符号可能就是一个词元;一个很长的德语复合词则可能是好几个。

为什么要费劲选这个奇怪的折中?只用字母会让序列长得让人崩溃;只用完整单词又会让词表爆炸,并且模型一遇到没见过的词就束手无策。词元正是务实的折中——一份固定的词表(常见 5 万到 20 万条),通过拼接零件,几乎能拼出任何东西,包括拼写错误和全新的词。每个词元都对应一个嵌入向量,即一个被学习出来的向量,这才是网络真正读入的数字形式。

参数,以及“大”到底大在哪

那么模型究竟存下了什么?它的知识藏在它的[[parameter|参数]]里——也就是网络内部的权重和偏置,和你在前面阶梯里调过的那种旋钮一样,只是数量多得多。早期的经典模型有几千个;今天的 LLM 则有数十亿到上千亿个。模型名字里的“7B”“70B”就是参数量。每一个参数都是一个数字,在训练中被一点点拨动,好让下一个词元的猜测更准一点。

这些参数被组织进一种Transformer 架构——正是这种设计让如此规模成为可能。它的关键招式是自注意力:让每个词元回头看其他每一个词元,并判断在预测下一个词元时哪些更要紧。把几十层这样的注意力层叠起来,再配上足够的参数和足够的文本,你就得到了一个基础模型:一个通用的底座,只训练一次,便可复用于翻译、写代码、问答,以及上百种没人专门训练过它的任务。

input:  "The capital of France is"
  tokens -> [The][ capital][ of][ France][ is]
  model -> probability over the whole vocabulary:
           " Paris"  0.71
           " the"    0.06
           " a"      0.04
           ...        (tens of thousands more)
  pick one, append it, feed it all back in, repeat
生成的一步:模型为每一个可能的下一个词元都输出一个概率,而不是给出唯一答案。

注意模型吐出的是什么:不是一个词,而是词表中每个词元各自的一个概率,由最后一层 softmax 产生。于是“生成”就是一个循环——采样出一个词元,把它粘到输入末尾,再把整段重新跑一遍。这种逐步、从左到右的循环叫作自回归解码,这也正是 LLM 写字方式的由来:一次一个词元,每一个都以它此前说过的全部内容为条件。

从原始预测器到得力助手

刚训练好的基础模型是个出色的“文本续写器”,而不是助手。你向它提一个问题,它可能接着抛出十个问题——因为在它的训练数据里,问题常常成串出现。要把它变成有用的东西,需要在那一巨大的第一阶段(在海量文本上做的预训练)之上,再加两个阶段。

  1. 预训练:阅读互联网、书籍和代码的一大片切片,学习下一个词元的预测。几乎所有的知识与能力都在这里被吸收——几乎所有的成本与能耗也都花在这里。
  2. 在指令上微调:给它看大量“请求 + 优质回应”的范例,让它学会助手的格式——回答问题、遵循指令。
  3. 偏好对齐(RLHF 及其同类):让人类对相互竞争的多个答案排序,再把模型推向人们更偏爱的那一类——更有帮助、更少有害、更不易被诱导去胡说。

第三个阶段——RLHF(基于人类反馈的强化学习)——正是让 ChatGPT 这类系统显得配合、且“大致安全”的那层抛光。但要诚实地看清它是什么:它是在预测器之上训练出的一层品味与礼貌,而不是对“正确性”的保证。RLHF 教会模型人们喜欢哪种答案,却没教它什么是真的。一个听上去很贴心、却自信满满地错着的答案,完全可能一路放行。

规模能换来什么——又换不来什么

过去十年里真正令人意外的发现是:当你加上更多参数、更多数据、更多算力时,模型会以一种平滑、近乎有规律可循的方式变好。这些缩放定律正是各大实验室不断把模型做大的原因。规模买来的是:流畅、广博的知识,以及只凭提示里几个示例就能上手一项任务的能力——上下文学习,模型当场临时适应,而不改动任何参数。

你也会听到涌现能力——某些技能似乎只有越过特定规模才会被“点亮”。请谨慎对待这个词。其中有些“涌现”是真实的,但很大一部分是严苛的“全有或全无”评分造成的假象:一个本在逐步进步的模型,仅仅因为测试只认满分答案,看起来就像从零一跃成神。能力在生长,却很少瞬移。并不存在某个魔法阈值,让模型在那一刻“醒来”。

而规模换不来的东西,同样重要。它换不来真实性:同一台机器能流畅地陈述事实,也会以同样的流畅编造一条假引文、一部不存在的法律——也就是幻觉——因为它优化的是“看起来合理的续写”,而不是“经过核实的续写”。它换不来对任意新问题的真正推理,换不来训练截止之后发生的事件的实时知识,也换不来任何内在目标。它更换不来通用智能:一个更大的下一个词元预测器,是一件更强的窄域工具,而不是一个即将“醒来”的心智。