RAG 与微调:如何选择

Jeffrey Erickson | 高级撰稿人 | 2024 年 11 月 21 日

通用大型语言模型 (LLM) 已经受到公众的欢迎,因为它们可以探讨各种各样的主题并撰写学期论文、致谢词和许多其他任务。然而,在商业领域,这些通用的输出并不适用。例如,如果 LLM 需要为特定设备提供技术支持,就需要运用特定领域的知识。

目前有两种方法可以帮助生成式 AI 模型提供反映这种专业知识的响应:微调以及检索增强生成 (RAG)。每个解决方案都具有优势和挑战。让我们更深入地了解这些选项,以了解它们的工作方式以及何时使用它们。

关键要点

  • RAG 和微调都使通用 AI 模型在特定领域或特定用例中更有用。
  • RAG 允许 LLM 访问公司的内部数据存储;这有助于 LLM 提供更有针对性的响应,这对于依赖最新信息的用例至关重要。
  • RAG 的常见用途包括技术支持、库存查找和零售建议。
  • 微调使用特定于域的数据集合来训练特定任务的通用 LLM。比如医学或编程,它们都有自己的逻辑和语言。
  • 我们可以将微调和 RAG 组合在一起,为 LLM 提供强大的领域知识和新信息。

什么是检索增强生成 (RAG)?

RAG 是检索增强生成的缩写,是 Meta 的研究人员开发的架构框架,旨在帮助通用 AI 模型提供与组织相关且有用的输出。RAG 通过提供大型语言模型或 LLM 访问内部知识库来做到这一点,该知识库可用于扩充其原始训练数据。因此,AI 系统将 LLM 的语言流畅性与本地数据相结合,以提供有针对性的、适合上下文的响应。这种方法与 AI 模型微调不同,可以在不修改底层模型本身的情况下工作。

何时使用 RAG

RAG 适合在生成式 AI 响应需要提供新的或特定于组织的数据,但这些数据不属于 LLM 训练的一部分的时候使用。例如,如果一家公司拥有大量关于其产品或日常运营的可靠信息库,RAG 架构将提供该数据以增强通过 LLM 的提示和响应,从而使输出更有用、更可验证和更精确。这可以改善服务台自动化、零售行业的产品可用性检查,甚至是医疗服务,因为医生的记录可以快速提供给患者或其他临床医生。

RAG 用例

RAG 在各行各业的共同优势包括更好、更完整的数据检索、增强的客户支持以及生成个性化内容的能力。通过使用新信息补充 LLM,企业可以部署 AI agent,为用户查询提供实时且与上下文相关的答案,从而尽可能减少人工干预需求。RAG 的多功能性使其能够适应各种应用,包括:

  • 商务智能。公司可以使用 RAG 帮助生成式 AI 模型提取相关市场数据,从而自动生成洞察和报告。这些数据可以包括市场调研、竞争对手分析、销售量和客户反馈。
  • 内容推荐。RAG 可以改善内容推荐系统,通常与向量数据库协同工作。利用 RAG,AI 模型可以检索和分析用户评价、评级和内容说明,使系统能够生成与用户提示一致的个性化建议。
  • 在新闻和其他媒体上进行事实检查。RAG 可以帮助组织快速检索和交叉引用文档,以验证文章、报告或社交媒体中的声明。
  • 医学诊断。在医疗保健领域,RAG 可以通过帮助诊断和治疗计划来支持医生和其他临床医生。它通过帮助人工智能模型检索与患者症状或状况相关的医学案例研究、研究论文或临床试验结果来实现这一点。
  • 技术支持。RAG 可用于帮助缩短解决时间并提高用户对技术支持的满意度。系统可能会检索相关的故障排除指南和文档,甚至扫描论坛线程,并将这些线程提供给 LLM 以帮助解决用户问题。此外,RAG 可以参考一个数据库,该数据库包含客户最近交互的记录,以提供更个性化的服务和个性化服务。

什么是微调?

对生成式 AI 模型进行微调意味着采用通用模型,例如来自 Anthropic 的 Claude 2、来自 Cohere 的 Command 或来自 Meta 的 Llama 2;对较小的特定领域数据集进行额外的训练;并根据此训练调整模型的参数。此优化可帮助模型更好地执行特定任务,因为它已适应特定领域的细微差别和术语,例如编码或医疗保健。

何时使用微调

当 LLM 需要在特定域中隐藏时,请选择微调。通过额外的训练,LLM 可以更好地理解提示词,并提供反映特定领域的细微差别和术语的输出。您需要访问为训练流程精心挑选的大型数据集或文档库,但微调是值得的,因为它可以更好地控制生成内容的风格、语气和方式。这可以在您的营销材料或客户互动中获得回报。微调,如 RAG,也可以有助于医学,编码和其他高度专业化的领域。

