14-44 剑和诗人18 - 你想怎么应用 RAG 与微调

​​​​​​

14-44 剑和诗人18 - 你想怎么应用 RAG 与微调

要充分发挥 LLM 的潜力,需要在检索增强生成 (RAG) 和微调之间选择正确的技术。

让我们研究一下何时针对 LLM、较小模型和预训练模型使用 RAG 而不是微调。我们将介绍:

  • LLM 和 RAG 的简要背景
  • RAG 相对于微调 LLM 的优势
  • 何时针对不同模型大小进行微调与 RAG
  • 使用 RAG 和微调进行预训练模型
  • RAG 和微调的金融服务示例
  • 实际考虑和建议

LLM 和 RAG 的背景

大型语言模型利用一种称为预训练的技术,对互联网、代码、社交媒体和书籍等海量文本数据集进行训练。这使它们能够生成文本、回答问题、翻译语言等,而无需任何特定于任务的数据。然而,它们的知识仍然有限。

检索增强生成通过在生成文本之前从数据库中检索相关知识作为上下文来增强 LLM。例如,财务顾问 LLM 可以在提出财务建议之前检索客户的投资历史和个人资料。

检索增强将 LLM 理解语言的能力与领域特定数据库中的相关知识相结合。与普通 LLM 相比,这使得 RAG 系统更加知识丰富、一致且安全。

14-44 剑和诗人18 - 你想怎么应用 RAG 与微调

RAG 相对于微调 LLM 的优势

微调通过对特定领域的数据进行训练,使预训练的 LLM 适应特定任务。例如,预训练的 LLM 可以在财务文档上进行微调,以提高其财务知识。

然而,与检索增强相比,微调有几个缺点:

  • 遗忘:经过微调的模型经常会遗忘或失去预训练的能力。例如,经过微调的金融法学硕士 (LLM) 可能不再能很好地处理一般的对话任务。
  • 训练数据依赖性:性能完全依赖于可用训练数据的数量和质量。收集高质量数据的成本很高。
  • 缺乏外部知识:模型只知道训练数据中的内容,缺乏现实世界的知识。
  • 不可定制:对微调模型的更改需要重新训练,这很昂贵。

相比之下,RAG 系统:

  • 由于 LLM 本身没有修改,因此保留预训练的能力。
  • 使用可定制的外部知识源(如数据库)来增强 LLM。
  • 允许改变知识来源,而无需重新培训法学硕士。
  • 由于 LLM 无需再培训,因此对数据的要求较低。

因此,RAG系统通常能获得比微调更好的性能,同时保留更多原始LLM的功能。

何时针对不同大小的模型进行微调与 RAG

微调和 RAG 之间的选择取决于模型大小:

大型语言模型

对于像 GPT-4 这样具有数万亿参数的大型模型,RAG 通常比微调更可取:

  • 保留预训练能力:微调可能会忘记需要 GPT-4 规模模型的对话、翻译、分析等能力。
  • 利用外部知识: GPT-4/Llama-2 缺乏世界知识,而 RAG 通过外部数据库来增强它。
  • 避免灾难性的遗忘:微调可能会损害 LLM 的多种能力。
  • 灵活的知识来源: RAG知识源可以改变,无需昂贵的再培训。

除非微调任务与预训练非常相似或需要记忆,否则 RAG 更适合 LLM。

中等语言模型

对于像 Llama 2 7B、Falcon 7B、Alpaca 7B 这样拥有数亿个参数的中型模型,RAG 和微调都是可行的选择:

  • 对于严重依赖记忆的目标(例如回答问题而不是文档),可能更倾向于进行微调。
  • RAG 可以通过检索相关知识,为特定领域的生成或分类任务带来优势。

在选择时,评估保留中型 LLM 的全部一般知识是否对您的用例重要。

小语言模型

