Mindket

什么时候微调大模型:提示词、RAG 还是训练?

黑色横幅,标题是“微调”,下面是“用 LoRA 在自己的数据上训练开源模型”。

当模型知道的够多、做法却不对时,就该微调:它总是打乱你的输出格式,语气不对,或者在同一个狭窄任务上一再出错。提示词和检索改变的是模型看到什么,微调改变的是它怎样回答。新事实不适合靠训练灌进去,因为研究发现它们学得慢,还会让幻觉变多。

本节内容

  • 花时间训练之前,先把二十个失败的提示词分成两堆。
  • 会变的事实放在检索里,格式、语气和例行的选择放进模型。
  • 先建好留出的测试样本,之后每个选择才有分数可看。
  • 按顺序往上走:普通提示词,带示例的提示词,最后才是训练。
全部课程
本页目录
  1. 开始之前
  2. 把每个失败归为上下文问题或行为问题
  3. 微调改变什么,又不碰什么
  4. 为什么不该用训练灌进新事实
  5. 一个微调获胜、检索反而拖后腿的任务
  6. 微调要付出什么代价
  7. 常见错误
  8. 自己试一试
  9. 接下来
  10. 自测一下
  11. 常见问题
  12. 资料来源

开始之前

你需要一张电子表格和一个你在意的任务。这一课不需要 GPU,也不需要写一行代码。任务要能用一句话说清,比如“把客户邮件改写成不超过 12 个词的工单标题”。

第 2 到第 4 课会为这个任务建数据,用它训练一个小型开源模型,再把结果跑起来,所以你在这里选的任务会贯穿整门课。

把每个失败归为上下文问题或行为问题

OpenAI 的准确率指南把模型的问题放在两条轴上。上下文问题,是模型缺少知识:这些知识不在训练集里,或者已经过时,或者涉及你的私有信息。行为问题,则表现为格式前后不一致、语气或风格不对,或者推理不是每次都照着要求来。

指南用一场考试来解释这种划分。微调相当于上了六个月的课,大量重复的例子教会你一个概念怎么用。检索相当于桌上的教科书,答案要现查。两者可以叠加,有些任务两样都需要。

把自己的失败分一遍只要一个下午,却能决定你接下来做什么。

  1. 写下 20 条你现在的提示词处理得不好的输入。要从真实使用中取,不要凭空编。
  2. 在每一条旁边,写下你想要的输出。
  3. 拿第一条失败的输入,把缺的文档、规则或事实粘进提示词,再问一次。这个粘贴测试是本课自己给出的小办法,用来落实指南里的划分。
  4. 答案变对了,就把这一行标成“上下文”。这一行适合用检索,做法见 RAG 教程。
  5. 事实已经在提示词里,答案的格式、语气或一致性仍然不对,就把这一行标成“行为”。
  6. 每一行都做完。上下文标记成堆,说明该用检索。行为标记成堆,而且给提示词加了示例(见少样本提示词那一课)之后仍然留着,才是微调的理由。

微调改变什么,又不碰什么

本课程教的监督式微调,是把成对的提示词和你想要的答案给模型看,再把它的权重朝着这些答案调整。OpenAI 的微调指南列出它最适合的场景:分类、讲究细微差别的翻译、生成特定格式的内容,以及纠正没有遵循指令的毛病。

准确率指南还给了第二个理由,效率。指令和示例不必再随每条提示词一起发送,训练就能用更少的 token,或者用更小的模型,达到同样的准确率。

出自 OpenAI 的准确率指南和微调指南,以及 Ovadia 等人和 Gekhman 等人的论文,阅读于 2026-11-06。
你的问题先用什么资料怎么说
答案的格式或语气不对,或者偶尔不听指令带示例的提示词,之后再微调OpenAI:监督式微调最适合特定格式和没有遵循指令的毛病。
模型没有你的文档,或者文档经常变检索(RAG)Ovadia 等人,2023 年在三个 7B 模型上测试:无论是模型见过的知识还是全新的知识,检索都稳定地胜过无监督微调。
一个狭窄的任务每天要跑几千次微调一个小模型OpenAI:微调可以用更少的 token 或更小的模型达到同样的准确率。
你想让模型可靠地掌握新事实用检索,微调只管围绕它的风格Gekhman 等人:新事实学得慢,学会之后还会让幻觉变多。

为什么不该用训练灌进新事实

