训练与微调微调SFT速答 · 约 5 分钟更新 2026-09-19

SFT(监督微调)是什么?和预训练有什么区别

一句话结论

预训练是让模型在海量无标注文本上学「下一个词怎么接」,SFT 是用人工写好的问答对教它「别人问什么该怎么答」。前者给能力,后者给用法。

先这样答

SFT 全称 Supervised Fine-Tuning,中文叫监督微调。做法是:拿一个已经预训练好的模型,用一批人工准备好的「输入-标准回答」数据继续训练,每条数据都带正确答案,模型的任务是把自己的输出对齐到这些答案上,所以叫「监督」。

和预训练的区别在三处。数据:预训练吃互联网规模的原始文本,没有标注,靠自监督学「下一个词怎么接」;SFT 吃精心编写的高质量问答对,数量比预训练小好几个量级,每条都过人工。学的东西:两者底层都是预测下一个词,但数据形态不同,预训练学的是语言和世界知识,SFT 学的是「接到指令后该怎么回应」这个行为模式。成本:预训练要大集群长时间训练,SFT 单卡或少量显卡就能完成。

一句总结:预训练造出一个什么都懂一些的基座,SFT 把它变成一个听指令、会应答的产品。市面上的对话模型,几乎都是在基座上做过 SFT 之后才对外发布的。

面试官会怎么追问

  • 「为什么不能拿基座模型直接上线?」 基座只会续写,不会对话:你问它一个问题,它可能接着生成更多问题,因为它学到的任务是接话,不是应答。SFT 的作用就是把行为从「续写」掰成「一问一答」。
  • 「SFT 和指令微调是一回事吗?」 日常语境基本混用。指令微调强调数据形态是「指令加回答」,SFT 强调训练方式是监督学习,多数时候指的是同一件事,不必纠结字面。
  • 「只做 SFT 够吗?」 分场景。要求简单的任务,SFT 就够上线;面向用户的产品通常还要做偏好对齐(RLHF 或 DPO 这类),因为 SFT 只有模仿信号,模型分不清两种都对的说法里人更喜欢哪种。

回答的坑

  • 把 SFT 当成灌知识的主要手段。SFT 主要教行为、格式和话术,知识注入靠预训练和外部检索,硬用 SFT 背知识低效还容易产生幻觉。
  • 说「数据越多微调越好」。一批脏数据(格式乱、风格飘、答案错)会把毛病原样教给模型,质量不过关时条数越多越糟,这是实操里最常见的翻车点。
—— 本题完 ——