☰
大模型发展史学习笔记:从Transformer到私有化部署的关键技术
2026/10/26 14:22:27 网站建设 项目流程

2022年底ChatGPT把大模型这个词彻底带火了,但真正让我决定坐下来整理这份学习笔记的,是后来我在各个技术社区里看到的高频问题:大模型上下文长度到底怎么算、模型微调和大模型部署怎么上手、多模态大模型最近进展到哪了、企业大模型私有化部署靠不靠谱。这些问题单独看都是操作题,但串起来看,全是同一棵树上长出来的枝杈,那棵树就是大模型的发展史。这篇笔记适合两类人:一类是想系统搞懂大模型底层的研发,一类是已经在用API、想进一步理解模型为什么能这样做事的同学。我不打算写成教科书,按时间线把关键节点、核心原理和踩坑经验一起揉进去。

1. 从词向量到Transformer:今天的大模型是从哪棵树上长出来的

动笔之前我把发展史从头捋了一遍,发现很多现在觉得理所当然的设计,往前翻都有漫长的铺垫。大模型不是2020年突然蹦出来的,它最早能追溯到让计算机"理解"词语这件事。

1.1 词向量时代:先让机器听懂词,再谈会说话

早期的自然语言处理完全靠规则和统计,n-gram模型把句子切成连续若干个词,统计它们在语料里的共现频率,然后算概率。这套路子在短文本上表现还行,一旦遇到没见过的组合就抓瞎,因为数据稀疏问题太严重了。

真正的转机是词向量。Word2Vec在2013年提出以后,神经网络语言模型才找到了一种通用的表示方式:把每个词映射成一个几百维的稠密向量。这里最有意思的是它的副产品——词向量之间的算术关系,"king - man + woman ≈ queen"。这个效果直观说明:词的语义被编码进了向量的几何结构里,同类词在空间里会聚成簇,词和词的关系可以通过向量运算体现。

我看很多学习笔记会跳过这一段直接讲Transformer,这是个错误。没有词向量带来的"分布式表示"思想,就不会有后来把整个句子甚至整篇文档表示成向量的思路。换个好懂的类比:词向量相当于给每个词办了张身份证,上面的信息不是名字,而是这个词在各种语境下的"社会关系"。机器只有先把词从离散符号变成连续坐标,后面的神经网络才能对语言做计算。

1.2 注意力机制:在Transformer之前,NLP靠的是"逐字翻译+记忆压缩"

在2017年之前,处理序列问题的主力是RNN和它的改良版LSTM、GRU。它们的做法很朴素:从左到右逐个读词,靠一个隐状态把前面的信息压缩带走。问题显而易见——信息从第1个词传到第100个词,路上的损耗太大。LSTM搞了门控机制想缓解梯度消失和长程依赖,但本质上还是"人肉搬运",距离一长照样丢信息。

机器翻译领域的Seq2Seq架构给这件事捅了个窗户纸:编码器读完整句话,把语义压缩成一个向量,解码器再从这个向量里生成译文。瓶颈全在那个中间向量上,句子一长就装不下。于是注意力机制被加了进来:解码器生成每个词的时候,不要只看那个被压缩的向量,而是回头"关注"编码器每一步的输出,按权重挑选哪些信息更重要。

这一步在思路上是革命性的。它彻底放弃了"把全部信息压进一个向量"的执念,改成按需取用。今天大模型里的Attention,核心思想和当时完全一样:每个词都去和序列里的其他词计算相关性,然后按相关性加权汇总信息。只是它把"解码器回头看编码器"变成了"每个位置看所有位置",也就是自注意力。

1.3 2017年那个7月:为什么《Attention is All You Need》能活到现在

2017年Google发表《Attention is All You Need》,提出Transformer架构。这篇论文最狠的地方不是"提出了一种新网络",而是用一句话否定了当时的主流信仰:你不需要循环,不需要卷积,只要注意力,就行了。

