RAG pipeline 优化策略概述

RAG pipeline优化策略概述

编者按:随着GPT-4等大模型的出现,检索增强生成(RAG)技术备受关注。然而,我们是否已经找到了最佳的RAG策略呢?

我们今天为大家带来的这篇文章,作者认为目前还没有单一的RAG流程或策略是最优的。文章详细归纳了当前开发者们正在尝试的多种RAG性能优化策略。

文章首先指出RAG可以解决LLM的一些关键问题,如利用私有数据、扩展上下文窗口等。接着,作者列出了如何优化RAG流程的多种策略:将文档分块以提高搜索精确度、建立多个索引进行查询路由、微调嵌入模型适应特定文档集、混合使用多种检索方式、使用重排序算法、扩展或压缩提示语等。

每种策略都有其适用场景,开发者们还需要不断尝试探索,才能找到最佳RAG方案。但文章提供了当前改进RAG性能的多种切入点,让我们对RAG技术发展方向有了更清晰的认识。期待后续更多优秀成果的诞生!

原文链接:Improving RAG: Strategies

作者:Matt Rickard

译者:丘山子

检索增强生成(Retrieval Augmented Generation,RAG)解决了大语言模型(LLM)的几个问题:

  1. 不需要进行微调,即可实现将私有数据放入上下文。
  2. 能够有效地扩展 LLM 的信息上下文窗口(the context window of information)。
  3. 通过学习真实的文档(ground truth documents)来对抗大模型的"幻觉"问题。
  4. 此外,通过RAG技术,还可以在输出中"引用"这些文档,使模型更具可解释性(explainable)。

但是,并没有单一的RAG流程或策略(RAG pipeline or strategy)。大多数 RAG pipeline or strategy 都涉及到使用向量数据库(目前来看是这样)。不过,目前开发者们正在采用大量策略来改进RAG流程的性能。(在下文列举这些策略~)

  • 将文档分割成较小的片段(Chunking data)。将文档分块可以使语义搜索(semantic search)更加精确。如果文档本身将要被添加到提示语(prompt)中,并且其大小需要在上下文窗口的限制之内,这也是一种自然的限制。您可能需要匹配的是某个页面、章节或段落,而不是与用户查询匹配的整个文档。由于不同的文档类型在逻辑上可以以不同的方式进行分块,因此可能没有一种适用于所有情况的方法。
  • 建立多个索引(Multiple indices)。将文档语料库分割成多个索引,然后根据某些标准进行路由查询(routing queries)。这样做的话,搜索范围只会是一组较小的文档,而不是整个数据集。同样,这种方法并不总是有用,但对于某些数据集来说可能是有帮助的。相同的方法也适用于 LLM 本身。
  • 微调嵌入模型(Custom embedding model)。微调嵌入模型可以帮助检索。如果您的文档集合的相似性概念与其他集合有明显的差异,那么这种方法将是有用的。(译者注:不同的文档集合可能具有不同的相似性概念。例如,对于某些特定领域的文档集合,相似性可能基于特定的主题、关键词或上下文。在这种情况下,通过微调嵌入模型或自定义相似性度量方法,可以更好地适应您的文档集合的特定相似性概念,从而提高检索的准确性和效果。)
  • 混合多种检索方式(Hybrid search)。向量检索往往(或通常情况下)并不足够。通常需要将其与传统关系数据库和其他文档过滤方式相结合。
  • 重排序算法(Re-rank)。首先,使用初始检索方法获得了一个近似的候选检索结果列表。然后,使用重排序算法按相关性对结果进行排序。
  • 扩展或压缩提示语(Upscaling or downscaling prompts)。需要优化用户查询,使其能够在检索系统中发挥更好的作用。可以通过在进行语义搜索之前添加更多上下文信息来扩展用户查询,也可以通过删除可能分散模型注意力和不必要的部分来压缩查询语句。
相关推荐
酒旅Agent开发实战8 分钟前
AI 旅行规划助手如何接入真实酒旅数据:从自然语言到酒店预订的全流程 MCP 实战
人工智能·ai·旅游·skill·酒店api·机票api
workflower10 分钟前
设备单元级(L1)实施路径
人工智能·线性代数·矩阵·机器人·开源
Dragon Wu11 分钟前
ComfyUI Desktop 实例进入后一直loading的问题解决
人工智能·ai
“码”力全开35 分钟前
AI视频分析飞书告警常见问题和排查清单
人工智能·音视频·飞书
leoZ23141 分钟前
AI 辅助开发工具链 2026 版深度技术报告:从单点插件到全流程协同的范式重构
人工智能
hy952343 分钟前
从零搭建生产级AI智能客服系统(七):基础优化与一键部署,打造开箱即用的生产级系统
人工智能
深度学习机器1 小时前
Ghostty终端使用体验
人工智能·命令行
Token炼金师1 小时前
幂律的预言:Kaplan 与 Chinchilla 的算力账本 —— Scaling Laws 与最优配比
人工智能·深度学习·大模型架构·kv cache·scaling laws
yuhaiqiang1 小时前
随手 vibecoding 的浏览器插件已经 6000 多次下载,聊聊他的产品设计
前端·后端·面试
云烟成雨TD1 小时前
LangFlow 1.x 系列【5】可视化编辑页面功能说明
人工智能·python·agent