智能模型新篇章:RAG + Fine-Tuning 混合增强策略

一、前言

在之前的探讨中,我们已经分别深入了解了RAG(检索增强生成)和 Fine-tuning(微调)这两种优化大型语言模型的方法,探讨了它们在不同业务场景下的适用性、优势及局限。然而,我们很少讨论将这两种技术结合起来会带来什么样的效果。实际上,RAG和Fine-tuning并不是相互排斥的技术。之前讨论RAG的未来发展趋势时,我们提到一种实现路径是通过RAG利用外部知识,同时通过微调来实现对特定领域的适应。这样,我们就能在同一个模型中结合RAG和微调的优点:

  • 检索器能够快速访问广泛和最新的外部数据;
  • 微调能够深度定制模型以适应专业领域;
  • 生成器则结合外部上下文和微调后的领域知识来生成响应。

通过智能地结合RAG、微调以及混合方法,我们有可能创造出下一代智能应用程序,这些应用在适当适应领域需求的同时,能够充分发挥大型语言模型(LLMs)的潜力。

1.1、RAG与微调结合破局LLMs的局限

大型语言模型在理解和生成人类式文本方面取得了显著成就,覆盖了广泛的领域。这些模型通过分析大量数据集中的模式,在预训练阶段获得了丰富的知识和强大的语言理解能力。然而,尽管LLMs表现出色,它们在特定领域的深入理解上仍有所欠缺,其知识可能不够深入或缺乏权威性,这在需要深厚专业知识的场景中尤为明显。

为了弥补这些不足,研究人员尝试通过引入外部知识源来增强LLMs,这些知识源提供了确凿的事实和专业知识。目前,检索增强生成(RAG)和领域适应性微调是两种主要的增强技术。

  • 检索增强生成通过整合信息检索系统,能够根据上下文从外部资源中检索相关信息,这些信息补充LLM的输入,使其输出基于可靠来源的事实。RAG在开放领域问答和知识密集型任务中表现良好。
  • 特定领域微调则通过在特定领域数据上调整LLM参数来实现模型专门化,使模型学习到相关的知识和语言模式,显著提升相关任务表现。

虽然RAG为LLMs提供了外部知识,在推理过程中增加了信息量;而微调则在训练过程中传授特定领域知识,但这两种方法通常被独立研究。最新研究显示,结合RAG和微调技术可以创造出既具有广泛知识又拥有特定领域专长的LLMs。

将RAG的功能融入微调过程,使LLMs学会如何有效地利用检索到的知识,并在此过程中获得领域专业知识。同时,对RAG模型进行领域数据的微调,可以提高其检索能力和针对特定领域的知识基础。

本文将深入探讨这些技术的运作方式、主要优势及其可能开启的应用前景。通过结合外部知识访问和领域专业化,这些方法为创建更加丰富、可靠、专业的LLMs铺平了道路,以满足现实世界中的广泛应用需求。

二、检索增强生成(RAG)

检索增强生成(Retrieval-Augmented Generation, RAG)是一种旨在通过在推理过程中使语言模型能够访问和利用外部知识源来提升其能力的方法。RAG的核心在于将预训练的语言模型与信息检索系统相结合,创建出一个能够同时发挥两者优势的灵活架构。

RAG的流程通常包括以下几个步骤:

  • 输入处理:用户提出查询或提示,语言模型对其进行解读,以理解意图和所需信息。
  • 检索:系统在外部知识源中搜索可能与输入相关的信息,如文档段落、文档或知识片段。
  • 上下文整合:找到的信息与原始查询合并,形成一个包含问题和额外知识的增强提示。
  • 语言模型生成:语言模型基于这个增强的提示生成响应,使用外部知识确保其输出基于事实信息。

RAG在开放领域问答、知识密集型任务,甚至代码生成中通过访问相关文档或示例,已经显示出了有希望的结果。通过整合外部知识,RAG模型能够产生比仅依赖预训练知识库的模型更加事实和信息丰富的响应。

