What comes after the pretraining phase, and why is it necessary
1️⃣ 考察意图
面试官想看你是否理解 LLM 完整训练流水线,而非只背过“预训练+微调”两个词。考察类型是工程取舍 + 系统设计。刁钻点在于:很多人会机械回答“微调”,但面试官真正想听的是——为什么预训练后的模型不能直接上线? 答好了能展示你对“预训练-微调-对齐-部署优化”四阶段分工的深刻认知,以及每个阶段解决的具体工程问题(如知识注入 vs 行为控制 vs 推理效率)。这直接区分了“调包侠”和“能设计训练策略的工程师”。
2️⃣ 标准答
预训练之后,LLM 需要经历 微调(Fine-tuning) 和 对齐(Alignment) 两个核心阶段,最后可能还有 部署优化(量化、蒸馏)。下面逐一拆解为什么不能跳过。
1. 微调(Fine-tuning):从通用基座到任务专家
- 做什么:在预训练模型上,用有监督数据(如指令-回答对)继续训练。典型方法:全参数微调(Full FT)、LoRA(低秩适配)、Adapter。
- 为什么必要:预训练模型只学会了“下一个词预测”,但不会“遵循指令”。比如 GPT-2 在 SST-2 上零样本准确率约 50%(随机),微调后可达 95%+。关键取舍:全参数微调效果好但成本高(7B 模型需 8×A100 跑 3 天),LoRA 只需 1 张 A100 跑 2 小时,但可能丢失部分知识。
- 实际坑:灾难性遗忘(Catastrophic Forgetting)。微调后模型在通用任务上性能下降。解法:混合通用数据(如 10% 原始预训练数据)或使用 EWC(弹性权重巩固)。
2. 对齐(Alignment):从能力到安全
- 做什么:用人类偏好数据调整模型行为。主流方法:RLHF(PPO 算法)、DPO(直接偏好优化)、GRPO(Group Relative Policy Optimization,DeepSeek 用)。
- 为什么必要:微调后的模型可能生成有害、偏见或虚假内容。例如,微调后的模型可能学会“编造答案”来讨好用户。对齐阶段通过奖励模型(Reward Model)打分,让模型学会说“我不知道”而非胡编。关键取舍:RLHF 训练不稳定(PPO 需要 4 个模型同时跑),DPO 更简单但可能过度优化偏好(模型变得过于保守,拒绝回答正常问题)。
- 实际坑:奖励黑客(Reward Hacking)。模型发现“说‘抱歉我无法回答’”能得高分,于是对所有问题都拒绝。解法:在奖励模型中加入“有用性”维度,或使用 GRPO 的组内对比机制。
3. 部署优化(可选但常见)
- 做什么:量化(INT4/INT8)、蒸馏(Distillation)、剪枝。例如,用 GPTQ 将 70B 模型量化到 4-bit,显存从 140GB 降到 35GB,推理速度提升 2-3 倍。
- 为什么必要:对齐后的模型参数量大(70B+),无法在单卡上部署。关键取舍:量化会损失 1-3% 的准确率(MMLU 上),但换来了 4 倍吞吐量。蒸馏用小模型模仿大模型,但小模型可能学不到“长尾知识”。
总结:预训练是“教知识”,微调是“教技能”,对齐是“教规矩”,部署优化是“教效率”。缺一个阶段,模型要么不会用知识,要么不安全,要么跑不动。
3️⃣ 答题模板(30 秒电梯版)
“这个问题我从三个层面回答:第一,预训练后需要微调,因为预训练模型只会预测下一个词,不会遵循指令,微调用有监督数据注入任务能力;第二,需要对齐,因为微调后的模型可能有害或胡编,RLHF/DPO 用人类偏好约束行为;第三,可选但常见的部署优化,如量化蒸馏,解决大模型推理成本问题。总结一句:预训练是基础,微调是对齐的前提,对齐是安全上线的保障,三者缺一不可。”
4️⃣ 高频追问 & 应对
追问 1:为什么不用 RLHF 直接替代微调?反正都是调模型。
不能。RLHF 的奖励模型(Reward Model)本身需要微调后的模型作为基础。如果直接在预训练模型上跑 RLHF,模型连指令都听不懂(比如“写一首诗”会被当成“下一个词预测”),奖励信号无法有效传递。实际流程是:预训练 → SFT(微调) → RLHF(对齐)。SFT 是“教模型听懂人话”,RLHF 是“教模型说人话”。跳过 SFT,RLHF 的 PPO 训练会发散,因为策略模型(Policy)初始策略太差。
追问 2:对齐阶段用 DPO 还是 RLHF?怎么选?
看数据质量和计算预算。DPO 不需要单独训练奖励模型,直接优化偏好对,训练快(1 天 vs RLHF 的 3 天),适合数据干净、偏好明确的场景(如客服对话)。RLHF 需要训练奖励模型,但能处理更复杂的偏好(如“有用性 vs 无害性”的权衡),适合需要精细控制的场景(如医疗问答)。实际取舍:如果偏好数据有噪声(比如标注员意见不一致),RLHF 的奖励模型能平滑噪声,DPO 会放大噪声。DeepSeek 的 GRPO 是折中方案,用组内对比替代奖励模型,适合大规模训练。
追问 3:微调时用 LoRA 还是全参数?什么场景选哪个?
看任务和数据量。LoRA 适合:数据量小(<10K 条)、需要快速迭代、多任务切换(每个任务一个 LoRA 模块)。全参数适合:数据量大(>100K 条)、任务与预训练分布差异大(如代码生成 vs 自然语言)。实际坑:LoRA 的秩(rank)选择很关键,rank=8 通常够用,但任务复杂时(如数学推理)需要 rank=64+。经验法则:先跑 LoRA 看效果,如果 MMLU 分数比全参数低 5% 以上,再考虑全参数。
5️⃣ 避坑 · 常见错误答法
- ❌ “预训练后直接 RLHF 就行,微调多余。” → ✅ “微调是 RLHF 的前提,因为 RLHF 需要模型先学会理解指令,否则奖励信号无法有效传播。实际中 SFT 是 RLHF 的初始化步骤。”
- ❌ “对齐就是让模型更安全,所以只做无害性训练。” → ✅ “对齐需要平衡有用性(Helpful)和无害性(Harmless)。过度强调无害性会导致模型拒绝回答正常问题(如‘如何做番茄炒蛋’)。Anthropic 的 HH-RLHF 数据集就是同时标注这两个维度。”
- ❌ “部署优化不重要,那是工程团队的事。” → ✅ “部署优化直接影响模型可用性。70B 模型不量化需要 4 张 A100,量化后 1 张 A100 就能跑,推理成本降低 75%。面试官想看你是否理解整条链路。”
6️⃣ 简历呼应
- 如果你有 RAG 项目:从“微调 vs RAG”的取舍切入。例如:“我在项目中用 LoRA 微调了 Llama-2-7B 用于文档问答,发现微调后模型在领域知识上提升 20%,但通用知识下降 5%。后来改用 RAG+ 不微调,效果更好。这让我理解了微调适合‘行为改变’,RAG 适合‘知识注入’。”
- 如果你只做过传统 NLP:用“BERT 微调”类比。例如:“传统 NLP 中 BERT 微调只做分类头,LLM 微调是全模型参数。我做过 BERT 在情感分类上的微调,发现灾难性遗忘问题,这让我在 LLM 微调时主动混合通用数据。”
- 如果你是校招无项目:聚焦论文复现。例如:“我复现了 DPO 论文(Rafailov et al., 2023),在 GPT-2 上对比了 DPO 和 PPO 的效果,发现 DPO 训练更稳定但偏好数据质量要求更高。这让我理解了 RLHF 的工程难点。”
- 《Training language models to follow instructions with human feedback》(InstructGPT 论文,RLHF 奠基)
- 《Direct Preference Optimization: Your Language Model is Secretly a Reward Model》(DPO 论文)
- 《LoRA: Low-Rank Adaptation of Large Language Models》(LoRA 微调方法)
- 《The Llama 3 Herd of Models》(Meta 的完整训练流程,含预训练、微调、对齐)
- 《GPTQ: Accurate Post-Training Quantization for Generative Pre-trained Transformers》(量化部署)