微调用例

微调是将通用 AI 模型适应特定任务或领域的过程,是一种强大的技术,可以显着改善一系列组织的结果,特别是在个性化和专业化是关键的情况下。下面是一些常见的用例,它可能特别有效:

  • 客户支持自动化。使用大量精心挑选的有关公司产品、服务和运营的数据和文档集合来微调 LLM 可以帮助 LLM 成为更有用的自动化客户支持系统。经过微调的 LLM 将更好地了解客户互动中的词汇和细微差别,并能够做出适当的反应。
  • 教育内容。LLM 可以针对特定领域的教育材料进行微调,例如历史或语法。然后,LLM 可以帮助创建新的学习内容,总结课本,生成测验问题,甚至在各个主题区域中提供辅导课程。
  • 医疗信息处理。LLM 可以通过医学文献、匿名患者记录以及其他医学文本和图像进行微调,使其更适用于建议治疗和诊断。

检索增强生成 (RAG) 与微调:主要区别

微调和 RAG 都使通用 LLM 更有用,但它们以不同的方式执行此操作。一个简单的类比是,微调 LLM 可以使其更深入地了解特定领域,例如医学或教育,同时将 LLM 与 RAG 架构配对,使其可以访问最新的本地数据以进行响应。

为什么不一起使用它们来获得既细微又及时的响应?这是一个不断增长的趋势,甚至还有自己的首字母缩写:RAFT,意思是检索增强微调。借助这种混合方法,可以在 RAG 架构中部署针对专用域数据进行微调的模型,利用其域专业知识在响应生成期间检索更相关的信息。其结果是具有高度准确性、相关性和上下文感知的输出。

我们将进一步讨论 RAFT,但首先让我们更好地了解这两种方法。

微调

RAG 和微调都有助于 LLM 超越从原始通用训练数据集提取的通用响应。微调涉及使用特定于特定领域或组织的数据集对 LLM 进行额外几轮训练。

  • 需求
    这要求 IT 和业务团队提前做好准备,为新一轮的训练收集大型数据集并清理它们并为其添加标签。训练机制本身是计算密集型的,需要有足够 GPU 支持的神经网络的高级 AI 架构,以便在合理的时间内训练 LLM。
  • 结果
    结果是精通特定域或业务案例的信息和语法的 LLM。
  • 潜在的缺点
    与 RAG 系统不同,LLM 完全依赖于用于微调训练制度的数据集,无法访问更新的外部知识。一个经过微调的 LLM 也可能失去或“忘记”其原始训练的一些更细的点。例如,它可能会在一般的谈话中失去技巧,因为它会沉浸在特定的专业中,例如医学。也许你已经认识了遭受同样命运的医生。

RAG

RAG 还会改变 LLM 的响应,但不会改变基础模型。相反,RAG 系统使用本地数据库或精心策划的文档集合来通知 LLM 的响应,通常提供最新的详细信息。

  • 优势
    在数据安全和隐私方面,RAG 架构被认为优于微调,因为数据可以存储在安全环境中,并具有严格的访问控制,有助于确保私有数据不会反映在 AI 响应中。
  • 弱点
    与微调相比,这种方法的一个弱点是,语言模型没有针对任何特定领域的准确性进行训练;它们利用 LLM 训练的通用知识来工作。

技能集和成本的比较

  • 技能集
    在技能集方面,虽然 RAG 更易于实施,但 RAG 和微调在编码和数据管理方面需要重叠的专业知识。此外,参与微调的团队还需要具备更多自然语言处理 (NLP)、深度学习和模型配置方面的专业知识。
  • 时间和成本
    微调需要更多前期工作,而 RAG 在运行时需要更多资源。微调意味着在部署 LLM 之前需要进行一轮计算密集型训练,这使其成为比 RAG 架构更昂贵的项目。一旦微调的 LLM 投入使用,运行时架构就相对简单了。此时,RAG 系统会为 LLM 增加额外的复杂性层,要求团队为每个提示维护最新的数据库和额外的计算资源。

混合方法:RAFT

这两种方法的局限性和好处很自然地导致了不断增长的趋势,将它们的优势结合起来。结果是称为 RAFT 的混合方法。

如何在 RAG 和微调之间进行选择