Transformer干了两件关键的事。第一是用自注意力把任意两个位置之间的交互距离变成1,词和词之间直接连接,长程依赖问题从结构上被解决;第二是整个计算过程可以并行,RNN只能一步一步走,Transformer可以一次把整句喂进去同时算,训练速度快了几个数量级。

为了让模型知道词的先后顺序,还加了位置编码,因为自注意力本身没有顺序概念,把位置信息用三角函数或可学习的向量编码进去才分得清词序。之后又演化出多头注意力:让模型从多个子空间同时看输入,有的头关注语法关系,有的头关注指代关系,像多个专家从不同角度审查一句话。再配上残差连接和LayerNorm,一个能堆很深却不崩的网络就算成型了。

我自己整理到这里的时候标记了一句话:Transformer的本质是把"记忆"和"计算"分离。RNN的隐状态既是记忆又是计算逻辑,耦合太紧;Transformer则靠注意力动态从整个序列里取信息,参数主要负责"怎么取"和"取完之后怎么加工"。这个解耦让它拥有了恐怖的扩展性——只要算力和数据够,模型的层数和参数量可以一直往上加。大模型能"大"起来,结构基础在这里就埋下了。

2. 预训练-微调范式:大模型"大力出奇迹"的底层逻辑

架构是骨架,让Transformer真正拥有通用知识的是预训练。这一章是发展史里最关键的转折,也是理解后续微调、对齐、部署所有话题的前提。

2.1 自监督预训练:从海量文本里"白嫖"知识

Transformer刚出来时,NLP社区的通用做法还是"用标注数据训练模型完成任务",直到BERT和GPT系列把自监督预训练发扬光大。自监督的意思是:不需要人工打标签,直接从文本本身构造学习任务。BERT的任务是完形填空,随机把句子中的部分词mask掉,让模型猜被遮住的是什么;GPT的任务是预测下一个词,给定前文预测下一个最可能的词。

这两个任务看起来都很简单,甚至像游戏,但威力来自数据的规模。Wikipedia、书籍、网页、论文,几万亿个token往里灌,模型被迫学会语法、事实、逻辑关系、常识,甚至推理套路。这里有个很重要的理解:所谓"模型学到了知识",本质上是把训练数据里的统计规律压缩进了参数里。参数是容量有限的存储,数据里的冗余信息被丢弃,留下来的规律就是"知识"。

有个容易混淆的说法是"模型在搜索引擎里找答案"。不对。推理时模型没有访问任何外部数据库,它是在根据参数里固化的规律做概率生成。这也是为什么预训练语料的质量和覆盖面,直接影响模型的能力上限——数据是大模型的隐形天花板。

2.2 微调:把通用底座变成专业助手

预训练出来的是一个"什么都知道一点,但不会按指定格式执行"的通用模型。怎么让它做特定任务?微调。做法很简单:拿一批带标签的任务数据,比如"输入是用户问题,输出是标准答案",在预训练模型基础上继续用小学习率训练几个epoch,把模型的参数朝着任务方向拉。

微调之所以在工程里特别重要,是因为绝大部分企业没有几亿甚至几十亿token的通用语料,但几千几万条业务数据还是拿得出来的。拿一个开源基座模型,用领域数据微调,就能让模型学会客服话术、法律条款或者设备维修知识。和从零训练相比,微调把成本从"亿级"降到了"十万级"甚至更低,这是大模型得以在企业落地的关键一环。

在开发方式上,现在大家更常用的是LoRA这类参数高效微调方法。它不直接更新全部权重,而是给原来的权重矩阵加一个小维度的低秩增量矩阵,训练时只更新增量部分。我实际用下来,LoRA在消费级显卡上就能跑通,训练速度快,换任务时切换增量文件就行,多业务共用一个底座模型完全可行。

2.3 Scaling Law:为什么规模大了,能力就上来了

预训练和微调揭示了一个经验规律:模型越大、数据越多、算力越猛,最终效果越好,而且往往好得超出预期。OpenAI在2020年发表Scaling Laws论文,把这三者的关系量化了:模型性能与参数量、数据量、计算量之间存在近似幂律关系,不是线性涨,是曲线抬升。