Zorik Gekhman 等人在 2024 年的一项研究中,用闭卷问答微调 PaLM 2-S,并改变训练样本里包含模型原本不知道的事实的比例。这些样本学得明显比和模型已有知识一致的样本慢。等它们终于学会,模型产生幻觉的倾向就随之呈直线上升。作者的解读是:模型的事实知识大多来自预训练,而微调教的是更高效地使用这些知识。

Ovadia 等人在 2023 年,在 Llama2-7B、Mistral-7B 和 Orca2-7B 上比较了无监督微调和检索。微调有一点帮助。检索做得更好,不论是模型在训练中见过的事实,还是全新的事实,而在训练时给模型看同一事实的许多种改写,可以缓解这个问题。

同样的划分也说明了,为什么一小批样本仍然能改变行为。2023 年的 LIMA 论文用 1,000 条精心挑选的提示词和回答,微调了一个 65B 的 LLaMA 模型,没有用强化学习,模型从寥寥几个例子里学会了特定的回答格式。在一项人工评测里,它的回答有 43% 的情况和 GPT-4 的相当或更受欢迎。作者的结论是,语言模型里几乎所有的知识都来自预训练。

LIMA 论文里,一小批精选样本做到了什么

1,000

用来微调 LIMA 的 65B 模型的精选提示词和回答

来源:Hugging Face Papers: LIMA: Less Is More for Alignment (2026年11月6日 查阅)

43%

人们认为 LIMA 的回答和 GPT-4 相当或更好的情况

来源:Hugging Face Papers: LIMA: Less Is More for Alignment (2026年11月6日 查阅)

一个微调获胜、检索反而拖后腿的任务

OpenAI 的准确率指南用一个例子把三种办法走了一遍:纠正冰岛语句子,用 BLEU 打分,它按输出和参考文本有多相似来打分。GPT-4 不给示例得 62 分。在提示词里放三个示例,升到 70 分。用 1,000 个样本微调 gpt-3.5-turbo 得 78 分,用同一批样本微调 GPT-4 得 87 分。指南点名的是这两个模型,并且没有注明日期,所以更新的模型得分可能不同。

接着,指南把训练集之外检索到的示例加给微调后的 GPT-4,分数掉了四分,成了 83。指南的解释是,这个任务属于行为问题,额外的上下文只给一个已经学会任务的模型添了噪声。如果你上面分出来的那一堆主要是行为问题,就要留意这种情形。

冰岛语句子纠错的 BLEU 分数,按方法分数满分 100,出自 OpenAI 的指南。金色那一条是成绩最好的一次。
  • GPT-4,不给示例62
  • GPT-4,提示词里放三个示例70
  • gpt-3.5-turbo,用 1,000 个样本微调78
  • GPT-4,用 1,000 个样本微调87
  • 微调后的 GPT-4,再加检索到的示例83

来源:OpenAI: Optimizing LLM Accuracy (2026年11月6日 查阅)

微调要付出什么代价

训练不是一劳永逸的事。准确率指南指出,每次再调整,微调都要重新跑一遍训练,还要管理训练集和验证集,应用变复杂时这还可能带来退步。

模型也可能忘事。Dan Biderman 等人在 2024 年的研究里,在编程和数学上,针对 Llama-2-7B 比较了 LoRA 和全量微调。在标准低秩设置下,LoRA 在目标领域的成绩不如全量微调,但它更好地保住了基础模型在其他任务上的能力。第 3 课用 LoRA,它拿一点学习量换来更少的遗忘和更少的显存。

托管的微调服务也可能消失。OpenAI 的微调页面写明,这个平台已不再向新用户开放,符合条件的老客户可以创建训练任务,期限到 2027 年 1 月 6 日,页面阅读于 2026-11-06。用开源模型的话,基础权重和你的适配器都留在自己的硬盘上。

常见错误

  • 拿公司文档去微调,想“教会模型”公司的事实。
  • 在还没有提示词基线、没有可打分的样本时就开始训练。
  • 用整齐的编造样本训练,真实的输入却很杂乱。OpenAI 把训练数据缺乏代表性,列为最常见的坑之一。
  • 前 50 条样本毫无作用,却还在加样本。微调指南建议先重新想任务和提示词。
  • 只聊几句就判断微调后的模型好坏,不用留出的测试集。

