东方市网站建设_网站建设公司_CMS_seo优化
2026/1/5 12:10:14 网站建设 项目流程

目录

一、起点:文档解析与清洗的重要性

二、Chunk 切分策略:在语义完整性与检索效率之间取得平衡

1. 基于领域知识的切分

2. 基于固定长度的切分

3. 上下文感知与语义驱动切分

三、句子滑动窗口检索:增强语义连续性

(一)先用一句话理解它在解决什么问题

(二)它是怎么工作的(机制拆解)

1. 先做正常的 chunk 检索

2. 引入「句子滑动窗口」

3. 句子滑窗检索获取检索到的句子的上下文

4. window_size 怎么选?(工程视角)

四、自动合并检索:构建更稳健的语义结构

(一)它在做什么?

(二)为什么它比句子滑动窗口好

五、Embedding 与 ReRank 的联合优化

(一)选择更适合业务的Embedding模型

(二)选择更适合业务的ReRank模型

模型选型建议

六、聚类索引:为知识自动“建目录”

七、实践建议与常见模式

八、总结

参考链接


干货分享,感谢您的阅读!

在检索增强生成(Retrieval‑Augmented Generation,RAG)系统设计中,一个经过广泛实践验证的结论是:

检索质量决定生成质量的上限
即使基础大模型再强大,如果所检索语料不具备相关性与完整性,再好的生成也难免偏离事实或缺失关键信息。

这次我们从知识库构建、检索单元设计、检索策略优化到检索后排序技术,全方位介绍提升 RAG 检索质量的核心方法和实现策略,结合当前研究与实战案例,为构建高质量检索增强应用提供有效参考。

一、起点:文档解析与清洗的重要性

RAG 系统的第一步是准备高质量的知识语料库。无论源是网页、PDF、Word、内部文档还是会议资料,文本清洗、结构解析以及噪声剔除都是不可绕过的步骤。

  • 噪声清理:去除 OCR 错误、乱码、无意义短句、重复段落。

  • 结构化解析:识别标题、段落、表格、列表等结构,尽可能保留原始文档的层次关系。

  • 标准化格式:对日期、单位、缩写等进行统一规范。

高质量原始语料是整个检索与生成链路的基础,否则后续切分、嵌入和排序都会受到干扰。

二、Chunk 切分策略:在语义完整性与检索效率之间取得平衡

Chunk是指对原始数据或文本进行切分后得到的最小信息单元。Chunk 的本质,是在“语义完整性”和“检索粒度”之间做平衡

在处理大规模文本、知识库或非结构化数据时,如果将完整内容一次性交由大语言模型进行理解和推理,不仅计算成本高,而且检索效率和生成质量都会受到明显影响。因此,在实际系统中,通常会先将长文本拆分为多个结构清晰、语义相对完整的 chunk,再进行向量化和检索。

每个 chunk 都承载了一部分可独立理解的有效信息。当用户提出问题时,系统只需在这些 chunk 中定位与问题最相关的部分,而非对整个语料库进行“全量扫描”。这种机制类似于图书馆中通过分类、索引和标签来快速定位书籍内容,能够显著提升检索效率和回答的准确性。

合理的 chunk 切分策略,是 RAG(Retrieval-Augmented Generation)系统性能优化的关键因素之一。通过优化切分方式,可以在保证语义完整性的同时,提高向量检索的相关性,减少无关上下文干扰,从而加速信息检索、提升生成质量与整体推理效率。常见的 chunk 切分方法主要包括以下几类:

1. 基于领域知识的切分

针对具有明确结构的专业文档(如法律、金融、技术规范等),可利用领域特有的结构信息进行切分。例如,在法律文档中,以章节编号、条款、款项作为天然的切分边界,能够最大程度保留语义完整性和逻辑层次。

2. 基于固定长度的切分

按照固定的词数或 token 数进行切分,例如每 128 或 512 个词作为一个 chunk。这种方式实现简单、性能稳定,适合快速构建系统,但缺点是无法感知语义边界,可能导致上下文被强行截断,影响检索和生成效果。

3. 上下文感知与语义驱动切分

在切分过程中引入上下文感知机制,尽量避免语义断裂。例如,在 chunk 边界处保留前后相邻的句子,或确保关键句对不被拆散。进一步地,可以引入自然语言处理技术,对文本进行语义单元识别,如基于句子相似度计算、主题模型(如 LDA)、或基于 BERT 等模型的向量聚类,以保证每个 chunk 内部语义高度一致,减少跨 chunk 的信息依赖。

