【AI开发】CRAG、Self-RAG、Adaptive-RAG

news2024/11/24 3:56:14

在这里插入图片描述
先放一张基础RAG的流程图
https://blog.langchain.dev/agentic-rag-with-langgraph/
再放一个CRAG和self-RAG的LangChain官方博客

Corrective RAG(CRAG)

在这里插入图片描述
首先需要知道的是CRAG的特色发生在retrieval阶段的最后开始,即当我们获得到了近似的document(或者说relevant snippets)之后。
然后我们会进入一个额外的环节,叫Knowledge Correction。在这里呢我们会先对retrieval得到的每一个相关切片snippets进行evaluate,评估一下我们获取到的snippet是不是对问的问题有效?(此处重点:evaluator也是一个LLM
然后会有三种情况:

  • Correct:那就直接进行RAG的正常流程。(不过图中是加了进一步的优化)
  • Incorrect:那就直接丢弃掉原来的document,直接去web里搜索相关信息
  • Ambiguous:对于模糊不清的,就两种方式都要

那么在最后的generation部分,也是根据三种不同的情况分别做处理。

  • 之前是correct,那现在就直接拼接问题和相关文档
  • 之前是incorrect,那现在就直接拼接问题和web获取的信息
  • 之前是ambiguous,那现在就拼接三个加起来

以上是CRAG的原始大概逻辑,但在langchain中对此进行了简化:
在这里插入图片描述
在Langchain中只存在两种情况,即当incorrect的时候,直接就去web上search了(先经过一个transform_query对问题进行重写,变成更适合web搜索的形式)

Self-RAG

和CRAG的核心都是self-reflective,即当我发现结果不是那么有效时,我要通过环回溯到之前的步骤去优化。

在这里插入图片描述

和CRAG不一样的是,selfRAG的流程是从最开始进行的,大概流程:

  1. 先判断问题是不是需要retrieval,如上图右下角,此处的问题是写一篇essay,那其实根本没必要去retrieval,直接放入LLM就行
  2. 当问题需要检索的时候,我们会将得到的每个document snippet分别判断
    ①是否有关relevant:
    如果无关,那就不进行第②步。
    如果有关:
    ②如果有关,那是否支持support,或者部分支持partial support,或者不支持
  3. 当我们对所有snippets都判断后,按照相关性进行排序,然后依次送到LLM中去进行最后的步骤。
  4. 在最后生成后还有一次评估,总共三次。

在这里插入图片描述
这是用LangChain(LangGraph)做self-RAG的流程图,如果能自己动手画出来这个图,知道什么时候是哪个节点,什么时候是哪种边,就说明真正学会了。

推荐个b站up:沧海九粟
我的很多文章都是看他的视频做的

Adaptive RAG

这个我就不写了,有篇博客写的很好
https://blog.csdn.net/qq_45668004/article/details/138199143
总结一下就是:self-RAG里面的令牌大多都是关于判断得到的某个东西合不合要求,从而进行不一样的action。而Adaptive里面的令牌相当于一个分类器,把问题分类成几种类型,每种类型对应不同复杂程度的RAG模型

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2024年粤港澳青少年信息学创新大赛图形化编程小低组真题试卷

2024年粤港澳青少年信息学创新大赛图形化编程小低组真题试卷 题目总数:16 总分数:100 单选题 第 1 题 单选题 默认小猫角色,以下哪个Scratch程序可以在点击绿旗后让小猫说”你好!"一共10秒? A. B. C. D. 第 2 题 单选题 …

全国各区县地区生产总值数据(GDP及人均生产总值),精度超高 区县级数据

数据名称: 全国各区县地区生产总值数据 数据格式: shpexcel 数据几何类型: 面 数据精度:区县 数据坐标系: WGS84 数据来源:网络公开数据 数据可视化.

【AI绘画】文心一格

本人详解 作者:王文峰,参加过 CSDN 2020年度博客之星,《Java王大师王天师》 公众号:JAVA开发王大师,专注于天道酬勤的 Java 开发问题中国国学、传统文化和代码爱好者的程序人生,期待你的关注和支持!本人外号:神秘小峯 山峯 转载说明:务必注明来源(注明:作者:王文峰…

示例:WPF中应用DataGrid读取实体DisplayAttribute特性自动自动生成列名

一、目的&#xff1a;通过重写DataGrid的OnAutoGeneratingColumn方法实现根据定义特性自动生成列头信息功能 二、实现 <DataGrid ItemsSource"{local:GetStudents Count50}"/>实体定义如下 public class Student{[DataGridColumn("*")][Display(Na…

upload-labs第九关教程

upload-labs第九关教程 一、源代码分析代码审计::$DATA介绍 二、绕过分析特殊字符::$data绕过上传eval.php使用burpsuite抓包进行修改放包&#xff0c;查看是否上传成功使用中国蚁剑进行连接 一、源代码分析 代码审计 $is_upload false; $msg null; if (isset($_POST[submi…

新办理北京广播电视节目制作许可证需要什么条件

在北京想要从事广播电视节目制作&#xff0c;那就需要企业拥有广播电视节目制作经营许可证。此许可证不仅是企业合法经营的基础&#xff0c;同时也是保障节目制作质量和内容合规的标志。如何办理&#xff0c;详情致电咨询我或者来公司面谈。 北京广播电视节目制作经营许可证申请…

阿三再现强盗行为,vivo、OPPO或彻底失去印度市场

不知道大伙儿有没有发现哈&#xff0c;近些年越来越多别国打着「保护本土企业」这一免死金牌对咱们中国企业展开肆无忌惮的排挤和打压。 就拿最近发生在汽车这一大件商品上的事件举例&#xff1a; 上个月老美宣布对来自中国的电动汽车关税税率由 25% 提升至 100%&#xff0c;…

项目管理进阶之EVM(挣值管理)

前言 项目管理进阶系列&#xff0c;终于有时间更新啦&#xff01;&#xff01;&#xff01;欢迎持续关注哦~ 上一节博主重点讲了一个环&#xff1a;PDCA&#xff0c;无论各行各业&#xff0c;上到航空航天、下到种地种菜&#xff0c;都离不开对质量的监督和改进。这个环既是一…

一道session文件包含题

目录 环境说明 session文件包含getshell 审计源码 session包含 base64在session中的解码分析 题目&#xff1a; 链接&#xff1a;https://pan.baidu.com/s/1Q0BN08b8gWiVE4tOnirpTA?pwdcate 提取码&#xff1a;cate 环境说明 这里我用的是linux&#xff0c;也可以用p…

对 2024 年美赛选题的建议

对2024年美赛选题的建议包括&#xff1a; 1. 深入探讨当下全球面临的重大问题和挑战&#xff1a;鉴于美赛通常聚焦于全球性议题&#xff0c;如气候变化、可持续发展、数据分析等&#xff0c;参赛学生应关注这些议题&#xff0c;并深入研究相关数据与背景信息&#xff0c;以提出…

怎么做成的文件二维码?扫阅览文件的制作方法

现在用二维码来分享或者查看文件是一种很常用的方式&#xff0c;比如常见的文件内容有简历、资料、作品、压缩包等等。通过将文件生成二维码能够在提升文件传输速度的同时还有利于用户体验的提升&#xff0c;那么如何制作可以长期提供文件预览或者下载的二维码呢&#xff1f; …

AutoCAD 2024 mac/win版:智绘未来,设计更精彩

AutoCAD 2024是一款由Autodesk开发的计算机辅助设计(CAD)软件&#xff0c;作为AutoCAD系列的最新版本&#xff0c;它在设计、绘图和制造领域展现出了卓越的性能和广泛的应用前景。 AutoCAD 2024 win/Mac版获取 AutoCAD 2024在功能方面进行了大量增强和改进。它引入了智能对象捕…

让AI 赋予人类超强的记忆力

遗忘曲线告诉我们&#xff0c;绝大部分新掌握的知识约在一周后被遗忘&#xff0c;一个月左右基本忘光。「好记性不如一个烂笔头」&#xff0c;借助AI还真能做出这样「烂笔头」。 提升个人的记忆力-个人搜索引擎 个人搜索引擎的想法是一个强大而诱人的想法。如果有一个应用程序可…

xml与动态SQL

XML映射文件 规范 XML映射文件的名称与Mapper接口名称一致,并且将XML映射文件和Mapper接口放置在相同包下(同包同名)。 ● XML映射文件的namespace属性为Mapper接口全限定名一致。 ● XML映射文件中sql语句的id与Mapper接口中的方法名一致,并保持返回类型一致。 动态SQL &…

Mware Fusion Pro 13 mac版:一键掌控虚拟世界

VMware Fusion Pro 13是一款功能卓越的虚拟化软件&#xff0c;专为Mac操作系统量身打造。这款软件为用户提供了一个一站式的虚拟化解决方案&#xff0c;能够满足各种多样化的需求。 VMware Fusion Pro 13 Mac获取 VMware Fusion Pro 13的强大之处在于其采用了最 先进的虚拟化…

Java-01-基础篇 Java集合-01-Map(源码)

目录 一&#xff0c;Map 1.1 Map 接口分析 1.2 Map 查询业务接口 1.3 Map 修改(写)业务接口 1.4 Map 批量业务接口 1.5 Map 视图业务 1.6 Map 的映射业务Entry 1.7 Map 不可修改的业务 二&#xff0c;AbstractMap 2.1 AbstractMap 构造方法 2.2 AbstractMap 查询业…

修改以太网卡mac地址

原生以太网卡与PCIe以太网卡 以Intel 原生以太网卡与PCIe以太网卡为例&#xff1a; Intel原生以太网卡和PCIe以太网卡在系统中实现网络连接时&#xff0c;涉及到与系统总线&#xff08;如PCIe总线&#xff09;的连接方式和性能差异。 Intel 原生以太网卡 定义&#xff1a;所…

【Python】Redis数据库

Redis数据库 Unit01一、Redis1.1 概述1.2 安装1.3 Redis-cli1.4 数据类型1.5 字符处理1.6 键的命名规则 二、通用命令三、字符串(String)3.1 概述3.2 常用命令3.3 应用场景 四、列表(List)4.1 概述4.2 常用命令 五、集合(SET)5.1 概述5.3 常用命令 六、有序集合6.1 概述6.2 常用…

揭秘“湖仓一体”——Flink+Paimon+StarRocks,打造实时分析新纪元

1.湖仓一体 数据湖仓是 Flink 流批一体发挥重要作用的场景,使用 Flink Paimon starRocks 来构建湖仓一体数据分析. Apache Paimon 是一个专为实时数据处理而设计的湖表格式&#xff0c;它最大的亮点是使用了 LSM Tree 技术。与 Hudi 相比&#xff0c;Paimon 在更新插入&…

日本新入管法通过:2027年起实施[育成就劳]制度,新制度更适合外国劳工在日本工作和生活!

最近&#xff0c;日本新入管法&#xff1a;新的育成就业制度预计将在2027年开始实施&#xff0c;而1993年开始的旧的技能实习制度将被废除。 新制度的主要内容 新制度的目的是解决日本国内的劳动力不足问题&#xff0c;确保有足够的劳动者。表示&#xff1a;“为了让日本成为…