这里我想澄清一个常见的误解。Scaling Law说的是"在合理的数据量下,规模越大效果越好",不是"无脑堆参数就有奇迹"。后来很多团队复现时发现,数据和模型规模必须同步涨,只扩参数不扩数据,性能会提前饱和。社区里那句"大力出奇迹"是对的,但"大力"指的是参数量、数据量、算力三个引擎同时踩油门,缺一个都会拉胯。

所谓"涌现能力"也跟规模强相关:模型小的时候某些能力根本测不出来,比如链式推理、上下文学习,参数跨过某个量级后才突然出现。对这种现象现在还有争论,有人认为是测试指标不够平滑,有人认为是能力本来就潜伏在统计规律里。无论如何,这种非线性上升让行业下决心继续堆规模,也让智算中心、大规模训练集群成了必然选择。

阶段核心目标输入数据典型资源量级
预训练学通用语言规律与知识海量无标注文本数千张GPU起步
监督微调学会回答格式与领域风格任务输入-输出对1~8张GPU可跑(LoRA)
对齐(RLHF)让输出符合人类偏好人工排序/反馈数十张GPU通常足够

这张表我建议新手贴在桌前。很多人一上来就想复现预训练,这不对;绝大多数人真正要做的只是后两行,而这两行的资源门槛,现在已经低到一台工作站就能起步。

3. 三次能力跃迁:上下文窗口、指令对齐与多模态

如果只看参数规模,发展史就是一条单调上涨的直线,但真实的大模型进化有三条支线,每一条都改变了模型的使用方式:一是能"看多远",二是能否"听懂人话",三是能不能从纯文本扩展到图像、音频。

3.1 上下文窗口:从512个token到百万token

早期BERT的上下文长度只有512个token,GPT-3也才2048,考的就是"短时记忆"。传统Transformer里,把序列长度翻倍,注意力计算量按平方翻倍,长文本处理成本极高。所以很长一段时间里,处理长文档都是大模型的痛点。

后来大家想了各种办法扩展上下文窗口。一是位置编码的改进,RoPE把位置信息用旋转矩阵编码进注意力计算,外推效果比固定位置编码好很多;二是注意力机制的结构优化,滑动窗口、稀疏注意力、FlashAttention等把计算复杂度降下来,让长序列在显存和时间上都变得可承受;三是对推理显存的优化,KV Cache技术把历史token算出的Key和Value缓存住,不用每次重算。再到2024年前后,百万级上下文的产品开始出现在市场上,直接改变了"长文档分析"这个品类的玩法。

但有个残酷的工程现实:上下文长度是上限,不是保证。模型在窗口前段的信息会随时间衰减,中段可能被"健忘区"吃掉,最后那段往往记得最牢。我做长文档提取时最常用的办法是把文档分段+检索定位,先找候选段落再喂给模型,而不是一口气全塞进去。上下文窗口再大,也代替不了检索和精读的结构化思路。

3.2 指令对齐:让模型从"接话"变成"执行任务"

预训练模型其实很早就存在了,但为什么直到2022年底才被大众接受?差在"对齐"。预训练模型擅长续写文本,你问它问题,它会模仿人类写作,而不是老老实实回答。InstructGPT这类工作解决了这个问题:用人类标注的"指令-回答"数据先做监督微调,再用RLHF(人类反馈强化学习)把模型的输出往"人类喜欢的方向"调整。

RLHF的流程现在已经是行业标准,拆开看有三步。第一步,收集人类对同一问题多个回答的偏好排序,训练一个奖励模型;第二步,用这个奖励模型给策略模型的输出打分;第三步,通过PPO等强化学习算法更新生成模型,让高分输出概率变大。整个过程相当于给模型请了一位"品味老师",反复告诉它什么回答让人满意。

