指令微调
Instruction Tuning
指令微调(Instruction Tuning)是指在「指令-回答」配对数据上对预训练模型做监督微调,使其能够更好地理解和遵循人类指令。
详细解释
指令微调(Instruction Tuning)是大模型「从语言模型变成助手」的关键一步。预训练后的模型虽然学会了语言的统计规律,但只是「文本接龙机器」——给它「中国的首都是哪里?」它可能续写出与答案无关的内容。
通过在大量「指令-输出」配对数据上微调(FLAN、Alpaca、ShareGPT 等数据集),模型学会「用户问什么 → 我答什么」的对应关系。Meta 在 2022 年发布的 LLaMA-2-Chat 就是这一技术的代表。
指令微调 vs 其他训练方法
| 方法 | 数据格式 | 目标 |
|---|---|---|
| 预训练(Pre-training) | 纯文本 | 学会语言 |
| 指令微调(Instruction Tuning) | (指令, 输出) 对 | 学会执行任务 |
| RLHF | (指令, 多个输出, 人类排序) | 学会人类偏好 |
| DPO | (指令, 优选/次选 输出) | 直接偏好优化,无需奖励模型 |
数据集示例
一个典型的指令微调样本:
{
"instruction": "把以下中文翻译成英文",
"input": "今天天气真好",
"output": "The weather is really nice today."
}
高质量开源指令数据集:
- Alpaca:52K 条,Stanford 早期
- ShareGPT:70K 条,真实对话
- WizardLM_evol-instruct:200K 条,进化指令
- MS MARCO / MMLU:评测基准
唯元智创的指令微调服务
唯元智创控制台提供「一键 SFT(Supervised Fine-Tuning)」服务:
- 上传 JSONL 格式指令数据
- 选择基模(GLM-5.2 / Qwen3.7 / DeepSeek-V4)
- 选择训练方式(全量 / LoRA / QLoRA)
- 自动启动训练 + 评估 + Checkpoint 管理
常见问题
指令微调数据需要多少条?
经验值:简单任务 1000-5000 条;复杂任务(代码、法律)5000-50000 条。数据质量比数量更重要。
指令微调后模型会不会「失去原有能力」?
有可能,叫「灾难性遗忘」。解决方案:混合通用语料(10-20% 比例),或用 LoRA 限制参数更新幅度。