十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

模型后训练三阶段全景:预训练、SFT(监督微调)与RL(强化学习)的本质区别

模型后训练三阶段全景:预训练、SFT(监督微调)与RL(强化学习)的本质区别 15-模型后训练三阶段全景预训练、SFT监督微调与RL强化学习的本质区别系列导读前两篇聊的是怎么评估这一篇进入怎么变强。基于李博杰《深入理解AI Agent设计原理与工程实践》的后训练章节结合我做售货柜Agent模型调优的实践把预训练、SFT、RL这三件事一次讲透。一、三阶段全景一条流水线三种完全不同的学习方式一个能干活的模型诞生大致经过三个阶段预训练Pre-training → SFTSupervised Fine-Tuning监督微调 → RLReinforcement Learning强化学习 海量文本学语言 示范数据学格式与流程 试错反馈学决策与泛化一句话概括三者分工预训练学会语言与世界知识——压缩了互联网SFT学会按指令干活的样子——模仿人类示范RL学会把活干成——以结果为目标自我进化。新手最常犯的混淆是认为SFT和RL都是微调差不多。差很多。下面逐个拆。二、预训练在做什么预测下一个词预训练的目标函数朴素到令人发指给定前文预测下一个词next token prediction。输入今天天气真 模型很(0.6) 好(0.3) 差(0.05) ...就这么一个简单目标配上万亿级token和千亿级参数涌现出了语法、事实知识、推理能力甚至代码能力。为什么因为要把下一个词预测准模型不得不内化世界的统计结构——预测水烧到100度会___你必须懂物理常识。预训练的产出是一个基座模型Base Model。它像个博览群书但不会聊天的学者你问它如何申请退款它可能接着写如何申请退货如何投诉商家“——它只是在进行文本续写根本没意识到你在提问”。这也是为什么基座模型不能直接当Agent用。对我们做业务的人来说预训练基本是巨头的事几万张GPU的军备竞赛我们的战场在后面两个阶段。三、SFT的本质换了数据的预测下一个词SFT的关键洞察是它和预训练用的是同一个目标函数——预测下一个词只是换了数据。预训练的数据是互联网上的原始文本SFT的数据是高质量的指令-回答示范对。比如输入指令对话历史工具结果 用户我扫了码没出货钱扣了 [工具结果] 订单A123实付12元柜机日志出货电机超时 目标输出 {action: refund, order_id: A123, amount: 12.0}模型在这些示范数据上继续做预测下一个词就学会了见到这种情境应该输出这种格式、走这个流程。所以SFT的本质是行为模仿示范数据里怎么写模型就怎么学。它的特点是见效快几百到几万条高质量数据就能显著改变行为风格和格式遵循上限受示范限制示范里没有的行为模型很难无中生有。示范质量就是天花板容易记住而不是理解分布内的任务表现好分布外容易露馅。SFT数据合成从示范到可训练轨迹写一万条示范数据靠人力是不现实的实践中大量采用数据合成强模型蒸馏让更强的模型如旗舰模型生成高质量回答清洗后作为SFT数据——小模型学大模型轨迹重构把人类专家的实际操作日志查了哪些系统、做了什么决定重构成Agent格式的轨迹拒绝采样同一个问题让教师模型生成N个回答用判分器规则或LLM-as-a-Judge呼应第14篇只保留正确的进数据集。我们给售货柜退款Agent做SFT时最有效的数据就是从历史人工客服的处理记录里合成轨迹——几千条真实案例合成的数据效果远好于凭空编的几万条。四、SFT与RL的本质区别模仿 vs 试错这是本篇的核心。两者对比维度SFTRL学习信号每个token都有标准答案只有序列结束后的奖励稀疏学习方式模仿示范探索试错好的行为被强化倾向记忆示范分布泛化到示范没覆盖的情况数据要求需要高质量示范需要可判分的任务环境风险模仿上限受限容易过拟合训练不稳定可能钻奖励空子用一个比喻SFT是抄学霸笔记RL是自己刷题对答案。抄笔记能快速及格但遇到笔记上没有的题型就懵刷题对答案虽然慢却能建立真正的解题能力应对没见过的题。什么时候需要先SFT后RL当基座模型连任务的基本格式都不会时RL无从下手——它随机探索出来的行为大概率全是零分没有梯度信号即奖励过于稀疏。标准路径是先SFT让模型学会基本的行为格式达到能及格的水平再RL从及格线出发通过试错把成功率往上磨。这就是SFT提供先验RL突破上限。何时选SFT何时选RL两个判断维度任务复杂度和数据可得性。任务结果容易自动判分代码能跑过测试、数学答案能对答案 有仿真环境 →RL优先天花板高任务很难自动判分写文案、语气得体 有大量优秀示范 →SFT优先简单直接两者都有 → SFT打底 RL冲刺这是当前Agent能力训练的主流配方。单轮强化学习记忆与泛化的对照有个经典实验值得知道让模型在单轮任务上做RL任务带随机性如随机生成的密码/随机数运算。模型无法记住答案每次都不同只能学会真正的算法。结果模型在训练分布内正确率飙升同时展现出对任务参数的泛化。这个对照实验说明了RL学到的是策略而不是记忆——这正是它区别于SFT的本质证据。五、RL算法直觉从16次rollout到一次参数更新RL训练的具体循环以GRPO类算法的直觉为例采样一批任务prompt对每个任务模型独立生成k条完整轨迹rollout比如k16——这就是Agent的考试作答一题交16份卷对每条轨迹判分得到奖励比如16份卷子里5份满分、11份零分GRPO的核心直觉同题轨迹组内互相比较——满分轨迹的行为被强化增大概率零分轨迹的行为被抑制减小概率不需要单独训一个价值网络来估计基线组内平均就是基线用这批强化/抑制信号做一次梯度更新更新模型参数回到第1步用更新后的模型继续采样。注意第6步RL的数据分布随模型进化而变化on-policy模型越练越强采到的高分轨迹越来越多形成飞轮。这也解释了RL为什么贵——16条rollout的推理成本全要自己掏。六、RL环境从评估到仿真第14篇讲的评估环境在RL里换了个身份训练环境。区别在于用途评估环境跑固定数据集算分数RL环境动态出题、即时判分、给奖励要求大规模、低成本、可并行。一条铁律是环境任务分布与评估隔离训练出的题目和评估考的题目必须分开否则模型把答案背下来了评估分数虚高实际能力为零——等价于考试泄题。我们做退款Agent的RL训练时训练环境的订单、日志、故障码全部程序化随机生成金额随机、券随机、故障类型按真实分布采样评估集则单独保留一批真实脱敏案例两边绝不混用。结合Agent工具调用能力训练Agent场景的RL环境里要有工具模型生成调用工具的动作 → 环境执行并返回真实结果 → 模型继续决策 → 直到任务完成 → 按最终结果给奖励。这就是把环境带进训练。实践证明经过工具调用RL训练的模型在工具选择准确率、参数正确率、多步任务的Pass^k上都有肉眼可见的提升——这比在Prompt里写一百句请正确选择工具管用得多。小结三阶段流水线预训练学语言与世界知识SFT学行为示范RL学决策泛化SFT和预训练目标函数相同预测下一个词本质是换了数据RL目标函数不同最大化奖励本质从模仿变为试错SFT记忆、RL泛化SFT是抄笔记RL是刷题对答案先SFT打底再RL突破适用于奖励稀疏、基座起点的场景GRPO直觉同题多rollout组内比较好的强化、差的抑制RL环境要可仿真、可判分、可并行且训练分布与评估集严格隔离。RL训练里最灵魂的问题其实只有一个奖励从哪来、怎么给——奖励设计错了模型会以你意想不到的方式聪明地跑偏。
返回列表