在实践中,通义实验室提供了一种中文文本切割模型,可直接对长文本进行语义感知切分,输出结构合理的文本块,适用于构建高质量知识检索系统(详见:中文文本分割模型)。

三、句子滑动窗口检索:增强语义连续性

句子滑动窗口检索是一种在向量命中结果基础上,通过上下文扩展补全语义链路的检索增强策略。它以命中 chunk 为中心,根据预设窗口大小引入相邻句子,使大模型在生成阶段获得更完整的语义上下文,从而有效提升 RAG 系统的回答准确性与稳定性。

(一)先用一句话理解它在解决什么问题

句子滑动窗口检索的核心目是:

避免“检索命中但上下文不完整”,让模型看到答案真正需要的前因后果

在标准 RAG 中,向量检索往往只返回命中的 chunk 本身,但很多知识并不是孤立存在的——
定义、条件、约束、结论,往往分散在相邻的句子或段落中。

滑动窗口做的事情,就是:在命中 chunk 的基础上,向前、向后“多看几句”

(二)它是怎么工作的(机制拆解)

1. 先做正常的 chunk 检索

流程的第一步没有变化:

  • 文档被切分为多个 chunk(句子级、段落级都可以)

  • 每个 chunk 被向量化

  • 用户问题向量化

  • 向量检索,命中一个或多个最相关的 chunk

到这里,是标准 RAG

2. 引入「句子滑动窗口」

当某个 chunk 被命中后,不是直接把它送进大模型,而是:

  • 以该 chunk 为中心

  • 根据window_size,向前、向后扩展上下文

假设:

  • window_size = 1
    → 取「前 1 句 + 当前句 + 后 1 句」

  • window_size = 2
    → 取「前 2 句 + 当前句 + 后 2 句」

这就是“滑动窗口”的含义:窗口不是固定在某个位置,而是随着命中 chunk 滑动

3. 句子滑窗检索获取检索到的句子的上下文

4. window_size 怎么选?(工程视角)

没有绝对标准,但有经验法则(常见取值):

window_size适用场景
0极短、强结构化文本
1大多数技术文档(推荐默认)
2逻辑链较长的教程 / 原理说明
≥3成本高、噪声多,一般不建议

实际工程中常见组合

  • 句子级 chunk + window_size = 1

  • 段落级 chunk + window_size = 0 或 1

四、自动合并检索:构建更稳健的语义结构

自动合并检索通过多粒度切分构建文档结构树,在检索阶段根据命中分布动态向上合并语料块,从根本上避免语义碎片化问题,是比滑动窗口更稳健的检索增强策略。

(一)它在做什么?

  • 同一份文档,按不同粒度切分:

    • 1024 token(大块)

    • 512 token(中块)

    • 128 token(小块)

  • 这些 chunk 之间形成父子关系,构成一棵文档结构树。

  • 向量检索时,通常命中的是最小粒度的叶子节点(如 128)

  • 如果命中了同一个父节点下的多个叶子节点

    → 自动“向上合并”,返回对应的父节点(如 512 或 1024)。

(二)为什么它比句子滑动窗口好

  • 滑动窗口是局部补上下文

  • 自动合并是直接恢复原始语义块

本质总结

句子滑动窗口解决的是“上下文不够”,自动合并检索解决的是“语义被切碎”

五、Embedding 与 ReRank 的联合优化

  • Embedding 模型决定“能不能找到相关内容”;

  • ReRank 模型决定“相关内容排在第几位”。

在中文场景下,Embedding 模型是否针对中文语料优化,往往直接影响召回质量;而 ReRank 模型则是提升 Top-K 命中质量的关键补充。

(一)选择更适合业务的Embedding模型

经过切分的语料块在提供检索服务之前,我们需要把chunk语料块由原来的文本内容转换为机器可以用于比对计算的一组数字,即变为Embedding向量。我们通过Embedding模型来进行这个转换。但是,由于不同的Embedding模型对于生成Embedding向量质量的影响很大,好的Embedding模型可以提升检索的准确率。

比如,针对中文检索的场景,我们应当选择在中文语料上表现更好的模型。那么针对你的业务场景,你也可以建议你的技术团队做Embedding模型的技术选型,挑选针对你的业务场景表现较好的模型。

(二)选择更适合业务的ReRank模型

