Retrieval-Augmented Generation (RAG)
1 Introduction
- 我们对外部文档建立索引(Indexing);
- 根据用户的问题去检索(Retrieval)相关的文档;
- 将问题和相关的文档输入 LLM 生成(Generation)最终答案。
随着大模型融入场景后,回复的准确性、创造力等方面明显有缺陷,所以RAG出现了,用检索的数据限制、引导模型做正确的回复,尽量降低模型的幻觉。
RAG的挑战和局限
- 知识检索的出的内容和问题的匹配度不高。
- RAG的计算成本
- 伦理问题,尤其是偏见和透明度问题。
2 Key Component
* 检索器
RAG的核心在于知识段略的检索质量,目前大部分都基于相似检索。目前的趋势就是多路召回、结果融合、重排筛选。
BM25:
基于术语频率-逆文档频率(TF-IDF)的原理,通过计算查询词在文档中的出现频率来对文档的相关性进行排序。同时还会根据文档的长度和词在整体语料库中的普遍性进行调整.
基于关键字的查询时表现出色,但它在理解查询的深层语义方面是欠缺的。BM25算法捕捉不到单词之间的关联,这使得它在处理需要深入理解上下文的复杂自然语言查询时力不从心。所以本质上只是搜索,简单理解就是“外形越像越越相关”
DPR(Dense Passage Retrieval):
“向量相似度”。同时embedding知识和问题,然后计算相似度,相似度的算法可能是余弦、L2.优势就是基于语义的召回和查询,很多向量数据库都可以在这里使用。但是实际使用的时候要注意embedding文本长度。
向量相似度局限性: 1) 相似度很难有阈值; 2)跨语言的问题; 3)内容长短的影响;4)预训练的局限性
REALM(Retrieval-Augmented Language Model):
REALM可以说是DPR的进阶,他融合了传统的BM25这类的分词搜索、基于深度学习的Embedding模型两种检索。概念上类似多路召回,然后做RRF融合
* 生成器
在检索组件从外部来源提取相关知识后,生成器将这些信息合成为连贯的、上下文适当的响应。大语言模型(LLM)作为生成器的骨干,它确保生成的文本流畅、准确并与原始查询保持一致。
T5模型:
T5(文本到文本传输转换器)的方法用途广泛,将每个NLP任务都框定为文本到文本的任务。这种统一的框架允许T5针对广泛的任务进行微调,包括问答、摘要和对话生成。通过将检索与生成相结合,基于T5的RAG模型已被证明在多个基准测试上优于传统的生成模型,如GPT-3和BART,包括自然问题数据集和TriviaQA数据集。此外,T5处理复杂多任务学习的能力使其成为需要处理各种知识密集型任务的RAG系统的热门选择。
BART模型
BART(双向和自动回归转换器), BART特别适合涉及从嘈杂输入生成文本的任务,例如摘要和开放域问答。作为去噪自动编码器,BART可以重建损坏的文本序列,使其对于需要从不完整或嘈杂的数据生成连贯的事实输出的任务具有鲁棒性。当与RAG系统中的检索器配对时,BART已被证明可以通过将生成的文本植根于外部知识来提高生成文本的事实准确性。研究表明,基于BART的RAG模型在各种知识密集型任务中实现了最先进的结果,包括对话生成和新闻摘要。
3 多模态RAG
* 基于文本的RAG模型
依托文本数据,执行检索与生成任务,推动了问答、摘要和对话智能体等应用的发展。BERT和T5等Transformer架构构成了文本RAG模型的基石,运用自注意力机制来捕捉文本内的上下文联系,从而提升检索的精确度和生成的流畅度。
* 基于音频的RAG模型
将检索增强型生成的理念拓展至音频领域,为语音识别、音频摘要和语音界面中的对话智能体等应用开辟了新天地。音频数据常通过Wav2Vec 2.0等预训练模型衍生的嵌入表示来呈现。这些嵌入作为检索和生成组件的输入,使得模型能够有效地处理音频数据。
* 基于视频的RAG模型
基于视频的RAG模型融合视觉与文本信息,增强了视频理解、字幕生成和检索等任务的表现。视频数据通过 I3D TimeSformer 等模型的嵌入表示来呈现。这些嵌入捕捉了时间与空间特征,对于有效的检索和生成至关重要。
* 多模态RAG模型
“检索即生成(Retrieval as generation)”通过结合文本到图像和图像到文本的检索,将检索增强型生成(RAG)框架扩展到了多模态应用。利用大规模的配对图像和文本描述数据集,在用户查询与存储的文本描述相匹配时,能够快速生成图像(“检索即生成”)。