链载Ai

标题: CRAG技术:重塑检索增强型语言模型的未来 [打印本页]

作者: 链载Ai    时间: 昨天 10:28
标题: CRAG技术:重塑检索增强型语言模型的未来


在数字化时代,人工智能(AI)的每一次技术革新都可能引领行业的变革。CRAG(Chain of Thought Retrieval-Augmented Generation)技术,作为AI领域的新星,以其独特的检索增强型能力,为自然语言处理(NLP)带来了前所未有的深度和精准度。

本文将带您深入了解CRAG的创新之处,以及它如何推动AI技术的边界。

一、传统RAG的局限与CRAG的创新

RAG技术通过结合检索与生成,极大地提升了语言模型在理解和生成自然语言方面的能力。然而,随着技术的发展,其在文档与查询相关性评估上的不足逐渐暴露。
CRAG技术的提出,正是为了解决这些问题,通过引入检索评估器,实现了对检索文档与查询相关性的精确评估,从而显著提升了模型的性能。
比如:
我会给你一个小型场景,假设我们正在参加一个开卷考试。
我们遵循的策略,比如说对于每个主题,我们查阅书籍并确定相关部分。在形成观点之前,将收集到的信息分为三组:正确错误模糊。分别处理每种类型的信息。然后,根据这些处理过的信息,进行编译和总结。在考试试卷上写下我们的答复。这就是CRAG所做的。


二、CRAG的关键思想流程

CRAG的三个关键组成部分:检索评估器,知识提炼算法和知识搜索
CRAG推理概述:构建了一个检索评估器来评估检索到的文档与输入的相关性,并根据此估计一个置信度,基于此可以触发不同的知识检索操作{正确,错误,模糊}。
有3种可能的判断结果。
最后,处理过的信息被转发到LLM以生成响应。
CRAG的工作流程是对传统RAG方法的一次系统性优化。它通过以下步骤,确保了信息的准确性和深度。

检索评估器

检索评估器显著影响后续程序的结果,对确定整个系统的性能至关重要。
CRAG利用T5-large模型作为检索评估器,对检索到的文档进行细致的相关性评分。这一过程类似于学术研究中的文献筛选,确保只有最相关的信息被用于后续的知识提炼。

知识提炼算法

对于检索到的相关文档,CRAG设计了一种分解然后重新组合的知识提取方法,以进一步提取最关键的知识陈述。
CRAG进一步通过启发式规则,将文档拆解为细粒度的知识单元,并筛选出最具相关性的知识点重新组合,以形成内部知识。这一过程不仅提高了信息的利用效率,也加深了模型对知识的理解。

知识搜索

在检索到的文档不足以回答问题时,CRAG通过网页搜索API获取额外信息,确保生成的答案全面且准确。所以,我们不是使用错误的块,而是使用互联网上的来源进行最终答案生成。这一机制体现了CRAG技术的灵活性和适应性。

下面我们通过LangGraph来实现CRAG检索增强

三、LangGraph

LangGraph作为CRAG实现的框架,提供了一个直观且强大的图结构,优化了状态管理和节点间的协同。这一框架不仅简化了CRAG模型的构建过程,也为未来的扩展和优化提供了可能。


LangGraph的主要特点包括:

四、实践案例分析

为了更好地理解CRAG技术,本文通过具体的代码示例和操作步骤,展示了CRAG模型的搭建过程:
流程说明:

流程图如下:

环境配置:

!pipinstalllangchain_communitytiktokenlangchain-openailangchainhubchromadblangchainlanggraphtavily-python
具体代码示例:

总结与展望:

CRAG技术以其创新的检索评估机制和深度知识提炼,不仅提升了语言模型的准确性,也为AI领域的发展开辟了新的道路。随着技术的不断演进,CRAG有望在未来解决更多复杂问题,推动人工智能向更深层次发展。







欢迎光临 链载Ai (https://www.lianzai.com/) Powered by Discuz! X3.5