然而,传统RAG系统的一个重要限制是,在训练期间检索组件保持不变。这意味着语言模型没有学会如何最优地使用检索到的信息,或者根据不同的知识领域调整其推理过程。检索模块独立运作,其效果在很大程度上取决于它检索到的信息的质量和相关性。

2.1、领域特定微调

微调已成为为大型预训练语言模型(LLMs)定制化,使其在特定任务或领域中表现出色的有效技术。该过程包括对已经在广泛数据上预训练的LLM进行进一步训练,使用一个更小、更针对性的与目标任务或领域相关的数据集。

在微调过程中,LLM的参数被调整以更好地匹配领域特定数据集中的模式、词汇和知识。这使得LLM能够获得与领域相关的知识和语言技能,从而在相关应用中表现更佳。

领域特定微调在多个领域带来了显著的改进,例如:

  • 生物医学:在科学和医学数据上进行微调,使LLM能够帮助完成回答问题、文献分析,甚至医学编码等任务。
  • 计算机科学:在代码库和文档上进行微调,帮助LLM提升代码生成、文档理解,以及开发工具支持。
  • 金融:在金融新闻、报告和分析上进行微调,提高了LLM在股票预测、风险评估和财务报告生成等方面的能力。
  • 法律:在法律文件和案例法上进行微调,使LLM能够协助进行法律研究、合同分析,甚至起草法律文件。

领域特定微调的成功归功于LLM捕捉到微调数据中的独特知识、术语、风格模式和推理方法的能力。这种获得的专业知识使LLM能够为目标领域生成更准确、相关和可靠的输出。

2.2、传统微调的限制

尽管领域特定微调在增强LLMs的能力方面已被证明是有效的,但传统微调方法有一个关键限制:它们没有明确包含检索外部知识的能力。在微调期间,LLM的学习仅限于微调数据集本身提供的信息。

三、混合增强策略:RAG + Fine-Tuning

虽然RAG和针对特定领域的微调各自都取得了不错的成果,但最新的研究提出了一种新方法,能够同时发挥两者的优势。这种方法通过在微调过程中加入外部知识检索的功能,旨在打造既精通特定领域又能够依托权威资料、利用最新最全面信息的语言模型。

3.1、检索增强型微调(RAFT)

这种方法之一被称为检索增强型微调(Retrieval-Augmented Fine-Tuning, RAFT),在论文《适应领域特定RAG的语言模型调整》中首次提出。RAFT是一种微调技术,目的是提升语言模型在特定领域进行检索增强生成(RAG)的能力。

RAFT的核心思想是在包含有价值和无价值文档的特定领域数据集上对语言模型进行微调。在微调过程中,模型被训练在生成答案时引用预言文档中的相关信息,并忽略干扰文档。

RAFT的训练步骤包括:

  • 使用问答对、预言文档(包含答案)和干扰文档(与答案无关)构建特定领域的数据集。
  • 在部分训练样本中,同时提供 Oracle 文档和一组 Distractor 文档。
  • 对于其余示例,仅提供了 Distractor 文档,而没有提供 Oracle 文档。
  • 利用监督学习对语言模型进行微调,使其能够根据提供的文档和问题生成答案。
  • 鼓励模型生成“思想链”式的答案,明确引用预言机文档中的相关段落。

通过在微调过程中让模型同时接触相关和无关的文档,RAFT教会模型识别并利用最关键的信息,忽略无关干扰。这一过程有效地训练模型进行领域特定的RAG,提升了其通过检索和推理领域相关知识来回答问题的能力。

3.2、图形推理(RoG)

另一种结合方法是图形推理(Reasoning on Graphs, RoG),它专注于将语言模型与结构化的知识图谱相结合。RoG旨在通过结合语言模型和知识图谱的优势,实现准确且可解释的推理。

RoG框架主要由三个部分组成:

  • 规划模块:该模块引导语言模型根据知识图谱生成高层次的计划,以回答特定问题,这种计划以一系列关系的形式表示。
  • 检索模块:利用生成的关系序列作为指导,该模块在知识图谱中进行有限制的搜索,以检索可能包含答案的特定路径。
  • 推理模块:从知识图谱中检索出的路径作为上下文提供给语言模型,模型根据这些路径的可能性生成答案。

