微调 vs RAG:教导 LLM 的两种方式
你希望 LLM 了解你的私有文档或最新新闻。你有两个选择:RAG 或微调。人们经常选错。
规则很简单。用 RAG 处理事实,用微调处理行为。
RAG (Retrieval-Augmented Generation) 这就像是一场开卷考试。你将数据保存在模型之外。你检索相关信息并将其粘贴到提示词(prompt)中。
- 用于知识。
- 用于经常变化的事实。
- 成本低。
- 即时更新。
- 能够引用来源。
微调 (Fine-tuning) 这就像是内化一种新习惯。你通过特定的示例来训练模型。
- 用于行为。
- 用于语气和格式。
- 用于特定技能。
- 需要进行训练过程。
- 需要经过筛选的示例。
- 随着事实的变化而过时。
如何选择: 问问自己,你需要的是一个事实,还是一种行为方式。
如果需要更新以下内容,请使用 RAG:
- 产品目录。
- 公司政策。
- 日常新闻。
如果需要以下内容,请使用微调:
- 特定的品牌语调。
- 严格的 JSON 输出格式。
最好的方法通常是两者结合。 通过微调来决定模型如何回答,通过 RAG 来决定它使用哪些事实。一个客服机器人通过微调来使其语气专业,通过 RAG 来获取最新的帮助文章。
从提示工程(prompting)和 RAG 开始。只有在必须时才转向微调。
在这里测试这些场景:https://dev48v.infy.uk/ai/days/day10-finetune-vs-rag.html
来源:https://dev.to/dev48v/fine-tuning-vs-rag-two-ways-to-teach-an-llm-3d04
可选的学习社区:https://t.me/GyaanSetuAi