关注腾讯云开发者,一手技术干货提前解锁 本文系统性地梳理了 RAG(Retrieval-Augmented Generation,检索增强生成)系统从基础到高级的 20 种优化方法,涵盖分块策略、检索增强 、查询优化、生成质量控制等多个维度。 适用场景:上线前调参、不同领域/文档类型单独优化。 19 CRAG 系统 动态评估并纠正检索质量 20 RL增强RAG 系统 强化学习优化全流程 优化方法选择指南 分块优化:检索不够精准时,优先考虑语义分块(1)、命题分块(13)或切块大小评估 检索增强:融合检索(15)性价比高、易落地;图RAG(16)适合概念与关系密集的领域。 查询优化:HyDE(18)对短查询、抽象问句效果好;查询转换(6)适合复杂、多子问题查询。
RAG有哪些相关研究? 在RAG领域,已经有不少研究为这篇论文奠定了基础。 RAG系统的优化: Wang et al. (2024) 提出了优化检索组件的策略,比如改进文档索引和检索算法,以减少延迟并保持准确性。 通过这些步骤,论文系统地研究了RAG系统的架构,并提出了具体的改进措施,为开发和优化RAG系统提供了实证基础和理论支持。 论文做了哪些实验? 对比了有无RAG模块的模型(w/o_RAG)与包含RAG模块的模型之间的事实性表现。 定性分析: 提供了在TruthfulQA和MMLU数据集上由模型变体生成的示例。 基于74次实验的结果,论文总结了关键发现,并提出了对比上下文学习RAG和焦点模式RAG在性能上的优越性。
AI工程实践指南:探索LLM/SLM集成,利用MoE和Co-LLM优化代码生成。RAG提供可扩展替代方案,避免静态微调,提升代码质量。 ,同时平衡模型选择、性能优化、安全性和成本效益。 这种方法通过将较简单的任务分配给较小的模型,将复杂的任务分配给较大的模型来优化效率。 推理模型的最新进展,例如 OpenAI o3-mini,证明了将 SLM 与 RAG 结合用于代理代码验证和审查的有效性。 在 AI 软件开发平台中部署 LLM 并使用 RAG 对其进行增强可以提高准确性,消除幻觉并优化资源效率。
本文首发个人博客:llm与RAG的学习与优化 - 黑白の世界欢迎点击,评论前言这是一篇拖延了半年的文章。 提问 RAG程序->>嵌入式模型: 2. 将问题文本向量化 嵌入式模型-->>RAG程序: 返回问题向量 RAG程序->>向量数据库: 3. 还有一种最简单的优化方法。用户提问都过一遍LLM大模型,让他标准化一些。3. 这是提升RAG效果最有效的手段之一。结语以上内容大概就是笔者最近在大模型学习,RAG开发与特定领域向量数据库构建业务中的一些总结与优化心得。同时不禁感叹,大模型从22年到如今的发展迅速。 可以看到本文在谈到RAG调优的格式突然有些变化。因为到这里笔者有些懒了,手写了思路与大纲后,直接让AI优化,然后再手改一番。本文还只是单纯的 RAG知识库,或者说向量数据库的相关技术点。
很多做RAG的朋友可能都有过这样的经历:兴冲冲地把系统搭起来满怀信心地让它回答几个问题,结果它要么答非所问,要么一脸无辜地说"抱歉我不知道"。 今天我们就来聊聊RAG 2.0在索引与召回机制上的优化思路,看看怎么才能让RAG真正派上用场。 向量召回的困境与破局之道 向量召回命中率低这个问题,说起来简单,真正解决起来却让人头疼。 JaColBERT在日语数据集上的表现已经超过了BGE-M3,answerai把ColBERT参数压缩到3300万但效果不降反升。 结语 RAG 2.0的索引与召回机制优化,本质上是在效果和效率之间找平衡。 多路召回解决了单一检索方式的局限,张量排序在保持效果的同时提升了效率,文档预处理则为整个系统打下了高质量的数据基础。 RAG技术还在快速演进,但无论怎么变,扎实的基础功永远是关键,是吧?
RAG(Retrieval-Augmented Generation)中的检索模块是整个系统的关键环节,直接影响生成结果的质量。为了提升检索的准确性、相关性和效率,业界采用了多种优化策略。 以下是 RAG 检索模块的主要优化方法: 一、向量检索优化 更优的嵌入模型(Embedding Model) 使用领域微调的嵌入模型(如 BGE、E5 等),比通用模型(如 Sentence-BERT) 四、索引与架构优化 分块策略优化 合理的文本分块大小(如 256-512 tokens)。 使用滑动窗口重叠分块,避免信息割裂。 基于语义边界(如段落、标题)进行智能分块。 基于反馈的持续优化 利用用户反馈或生成结果质量信号,迭代优化检索模型或策略。 ,RAG 的检索模块能够更精准地找到与用户问题相关的上下文,为生成模块提供高质量输入,从而显著提升整体系统表现。
#别再掉进RAG的"幻觉"陷阱:3个检索增强生成的实战优化技巧在上周的客户项目中,我亲眼目睹一个精心构建的金融问答系统因生成"2023年Q3净利润增长200%"的虚假数据而险些引发合规危机。 本文基于10+RAG项目实战经验,深入剖析幻觉产生的技术根源,并分享三个经过生产环境验证的优化技巧,附带可直接部署的代码实现。 这正是我们需要针对性优化的关键点。2.2RAG中的"幻觉":技术定义与分类在RAG语境下,幻觉特指系统生成与检索到的知识源矛盾,或完全虚构事实的输出。 当团队仅优化检索准确率时,忽略了生成环节的上下文过滤机制,导致问题反复出现。3.三大实战优化技巧经过200+小时的故障复现与方案验证,我总结出三个可立即落地的优化技巧。 来源可追溯性)C-->C1(幻觉率)C-->C2(置信度校准度)C-->C3(反馈响应速度)图3:RAG幻觉评估框架。
本篇来看下 RAG 的架构优化策略 利用知识图谱(KG)进行上下文增强 在现有的向量数据库中,典型的上下文增强可能面临挑战:难以捕捉长距离的关联知识,信息稀疏性高(尤其是当LLM上下文窗口有限时)。 + 一个片段的生成结果; 3、使用反思字段,检查输出是否相关,选择最符合需要的片段; 4、再重复检索; 5、生成结果会引用相关片段,以及输出结果是否符合该片段,便于查证事实。 模型可根据具体任务进行定制化调整,它通过增加检索的文段数量来优化对事实准确性的重视,或是在开放性任务中突出创新能力。此模型能决定何时进行文段的检索,或者依据预设的阈值来启动该过程。 3、与第二项相似,在用户对话时根据查询提取原始文本、表格和图像资料。综合这些信息,构建完整的激发句,求助于多模态大型模型以产出相应的回答。 小结 本篇文章介绍了 RAG 的架构优化策略,主要包括利用知识图谱进行上下文增强以及让大模型对召回结果进行筛选的方法。
在本文中,我们将介绍使用私有数据优化检索增强生成(RAG)的四种策略,可以提升生成任务的质量和准确性。 通过使用一些优化策略,可以有效提升检索增强生成系统的性能和输出质量,使其在实际应用中能够更好地满足需求。 RAG简单回顾 RAG主要有两个过程。 我们先总结RAG过程中的可以优化的关键点: 1、分块方法:优化块大小确保有意义和上下文相关的数据段。 2、嵌入模型:选择和微调模型以改进语义表示。 3、向量搜索方法:选择有效的相似度量和搜索参数。 我们探讨了四种关键优化方向:细化分块方法、选择和微调嵌入模型、选择有效的向量搜索方法以及制作精确的提示。这些组件中的每一个都在提高RAG系统的性能方面起着至关重要的作用。 优化RAG的过程是需要持续的测试的,从失败中学习,以及做出明智的调整。需要采用迭代方法,才能定制出适合自己的AI解决方案,更有效地满足特定需求。
RAG系统检索的文档可能并不总是与用户的查询保持一致,这是一个常见的现象。 本文将探讨三种有效的技术来增强基于rag的应用程序中的文档检索,通过结合这些技术,可以检索与用户查询密切匹配的更相关的文档,从而生成更好的答案。 查询扩展 查询扩展指的是一组重新表述原始查询的技术。 # 3. How much debt does the company have? Is it increasing or decreasing? # 4. query_embedding) return torch.cosine_similarity(updated_query_embedding, document_embedding, dim=0) 3、 scaled_vector.shape # (384, 1) best_matrix.shape # (384, 384) 这样,我们检索系统后续使用的嵌入向量就是经过我们微调后的向量了,这相当于针对特定的任务进行优化
但传统 RAG 系统有一个显著的局限:它们往往破坏上下文。传统 RAG 中的上下文问题在传统 RAG 中,文档通常被拆分为较小的块,以便于检索。 以下是一个文本块的转换示例:原始文本块 = “公司收入比上一季度增长了 3%。” 公司收入比上一季度增长了 3%。”值得注意的是,过去曾提出过其他使用上下文改进检索的方法。 3 通过重排,进一步提升性能最后一步,我们可以结合上下文检索与另一种技术,以进一步提升性能。在传统 RAG 中,AI 系统会在其知识库中搜索潜在的相关信息块。 我们的实验表明,跨多个领域,添加重新排序步骤进一步优化了检索。具体而言,我们发现,重新排序后的上下文嵌入和上下文 BM25 将前 20 个块检索未命中率降低了 67%(5.7% → 1.9%)。
以下是一个文本块的转换示例: 原始文本块 = “公司收入比上一季度增长了 3%。” 公司收入比上一季度增长了 3%。” 值得注意的是,过去曾提出过其他使用上下文改进检索的方法。 3 通过重排,进一步提升性能 最后一步,可结合上下文检索与另一种技术,以进一步提升性能。在传统 RAG 中,AI 系统会在其知识库中搜索潜在的相关信息块。 实验表明,跨多个领域,添加重新排序步骤进一步优化了检索。 重新排序后的上下文嵌入和上下文 BM25 将前 20 个块检索未命中率降低了 67%(5.7% → 1.9%)。 负责: 中央/分销预订系统性能优化 活动&券等营销中台建设 交易平台及数据中台等架构和开发设计 车联网核心平台-物联网连接平台、大数据平台架构设计及优化 LLM Agent应用开发 区块链应用开发
凸集和凸函数 SOCP Guideline
一个具有更大上下文窗口的新模型问世,社交媒体上便会充斥着“RAG 已死”的宣言。 的 Gemini 1.5,上下文窗口达 100 万 token 2025 年 3 月:模型上下文协议(Model Context Protocol)让你能直接与你的数据对话 (注:原文日期可能是笔误) 底线是:您同时需要长上下文 LLM 和 RAG。 但既然“RAG”这个术语似乎如此具有争议性,那我们不妨这样说: 我们不必非得称之为 RAG。 我们可以就叫它 检索 (retrieval)。 RAG 提供了相当于直接翻到相关页面的能力。处理更多 token 不仅更慢,而且极其低效,并且比使用 RAG 精准定位所需信息要昂贵得多。 RAG、微调和大型上下文窗口在 AI 中也是如此。 结论 我们不需要在 RAG 与长上下文窗口、微调或 MCP 之间做出选择。
前面几篇文章已经深入讨论过LangChain、RAG架构的细节,对RAG有了基础的了解,今天重点梳理一下RAG的切片策略;一、什么是RAG切片 给定一个场景,我们有一本非常厚的百科全书 所以,到底什么是RAG切片? RAG切片就是把一份长长的文档(如PDF、Word),合理地切割成一个个小块(Chunks)的过程。 这个过程是整个RAG系统的基石,它直接决定了后续检索和生成答案的质量。 3. 运行你的RAG管道,评估答案的质量。评估答案是否准确?检索到的上下文是否真正相关? 迭代优化:选择效果最好的那种策略。
在向量数据库中搜索相似内容 获取最相关的文本片段 生成过程: 将检索到的相关内容与用户问题组合 构建合适的提示词(Prompt) 通过 LLM 生成最终答案 3、RAG 的应用场景 RAG 技术在多个领域都有广泛应用 系统监控: 跟踪系统响应时间 监控检索准确率 收集用户反馈并持续优化 三、RAG vs Fine-tuning(微调) 1、两种方法的基本概念 RAG: 通过实时检索相关信息来增强模型输出 响应时间可能较长(需要检索) Fine-tuning: 响应速度快 可能出现知识遗忘 难以追溯答案来源 3、选择建议 3.1 适合使用 RAG 的场景 需要频繁更新知识的应用 对答案准确性要求高的场景 : 格式化输出 添加引用来源 质量检查 3、性能优化策略 3.1 检索优化 索引优化: 选择合适的索引算法 定期重建索引 优化检索参数 缓存策略: 热点查询缓存 结果集缓存 智能预加载 资源调优: 硬件配置优化 负载均衡 服务扩缩容 4、图示
◆介绍: 在本文中,我们将创建一个高级 RAG,它将根据作为管道输入给出的研究论文来回答用户查询。用于构建该管道的技术堆栈如下。 Ollama 嵌入模型 mxbai-embed-large Ollama 量化Llama-3 8b 模型 本地托管的 Qdrant 向量数据库。 输出: ◆结论: 总之,通过利用 Meta 的大型语言模型等尖端技术的力量Llama-3,以及 等复杂的方法HyDE,并利用 的功能Ollama,我们准备构建无与伦比的 RAG 管道。 先进工具和细致优化的融合有望释放我们系统的全部潜力,为突破性进步铺平道路,并确保我们的解决方案站在创新和卓越的前沿,并具有最大的隐私和安全性。 log_from=adb4c5d3cf43a_1713747619961
(3)配置示例 mysql> show variables like '%query_cache%' ; +------------------------------+---------+ | Variable_name
引言 传统的生成模型,例如GPT-3,尽管在生成流畅自然的文本方面表现出色,但在应对特定领域的深度问答时常常显得力不从心。 在训练过程中,这两个编码器通过最大化正确文档和查询对的相似度来进行优化。 在成功检索到相关文档后,RAG的生成模型接管任务。 RAG技术的优势与挑战 RAG技术在很多方面展示了其显著的优势,但它也面临着一些挑战。以下我们将详细探讨RAG技术的优势和挑战。 有效的优化和并行处理技术可以在一定程度上改善这一问题,但仍需进一步的研究和改进。 RAG技术 VS 纯生成模型(如GPT-3) 纯生成模型,如GPT-3,通常依赖于大量的数据和参数来生成文本。
您听说过 RAG Logger 吗? 它是一款专为检索增强生成 (RAG) 应用程序设计的开源日志记录工具! 据说它可以作为 LangSmith 的轻量级替代方案,满足 RAG 特定的日志记录需求。 查询、搜索结果、LLM 交互和性能指标可以以 JSON 格式记录。 特点 通过查询跟踪详细了解用户问题! 通过逐步性能监控查找并优化瓶颈! 基于 JSON 的日志格式的结构化存储和每日日志配置使数据管理变得轻松! RAG Logger 为 RAG 应用程序的性能监控和调试提供了强大的支持,对吗? 请参阅此处的详细信息: RAG Logger GitHub 仓库