这里有个值得记住的名字叫"对齐税":对齐之后模型的比赛跑分可能会小幅下降,因为它不再追求"最可能的续写",而是追求"对人类有用的续写"。这提醒我们在评测模型时要区分基础能力和对齐能力,跑分变低不一定是模型变笨了,可能是被调教得更听话了。

3.3 多模态大模型:当文本、图像和声音共用一个底座

大模型发展史的第三条支线是多模态化。早期的做法是把图片先转成文本描述再送进语言模型,这是"绕路"而不是融合。真正的转折是让模型同时学习图像和文本的联合表示,比如CLIP用图像-文本对做对比学习,把两种模态映射到同一个向量空间;GPT-4V和后续产品则直接把图像输入编码与文本token一起喂给Transformer。

多模态为什么难?因为文本是离散符号,图像是连续像素,音频是波形采样,三种数据在底层特征完全不同。解决方案到今天依然是"找共同表示空间+大规模图文/音视频对齐数据"。我实际体验多模态模型做文档OCR、截图理解、图表问答时,效果已经相当能打,但在视频时序理解和物理常识判断上还经常翻车。

从发展史的视角看,多模态不是大模型的额外功能,而是人类交互的自然延伸。纯文本模型关心的世界局限在符号里;多模态模型第一次把感知和语言放在了一起,这为具身智能、智能体应用打底。热搜里"多模态大模型 最新进展"常年被讨论,正是因为它处在下一波能力跃迁的最前沿。

4. 工程化浪潮:从开源模型到本地部署、私有化落地

发展史走到2023年之后,主战场从实验室移到工程现场。大家不再只关心模型跑分多高,而是关心它能不能在自家服务器上跑起来、能不能离线使用、能不能私有化部署。这一波浪潮彻底改变了大模型的学习门槛。

4.1 开源生态与免费API:为什么现在学大模型是最好的时机

早期接触大模型只有API一条路,现在环境完全不同。Meta开源了Llama系列,国内的Qwen、DeepSeek、GLM等团队也陆续开放了权重,社区里还涌现了Ollama、LM Studio这类一键部署工具。这意味着你不需要写一行代码,就能在本地把一个大语言模型跑起来。网上搜"免费大模型api"也能找到不少对外提供限免额度的服务,用来做原型验证和产品Demo非常合适。

我的建议是实操顺序反过来:先玩开源本地模型,再用API做产品。先在本地跑一遍,你会直观感受到"模型权重"和"云端API"的区别——显存、量化、推理速度这些概念会直接砸到你脸上,这种经验是调用API永远学不到的。等你理解了瓶颈在哪,再引入免费API或商业API做功能研发,就能做出更合理的选型判断。

4.2 本地部署与私有化的完整链路

把模型部署到自己的机器上,无非五步:选模型、选硬件、量化、跑推理、封装接口。每一步都有坑,我逐个说。

第一步选模型。先明确任务复杂度,不是所有任务都要70B模型。做文本分类、信息抽取,7B以内足够;做复杂推理和长文创作,再考虑大模型。本地机器32G内存的,7B模型量化后跑得很舒服;16G内存就老老实实选3B~4B的小模型。

第二步硬件选型。自注意力计算涉及大量矩阵乘法和KV缓存,显存决定一切。我用过一个粗算公式:显存需求约等于参数量×量化位数÷8,再乘以1.3的冗余系数。比如7B模型用4bit量化,大约需要7×4÷8=3.5GB模型权重,再加KV缓存和推理中间变量,8GB显存刚好能跑,16GB就比较从容。

第三步量化。把原始FP16权重压成INT8甚至INT4,模型体积和显存需求直接掉一个量级。GGUF和GPTQ是两种主流格式,前者适合CPU/Ollama生态,后者适合GPU推理。量化之后确实会有轻微精度损失,但实际任务里大多感受不到,对比之下性价比极高。

第四步选推理框架。轻量场景用Ollama或LM Studio,一条命令就能起服务;生产级场景用vLLM,它的 PagedAttention 显存管理机制能让吞吐量比朴素实现高好几倍。我自己实践下来的体会是,先Ollama跑通再换vLLM优化,不要一上来就追高并发。

