提示词、RAG、微调怎么选

先判断问题出在哪一层,再决定改提示词、接 RAG、做微调,还是拆工作流。

不要一上来就问“该不该微调”。先问:模型为什么没做好?

同样是答案差,原因可能完全不同。任务没说清,改提示词;缺公司资料,做 RAG;输出风格长期不稳定,再考虑微调;任务本身需要查资料、算东西、审结果,就要拆成工作流。选错方向,会把时间烧在错误的地方。

先用这张表定位问题

你看到的现象更可能的问题先选什么不该先做什么
回答方向跑偏,格式忽长忽短任务和输出标准没说清Prompt Engineering微调
引用不存在,缺公司制度或最新政策模型没有可靠资料RAG / 知识库检索继续堆提示词
一批固定任务总是语气不对、格式不稳行为习惯没对齐SFT / 少量微调 / 示例库只靠一句系统提示
拒答边界、排序偏好、推荐口径不对偏好和安全策略没调好偏好优化、规则、评估集只换更大的模型
要查资料、调用工具、比较多份文件任务流程太复杂工作流 + 工具 + 检索 + 校验让模型一次性裸答
算数、代码执行、表格统计总出错需要工具而不是语言预测计算器、代码执行、结构化工具让模型“认真算”

Prompt Engineering 适合什么

适合把任务说清楚。比如客服回复、摘要、改写、分类、结构化抽取。它解决的是“模型不知道你要什么格式、什么口径、什么边界”。

一个好提示词通常会写清:

  • 输入是什么,哪些字段可信;
  • 输出要什么结构;
  • 不确定时怎么处理;
  • 哪些内容不能编;
  • 给一两个正例和反例。

但提示词不能凭空制造资料,也不能稳定替代训练。它像给临时工写任务单,不像给人重新上岗培训。

RAG 适合什么

适合让模型基于外部资料回答。比如公司制度问答、合同条款解释、产品文档助手、研报检索、知识库客服。

RAG 的关键不是“多塞点文档”,而是四件事:

  1. 文档来源可信;
  2. 切片方式不会把上下文切碎;
  3. 检索能命中真正相关内容;
  4. 回答能引用回原文。

如果资料本身错了、旧了、权限乱了,RAG 会把错误更快送到模型面前。

微调适合什么

微调适合让模型稳定学会一类表达习惯或任务模式。比如固定的法律摘要格式、客服语气、代码风格、行业标签体系。

它不适合当资料库。你不该为了“让模型知道本周新政策”去微调。政策会变,应该放进可更新的知识库。

微调前最好先有三样东西:

  • 足够稳定的任务定义;
  • 高质量样例数据;
  • 能判断好坏的评估集。

没有评估集就微调,基本是在黑箱里砸钱。

偏好优化适合什么

SFT、RLHF、DPO、PPO 这组词经常和微调混在一起。普通读者先记住:它们处理的是“模型更应该偏向哪种回答”。

比如:

  • 遇到危险请求该拒到什么程度;
  • 两个答案都对时,哪个更符合产品口径;
  • 推荐结果应该保守还是激进;
  • 长答案和短答案怎样取舍。

这不是补知识,而是调行为。

工作流适合什么

如果任务本身包含多个步骤,就不要逼模型一次完成。把它拆开:先检索,再提取,再比较,再生成,再校验。

典型例子:

  • 审合同:先抽条款,再找风险,再引用原文,再给修改建议;
  • 写研报:先查资料,再筛来源,再列证据,再写正文;
  • 数据分析:先跑代码,再解释结果,而不是让模型心算;
  • Agent 任务:先规划,再调用工具,再检查结果。

一个实用判断顺序

  1. 先改提示词:任务、输入、输出、边界是否说清楚。
  2. 再看资料:是否缺最新、私有、可引用的知识。
  3. 再拆流程:是否需要工具、检索、计算、审核。
  4. 再考虑微调:是否有稳定任务和好数据。
  5. 最后看偏好优化:是否要长期改变模型行为。

多数产品问题死在前 3 步,还没轮到微调。