RoG的关键特点是,语言模型在知识图谱数据集的问答数据上进行微调。在微调过程中,模型学习生成基于知识图谱的有效关系路径(规划优化),并根据从图谱中检索出的路径进行推理(检索-推理优化)。

这种微调过程使语言模型学会通过利用知识图谱中编码的结构化知识进行准确且可解释的推理。生成的答案基于从知识图谱中检索出的明确路径,增强了答案的可解释性和可信度。

四、混合增强方法的优势

知识基础:联合RAG加微调方法的一个主要优势是,它允许语言模型将其推理和生成基于外部知识源。这有助于解决模型产生幻觉的问题,即模型仅基于预训练数据生成听起来合理但实际上不正确的输出。

通过在微调过程中加入外部知识检索功能,这些方法教会语言模型利用权威信息源,如特定领域的文档集合或结构化的知识图谱。这种基于事实知识源的基础提高了语言模型输出的准确性和可信度,减少了生成错误信息或矛盾陈述的可能性。

4.1、领域适应性

协同方法的另一个重要优势是,它能够通过微调将语言模型适应于特定领域。通过在特定领域的数据上进行微调,语言模型能够掌握与该领域相关的知识、术语、风格模式和推理方法。

这种领域适应性使语言模型在该领域内的后续任务和应用中表现得更好。例如,一个在生物医学文献上经过微调的语言模型,在医疗问题回答、文献分析甚至诊断支持等任务上,会比一个通用的、未经调整的模型表现得更好。

4.2、可解释性

某些协同方法,如图形推理(RoG),在其输出中生成可解释的推理路径。通过明确展示推理过程作为从知识图谱中检索出的关系或路径序列,这些方法提供了透明度,说明了语言模型是如何得出最终答案的。

这种可解释性对于建立对语言模型的信任至关重要,特别是在需要解释性和问责性的高风险领域。通过理解推理过程,用户可以评估模型输出的有效性和正确性,从而培养信任并做出更明智的决策。

4.3、灵活性

协同RAG加微调方法在利用知识来源方面具有灵活性。像RAFT这样的方法可以处理非结构化的文档集合,而RoG可以将语言模型与结构化的知识图谱相结合。

这种灵活性使得协同方法可以应用于广泛的领域和知识来源,从科学文献和新闻文章到特定领域的知识库和本体论。这种广泛的适用性使得该方法对各种知识密集型应用都非常有价值。

4.4、可扩展性

协同方法的一个关键优势是其能够利用大型语言模型的自监督预训练能力。这些预训练模型已经具备了大量的一般性知识,可以通过微调高效地适应新领域或知识来源。

与从头开始预训练相比,微调是一个相对计算效率更高的过程,允许语言模型可扩展地适应新领域或知识来源。随着知识来源的广度和复杂性不断增长,这种可扩展性变得至关重要,确保语言模型能够保持最新和相关。

通过结合外部知识访问和领域特定知识的获取,协同RAG加微调方法克服了传统语言模型和微调方法的几个限制。这些解决方案为创建更知识渊博、基础扎实和值得信赖的语言模型铺平了道路,这些模型能够在广泛的知识密集型应用中表现出色,从问答系统和推荐引擎到科学研究和决策支持工具。

五、潜在应用

5.1、专业领域问答系统:

在医学、法律和科学等专业领域,定制化的问答系统展现出巨大的潜力。这些领域需要深厚的专业知识、权威资料的获取能力,以及处理复杂信息的推理能力。

通过结合RAG技术和针对特定领域的微调,我们可以让语言模型学会检索和分析相关文档、法律案例、学术论文或专业数据库。这样,智能问答助手就能在其专业领域内提供准确、可信的答案,这些答案都建立在权威资料的基础之上。

5.2、代码生成与文档理解:

这种结合方法还能彻底改变我们对特定编程语言、框架或代码库的代码生成和文档理解。语言模型在大量代码库、API文档和代码示例上进行学习后,就能掌握特定领域的编程结构、规则和最佳实践。

借助RAG技术,这些经过微调的模型能够检索相关的代码片段、文档章节或社区讨论,从而在代码生成和解释方面提供更加丰富和精准的帮助。这为开发人员提供了强大的工具,使代码编写、文档创建和理解更加高效、准确。

5.3、结构化知识图谱支持的推荐系统:

当推荐系统利用结构化知识图谱时,RAG和微调技术的结合尤其有益。语言模型在产品目录、用户偏好或娱乐领域的知识图谱上进行学习,就能提供个性化的推荐。

结合这些专业知识和RAG技术,推荐系统能够根据用户偏好、产品特性及其在知识图谱中的关系,提供更加精确和可解释的个性化推荐。

5.4、药物发现与生物医学研究:

生物医学和制药领域将从这种结合方法中获益匪浅。语言模型在大量科学文献、临床试验数据和生物医学知识库上进行学习,就能深入掌握领域知识和推理能力。

有了RAG技术的支持,这些经过微调的模型能够检索和分析相关的研究论文、药物化合物数据库和生物通路信息,从而在药物发现、药物再利用、个性化医疗和基于文献的研究等多个方面提供支持。

除了上述特定应用,RAG与微调的结合在金融、教育、客户支持和决策支持系统等其他知识密集型领域也展现出巨大潜力。随着这一领域的研究不断深入,我们可以期待更多高级技术的出现,它们将外部知识无缝集成到语言模型中,使AI系统变得更加知识渊博、基础扎实和值得信赖。

实现这些应用的全部潜力,关键在于开发出强大且可扩展的技术,用于在特定领域的知识源上对语言模型进行微调,同时配备高效且有效的检索机制。此外,解决知识库的不完整性、动态变化和用户查询的模糊性等挑战,对于提供可靠和有影响力的解决方案也至关重要。

六、总结

RAG和特定领域微调的结合,为提升大型语言模型的外部知识和领域专长提供了一种强大的解决方案。通过发挥这两种方法的优势,研究人员已经开发出了使大语言模型能够基于事实信息进行推理、适应专业领域,并生成更可解释和可信输出的方法。

随着RAG和微调之间的联合作用不断被探索,我们可以预期未来的语言模型将不仅拥有广泛的知识,还能展现出深入的领域专长、推理能力和坚实的事实基础——这是迈向更知识渊博和可靠的AI系统的重要一步。

七、References

[1]. Angels Balaguer, Vinamra Benara, Renato Cunha, Roberto Estevão, Todd Hendry, Daniel Holstein, Jennifer Marsman, Nick Mecklenburg, Sara Malvar, Leonardo O. Nunes, Rafael Padilha, Morris Sharp, Bruno Silva, Swati Sharma, Vijay Aski, Ranveer Chandra, R. (2024). RAG vs Fine-tuning: Pipelines, Tradeoffs, and a Case Study on Agriculture:https://arxiv.org/pdf/2401.08406.pdf

[2]. Balaguer, A., Benara, V., Cunha, R., Estevão, R., Hendry, T., Holstein, D., Marsman, J., Mecklenburg, N., Malvar, S., Nunes, L. O., Padilha, R., Sharp, M., Silva, B., Sharma, S., Aski, V., & Chandra, R. (2024). RAG vs Fine-tuning: Pipelines, Tradeoffs, and a Case Study on Agriculture. arXiv preprint arXiv:2401.08406. Retrieved from https://arxiv.org/pdf/2401.08406.pdf

[3]. Touvron, H., Wu, J., Jiang, X., Almeida, D., Wainwright, C., Mishkin, P., Zhang, C., Agarwal, S., Slama, K., Ray, A., Schulman, J., Hilton, J., Kelton, F., Simens, M., Askell, A., Welinder, P., Christiano, P. F., Leike, J., & Lowe, R. (2023). Training language models to follow instructions with human feedback. In S. Koyejo, S. Mohamed, A. Agarwal, D. Belgrave, K. Cho, & A. Oh (Eds.), Advances in Neural Information Processing Systems (Vol. 35, pp. 27730–27744). Curran Associates, Inc. Retrieved from https://proceedings.neurips.cc/paper_files/paper/2022/file/b1efde53be364a73914f58805a001731-Paper-Conference.pdf