对于像 Zephyr、Phi2 和 Orca 这样具有数千到数百万个参数的小型自定义模型,微调通常比 RAG 更合适:

  • 小型模型已经缺乏大型模型的通用能力。
  • 通过微调对特定领域的数据进行训练可以直接灌输知识。
  • 由于他们只接受了最少的预先训练,因此发生灾难性遗忘的风险很小。
  • 在需要时可以轻松地使用新数据重新训练小模型。

除非你特别需要保留知识广度,否则微调小模型比 RAG 更可取。

使用 RAG 和微调进行预训练模型

RAG 和微调都是适用于调整预训练模型的策略——无论是像 BERT、ELMo、RoBERTa 这样的 LLM 还是更小的自定义模型。

预训练模型的 RAG

在以下情况下,将 RAG 应用于预训练模型是有效的:

  • 利用常识——该模型具有您希望保留的强大的底层功能,如交谈、分析等。
  • 尽量减少遗忘——进一步的训练可能会损害多种多样的一般能力。
  • 利用外部知识——利用检索到的特定领域知识进行增强是有价值的。
  • 灵活的知识——知识需求经常变化,因此可交换的数据库比再培训更受欢迎。

例如,RAG 适合大型对话模型,以避免忘记一般的聊天能力,同时用领域知识增强它们。

微调预训练模型

在以下情况下,微调对于预训练模型是有利的:

  • 专业专注——最终任务在很大程度上依赖于专业知识而不是一般能力。
  • 记忆——记忆客户资料等特定领域的数据至关重要。
  • 静态知识——知识要求相对固定,减少了对可交换数据库的需求。
  • 模型尺寸小——对于较小的模型,微调可以直接注入知识,而不会产生灾难性遗忘的风险。

例如,微调对于使用静态的公司政策和响应来训练客户服务聊天机器人是有效的。

应用 RAG 和微调的示例

让我们考虑一下金融服务用例在一般知识与特定领域知识需求方面的差异——影响 RAG 与微调的选择。

投资管理与建议

提供定制的投资管理和财务建议既需要强大的一般会话能力,也需要特定领域的知识。

RAG 非常适合这些应用,因为它:

  • 利用客户资料和投资数据增强 GPT-4 等对话模型,以提供个性化建议。
  • 检索市场数据、过去的表现和研究以制定明智的投资策略。
  • 使用新的市场信息频繁更新数据库,而无需重新训练底层模型。

微调可能会损害与客户有效沟通至关重要的一般对话能力。

保险索赔处理

处理保险索赔主要涉及分析文件、提取关键信息、根据保单验证索赔以及生成索赔报告。

根据过去的索赔和政策对 Llama 2 7B、Falcon 7B 等中型模型进行微调,适合以下用例:

  • 记住保险政策至关重要——通过微调比使用外部数据库更好。
  • 静态的政策和索赔数据与快速变化的知识。
  • 特定领域的任务侧重于形式分析与一般会话能力。

客户服务聊天机器人

处理金融服务客户服务的聊天机器人通常需要广泛的对话能力以及对公司特定的常见问题解答、政策和脚本的了解:

  • 采用 RAG 进行一般闲聊和对公司知识进行微调相结合的方法,效果很好。
  • 在内部数据集上微调小型聊天机器人模型,以直接嵌入公司知识。
  • 在需要时,通过 RAG 检索适当的常见问题解答、帐户详细信息和脚本进行增强。

这在广泛的对话能力和深厚的公司特定知识之间取得了平衡。

反洗钱文本分析

分析财务文件和客户数据来检测洗钱和金融犯罪在很大程度上依赖于学习模式和领域术语:

  • 鉴于专业的重点,对 AML 数据上的文本分类模型进行微调是有意义的。
  • 对法律、法规、可疑活动模式的静态了解。
  • 一般的会话技巧不太重要。

通过微调直接训练模型比 RAG 更适合这种专门的文本分析任务。

客户资料关键字提取

从客户文件和信函中提取资产、财务目标、风险承受能力等相关关键词需要基本的语言理解,而不需要太多的领域知识:

  • 现成的 LLM 可以很好地发挥作用,无需进行太多调整。
  • 无需记住领域术语或模式。
  • 一般语言能力提供了足够的信号。
  • 对于这种通用任务来说,RAG 的优势微乎其微。

