微信扫码
与创始人交个朋友
我要投稿
文章指出,传统RAG通过向量检索排序召回与Query相关的片段,通过prompt生成回复,LLMs与检索器之间存在语义鸿沟(LLMs难以有效利用检索器提供的信息)。下面来看看这篇文章引入检索信息增强RAG性能的trick。
在 中,首先从检索器 获取语义表示:
这样存在一个问题,这些表示不能直接使用,因为单一的表示无法捕捉到用于LLM生成的交互特征。
因此,为了适应各种检索器,需要将不同空间中的表示转换为统一格式的特征。提出三种相似计算方法来对这些表示进行对齐,从而得到检索特征。
相关性得分
相关性得分 是查询和第 个文档之间的相关性,也用于对文档进行排序。
前例相似性得分
前例相似性得分计算的是第 个文档表示与其在排名列表中的前例加权表示之间的相似性。
邻居相似性得分
邻居相似性得分计算的是第 个文档表示与其相邻表示之间的平均相似性。
这些得分通过相似性函数(如点积或余弦相似性)计算得出。具体的公式如下:
其中, 表示第 个文档与其在排名列表中的前例之间的相似性, 是查询与第 个文档之间的相关性。
最后,将这三个特征拼接起来作为输入:
然后将特征列表 输入到 -Former 中,以进一步挖掘检索信息。
-Former 是 框架中引入的一个可训练模块,目的是弥合检索器和LLM之间的语义鸿沟。-Former 被设计为接受列表特征作为输入,并输出检索信息。
输入列表 ,-Former 处理输入过程公式如下:
其中:
这个模块比较好理解,这一步通过利用自注意力机制来增强对检索器提供的列表特征的理解。
步骤:
我们使用一个投影层将检索信息线性变换到与 LLM 的 token 嵌入层相同的维度:
使用 LLM 的分词器对查询和文档进行分词,并将其转换为嵌入。
其中 是 LLM 的 token 嵌入层, 是文档 的嵌入。
检索信息的嵌入:为了对每个文档进行细致的分析,相应的检索信息嵌入被添加到每个文档嵌入的前面。这些嵌入作为外部知识,起到锚点的作用,引导 LLM 关注有用的文档。最终的输入嵌入可以排列如下:
其中 表示第 个文档的检索信息嵌入。通过这种方式,相应文档的检索信息可以很好地混合在一起,减少了 LLM 处理所有文档的负担。
生成响应:
其中 表示 LLM 生成的最终结果。
这一模块主要是将检索信息作为额外的知识输入,增强了 LLM 对文档的理解能力。
主要是训练 -Former 和 LLM 的对齐训练。
训练 -Former
-Former 是一个查询-文档匹配任务,是一个二分类任务:
其中 是一个二分类头,输出文档的相关性预测 。支持 是文档的真实标签,交叉熵作为损失函数,定义为:
语言建模损失
联合训练使得 -Former 能够更好地理解来自检索器的列表特征,确保检索信息可以被 LLM 深入解释。
总体损失:
文中, 提供了仅训练 -Former 而冻结 LLM ,或同时训练
53AI,企业落地应用大模型首选服务商
产品:大模型应用平台+智能体定制开发+落地咨询服务
承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业
2024-11-22
RAG技术在实际应用中的挑战与解决方案
2024-11-22
从普通RAG到RAPTOR,10个最新的RAG框架
2024-11-22
如何使用 RAG 提高 LLM 成绩
2024-11-21
提升RAG性能的全攻略:优化检索增强生成系统的策略大揭秘 | 深度好文
2024-11-20
FastGraphRAG 如何做到高达 20%优化检索增强生成(RAG)性能优化
2024-11-20
为裸奔的大模型穿上"防护服":企业AI安全护栏设计指南
2024-11-20
RAG-Fusion技术在产品咨询中的实践与分析
2024-11-19
构建高性能RAG:文本分割核心技术详解
2024-07-18
2024-05-05
2024-07-09
2024-07-09
2024-05-19
2024-06-20
2024-07-07
2024-07-07
2024-07-08
2024-07-09
2024-11-06
2024-11-06
2024-11-05
2024-11-04
2024-10-27
2024-10-25
2024-10-21
2024-10-21