第五步封装接口。把模型服务封装成OpenAI兼容的HTTP接口,上层应用完全不用关心后端是本地模型还是云API。这也是现在所有工具链的默认做法,切换模型供应商只需要改base_url和一个key,开发效率极高。

还有一类场景是真正意义上的"边缘侧":嵌入式开发里想跑大模型,比如在开发板上做人机交互、异常识别。这里就得选1B以下甚至500M量级的模型,再剪枝、量化、转ONNX或擎天引擎,目标是把推理跑在NPU上。嵌入式大模型和云端大模型的选型逻辑完全不同,别拿一张"榜单第一"的模型硬塞到内存捉襟见肘的设备里,那是在给自己找麻烦。

4.3 私有化部署与智算中心:从单机到训练集群

企业大模型私有化部署是过去两年最火的企业级话题,核心动机是数据不出域。企业手上有客服记录、合同文档、工艺流程这些高敏感数据,传云端风险太大,于是把开源模型部署到自己的机房里,用内部数据微调,再通过内网API供业务调用。这套方案的技术栈和4.2完全一致,只是多了安全防护、多租户隔离和监控告警这些企业级组件。

再往上一个层面,当企业要从"用模型"变成"训模型",单机的算力就不够了。大模型训练是典型的分布式计算问题:几千张GPU要把数据、模型参数切分到不同设备上,通过高速网络同步梯度。建设智算中心的关键不在买多少卡,而在于网络拓扑、数据吞吐、任务调度一整套体系。我自己接触到的痛点大多是利用率上不去——算力闲置、故障卡难发现、数据预处理的IO跟不上计算。这些基础设施问题,本质上都是大模型规模化发展的"后厨",看不见,但决定上菜速度。

这里也给个冷静的建议:企业刚接触大模型时,别一上来就规划智算中心。先私有化部署学习,再微调验证效果,最后等业务量明确,再谈训练集群。发展史的顺序不一定是你的项目顺序。

5. 发展史的暗线:评测、数据安全与投毒防御

成绩单上大家都盯着能力曲线,但大模型发展史里还有一条暗线,决定了这套技术能不能被社会和企业放心使用。这条暗线是评测、数据安全与对抗攻击。

5.1 评测:从BLEU到MMLU,跑分到底在测什么

早期机器翻译用BLEU,直接看生成文本和参考译文的重合度,简单粗暴但看不出语言质量。进入大模型时代,评测范式变成了"考试":MMLU覆盖几十个学科的多选题,测试知识和推理;GSM8K考小学数学应用题,测试数学推理;HumanEval让模型写代码,直接执行测试用例。这些基准一度是衡量大模型能力的最重要标尺,也因此催生了大量"大模型跑分网站",各家模型按榜单排座次。

对跑分,我一向建议保持怀疑。榜单分数高不等于业务好用,原因有三个:第一是数据污染,训练语料里可能已经混入了测试题,模型"背过答案";第二是过拟合基准,开发者针对特定测试集反复调优,分数虚高;第三是测试集和真实业务分布差异大,客服场景里的口语化、多轮、歧义问题,基准测试根本不覆盖。所以现在业内越来越倾向用"真实场景回放评测":把线上真实日志脱敏后灌给模型打分,看业务指标的提升,而不是看榜单排名。

5.2 数据投毒与安全测试:模型可能被人为"带偏"

大模型的训练数据来自互联网,这既是优势也是噩梦。数据投毒指攻击者在训练语料里混入精心构造的恶意样本,给模型埋下"后门"。比如在特定触发词出现时,模型会输出错误答案或恶意指令。这类攻击在开源模型生态里尤其需要警惕:权重公开意味着任何人都可以检查,但训练数据集却往往不透明;一个看似正常的开源模型,可能带着数据集里被污染的痕迹。