使用现成的模型通常比进行广泛的微调或 RAG 效果更好。

14-44 剑和诗人18 - 你想怎么应用 RAG 与微调

RAG 和微调的关键实际考虑因素

  • 获得 LLM 学位— RAG 需要获得大型预训练模型。在内部开发较小的定制模型更容易。
  • 数据可用性——微调需要大量特定领域的数据集。RAG 更多地依赖于外部知识来源。
  • 知识灵活性——RAG 支持频繁更新知识,无需重新训练。微调需要定期重新训练。
  • 训练基础设施——RAG 主要指选择和更新数据源。微调需要 GPU 才能实现高效训练。
  • 推理速度— RAG 检索步骤增加了推理延迟。微调模型是独立的,因此可以更快。
  • 通用能力——RAG 保留了大型 LLM 的多功能性。微调以通用性换取专业化。
  • 混合——许多应用程序使用 RAG 实现某些功能,并对其他功能进行微调。为每个任务选择最佳方法。

比较 RAG 和 Fine-tuning 的高级观点:

  • 混合 RAG 调整方法— 混合技术并非二元选择,而是旨在结合两种方法的优势。例如,T0 部分微调 LLM 的某些层,同时冻结其他层以保留功能。
  • 多阶段建模——一种有前途的方法涉及首先使用 RAG 进行检索,然后使用检索到的上下文来调节微调模型。这允许灵活地整合外部知识,同时专门化模型的各个部分。
  • 动态 RAG 与静态微调— RAG 允许动态更新知识源而无需重新训练,而微调则产生静态专门模型。然而,动态评估和持续学习等技术也旨在在线发展微调模型。
  • 缩放定律——微调通常会随着模型大小而导致性能收益递减,而缩放 RAG 模型可能会在吸收外部知识后实现更一致的改进。这可以使 RAG 更有效地开发大型模型。
  • 超个性化——RAG 通过为每个用户提供不同的知识来实现​​个性化,而无需重新训练模型。微调需要从头开始训练每个用户的模型,这限制了个性化。但是,像模型无关的元学习这样的微调方法可能会缓解这种情况。
  • 缓解灾难性遗忘— RAG 本质上避免了忘记预先训练的能力。但弹性权重合并、突触智能和 dropout 调度等新的微调技术也旨在缓解灾难性遗忘。
  • 设备上部署— 经过微调的模型完全独立,可实现低延迟设备上部署。加入知识检索功能使得在设备上全面部署 RAG 更具挑战性。但是,将检索到的知识提炼为模型参数等近似方法可能有助于在设备上部署 RAG 系统。
  • 理论与实证— 从理论上讲,RAG 应该通过结合人类知识来提高微调的样本效率。但实证结果好坏参半,通常表现出相当的性能。需要进一步研究才能实现 RAG 的理论收益。

探索它们的结合是最大限度发挥每种方法优势的一条有希望的途径。

主要建议

根据我们的分析,以下是一些最佳实践:

  • 对于顾问和聊天机器人等面向客户的应用程序,优先考虑使用 RAG 保留对话功能,而不是进行微调。对于公司特定的必要知识,请谨慎使用微调。
  • 对于文档和文本分析任务,专门的微调模型通常比 RAG 表现更好。但对于投资等快速发展的分析,请考虑使用 RAG。
  • 即使构建自定义模型,也能保持对大型、通用 LLM 的访问权限 — RAG 能够从他们的通用能力中受益。
  • 定期审核微调模型,以检查与初始训练数据相比是否存在期望行为的偏差。
  • 评估将专门的微调模型与通用对话 RAG 模型相结合的集成方法。
  • 为 RAG 仔细选择外部知识来源——相关性、准确性和道德决定了整体系统的性能。
  • 对于客户数据和文档,仅检索必要部分而不是全文,以平衡相关性和隐私。

