大模型 RAG 架构落地的十大核心挑战
RAG 简介
检索增强生成(Retrieval Augmented Generation,简称 RAG)是一种将外部知识库检索与大型语言模型生成能力相结合的技术架构。它通过引入外部知识,确保大模型的回答既可靠又精准,同时显著降低了全量微调的成本。
RAG 的核心流程可概括为三个步骤:
- 检索:利用 Embedding 模型将用户问题转化为向量,在知识库中进行相似度比对,选取最相关的 Top K 知识片段。
- 增强:将检索到的上下文信息与原始问题结合,构造包含指令的 Prompt。
- 生成:将构造好的 Prompt 输入大模型,基于检索内容产出最终答案。
从工程实施视角划分,RAG 系统的建设通常分为两个阶段:
- 离线数据预处理:涵盖知识文件导入、文本清洗、语义切分、向量嵌入计算及数据库存储,完成知识的索引构建。
- 在线应用推理执行:实时响应用户请求,执行信息检索与大模型内容生成任务,实现交互式问答流程。
尽管 RAG 架构优势明显,但在实际落地过程中仍面临诸多技术与工程挑战。以下总结了十大核心挑战及其应对思路。
一、数据准备阶段的挑战
挑战一:文本划分不当,影响检索内容的精确度与全面性
文本块的划分尺寸直接决定了查询时与用户提问的贴合程度。过小的区块可能无法涵盖问题的所有相关背景,导致信息碎片化;反之,过大的区块则容易引入冗余噪声,干扰模型的注意力机制。
当前存在多种文本切分策略,如按字符数固定切分、按段落切分等。然而,理想的切分方法需贴合特定领域文档的特性,考虑因素包括文件格式、作者书写习惯及表述模式等。因此,选取最合适的切块策略需依据具体情况,并可能针对文档的不同类别采取定制化处理。
应对策略:
- 语义完整性优先:核心在于确保分割逻辑遵循语义完整性,避免切断句子或关键概念。
- 自适应窗口:采用滑动窗口或递归切分策略,根据内容密度动态调整块大小。
- 元数据保留:在切分时保留原文档的层级结构信息(如标题、章节),辅助后续检索排序。
二、数据检索阶段的挑战
挑战二:向量检索的局限性
尽管向量检索作为主流方法依赖于相似度评估,但它亦面临多方面局限。单纯依赖向量空间距离往往难以满足复杂的业务需求。
- 语义理解偏差:向量表示偶尔难以区分近义概念的细微差异,可能引起误解,例如'苹果'作为水果还是公司。
- 维度考量失衡:如余弦相似度侧重向量方向而非其规模,可能导致虽方向相近但在意义层面相去甚远的匹配。
- 信息粒度不协调:用户查询的精确向量可能指向具体信息点,而数据库条目若是宽泛主题,则检索结果易过度泛化。
- 上下文匹配不足:现有向量搜索技术偏向整体相似性判断,可能忽略局部或特定上下文中的更高相似度信息。
- 稀疏数据检索难:在大规模知识库中定位关键片段尤为困难,特别是当所需信息零散分布于多文档时,此挑战更为显著。
应对策略:
- 混合检索:结合关键词检索(BM25)与向量检索,互补优缺点。
- 重排序(Re-rank):引入 Cross-Encoder 模型对初步检索结果进行精细化打分排序。
- 查询重写:利用大模型对用户 Query 进行改写或扩展,提升检索召回率。
挑战三:检索结果排名和优先级不合适
多个检索结果排名和优先级不合适,导致大模型的回答没有抓住重点。准确评估并排序多个检索片段对于生成高质量回答极为关键,此过程需精密平衡各段落的相关性和重要性。这不仅考验着排序算法的有效性,还隐含了对领域知识深入理解的需求,以便在信息筛选与排序阶段实现智能化决策。
应对策略:


