玛卡巴卡的卡巴卡玛 发表于 5 天前

一文讲透RAG,RAG的七种架构

Weaviate公司(向量服务厂商)近日梳理并发布了当下最流行的七种RAG架构,用图表的情势举行展示,清晰明了。下面,就这他们的分享,梳理一下每一种架构,资助查漏补缺。
https://i-blog.csdnimg.cn/img_convert/4b45d77dfb3668bee3beeb1cc8e92627.jpeg
Naive RAG | 朴素RAG

Naive RAG (Retrieval-Augmented Generation) 是一种最基础的 RAG 架构,紧张特点是将查询(query)与文档的检索联合起来,通过大语言模型 (LLM) 生成答案。
Naive RAG 的紧张组成部门
1.查询阶段 (Query Stage)
用户输入的查询被作为出发点,传递到检索模块。
2.检索模块 (Retrieval Module)


[*]文档数据库 (Document Database):一个预先构建的数据库,存储了大量非结构化或结构化数据,如文本、图像或其他内容。
[*]检索 (Search):基于用户查询,数据库会返回相干文档或文档片段(chunks),这些片段被认为与查询语义相干。
3.生成模块 (Generation Module)


[*]将检索到的文档片段与查询联合,输入到生成模型(如 GPT-类 LLM)。
[*]生成模型根据输入上下文,生成终极的相应。
Naive RAG 的优势
1.简单高效:
架构设计简单,便于实现,特别适合初学者和小型应用场景。
2.模块化设计:
将检索和生成分离,便于针对每一模块优化。
3.低延迟:
因为无需复杂的后续排序或多级推理,相应速率快。
Naive RAG 的范围性
1.效果质量不稳定:
检索的文档片段可能不完全相干,导致生成效果准确性受限。
2.缺乏上下文整合:
无法有效地对不同文档片段之间的关系建模,例如相互矛盾或增补的信息。
3.易受查询噪声影响:
用户查询假如不明确,可能导致检索到无关内容。
Retrieve-and-rerank RAG | 检索与重新排序 RAG

Retrieve-and-rerank RAG是一种改进版的检索加强生成架构。它在 Naive RAG 的基础上增加了一个重新排序(rerank)步骤,以提升检索内容的相干性和质量。
Retrieve-and-rerank RAG 的紧张组成部门
1.查询阶段 (Query Stage)
用户输入的查询被传递到检索模块。
2.检索模块 (Retrieval Module)


[*]文档数据库 (Document Database):一个包含大量文档的知识库。文档可以是未分块的完备文档或分块的片段(chunks)。
[*]检索阶段 (Search Stage):通过向量数据库或其他检索算法,从文档库中找到与查询相干的内容。这是初步检索效果。
3.重新排序模块 (Reranking Module)


[*] 对检索的初步效果举行重新排序,优化相干性。
[*] 工作原理:
[*] 基于查询和检索效果的语义相似性,使用模型(如 Cross-Encoder 或专门的 reranker 模型)重新评分。
[*] 筛选出得分最高的文档片段,作为终极传递给生成模块的上下文。
[*] 优势:
[*] 过滤掉噪声,提升检索质量。
[*] 确保生成模块能够获取最有价值的信息。
4.生成模块 (Generation Module)


[*]将重新排序后的高质量文档片段与查询一起传递给生成模型(如 LLM)。
[*]生成模型基于上下文,生成自然语言的回答。
Retrieve-and-rerank RAG 的优势
1.更高的效果相干性:
通过重新排序模块,明显提升了传递给生成模块的文档上下文质量。
2.减少错误信息的传递:
减少了无关或低相干性的文档对生成效果的干扰。
3.灵活性高:
Reranking 模块可以根据具体使命更换模型(如特定领域的 fine-tuned reranker),以顺应多种应用场景。
Retrieve-and-rerank RAG 的范围性
1.盘算成本更高:
Reranker 模块引入了额外的盘算步骤,增加了延迟和资源需求。
2.对 Reranker 依赖性强:
假如重新排序模型表现欠佳,终极生成的质量可能仍然受到影响。
3.复杂度进步:
架构比 Naive RAG 更复杂,增加了部署和调试的难度。
针对所有自学遇到困难的同学们,我帮大家体系梳理大模型学习脉络,将这份 LLM大模型资料 分享出来:包罗LLM大模型书籍、640套大模型行业报告、LLM大模型学习视频、LLM大模型学习门路、开源大模型学习教程等,
页: [1]
查看完整版本: 一文讲透RAG,RAG的七种架构