自己试一试

  • 填完那张失败表格,数一数上下文行和行为行各有多少。
  • 对行为行里的五条,写下你想要的答案。它们会成为第 2 课数据集最开头的几行。
  • 把其中三条作为示例加进提示词,再数一遍还剩几条行为失败。
  • 写一句以“我要微调,因为”开头的话,检查结尾说的是一种行为,而不是一个事实。

接下来

第 2 课把行为行变成训练文件:聊天格式、起步用多少条样本、一个校验脚本,以及一份留出的测试集。

自测一下

  1. 一个模型明明有它需要的全部事实,回答的语气却总是不对。最先该用哪种办法?

    查看答案

    C. 先在提示词里加示例,语气还不对再微调 语气和格式属于行为问题,OpenAI 的指南把它放在微调所服务的那条轴上。

  2. Gekhman 等人发现,含有模型原本不知道的事实的训练样本怎么样?

    查看答案

    B. 学得更慢,学会之后还让幻觉变多 他们的摘要说,新知识的样本学得明显更慢,学会之后又让产生幻觉的倾向呈线性上升。

  3. 在 OpenAI 的冰岛语案例里,把检索到的示例加给微调后的 GPT-4,结果如何?

    查看答案

    D. 分数掉到 83 这个任务属于行为问题,额外的上下文只给一个已经学会任务的模型添了噪声。

  4. 本课的粘贴测试检查的是什么?

    查看答案

    A. 把缺的文档放进提示词后,答案是不是变对了,变对就说明是上下文问题 答案被修好,说明模型缺的是上下文,该用检索。格式错误依然存在,则是行为问题。

常见问题

该用 RAG 还是微调?

模型缺事实,或事实经常变,就用 RAG。模型有事实,却回答得不对,就用微调。OpenAI 的指南说两者可以叠加,所以一个任务可能两样都要。

微调能教大模型新事实吗?

勉强能,而且有副作用。Gekhman 等人发现,含新事实的样本明显学得更慢,学会之后还让幻觉变多。会变的事实请放进检索。

微调比提示词工程更好吗?

作为第一步,不是。OpenAI 的指南说,在转向检索或微调之前,要先把基础办法的准确率榨到尽可能高,并且从一个提示词和一套评估集开始。

微调和 RAG 可以一起用吗?

可以。如果你的应用会检索文档,OpenAI 建议用带着检索文本的样本来训练,这样模型就不会从零开始学怎样使用上下文。

微调需要多少条样本?

OpenAI 的微调指南规定最少 10 条,50 到 100 条样本开始见到改进。它建议从少量起步,先评估再加样本。合适的数量取决于任务。

为什么微调开源模型,而不是托管的模型?

结果归你所有。LoRA 适配器是一个小文件,加载在基础模型之上,权重都留在你的硬盘上,不受厂商平台变动的影响。

资料来源

  1. OpenAI: Optimizing LLM Accuracy (2026年11月6日 查阅)https://developers.openai.com/api/docs/guides/optimizing-llm-accuracy
  2. OpenAI: Supervised fine-tuning (2026年11月6日 查阅)https://developers.openai.com/api/docs/guides/supervised-fine-tuning
  3. OpenAI: Model optimization (2026年11月6日 查阅)https://developers.openai.com/api/docs/guides/model-optimization
  4. Hugging Face Papers: Does Fine-Tuning LLMs on New Knowledge Encourage Hallucinations? (2026年11月6日 查阅)https://huggingface.co/papers/2405.05904
  5. Hugging Face Papers: Fine-Tuning or Retrieval? Comparing Knowledge Injection in LLMs (2026年11月6日 查阅)https://huggingface.co/papers/2312.05934
  6. Hugging Face Papers: LIMA: Less Is More for Alignment (2026年11月6日 查阅)https://huggingface.co/papers/2305.11206
  7. Hugging Face Papers: LoRA Learns Less and Forgets Less (2026年11月6日 查阅)https://huggingface.co/papers/2405.09673
  8. Wikipedia: BLEU (2026年11月6日 查阅)https://en.wikipedia.org/wiki/BLEU

分享本节课

看看别人在模型之上做了什么

Mindket 列出了带安装说明的 AI 智能体。训练任何东西之前,先打开一个,读读它的作者怎样组合提示词、检索和工具。

浏览智能体

本节课的 Markdown 版本 · 微调:用自己的数据训练开源模型 · 全部课程