[4]. Lewis, P., Liu, Y., Goyal, N., Ghazvininejad, M., Mohamed, A., Levy, O., Stoyanov, V., & Zettlemoyer, L. (2020). Retrieval-augmented generation for knowledge-intensive NLP tasks. In Proceedings of the 2020 Conference on Empirical Methods in Natural Language Processing (EMNLP). Retrieved from https://arxiv.org/abs/2005.11401

[5]. RAG vs. Finetuning: Enhancing LLMs with new knowledge https://deepgram.com/learn/rag-vs-finetuning

[6]. Tianjun Zhang Shishir G. Patil Naman Jain Sheng Shen Matei Zaharia Ion Stoica Joseph E. Gonzalez, R. (2024). RAFT: Adapting Language Model to Domain Specific RAG . Retrieved from https://arxivtools.blob.core.windows.net/xueshuxiangzipaperhtml/2024_3_18/2403.10131.pdf

[7]. Linhao Luo, Yuan-Fang Li, Gholamreza Haffari, Shirui Pan, , R. (2023). Reasoning on Graphs: Faithful and Interpretable Large Language Model Reasoning. Retrieved from https://arxiv.org/abs/2310.01061

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

解读 Xend Finance:向 RWA 叙事拓展,构建更具包容性的 DeFi 体系

在二十世纪后,非洲地区陆续爆发了主权运动,这也让非洲大陆逐渐摆脱“殖民地”的标签。目前,非洲大陆公有 54 个主权国家,接近 15 亿且仍在飙升的人口规模,其 GDP 已经与印度相当,且仍旧处于飞速的发展进程中…

Python学习:字符串

Python 字符串概念 在Python中,字符串是一种不可变的数据类型,用于表示文本数据。字符串可以包含字母、数字、符号以及空格等字符,通常用引号(单引号或双引号)括起来表示。 var1 Hello World! var2 "www.csdn…

运维篇SHELL脚本实战案例

统计出每个IP的访问量有多少? 检查是否提供了日志文件的路径作为参数。使用awk从日志文件的每行中提取第一个字段(假设这是IP地址)。使用sort对提取的IP地址进行排序。使用uniq -c统计每个唯一IP地址的出现次数。最后,使用sort -…

Java的类与对象

前言 Java是一门纯面向对象的语言(Object Oriented Program,简称OOP),在面向对象的世界里,一切皆为对象。面向对象是解决问题的一种思想,主要依靠对象之间的交互完成一件事情。用面向对象的思想来涉及程序,更符合人们…

2024年【熔化焊接与热切割】模拟考试题库及熔化焊接与热切割实操考试视频

题库来源:安全生产模拟考试一点通公众号小程序 熔化焊接与热切割模拟考试题库参考答案及熔化焊接与热切割考试试题解析是安全生产模拟考试一点通题库老师及熔化焊接与热切割操作证已考过的学员汇总,相对有效帮助熔化焊接与热切割实操考试视频学员顺利通…

YOLOv9有效改进|CVPR2023即插即用的到残差注意力机制(轻量化注意力机制)Inverted Residual Mobile Block

专栏介绍:YOLOv9改进系列 | 包含深度学习最新创新,助力高效涨点!!! 一、改进点介绍 在YOLOv9中加入CVPR2023即插即用的到残差注意力机制。 二、模块详解 2.1 模块简介 Inverted Residual Mobile Block结合了倒置残差块…

MySQL高级学习笔记