使用 RAG 架构或微调制度之间的选择取决于您拥有的资源以及您将如何使用 LLM。如下表所述,大多数用例都将受益于将两种方法结合在一起的努力 - 对于大多数公司来说,一旦他们努力进行微调,RAG 就是一个自然的补充。但是,下面有六个问题要问,以确定要优先考虑哪个问题:

  1. 响应是否必须包括本地和非常当前的数据?让 LLM 根据您的新数据生成回应是 RAG 的优势,也是它迅速普及的原因。
  2. LLM 是否在专业行业工作?通过微调,LLM 可以更好地理解提示词,并以符合特定任务或运营领域(例如医疗卫生)的独特语言提供响应。
  3. 在此过程中,数据隐私和安全问题至关重要?RAG 架构允许组织将敏感数据保存在安全可靠的本地数据库中。
  4. 回应的语气和方式是否重要?通过微调,LLM 可以用组织或特定领域的首选专用语言提供响应。如果客户、零售客户或合作伙伴要查询 LLM,则微调会增加专业的音调。
  5. 运行时资源是否受到限制?经过微调的 LLM 不需要比通用 LLM 更多的运行时资源。RAG 更复杂,需要 LLM 查询本地数据库以增强响应。这增加了开销。
  6. 是否可以访问计算基础设施和 AI 技能集?对 LLM 进行微调需要两者。RAG 需要运行时资源和数据基础设施,但 AI 技能更低。
用例要求 RAG 微调 RAFT
响应必须包括本地的新信息。
支持
不支持
支持
答案必须包含高度的可理解性。
支持
不支持
支持
响应必须反映组织的深厚领域知识。
支持
支持
支持
该组织具备强大的神经网络和 GPU 资源来进行 AI 训练。
不支持
支持
支持
回应必须反映组织的语气和营销语言。
不支持
支持
支持
该组织拥有大量、组织良好、新的文档集合,供 AI 从其响应中提取和引用。
支持
不支持
支持
AI 系统可以访问有限的运行时资源。
不支持
支持
支持
该组织拥有一个大型的精心策划的数据集和文档存储,用于训练和微调 AI。
支持
不支持
支持

利用 Oracle Cloud Infrastructure 从生成式 AI 获得更多业务价值

Oracle Cloud Infrastructure (OCI) Generative AI 是一个全托管式服务,包括 OCI 的强大功能以及开源或专有 LLM 的选择,无论您选择 RAG 还是微调,Oracle 都能帮助像您这样的组织提高工作效率。

我们使您将 LLM 与 RAG 相结合变得非常简单,这样您就可以获得基于多样化知识库的最新响应。Oracle AI 基础设施是您的理想选择。您将发现可扩展至 65,536 个 GPU 的超级集群,足以运行高要求的训练和推断工作负载,例如 LLM 响应、计算机视觉和预测分析。

通用 LLM 持续改进,不断涌现出来自 Anthropic、Cohere、Google、Meta 和许多其他版本的新版本。但是,无论这些人工智能模型如何精明地处理人类语言,他们总是需要一种方法来将该技能集与业务用例的特定需求联系起来。目前,微调和 RAG 是实现这一目标的两种方法。随着 AI 模型、硬件和数据架构的进步,他们需要不断改进。

您的 AI 卓越中心应在 RAG 的推出方面发挥着关键作用。没有 CoE?立即了解如何立即启动和运行 AI 卓越中心。

RAG 与微调常见问题解答

RAG 是否比微调更好?

RAG 和 AI 模型的微调各不相同,具有各自的优势和成本。两者都是使生成式 AI 模型更有用的常用方法,每个组织都应该根据需求选择合适的方法。另一个流行的选择是将两种方法(称为 RAFT)结合起来,以进行检索增强的微调。

什么比 RAG 更好?

RAG 只是帮助 LLM 通过引用公司的数据和文档来提供更好的响应的技术。一种名为 GraphRAG 的方法已经成为一种进一步增强 LLM 响应的方法,超越了 RAG 体系结构本身可以做的事情,但它增加了体系结构的复杂性,并且流行的用例尚未出现。

对 AI 模型进行微调是另一种方法,可以帮助 LLM 提供更有针对性或更细致的响应,并且可以与 RAG 结合使用以进一步提高 LLM 的性能。

RAG 和微调是否可以一起使用?

可以,这种混合方法提供了基于专用域数据进行微调的模型,然后将其部署在 RAG 架构中,以便可以在响应中提供新的或相关的信息。

RAG 和迁移学习有何区别?

RAG 通过访问本地及时更新的知识库来改善 LLM 的响应。迁移学习通过访问经过微调的独立 AI 模型以在特定域中工作来改善通用 AI 模型的响应。

注:为免疑义,本网页所用以下术语专指以下含义:

  1. 除Oracle隐私政策外,本网站中提及的“Oracle”专指Oracle境外公司而非甲骨文中国 。
  2. 相关Cloud或云术语均指代Oracle境外公司提供的云技术或其解决方案。