选择适合您用例的正确方法的终极指南

前言
随着人们对大型语言模型(LLM)的兴趣浪潮,许多开发者和组织都忙于构建利用其强大能力的应用程序。然而,当预训练的LLM开箱即用时,如果其表现不如预期或希望,就会出现如何改善LLM应用性能的问题。最终,我们会产生一个问题:我们应该使用检索增强生成(RAG)还是模型微调来改善结果?
在深入研究之前,让我们揭开这两种方法的神秘面纱:
RAG:这种方法将检索(或搜索)的能力整合到LLM文本生成中。它结合了一个检索系统,从大型语料库中获取相关文档片段,以及一个LLM,利用这些片段的信息生成答案。实质上,RAG帮助模型“查找”外部信息,以改进其响应。

微调:这是将预训练的LLM进一步训练于较小、具体数据集以适应特定任务或提高性能的过程。通过微调,我们根据我们的数据调整模型的权重,使其更加适应我们应用程序的独特需求。

RAG和微调都是增强基于LLM的应用性能的强大工具,但它们处理优化过程的不同方面,这在选择一个而非另一个时至关重要。
以前,我经常建议组织在深入研究微调之前先尝试RAG。这是基于我对两种方法实现类似结果但在复杂性、成本和质量方面有所不同的观察。我甚至过去用…来说明这一观点。