1、MySQL架构组成 1.1 高级MySQL介绍 什么是DBA? 数据库管理员,英文是Database Administrator,简称DBA; 百度百科介绍 数据库管理员(简称DBA),是从事管理和维护数据库管理系统(D…

使用PLCSIM Advanced仿真博途运动控制

作者顾工首先,添加一个CPU,直接添加一个1518T,反正仿真,不用最好的干嘛呢。是吧。当然,你也可以添加一个你喜欢的PLC,这里不强求。 然后添加工艺对象,我们简单添加一个定位轴。 在工艺对象&am…

php laravel 二维码

public function qr($url,$name2,$inpath){require_once(dirname(__FILE__) . /../../../Library/phpqrcode/phpqrcode.php);$errorCorrectionLevel L;//容错级别$matrixPointSize 10;//生成图片大小$QRcode new \QRcode() ;$QRcode->png($url, $inpath.$name2, $errorCor…

参数化学习

因为parameters的参数不能和数据驱动类使用,会出现报错,可以使用before test/等参数

NCV6323BMTAATBG同步降压转换器芯片中文资料规格书PDF数据手册参数引脚图图片

产品概述: NCV6323 是一款同步降压转换器,用于使用一个锂电池或三个碱性/镍镉/镍氢电池供电的便携式应用的各种子系统。此类器件能够基于外部可调电压提供高达 2 A 的电流。使用 3 MHz 开关频率的运行允许采用小尺寸电感器和电容器。采用输入电源电压前…

Premiere模板|200个视频标题文字动画pr字幕模板包

Premiere模板,13个类别200个Pr视频标题字幕文字动画模板mogrt包。 几乎适用于任何场景。粗体标题,标注,未来主义和线条标题,下三分之一,霓虹灯,带数字的标题,倒计时,表格&#xff0c…

Spring Cloud Alibaba微服务从入门到进阶(七)(服务容错-Sentinel)

雪崩效应 我们把基础服务故障,导致上层服务故障,并且这个故障不断放大的过程,成为雪崩效应。 雪崩效应,往往是因为服务没有做好容错造成的。 微服务常见容错方案 仓壁模式 比如让controller有自己独立的线程池,线程池满…

海外舆情监控的重要性以及云手机的推荐

海外市场不仅有着无尽的商机,同时也存在着各种各样的挑战。例如,海外市场舆情的复杂变化给企业带来了潜在风险,尤其在新媒体技术快速发展的时代,舆论对企业品牌形象的影响日益巨大。本文将详细探讨海外舆情监控的重要性以及为大家…

jmeter接口测试教程及接口测试流程详解

一、Jmeter简介 Jmeter是由Apache公司开发的一个纯Java的开源项目,即可以用于做接口测试也可以用于做性能测试。 Jmeter具备高移植性,可以实现跨平台运行。 Jmeter可以实现分布式负载。 Jmeter采用多线程,允许通过多个线程并发取样或通过…

24.两数相加

给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。 请你将两个数相加,并以相同形式返回一个表示和的链表。 你可以假设除了数字 0 之外,这两个数都不会以 0 …

Java程序设计 3 选择

布尔数据类型和逻辑运算符 boolean类型的值为true和false,其字面值也只有true和false(也就是不能等同视为0和非零,这一点和C/C有所不同),且不能和其他数据类型混合运算(包括类型转换)。 Java里面…

【leetcode】67.二进制求和

前言:剑指offer刷题系列 问题: 给你两个二进制字符串 a 和 b ,以二进制字符串的形式返回它们的和。 示例: 输入:a "1010", b "1011" 输出:"10101"思路1: …

【面试题】HashMap为什么可以插入null而Hashtable就不可以(源码分析)

首先hashmap可以插入null值,但是hashtable和hashcurrentHashmap是不支持的;这是因为在 hashmap对插入key为null进行了特殊处理,当插入的值为null的时候会将哈希值设置为0 但是hashtable会直接抛出异常: 并且hashmap是线程不…

微信小程序选择器picker的使用(省市区)

index.wxml picker中的 moderegion模式&#xff0c;这里同element中的select不同的是&#xff0c;不需要自己在绑定数据原&#xff0c;默认就包含了省市区的整体数据 <view class"section"><view class"section__title">省市区选择器</vie…