微调、RAG、提示词工程怎么选?

2026年 阅读约 8 分钟 面试指南 · AI面试

AI开发面试题:提示词工程vs RAG vs 微调选型对比,SFT与LoRA原理、训练数据准备、灾难性遗忘、评估体系、私有化部署技术栈,分三层讲解。

一句话总结

按"要改什么"决策:改知识(新事实、频繁更新、要溯源)→ RAG;改行为(输出风格、领域术语、格式遵循、指令对齐)→ 微调;改指令(一次性任务)→ 提示词。三者不是互斥而是叠加:生产系统常见组合是"好提示词 + RAG + 领域微调"。优先级永远是:先把提示词做到极致,再上 RAG,最后才微调。

初级理解

维度提示词工程RAG微调
改什么任务指令注入知识模型参数
见效速度分钟级天级(建库)周级(训练)
知识更新改提示词更新文档即可重新训练
成本几乎为零检索基建GPU + 数据标注
可溯源无强(引用出处)弱(知识烧进参数)

微调(Fine-tuning)是什么:拿自己的数据继续训练模型,把能力"写进"参数。适合:稳定的输出风格、领域术语体系、特定格式遵循(如永远输出某种工单格式)。不适合:需要频繁更新的知识——那会让微调变成无底洞。

反直觉但重要:微调不适合用来"灌知识"——容易过拟合且记不牢,知识注入的标准答案是 RAG。面试说对这一点就超过一半候选人。

中级深入

SFT(监督微调):用"指令 → 理想回答"格式的数据继续训练。数据质量决定一切:1000 条精标数据 > 10 万条脏数据——覆盖真实场景多样性、答案一致、格式统一。

LoRA 为什么便宜(高频考点):全参微调要更新所有权重(70B 模型 = 70B 参数全部训练 + 存储)。LoRA 冻结原模型,只训练注入的低秩矩阵(原权重的"补丁"),可训练参数量降到 0.1%~1%,单卡就能跑,多个 LoRA 补丁还能热切换(一个底座 + 多业务适配器)。QLoRA 再把底座量化到 4bit,消费级显卡可微调 33B 级模型。

灾难性遗忘(Catastrophic Forgetting):微调学新任务时把通用能力"覆盖"了——比如调完客服话术,写代码能力暴跌。缓解:混入通用数据回放(replay)、调低学习率、LoRA 本身参数少也相对不容易遗忘、微调后跑通用基准回归。

注意:微调数据含敏感信息(客户数据)会"记进"模型,可能被诱导输出——训练集脱敏是合规要求,不是可选项。

高级拓展

对齐技术演进(说出脉络即加分):RLHF(用奖励模型 + PPO 强化学习,稳定但工程复杂)→ DPO(直接偏好优化,跳过奖励模型,把偏好对 Supervised 化,简单稳定,当前主流)→ 各类变体(ORPO/SimPO)。直觉:RLHF 是"训练一个裁判再让模型参赛",DPO 是"直接拿正反例告诉模型什么是好的"。

私有化部署技术栈:推理框架 vLLM(PagedAttention 高吞吐)/ SGLang / Ollama(轻量玩具级);量化 GGUF/AWQ/GPTQ;服务层 OpenAI 兼容 API 网关。选型逻辑:吞吐要求高上 vLLM,简单本地跑上 Ollama。

评估体系:微调前后必须对比三组指标:① 任务指标(领域测试集准确率);② 通用能力回归(MMLU 等基准防遗忘);③ 生产指标(人工抽检率、用户采纳率)。没有评估的微调 = 裸奔。

实战场景

场景一:三个典型需求的选型(面试高频设计题)

1. 客服机器人,产品手册每月更新 → RAG(知识时效+溯源) 2. 工单自动分类,格式固定、类别稳定 → 提示词 + Few-shot 起步 不够再微调小模型(成本低、延迟小) 3. 法律文书风格写作,术语体系稳定 → 微调(风格内化) + RAG(引用最新法条)组合

场景二:微调数据从哪来

// 冷启动三板斧: // 1. 历史工单/对话里人工筛出优秀回答(最真实) // 2. 强模型蒸馏:GPT-4 级模型生成 → 人工审核修正 // 3. 合成数据:规则模板 + 随机化扩充(注意多样性,防过拟合) // 质量流程:双人工审 → 格式校验 → 分布统计(类别均衡)

场景三:微调完线上效果反而变差

// 排查顺序: // 1. 通用能力回归了吗?→ 灾难性遗忘,混通用数据重训 // 2. 训练/线上分布一致吗?→ 训练数据来自旧话术模板,线上问题已进化 // 3. 过拟合了吗?→ 训练 loss 降但验证 loss 升,减 epoch / 加数据 // 4. 评估口径对吗?→ 拿真实线上 case 评测,别只用训练同分布集

面试模拟

Q:为什么 LoRA 能用千分之一的参数达到接近全参微调的效果?

A:理论依据是"微调过程中的权重更新具有低秩性"——模型适应新任务时,权重变化矩阵的信息量远小于矩阵本身的规模,可以用两个小矩阵的乘积(秩 r 通常 8~64)近似。工程收益:训练显存从"全量权重+梯度+优化器状态"降为只训低秩矩阵;存储上每个任务只存几十 MB 的适配器,可热切换;合并推理时零额外延迟。

Q:什么情况下你会坚决反对上微调?

A:三种情况:① 需求是"补知识"且知识频繁变化(RAG 的天下);② 提示词还没调到位(先榨干提示词收益);③ 拿不出高质量数据(几百条脏数据微调大概率负优化)。微调是重投入动作——数据、训练、评估、部署四条链路都要跟上,团队没有持续迭代能力就别启动。

Q:说说 RLHF 和 DPO 的区别。

A:目标相同(让模型输出符合人类偏好),路径不同。RLHF:先训奖励模型打分,再用 PPO 强化学习优化策略——效果好但流程复杂(四个模型在内存里博弈)、训练不稳定。DPO:把偏好优化转成对"好答案/坏答案"对的直接监督学习,不需要奖励模型,稳定且实现简单。工程落地趋势:RLHF 仍是旗舰模型对齐的主力,DPO 及变体是中小团队快速对齐的首选。