大模型学习笔记-RAG技术(RAG增强)核心内容提升已构建RAG(Retrieval-Augmented Generation,检索增强生成)系统性能的方法,并将现有方法按增强目标分为输入、检索器、生成器、结果和整个流程5类。这种分类有助于系统地理解和研究不同方面的增强策略对RAG系统性能的影响。五类增强方法1. 输入增强输入对检索阶段的最终结果影响重大。查询变换(Query Transformation):通过修改输入查询来提升检索效果。例如,Query2doc和HyDE利用原始查询生成伪文档进行检索。数据增强(Data Augmention):在检索前对数据进行优化。如Make-An-Audio为无语言音频生成字幕并添加随机概念音频,减少数据稀疏性。2. 检索器增强检索器在RAG系统中至关重要,其检索内容的质量决定了输入生成器的信息。递归检索(Recursive Retrieval):通过多次搜索获取更丰富、高质量的内容。ReACT:使用Chain-of-Thought(CoT)将查询分解进行递归检索,提供更丰富的信息。块优化(Chunk Optimization):调整检索块大小以改进结果。例如,LlamaIndex采用“从小到大”的原则进行块优化,旨在定位更细粒度的内容,但返回更丰富的信息。检索器微调(Retriever Finetuning):使用领域特定或任务相关数据对嵌入模型进行微调,以提升在目标领域的性能。混合检索(Hybrid Retrieval):同时使用多种检索方法或从多个来源提取信息。重排序(Re-ranking):对检索内容重新排序以提高多样性和检索质量。检索变换(Retrieval Transformation):对检索内容进行改写以更好地激活生成器。其他优化方法:元数据过滤、使用大语言模型生成文档替代检索等。3. 生成器增强生成器的质量常常决定了RAG系统最终输出结果的质量。提示工程(Prompt Engineering):多种技术,如提示压缩、思维链提示等,适用于RAG系统中的大语言模型生成器。解码调整(Decoding Tuning):通过微调超参数增强对生成器的控制,平衡结果的多样性和质量。生成器微调(Generator Finetuning):增强模型的领域知识或使其更好地与检索器配合。4. 结果增强在许多场景中,RAG的结果可能无法达到预期。输出重写(Output Rewrite):在特定场景下重写生成器生成的内容,使其更符合下游任务需求。例如,SARGAM在代码相关任务中优化输出,CBRKBQA在知识库问答中调整结果以匹配知识图谱中的关系。5. RAG流程增强RAG流程增强是指对RAG的整个过程进行优化,以获得更好的性能结果。自适应检索(Adaptive Retrieval):通过规则或模型判断检索的必要性,避免过度检索导致的资源浪费和模型困惑。迭代RAG(Iterative RAG):通过多次循环检索和生成阶段逐步优化结果。例如,RepoCoder在代码完成任务中通过迭代检索-生成优化查询,ITER-RETGEN利用生成器输出发现知识差距并检索信息以提升内容质量。RAG应用技术的概览“APPLICATIONS”(应用)部分聚焦于RAG在多种模态中的实际应用,通过展示其在不同任务中的运用,凸显RAG的广泛适用性和有效性。1. 文本领域应用问答系统:RAG通过检索相关文本片段辅助模型生成答案,如FiD和REALM检索片段后由LLMs生成答案,RETRO利用注意力机制整合信息。事实验证:利用多语言检索机制和RAG支持LLMs,解决资源不足和不一致问题,如CONCRETE利用跨语言检索。常识推理:借助知识图拓展概念,分析文本特征对模型处理争议问题的影响,如KG-BART利用知识图增强逻辑连贯性。人机对话:利用知识图、检索对话历史和互联网内容等方式,提升对话质量,如ConceptFlow用知识图引导对话。神经机器翻译:创新利用单语语料库和多语言学习技术,提升翻译精度,如Cai等人的研究。事件抽取:通过检索相关问答对丰富问题上下文,提升事件抽取效果。文本摘要:运用不同检索策略和技术,处理长文本和提高摘要质量。2. 代码领域应用代码生成:Query-based RAG构建提示,Logit-based RAG融合检索信息,提高代码生成效果。代码总结:多种方法处理检索结果,生成高质量的代码总结。代码补全:Query-based RAG是主流方式,通过检索和融合信息提升代码补全准确性。自动程序修复:利用混合检索构建提示,帮助模型修复错误代码。文本到SQL和基于代码的语义解析:利用Query-based RAG检索相关信息构建提示。其他代码相关任务:在数值推理、复杂任务解决等任务中,通过检索相似示例构建提示。3. 知识领域应用知识库问答:Query-based RAG通过检索实体、关系等构建提示,提升问答准确性。知识增强的开放域问答:Latent representation-based RAG通过融合技术增强模型能力。表格问答:Fusion-in-decoder风格的RAG和Query-based RAG提升问答效果。其他知识相关任务:将检索到的知识融入模型,用于对话生成、查询建议等。4. 图像领域应用图像生成:检索过程有助于生成高质量图像,在GAN-based模型和扩散模型中都有应用。图像字幕生成:通过检索相关字幕或知识,提升字幕生成质量。其他图像相关任务:在视觉问答、视觉对话中,利用检索增强模型效果。5. 视频领域应用视频字幕生成:利用背景知识、检索相关文本和视频,提升字幕生成质量和相关性。视频问答与对话:通过存储和检索信息,生成与视频内容相符的回答和对话。其他视频相关任务:将视频内容转换为提示用于多种任务,或利用检索增强自动驾驶中的模型效果。6. 音频领域应用音频生成:通过检索相关音频或字幕-音频对,辅助音频生成模型。音频字幕生成:利用密集检索器检索相关字幕,提升音频字幕生成能力。7. 3D领域应用在文本到3D任务中,检索相关3D资产或运动实体,辅助3D模型生成,提高生成的准确性和质量。8. 科学领域应用药物发现:通过检索和融合相关分子信息,辅助药物分子设计。生物医学信息增强:从生物医学数据库检索信息,增强LLM的能力。数学应用:利用检索增强技术选择相关前提,提高定理证明和数学问答的效果。综上所述,RAG技术通过多方面的增强策略,在多种模态和任务中展现了广泛的应用前景和强大的性能提升潜力。



