结论

选择正确的技术(如 RAG 或微调)对于最大限度地提高 LLM、较小模型和金融服务预训练系统的性能至关重要。考虑因素很复杂——取决于模型大小、用例重点、基础设施约束、不断变化的知识需求等因素。将 RAG 和微调相结合通常是实现对话能力和领域专业知识的最佳方法。随着 LLM 和增强型 AI 的发展,RAG 将变得更加突出——尽管在最适合的地方仍需要微调来补充。了解这些技术之间细微差别的公司将获得根据其独特需求定制的 AI 优势。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/41690.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AI集成工具平台一站式体验,零门槛使用国内外主流大模型

目录 0 写在前面1 AI艺术大师1.1 绘画制图1.2 智能作曲 2 AI科研助理2.1 学术搜索2.2 自动代码 3 AI智能对话3.1 聊天机器人3.2 模型竞技场 4 特别福利 0 写在前面 人工智能大模型浪潮滚滚,正推动着千行百业的数智化进程。随着技术演进,2024年被视为是大…

保健品商城小程序模板源码

保健品商城小程序模板源码 简洁通用的保健品,健康生活,零售商品,电子商务微信小程序前端模板下载。包含:主页、购物车、客服、个人中心、我的订单、商品详情、我的钱包、设置等等。 保健品商城小程序模板源码

web安全基础名词概念

本节内容根据小迪安全讲解制作 第一天 域名: 1.1什么是域名? 网域名称(英语:Domain Name,简称:Domain),简称域名、网域,是由一串用点分隔的字符组成的互联网上某一台计算机或计算机组的名称&a…

celery执行任务报错ValueError: not enough values to unpack

背景 在做用户注册模块的时候需要对手机号验证的过程进行优化,目前想到的方式是通过celeryrabbitmq的方式进行异步处理,选择使用celery是因为使用方便、性能好、可分布式部署。 环境信息 目前使用地win11容器化启动 rabbitmq:3.13.2 python:3.6.8 cel…

高薪程序员必修课-JVM创建对象时如何解决多线程内存抢占问题

前言 在JVM中,堆的内存分配过程涉及到线程安全性的保障,具体来说涉及到对象的内存分配时,并不是简单的抢占式分配,而是通过一些机制来保证线程安全和高效的内存管理。下面解释一下JVM是如何设计来保证线程安全的: 内存…

STA:延迟为什么会有负值?

我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧? 拾陆楼知识星球入口 相关文章链接: STA:串扰延迟分析 STA:CRPR悲观路径移除 这个问题就是典型的SI问题,受SI影响,与hold 分析而言data…

Dify v0.6.9源码部署

一.前置条件 克隆Dify v0.6.9代码: git clone https://github.com/langgenius/dify.git在启用业务服务之前,需要先部署 PostgresSQL / Redis / Weaviate(如果本地没有的话),可以通过以下命令启动: cd do…

Data-Juicer:阿里巴巴荣誉出品的大模型数据清洗框架

Diffusion Models专栏文章汇总:入门与实战 前言:如何优雅地进行大规模数据清洗是一门艺术,特别对于大模型,数据的质量是决定模型成功最关键的因素之一。阿里巴巴最近开源了一项专门针对大语言模型和视频生成大模型的数据清洗框架&…

短信群发平台适用于哪些行业?

短信群发平台作为一种高效、快速且成本相对较低的通信方式,适用于多个行业。以下是一些主要适用行业的概述: 1. 零售与电商行业 应用场景:零售和电商企业可以利用短信群发进行新品推广、促销信息发布、订单状态更新、物流跟踪通知等。 2. 金…

redis并发、穿透、雪崩

Redis如何实现高并发 首先是单线程模型:redis采用单线程可以避免多线程下切换和竞争的开销,提高cpu的利用率,如果是多核cpu,可以部署多个redis实例。基于内存的数据存储:redis将数据存储在内存中,相比于硬…