安全测试因此成了大模型上线前必须做的事。常见的测试方法包括:红队测试,专门用对抗性提示去诱导模型说出危险内容;越狱测试,尝试绕过安全对齐;投毒检测,对训练数据做统计筛查,寻找异常样本簇。我见过不少团队重功能轻安全,模型部署后才发现会被几句话绕晕,甚至输出有害内容,到那时候补安全措施的成本远高于一开始就做红队测试。

对普通开发者和企业,我给出的最低限度建议是:使用任何开源模型前,先跑一遍主流越狱样例;微调时清洗数据,把明显异常或重复的样本剔除;部署后加一层输入输出过滤,作为兜底。大模型不是只读工具,它是一段对你负责的代码,你喂给它什么、怎样防御攻击,直接决定它为企业创造了价值还是埋了雷。

5.3 知识抽取与数据标注:质量是被忽视的基石

安全之外,数据质量是大模型发展史里最容易被低估的环节。大模型训练和微调的效果,很大程度取决于数据质量,而知识抽取和数据标注就是质量的上游。一个成熟的知识抽取框架可以把非结构化文本转成结构化三元组(实体-关系-实体),为垂直领域微调提供干净语料;数据标注质量则直接决定监督微调和RLHF的上限——模型不可能学到比人类标注更好的答案。

我从实操里的体会是,高质量标注数据的价值怎么强调都不过分。同样是几千条微调数据,垃圾数据和精标数据训练出来的模型效果能差一个档次。现在很多团队靠大模型互相标注、互相校队,这能提效率,但必须做抽检,因为标注错误会顺着训练过程被模型吸收,形成系统性偏差。数据质量不是锦上添花,是一票否决项。

6. 我的学习路线图:按时间线把大模型知识串起来

如果上面的内容你都跟下来了,最后这部分是我给后来者整理的一条落地路线,按时间线从原理到工程串起来,照着走能少走很多弯路。

6.1 论文路线:按发展史顺序读,不按热度读

我推荐的论文阅读顺序就是发展史的顺序:Word2Vec解决词的表示,Seq2Seq+Attention解决长序列建模,Transformer完成架构革命,BERT和GPT分别定义了双向编码和自回归生成两条路线,InstructGPT把对齐写进教科书,Llama等开源模型让研究社区跑通了完整复现,再往后是FlashAttention、RoPE、MoE等工程优化和架构改良。每篇论文看到"解决了什么问题、付出了什么代价、留了什么坑"这三个问题,就算读懂了。

6.2 实践路线:API → 开源模型 → 微调 → 私有化部署

实践路线我建议分四步走。第一步,调用一个商用或开源API,写一个带缓存和日志的调用封装,把Prompt调优的基础打牢。第二步,用Ollama在本地跑一个7B左右的开源模型,理解量化、显存、推理速度这些概念。第三步,准备几千条领域数据,用LoRA做一次微调,验证领域能力能否提升。第四步,做一次私有化部署,把vLLM起好,加鉴权、限流、监控,让模型真正成为一个可被业务调用的服务。四步走完,大模型开发的基本闭环就建立了。

6.3 三个提醒:关于榜单、长上下文和安全性

最后分享三个我踩过坑之后最想说的提醒。第一,不要只看跑分榜单,把候选模型拿到自己的数据上跑一版离线评估,你就能发现指标和实际的落差。第二,上下文长度不是越大越好,先算清你的文档实际需要多长的窗口,再决定用长窗口还是检索方案,否则你可能为用不上的能力付了昂贵的显存成本。第三,安全测试永远前置,数据投毒不是科幻片情节,开源模型红利和风险同源,把红队测试放进发布流程,才能安心把模型接到真实业务上。

这份笔记写到这里,我自己最大的体会是:大模型的发展史并不是一条单线程的技术进步曲线,而是架构、数据、算力、安全、工程化多条线交织推进的结果。理解了这个,再去看任何一个"最新热点",你都能迅速找到它在历史坐标里的位置。如果你正在学大模型,我建议你也像我一样,先画一条属于自己的发展时间线,把知识点挂到线上——后面再学什么,都只会越来越快。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询