微软近日开源了新一代RAG框架GraphRAG[1],以解决当前RAG在大型语料库上全局理解问题。 当前RAG主要聚焦于局部检索能力,即根据查询语句在向量库中匹配部分知识,然后通过大型语言模型合成这些检索到的信息,生成一个自然流畅的回答。 下一篇,我们将使用LlamaIndex测试同样问题进行对比全局理解能力。 1. **这类问题需要查询聚焦摘要(Query focused summary)而不是像我们上述RAG系统那样显式检索,现有的QFS方法无法扩展到RAG系统索引的文本量。 王林对“仙人”的概念着迷,反映了他对于超自然能力和永生的渴望。他的故事中还包含了与Heng Yue Faction青年的互动,这些交流影响了社区的动态和选拔过程。
摘要本文介绍了RAG(检索增强生成)技术的原理与应用,特别是如何通过向量检索系统增强生成模型对外部知识的理解和生成能力。 RAG技术通过结合向量检索与生成模型,有效解决了这些问题,提高了模型对外部知识的理解和生成能力。RAG技术原理RAG技术主要通过“检索+生成”两个阶段结合来处理复杂的问题。 技术系统架构图优化与改进为了提升RAG技术的效果,可以持续优化生成模型的训练数据和参数配置,以提高其对自然语言的理解能力和语义分析准确性。 Q2:如何评估RAG技术的效果?A2:可以通过对比实验来评估RAG技术的效果。例如,将RAG技术与传统的基于关键词检索的方法进行比较,观察在相同查询条件下,RAG技术是否能够生成更准确、更相关的回答。 总结本文介绍了RAG技术的原理与应用,特别是如何通过向量检索系统增强生成模型对外部知识的理解和生成能力。
所以下面我们使用一个简单的例子来介绍如何使用知识图谱构建RAG。 对于RAG,知识图谱是一个非常好的应用方向。 作者:Plaban Nayak 喜欢就关注一下吧: 点个 在看 你最好看!
相比传统 RAG 仅能独立检索文本片段的局限性,GraphRAG通过构建实体关系图谱实现了信息间的连接,让 AI 能更完整地理解和检索复杂的关联信息,从而生成更准确和连贯的回答 问题背景: 想象有一本详细记录某人 现在我们想要总结这个人的所有成就 传统 RAG 的局限性: 只能获取有限数量(top-k)的相关文本片段 各个文本片段是独立检索的 LLM 需要自行推断这些片段之间的联系 可能会遗漏重要信息 GraphRAG
上面这些场景所考验的,就是模型在RAG(Retrieval-Augmented Generation)检索增强生成方面的能力。 RAG这个概念,最早在2020年的一篇划时代论文中首次提出,它巧妙地融合了LLM和信息检索的能力。 百度搜索增强技术深度融合大模型能力和搜索系统,构建了「理解-检索-生成」的协同优化技术。 RAG不仅是技术,更是智能进化的里程碑 2024百度世界大会上,李彦宏曾表示,RAG已从百度特色逐渐成为了行业共识。 过去两年,我们见证了RAG,为整个大模型领域带去翻天覆地的变化。 RAG不仅是技术,更是智能进化的里程碑。
一个具有更大上下文窗口的新模型问世,社交媒体上便会充斥着“RAG 已死”的宣言。 RAG 的初衷 五年前,我在 Meta 基础人工智能研究中心(FAIR,前身为 Facebook 人工智能研究中心)的团队提出了 RAG(Retrieval-Augmented Generation,检索增强生成 底线是:您同时需要长上下文 LLM 和 RAG。 但既然“RAG”这个术语似乎如此具有争议性,那我们不妨这样说: 我们不必非得称之为 RAG。 我们可以就叫它 检索 (retrieval)。 RAG 提供了相当于直接翻到相关页面的能力。处理更多 token 不仅更慢,而且极其低效,并且比使用 RAG 精准定位所需信息要昂贵得多。 RAG、微调和大型上下文窗口在 AI 中也是如此。 结论 我们不需要在 RAG 与长上下文窗口、微调或 MCP 之间做出选择。
【RAG】001-RAG概述 0、整体思维导图 下面的知识是基于一个视频教程结合 AI 生成的笔记,我也看了一遍,有了一些印象,但这种印象很快就会消失,知识也就消失了,为了使得知识在我的大脑中停留更长的时间 补充1:RAG 基本逻辑 补充2:RAG 知识库基本逻辑 一、RAG 介绍 1、LLM 的主要局限性 大语言模型(LLM)尽管功能强大,但仍存在以下明显的局限性: 时效性问题:模型的知识在预训练后就固定了 概述 1、RAG 的概念 RAG(Retrieval-Augmented Generation,检索增强生成)是一种结合了检索和生成技术的文本处理方法,主要用于提高语言模型的输出质量。 RAG 通过在生成回答之前,先从知识库中检索相关信息,然后将检索到的信息作为上下文提供给语言模型,从而实现更准确、更可靠的响应。这种方法既保留了 LLM 强大的理解和生成能力,又克服了其知识局限性。 对响应速度要求高的场景 有充足的训练资源和专业团队 需要深度定制模型行为的项目 3.3 混合使用策略 在实际应用中,可以考虑将两种方法结合使用: 使用 Fine-tuning 优化模型的基础能力 使用
今天,我们将介绍另一项重要指标,也是业内面对的一项普遍性难点:标题识别,以及它如何影响数据清洗与RAG系统开发。 TextIn团队研发了文档树引擎这一关键技术,针对性提升标题检测能力。物理版面分析技术支持对目标区块的检测与元素识别,并利用标题区块的高度(即字号)判断一级、二级、三级、......N级标题。 以RAG(Retrieval-Augmented Generation)这一主要场景为例,在系统开发过程中,Chunking(分块)对整体性能有着显著的影响。 RAG在进行信息检索的时候需要将检索出来的有价值的文本段送给模型,模型才能生成可靠有用的内容。 目前,TextIn文档解析工具已在RAG知识库问答中发挥重要功能,文档树引擎在年报、财报、行研报告等金融文件领域展现了较为明显的优势。
有多种方法可以提高检索增强生成(RAG)的能力,其中一种方法称为查询扩展。 ("system", qa_system_prompt), ("human", "{question}"), ] ) rag_chain qa_prompt | llm | StrOutputParser() ) question_string = rag_chain.invoke 总结 以上就是最常用的3种改进RAG能力扩展查询方法。当你在使用RAG时,并且没有得到正确或详细的答案,可以使用上述查询扩展方法来解决这些问题。希望所有这些技术可以用于你的下一个项目。
配套阅读:《RAG系列01—NaiveRAG》《从NaiveRAG到AgenticRAG》引言:2025年3月,我参加了一家toBSaaS公司的技术评审会。那天的议题是"RAG系统下一阶段升级路线"。 AdvancedRAG的本质,是把RAG从"一锤子买卖"重构为"多阶段管道"。 一边写成功一边写失败→数据不一致增量同步延迟不一致→同一文档两边状态不同删除传播不同步→一边能搜到,一边搜不到没法做原子重建解法(按推荐度排序):方案适合坑Elasticsearch8.x/OpenSearch单引擎双能力新项目首选 理由:单引擎一致性问题消失BM25是ES的看家本领向量能力虽然不顶尖,但够用运维生态成熟,招人容易坑2:中文BM25的tokenizer默认是错的ES默认tokenizer对中文是单字切分,召回质量极差 工程师真正稀缺的能力,不是用最新模型,是知道什么时候该克制。
系列说明:这是RAG工程化系列第一篇,目标是把四代RAG(NaiveAdvancedModular/Agentic)逐一拆透。每篇聚焦一种范式,讲它真正能做什么、做不到什么、工程上怎么落地。 一、NaiveRAG到底是什么:先把定义讲清楚,否则后面全是糊涂账打开任何一篇RAG教程,你会看到几乎一样的描述:"RAG就是先检索再生成"。这种描述等于没说。 但这一行决定了你的RAG准确率上限。PDF是NaiveRAG的头号杀手。 9.1应该停留在Naive的场景场景理由单一产品FAQ文档同质化高内部小工具(<50用户)投入产出不划算真正的POC(≤1个月)验证业务价值文档高度规整(如API文档)检索本身不是问题团队没有ML工程能力先跑通比跑好重要 观点三:RAG工程师真正稀缺的能力,不是用最新模型,是知道什么时候该克制。
系列说明:这是RAG工程化系列第三篇。前两篇我们完成了从Naive到Advanced的进化——把基础工程做到极致,把准确率从38%推到87%。 配套阅读:《RAG系列01—NaiveRAG》《RAG系列02—AdvancedRAG》《从NaiveRAG到AgenticRAG》引言:那个"if-else套了11层"的RAG项目2024年底,我帮一家金融科技公司做 RAG系统的codereview。 这就是ModularRAG真正的价值——它不是为了更高的准确率,是为了让你的RAG系统在业务复杂度爆炸时不崩盘。 ModularRAG的本质,是把RAG从"线性管道"升级为"模块化图(Graph)"。
配套阅读(按顺序):《RAG系列01—NaiveRAG》《RAG系列02—AdvancedRAG》《RAG系列03—ModularRAG》《从NaiveRAG到AgenticRAG》引言:那个一周烧掉4 一、AgenticRAG到底是什么:一个被严重误解的概念1.1严格定义AgenticRAG=把检索行为本身变成Agent的工具,由一个(或多个)具备推理、规划、反思能力的LLMAgent在运行时决定:要不要检索 留四个观点作整个系列的结尾:观点一:每一代RAG都有它的"甜蜜区",超出甜蜜区强行升级,反而是退步。 真正厉害的RAG工程师,不是用最新模型、最复杂架构的人,是知道什么时候该停下来、什么时候该上手的人。 这个问题的答案,决定了你是RAG工程师还是RAG用户。
这是因为这些模型在生成答案时完全依赖训练数据和参数,并没有利用外部知识库的能力。与此相对,检索模型可以访问大规模的文档库,找到与查询相关的信息,但在生成流畅的语言响应方面则表现欠佳。 RAG技术的原理 RAG(检索增强生成)技术是一种将信息检索和自然语言生成结合起来的创新方法。其核心思想是通过利用大规模的外部知识库来增强生成模型的回答能力,从而提高生成文本的准确性和相关性。 RAG工作流程 RAG的工作流程可以分为以下几个步骤: 用户查询:用户提出一个查询,系统首先会将这个查询传递给检索模型。 RAG技术的应用场景 RAG技术在众多实际应用场景中显示出其独特的优势,这是其他单一技术难以比拟的。下面我们详细探讨RAG技术的几个主要应用场景。 RAG技术的优势与挑战 RAG技术在很多方面展示了其显著的优势,但它也面临着一些挑战。以下我们将详细探讨RAG技术的优势和挑战。
核心要点RAG vs Few Shots:动态能力对比,RAG如何实现实时知识更新RAG关键指标解析:精确率、召回率、F1分数、MRR的对比分析在雨林一人公司的AI产品开发过程中,nine遇到了一个关键问题 (已发布,可查看历史文章)如何用RAG增强的动态能力与大模型结合打造企业AI产品? RAG技术的动态优势RAG技术通过外部知识库实现了真正的动态能力:实时知识更新: 知识库可以随时更新,新政策、新规则立即生效,无需重新训练模型。 技术总结RAG技术相比Few Shots学习的核心优势在于动态能力:能够实时更新知识库、提供可追溯的决策依据、覆盖海量业务场景。 掌握RAG增强技术后,你就具备了构建企业级大模型分类系统的完整能力,可以在各种复杂业务场景中发挥重要作用。记住:Few Shots适合简单场景,RAG适合企业级应用。
您听说过 RAG Logger 吗? 它是一款专为检索增强生成 (RAG) 应用程序设计的开源日志记录工具! 据说它可以作为 LangSmith 的轻量级替代方案,满足 RAG 特定的日志记录需求。 查询、搜索结果、LLM 交互和性能指标可以以 JSON 格式记录。 特点 通过查询跟踪详细了解用户问题! RAG Logger 为 RAG 应用程序的性能监控和调试提供了强大的支持,对吗? 特别推荐给那些想要提高应用程序开发效率的人。 请参阅此处的详细信息: RAG Logger GitHub 仓库
在我的上一篇博客中,我深入地介绍了RAG以及它是如何用LlamaIndex实现的。然而,RAG在回答问题时经常遇到许多挑战。 RAG工作流程分解 首先,为了增强对RAG的理解,我们将RAG工作流程分解为三个部分,并对每个部分进行优化以提高整体表现。 目标 我们的目标是通过对不同部分应用各种技术来增强RAG工作流的每个组件能力。 2. Pre-Retrieval优化 Pre-retrieval技术包括提高索引数据的质量和块优化。 模块化RAG 模块化RAG集成了多种方法来增强RAG的不同组成部分,如在检索器中加入相似度检索的搜索模块和应用微调方法 RAG融合(RAG Fusion) RA融合技术结合了两种方法: 多查询检索 利用 总结 本文讨论了优化RAG管道各部分和增强整体RAG流水线的各种技术。您可以在您的RAG流水线中使用这些技术中的一种或多种,从而使其更加准确和高效。
Corrective RAG 简介: Corrective RAG 在传统 RAG 基础上引入了文档质量评估和自我修正机制。 Agentic RAG 简介: Agentic RAG(智能体RAG)将 AI Agent 的规划和推理能力与 RAG 相结合。 架构: 实现步骤: Agent初始化:创建具有推理和规划能力的AI Agent,配备检索工具 任务分解:Agent分析用户查询,将复杂问题分解为多个子任务 工具选择:Agent根据子任务特点选择合适的工具 Self RAG 简介: Self RAG 提供给模型自我评估和决策能力,它通过四个反思标记(Retrieve/ISREL/ISSUP/ISUSE)来判断:是否需要检索、文档是否相关、答案是否被支持、答案是否有用 SFR RAG 简介: SFR RAG(Salesforce Research RAG)是工业级高质量 RAG 的最佳实践。
当以黑盒方式来评估 RAG 应用时,我们看不到 RAG 应用的内部,只能从输入给 RAG 应用的信息和它返回的信息来评估 RAG 的效果。 有的 RAG 具备多路召回能力,可能还会有 基于词频的搜索方法(term frequency search) 算法,更换和升级这些关键组件也能为 RAG 应用带来更好的效果。 )、RAG 系统的回答(RAG's response)。 有的 RAG 有多路召回能力,可能还会有 term frequency search 算法。 很显然,测试这些关键组件也能体现出这个 RAG pipeline 在某一步的能力上的效果,更换和升级这些关键组件也能为 RAG 应用带来更好的性能。
RAG 引用信息来源是用户可以核实答案,因此其透明透非常高,这增强了人们对模型输出结果的信任。 透过获取与特定领域数据,RAG能够为不同领域提供专业的知识支持,定制能力非常高。 结合 RAG 和 Fine tuning ,甚至 Promt Enginerring 可以让模型能力的层次性得增强。 这种协同作用特别在特定情境下显得重要,能够将模型的效能推至最佳。 然而,当应用于特定领域时,它们准确捕捉领域特定信息的能力可能会受到限制。 此外我们还得对嵌入模型进行 Fine tuning,以确保模型能理解用户查询,这步对下游应用是必不可少的。 这种限制可能会阻碍模型在真实世界中的表现,因为它可能过度适应训练集中的特定示例,从而降低了其在不同上下文中泛化的能力。 这种方法在减少过度适应和加强模型的泛化能力方面至关重要。 三.