【深入浅出RAG】LangChain-RAG优化终章:如何实现最佳检索结果

今天来到LangChain 团队的RAG优化策略演讲的最后环节,也就是下图右边的检索和生成部分。

检索Retrieval

检索部分LangChain团队提到了4种优化方法,分成了两类:排序和改进。

排序包含3种优化方法,重排序rerank,RankGPT和RAG-fusion:

  • Re-Rank

Re-Rank就是重排序,原理比较好理解,就是把向量数据库中检索到的结果,比如最相似的前10条记录,再进行排序,并筛选出更小一部分结果,比如前2条。

那为什么不直接选择前2条,还要再进行排序?

主要是因为为了提升在向量数据库中的检索结果,一般会使用向量索引,向量索引的算法(常见的为HNSW算法)都有一定的随机性,会导致除了第一条以外,其他的结果不太准确,因此需要再进行排序。

可以参考Rerank——RAG中百尺竿头更进一步的神器,从原理到解决方案 - 知乎 (zhihu.com)

  • RankGPT

这种方法就是使用大模型作为Agent实现重排序的能力,可以参考开源项目:

GitHub - sunnweiwei/RankGPT: Is ChatGPT Good at Search? LLMs as Re-Ranking Agent [EMNLP 2023 Outstanding Paper Award]

不过这种方式貌似比较少见,具体效果待验证。

  • RAG-Fusion

这是LangChain团队给的检索优化的第三种方式,

LangChain给出的代码示例其实是把多次查询的结果进行重排序,再返回给大模型,有点把RAG-Fusion和Re-Rank组合的意思。

不过还有一种方式比较常见,是把文本检索的结果和向量检索的结果进行重排序,也算是一种RAG融合吧~

不过这种方式虽然对检索结果有提升,但是提升幅度并不大,谨慎使用~

CRAG (Corrective RAG)

检索部分另外一个优化方式是通过CRAG的方式,CRAG翻译过来是纠正式RAG,就是对于检索结果设定一个标准。

向量检索不是筛查出最相似的前N个值吗?但是这并不代表前几名的相似度一定满足要求,比如全班成绩前几名也有可能不及格最高分可能就59分

如果发生这种情况,一般就代表问题的答案可能并不在向量数据库里,这时候最好的方式是借助外部能力。

当发现检索的结果都不满足要求的时候,就通过重写问题,再去互联网查询相关的内容,把网上查找的结果再做一次RAG,发送给大模型生成结果。

CRAG其实已经需要结合Agent智能体的方式来实现了~在检索和生成环节的优化过程,RAG开始需要和Agent进行融合。

生成 Genration

生成环节其实没有太多的优化办法,主要就是靠大模型和提示词,大模型能力强,结果就好。

不过也不是完全没有优化点的,LangChain在分享中提到了Self-RAG,通过每一步自我反省的方式实现更好的检索效果。

Self-RAG、CRAG已经不仅仅是RAG了,需要结合Agent的能力,因此需要结合LangGraph的能力实现。

本文只做基本介绍,详细的代码实现还需参考LangChain官网。

https://github.com/langchain-ai/langgraph/blob/main/examples/rag/langgraph_crag.ipynb

Self-RAG

Self-RAG 是每执行一步,就进行一次反省,判断这个步骤是否达到要求,如果不满足要求,就返回到第一步进行重写优化。

实际操作中,实现 RAG 需要对上述步骤进行逻辑分析:比如

  • 我们需要知道什么时候进行检索(基于问题和索引的构成)

  • 何时改写问题以提升检索效率,或者何时抛弃无关的检索结果并重新检索。

在实现过程中,需要结合工作流的方式,将整个流程穿成一个环进行处理。

自适应RAG(Adaptive RAG)

自适应RAG是结合问题分析和Self-RAG的一种方法。先分析问题是否适合RAG,还是应该去互联网查找资料,或者直接通过大模型回答。

需要先通过提示词,让大模型进行问题路由,选择具体是RAG还是其他途径回答。

LangChain 团队提到的RAG优化策略已经全部完毕,总共提到了17种优化方法,再加上自适应RAG,一共18种方法。

虽然方法挺多的,但实际效果并不是等同的,有的方法优化效果明显,但还有部分方法甚至会起到反效果。

在验证过程中,像ColBERT和Re-rank起到的优化效果比较明显。

不过~想要直接感受RAG的优化效果,最好的办法还是亲自尝试。

那么,我们该如何学习大模型?

作为一名热心肠的互联网老兵,我决定把宝贵的AI知识分享给大家。 至于能学习到多少就看你的学习毅力和能力了 。我已将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

一、大模型全套的学习路线

学习大型人工智能模型,如GPT-3、BERT或任何其他先进的神经网络模型,需要系统的方法和持续的努力。既然要系统的学习大模型,那么学习路线是必不可少的,下面的这份路线能帮助你快速梳理知识,形成自己的体系。

L1级别:AI大模型时代的华丽登场

L2级别:AI大模型API应用开发工程

L3级别:大模型应用架构进阶实践

L4级别:大模型微调与私有化部署

一般掌握到第四个级别,市场上大多数岗位都是可以胜任,但要还不是天花板,天花板级别要求更加严格,对于算法和实战是非常苛刻的。建议普通人掌握到L4级别即可。

以上的AI大模型学习路线,不知道为什么发出来就有点糊,高清版可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

二、640套AI大模型报告合集

这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。

img

三、大模型经典PDF籍

随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。

img

四、AI大模型商业化落地方案

img

作为普通人,入局大模型时代需要持续学习和实践,不断提高自己的技能和认知水平,同时也需要有责任感和伦理意识,为人工智能的健康发展贡献力量。

  • 29
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值