除了优化生成向量的质量,我们还需要同时优化做向量排序的ReRank模型,好的ReRank模型会让更贴近用户问题的chunks的排名更靠前。因此,我们也可以挑选能让你的业务应用表现更好的ReRank模型。

模型选型建议

在模型选型阶段,可优先参考ModelScope社区中关注度和下载量较高的主流模型,作为通用场景下的稳妥选择;若业务存在明确的领域特性且语料规模充足,也可考虑由技术团队自行训练或微调 Embedding 模型或 ReRank 模型,以进一步贴合业务需求。

在 Embedding 模型方面,推荐使用阿里云提供的按 token 计费的通用文本向量 API 服务。该服务由通义实验室基于大模型底座构建,支持多语言统一向量表示,整体效果稳定,且具备按量付费、即开即用的优势,能够有效降低项目初期的成本与工程复杂度。

此外,智源研究院发布的BAAI/BGE 系列模型在中文 RAG 场景中表现突出,当前应用广泛。其中,Embedding 模型可提升语义表达精度,ReRank 模型则通过对初步检索结果进行重排序,进一步增强相关性判断能力。实践中,如bge-large-zh-v1.5在中文向量表示上效果优秀,bge-reranker-basebge-reranker-large也因性能稳定、社区活跃而被广泛采用。

六、聚类索引:为知识自动“建目录”

聚类索引(如RAPTOR等)是一类将语料按照主题自动聚合的方法,通过层级结构将大量 chunk 组织成主题簇,再从中生成高层摘要与树形结构索引,使查询时既能定位精确事实,又能捕获高层主题信息。该策略对于长文档、多主题文档和复杂推理场景表现尤为突出。vinija.ai

RAPTOR 的做法是:

  • 对 chunk 向量进行聚类;

  • 对聚类结果生成摘要;

  • 递归构建树形索引;

  • 查询时可灵活访问不同抽象层级的信息。

七、实践建议与常见模式

为了兼顾检索质量与系统效率,在工程实践中常见如下组合策略:

  • 固定长度 + 语义边界感知混合:在固定 token 切分基础上结合句子或结构边界;

  • 滑动窗口 + ReRank:增强上下文关联同时提升排序精度;

  • 父子层级切分 + 聚合检索:兼顾结果精度与上下文完整。

八、总结

提升 RAG 系统中检索质量并非单一策略的优化,而是多个环节协同设计的结果。从数据清洗、chunk 切分策略、滑动窗口检索、自动合并结构、Embedding 选型到 re‑ranking 技术,每一步都影响最终生成的准确性与稳定性。

检索质量既是系统性能的瓶颈,也是提升生成质量的关键杠杆。只有在提升检索链路质量的基础上,才能让大语言模型真正发挥其知识生成能力。

参考链接

  1. Optimizing Retrieval‑Augmented Generation(论文) — arXiv
    https://arxiv.org/abs/2505.08445arXiv

  2. Breaking It Down: Domain‑Aware Semantic Segmentation for RAG(论文) — arXiv
    https://arxiv.org/abs/2512.00368arXiv

  3. FreeChunker: A Cross‑Granularity Chunking Framework(论文) — arXiv
    https://arxiv.org/abs/2510.20356arXiv

  4. Rethinking Chunk Size For Long‑Document Retrieval(论文) — arXiv
    https://arxiv.org/abs/2505.21700arXiv

  5. Searching for Best Practices in RAG— ACL Anthology (文献综述)
    https://aclanthology.org/2024.emnlp‑main.981.pdfACL Anthology

  6. Retrieval‑Augmented Generation Explained— Wikipedia
    https://en.wikipedia.org/wiki/Retrieval‑augmented_generation维基百科

  7. RAG—Chunking策略实战— 技术博客(实战代码与聚合策略)
    https://blog.csdn.net/SmartCodeTech/article/details/154130977CSDN 博客

  8. RAG检索质量差?这5种分块策略帮你解决70%问题— 阿里云社区
    https://developer.aliyun.com/article/1685312阿里云开发者社区

  9. Retrieval‑Augmented Generation Technical Guide— Medium
    https://solutionsarchitecture.medium.com/retrieval‑augmented‑generation‑rag‑a‑comprehensive‑technical‑guide‑d69a2cb70c22Medium

  10. RAPTOR Hierarchical Indexing in RAG— Microsoft Tech Community
    https://techcommunity.microsoft.com/blog/-/from‑zero‑to‑hero‑proven‑methods‑to‑optimize‑rag‑for‑production/4450040TECHCOMMUNITY.MICROSOFT.COM

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询