【测试】系统压力测试报告模板(Word原件)

系统压力测试,简而言之,是在模拟高负载、高并发的环境下,对系统进行全面测试的过程。它旨在评估系统在面对极端使用条件时的性能表现,包括处理能力、响应时间、资源消耗及稳定性等关键指标。通过压力测试,开发团队能够…

上海-LM科技(面经)

上海-LM科技 hr电话面 个人简介 个人信息的询问 是否知道芋道框架 技术面 算法题 14. 最长公共前缀(写出来即可) 聊一下Docker Docker核心概念总结Docker实战 聊一下AOP Spring AOP详解 聊一下JWT JWT 基础概念详解JWT 身份认证优缺点分析 Spring…

代码随想录——单调递增的数字(Leetcode738)

题目链接 贪心 class Solution {public int monotoneIncreasingDigits(int n) {char[] digits String.valueOf(n).toCharArray();int flag digits.length;for (int i digits.length - 1; i > 0; i--) {if (digits[i] < digits[i - 1]) {flag i;digits[i - 1]--;}}…

玉石风能否接棒黏土风?一探AI绘画新风尚

在数字艺术的浪潮中,AI绘画平台以其独特的创造力和便捷性,正在逐步改变我们对艺术的传统认知。从黏土风的温暖质感到琉璃玉石的细腻光泽,每一次风格的转变都引领着新的潮流。今天,我们将聚焦玉石风,探讨它是否能成为下一个流行的艺术滤镜,并提供一种在线体验的方式,让你…

Python | Leetcode Python题解之第221题最大正方形

题目&#xff1a; 题解&#xff1a; class Solution:def maximalSquare(self, matrix: List[List[str]]) -> int:if len(matrix) 0 or len(matrix[0]) 0:return 0maxSide 0rows, columns len(matrix), len(matrix[0])dp [[0] * columns for _ in range(rows)]for i in…

Kafka(一)基础介绍

一&#xff0c;Kafka集群 一个典型的 Kafka 体系架构包括若Producer、Broker、Consumer&#xff0c;以及一个ZooKeeper集群&#xff0c;如图所示。 ZooKeeper&#xff1a;Kafka负责集群元数据的管理、控制器的选举等操作的&#xff1b; Producer&#xff1a;将消息发送到Broker…

[AI 大模型] OpenAI ChatGPT

文章目录 ChatGPT 简介ChatGPT 的模型架构ChatGPT的发展历史节点爆发元年AI伦理和安全 ChatGPT 新技术1. 技术进步2. 应用领域3. 代码示例4. 对话示例 ChatGPT 简介 ChatGPT 是由 OpenAI 开发的一个大型语言模型&#xff0c;基于GPT-4架构。它能够理解和生成自然语言文本&…

学习笔记——动态路由——OSPF(特殊区域)

十、OSPF特殊区域 1、技术背景 早期路由器靠CPU计算转发&#xff0c;由于硬件技术限制问题&#xff0c;因此资源不是特别充足&#xff0c;因此是要节省资源使用&#xff0c;规划是非常必要的。 OSPF路由器需要同时维护域内路由、域间路由、外部路由信息数据库。当网络规模不…

电脑会议录音转文字工具哪个好?5个转文字工具简化工作流程

在如今忙碌的生活中&#xff0c;我们常常需要记录和回顾重要的对话和讨论。手写笔记可能跟不上速度&#xff0c;而录音则以其便捷性成为了捕捉信息的有力工具。但录音文件的后续处理&#xff0c;往往让人头疼不已。想象一下&#xff0c;如果能够瞬间将这些声音转化为文字&#…

iptables实现端口转发ssh

iptables实现端口转发 实现使用防火墙9898端口访问内网front主机的22端口&#xff08;ssh连接&#xff09; 1. 防火墙配置(lb01) # 配置iptables # 这条命令的作用是将所有目的地为192.168.100.155且目标端口为19898的TCP数据包的目标IP地址改为10.0.0.148&#xff0c;并将目标…