微信扫码
添加专属顾问
我要投稿
深入解析RAG模型分块策略,掌握文本处理的关键技巧。核心内容:1. 固定大小分块:简单高效,但可能破坏语义2. 语义分块:保持语言流畅性,提高检索准确性3. 递归分块:保持语义完整性,实现复杂性较高
以下是 RAG 的典型工作流程:
由于附加文档可能很大,步骤 1 还涉及分块处理,即将大文档分割成更小/易于管理的小块。
此步骤至关重要,因为它确保文本符合 embedding 模型的输入大小。
以下是 RAG 的五种分块策略:
今天让我们来了解它们!
基于预定义数量的字符、单词或 token 将文本分割成统一的片段。
由于直接分割可能会破坏语义流,因此建议在两个连续的块之间保持一些重叠(上图中的蓝色部分)。
这种方法实现简单。此外,由于所有块大小相等,它简化了批处理。
但这种方法通常会中断句子(或观点)。因此,重要信息很可能会分散在不同的块中。
输出结果可能如下所示:
与固定大小分块不同,这种方法保持了语言的自然流畅性并保留了完整的思想。
由于每个块的内容更丰富,它提高了检索准确性,从而使 LLM 能够生成更连贯和相关的响应。
一个小问题是,它依赖于一个阈值来确定余弦相似度是否显著下降,这个阈值可能因文档而异。
首先,根据段落或章节等固有分隔符进行分块。
接下来,如果块的大小超过预定义的分块大小限制,则将每个块分割成更小的块。但是,如果块符合分块大小限制,则不进行进一步分割。
输出结果如图所示:
如上所示:
与固定大小分块不同,这种方法也保持了语言的自然流畅性并保留了完整的语义。
然而,在实现和计算复杂性方面存在一些额外的开销。
它利用文档的固有结构,如标题、章节或段落,来定义分块边界。通过这种方式,它与文档的逻辑部分对齐,从而保持结构完整性。
输出结果如图所示:
也就是说,这种方法假设文档具有清晰的结构,但这可能并非总是如此。
此外,块的长度可能会有所不同,可能会超出模型的 token 限制。可以尝试将其与递归分割相结合。
提示 LLM 生成语义上独立且有意义的块。
这种方法确保了高语义准确性,因为 LLM 能够理解上下文和含义,而不仅仅是依赖简单的启发式方法(如上述四种方法所采用的)。
但这也是这里讨论的所有五种技术中对计算需求最高的分块技术。
此外,由于 LLM 通常具有有限的上下文窗口,因此也需要注意这一点。
每种技术都有其自身的优点和权衡。
我们观察到语义分块在许多情况下效果很好,但同样,需要进行具体的测试。
选择将取决于内容性质、embedding 模型的能力、计算资源等。
? 轮到你了:你还知道其他哪些分块策略?
感谢阅读!
原文链接:https://blog.dailydoseofds.com/p/5-chunking-strategies-for-rag-f8b
53AI,企业落地大模型首选服务商
产品:场景落地咨询+大模型应用平台+行业解决方案
承诺:免费场景POC验证,效果验证后签署服务协议。零风险落地应用大模型,已交付160+中大型企业
2025-06-02
知识问答的终极形态:突破传统RAG的局限
2025-06-02
10 分钟搭建大模型 RAG 智能问答系统
2025-05-31
RAG(检索增强生成):提升大语言模型性能的终极指南
2025-05-31
DO-RAG:一种使用知识图谱增强检索辅助生成的领域特定问答框架 - 清华大学等
2025-05-30
2025年GitHub上十大RAG框架深度解析:从技术原理到实战应用
2025-05-30
90%企业不知道的RAG优化秘籍:Dify原生集成RAGflow (2)
2025-05-30
RAG其实并没有你想的那么简单,Late Chunking vs Contextual Retrieval解决上下文难题
2025-05-30
基于Gemini与Qdrant构建生产级RAG管道:设计指南与代码实践
2024-10-27
2024-09-04
2024-05-05
2024-07-18
2024-06-20
2024-06-13
2024-07-09
2024-07-09
2024-05-19
2024-07-07
2025-05-30
2025-05-29
2025-05-29
2025-05-23
2025-05-16
2025-05-15
2025-05-14
2025-05-14