60 秒回答模板

基础训练阶段不能直接用 SFT 代替预训练,因为两者解决的问题不同。预训练通常在海量、多领域、长尾覆盖很广的语料上做 next-token prediction,让模型学习语言规律、世界知识、代码、数学模式、推理片段、长上下文结构和泛化表示。它的目标不是学会某一种问答格式,而是建立通用生成和理解能力。SFT 使用的是规模小得多、质量更高但分布更窄的指令-回答数据,目标是让已经具备基础能力的模型学会听指令、按格式回答、遵守对话规范和模仿高质量示范。若从随机初始化或能力很弱的模型直接做 SFT,模型只会看到有限任务和有限答案,覆盖不了语言和知识空间,容易记模板、泛化差,也无法可靠处理 SFT 数据没有覆盖的长尾问题。正确流程是先预训练获得底座能力,再用 SFT 对齐交互方式和任务格式,后面再根据需要做 DPO、RLHF 或规则后训练。SFT 可以影响模型行为,但不能替代预训练承担通用能力和知识覆盖。

考点 预训练建底座
难度 真实面经题
回答目标 讲清机制、训练与评估取舍

深入解析

01

先区分能力来源

大模型的通用语言能力主要来自预训练。模型在海量文本中学习词法、句法、事实关联、代码结构、数学模式、常识和多任务泛化。没有这个底座,后面的指令数据只是少量示范,难以凭空生成广泛能力。

02

预训练目标覆盖更宽

预训练常用 next-token prediction,在大量自然文本、代码、网页、书籍、问答和结构化内容上学习分布。它看似简单,但因为数据规模和多样性巨大,能让模型学到开放域表示和生成能力。

03

SFT 目标是行为对齐

SFT 的数据通常是 instruction-response、对话、任务示范或人工整理答案。它更像是在已有能力上教模型如何把能力包装成用户想要的输出:遵循指令、回答完整、格式稳定、少说废话、按任务风格回应。

04

SFT 数据分布太窄

高质量 SFT 数据成本高,规模和覆盖远小于预训练语料。它会强化被标注任务和回答风格,但无法覆盖所有语言现象、领域知识和长尾问题。从零直接 SFT 容易得到一个会模仿样例但泛化很差的模型。

05

直接 SFT 还会损害探索空间

预训练让模型在广阔分布上形成丰富表示;SFT 则把输出收敛到人类示范格式。如果基础能力还没形成就强行 SFT,模型学到的是窄格式和局部模式,不具备支撑复杂推理、迁移和组合泛化的基础。

06

正确关系是先底座后对齐

典型流程是预训练建立基础能力,SFT 教指令跟随和示范行为,偏好优化或 RL 再进一步优化人类偏好、安全和任务成功率。面试里要强调 SFT 是对齐和适配阶段,不是基础能力的完整替代。

易错点

  • 把 SFT 说成更高级的预训练,忽略两者目标和数据分布完全不同。
  • 认为只要人工答案质量高,就能覆盖模型需要的全部语言和知识能力。
  • 把预训练描述成只背知识,不讲 next-token 目标带来的表示和泛化学习。
  • 混淆 SFT、DPO、RLHF,把所有后训练都叫监督微调。
  • 认为 SFT 一定能可靠注入领域知识,忽略小数据记忆、遗忘和泛化问题。
  • 回答只说数据量不同,没有讲能力底座和行为对齐的职责差异。

面试官追问

SFT 会不会给模型注入新知识?

少量知识可以被记住或强化,但 SFT 的主要作用是行为和任务格式对齐。系统性知识覆盖仍主要依赖预训练、检索或专门领域继续训练。

预训练的 next-token 目标为什么能学到能力?

为了预测下一个 token,模型必须利用上下文、语义、事实、代码结构和推理模式。数据规模足够大时,这个目标会逼出通用表示和生成能力。

能不能用大量指令数据从零训练模型?

理论上可以训练出某些模式,但成本和数据覆盖会非常不经济。指令数据太窄,难以替代开放语料对基础语言和知识分布的覆盖。

SFT 和 RLHF 的边界是什么?

SFT 模仿高质量示范,教模型怎么答;RLHF 或 DPO 等偏好优化比较多个答案,让模型进一步偏向人类更喜欢、更安全或更有效的回答。