同样做分块,为什么别人的 RAG 比你强 10 倍?答案藏在这!

探索RAG数据分块策略:工具对比与实践指南(含code) 本文探讨了检索增强生成(RAG)应用中的数据分块策略,重点介绍了LangChain、LlamaIndex和Preprocess三种主流工具的功能与特点。数据分块在RAG中至关重要,合理分块能提升检索效率和生成内容的相关性。LlamaIndex提供固定块大小、语义分块和主题节点解析等策略;LangChain则包括字符文本分割、递归字符文本分割和语义分块;Preprocess则擅长处理复杂文档,提供高质量分块。文章还分析了不同工具在PDF、PPT和Word文档处理中的表现,并建议根据数据类型、应用场景和资源限制 阅读详情

文本分块(Chunking)是决定 RAG(检索增强生成)系统成败的核心技术之一,却常常在幕后默默发挥作用。简单来说,分块就是把长文档切分成更小、结构化的片段,让 AI 系统能够真正检索和推理。

分块可以:

  • • 降低数据检索中的噪声
  • • 减少 AI 幻觉(即生成错误或误导性结果)
  • • 缓解上下文丢失问题

上下文丢失,指模型要么收到文本过多、要么过少,无法判断哪些信息属于同一主题,也记不住句子、话题、章节之间的关联。简言之,因为检索到的数据杂乱无章,模型根本无法理解用户在问什么。 只要采用合适的分块策略,RAG 应用就能成为高度可靠的知识系统,返回简洁、上下文相关的答案。

分块不只是一个预处理技巧,而是 RAG 的基石,它让系统能够快速、规模化地稳定运行,并输出准确、上下文感知的响应。下图展示了信息在 RAG 系统中的流转过程。


RAG 架构中的文本分块

分块在数据入库之后、向量化之前执行,是决定信息如何存储、检索并最终被大模型使用的最关键一步。

我们不会把整篇文档直接喂给模型,而是通过分块,将其切分成语义上有意义的上下文窗口。 在数据入库阶段,系统会收集 PDF、规章制度、手册、网页、对话记录、内部知识库等原始文档,并将其转为纯文本。这些提取出的文本通常过长、格式混乱、噪声多,不适合直接向量化或检索。在向量化之前,内容必须被结构化和规范化——这就是分块的核心价值。

分块将大文本切分成语义或结构上有意义的单元。 这一点之所以重要,是因为:

  • • 向量嵌入模型有上下文长度限制,超长输入效果极差
  • • 检索引擎在上下文过大、包含无关数据时表现糟糕

分块通过把数据整理成兼顾语义完整性与嵌入效率的均衡单元,解决了这些问题。

上图展示了不同分块大小对 RAG 准确率的影响。 分块边界决定了嵌入的粒度,进而影响向量检索精度——因为相似度检索(如余弦相似度、距离度量)依赖每个分块的语义指纹质量。 在 RAG 架构中,分块是一项核心结构决策,直接决定整条 pipeline 的性能。


主流 RAG 文本分块策略

实际应用中有多种分块策略,各有优劣,以下是几种关键方案:

固定大小分块(Fixed-Size Chunking)

最直接的分块方式,按 Token 数量切分。例如每 300 个 Token 切一块。

  • • 优点:嵌入大小可预测,实现简单
  • • 缺点:可能在句子中间切断,造成检索噪声
  • • 适用:日志、邮件等结构规整、模式重复的文本
from langchain.text_splitter import RecursiveCharacterTextSplittertext_splitter = RecursiveCharacterTextSplitter(    chunk_size=300,    chunk_overlap=0)

语义分块(Semantic Chunking)

不按固定长度切分,而是基于语义与含义切分,可通过 NLP 或 LLM 实现:

  • • NLP 方式:依赖句子边界、段落分隔、章节标题,成本低、速度快,但更僵化
  • • LLM 方式:深度分析内容,识别话题切换,自动决定边界,对格式差的文本更友好

下面是基于 LangChain 的语义分块示例: SemanticChunker 根据语义相似度而非固定 Token 数划分边界,需要嵌入模型计算相邻文本的相似度,以检测话题切换。

from langchain_experimental.text_splitter import SemanticChunkerfrom langchain_openai.embeddings import OpenAIEmbeddingsembed_model = OpenAIEmbeddings()semantic_chunker = SemanticChunker(    embed_model,    breakpoint_threshold_type="percentile")

滑动窗口分块(Sliding Window Chunking)

混合方案,用来解决固定分块切断重要上下文的问题。 通过创建重叠分块避免信息丢失,例如 400 Token 的分块,设置 20%–30% 重叠。 这样,靠近边界的概念至少会出现在两个分块中,提升连贯性。

from langchain_text_splitters import TokenTextSplittertext_splitter = TokenTextSplitter(    chunk_size=400,    chunk_overlap=100)

反向分块(Reverse Chunking)

适用于关键信息出现在章节末尾、总结、脚注的数据集。 不从文档开头分块,而是从末尾向前分块,确保以总结为核心的文档,关键要点保留在同一块内,而不是散落在多个分块中。 这能让检索系统直接返回高信息密度内容,而不必使用过大的分块。

from langchain.text_splitter import RecursiveCharacterTextSplittertext_splitter = RecursiveCharacterTextSplitter(    chunk_size=300,    chunk_overlap=0)chunks = text_splitter.split_text(text)chunks = list(reversed(chunks))

Agentic 分块(Agentic Chunking)

一种新兴的智能分块机制:由 LLM Agent 根据预设指令、检索目标和评估反馈,动态决定分块边界。 Agent 会通读整篇文档,然后决定如何切分信息,以最大化特定场景的检索准确率。 到目前为止,这种方式最接近人类整理知识库时的分块逻辑。


如何选择合适的分块以实现最优检索

分块策略的选择,取决于多个因素:内容结构、查询类型、检索精度要求、成本与延迟、模型混淆风险。

内容结构

  • • 学术/研究类文本:概念层层递进,随意固定分块会破坏核心思想,优先语义分块
  • • 产品手册、API 文档:格式重复、结构规整,可接受固定大小分块

查询类型

  • • 高精度问题(审计推理、法律解释):必须保留语义边界,确保整段相关条款被完整检索
  • • 宽泛意图问题:更大的分块更有利于保留叙事逻辑

检索粒度

  • • 小块:检索更精准,但容易丢失上下文,模型需要拼接多段信息
  • • 大块:保留上下文,但会引入噪声,降低精度

是追求“手术刀式精准”还是“更丰富的上下文”,取决于具体场景。

成本与延迟

分块越多,嵌入计算与存储成本越高。 滑动窗口因为重叠分块,会进一步增加计算量与成本。 企业规模化落地 RAG 时,必须权衡:精度提升是否值得额外成本。

最小化模型混淆

  • • 分块太小:模型需要拼接大量碎片,幻觉增多、回答不连贯
  • • 分块太大:检索返回噪声内容,稀释精度

企业级 RAG 系统的真实应用场景与挑战

分块在企业场景中是安全与合规级别的关键环节,典型场景包括:

合规与风险检索

处理审计材料的企业,必须保证关键词与其上下文绑定,错误切分可能导致关键审计上下文被割裂。

客服自动化

银行、电信、酒店、航空、保险等行业用 RAG 提供故障排查、政策解读、高频问答。

医疗与保险

分块直接影响安全性与准确性。 临床笔记、诊断描述、保单规则必须保留在同一块内,否则检索可能合并不兼容上下文,或错误呈现关键信息。

企业常见挑战

  • • 原始文档存在 OCR 错误、异常空格、断句
  • • 不同部门数据噪声大、高度重叠
  • • 过度使用滑动窗口会抬高存储成本
  • • 过于粗糙的分块会直接导致检索失败

这些挑战都说明:分块是一项战略设计,直接决定 RAG 系统成败。


写在最后

分块是 RAG 系统的结构基石。

  • • 分块做得好:整条 pipeline 准确、稳定、可扩展,检索精准,幻觉减少,模型收集上下文的步骤更少
  • • 分块做得差:再好的嵌入模型也无法弥补结构缺失,系统会持续检索错误信息

无论使用哪种分块方法,最终目标都是:以合适的结构,提供恰到好处的上下文量。 在 RAG 架构中优先重视分块设计的团队,将避免代价高昂的下游失效问题。

学AI大模型的正确顺序,千万不要搞错了

🤔2026年AI风口已来!各行各业的AI渗透肉眼可见,超多公司要么转型做AI相关产品,要么高薪挖AI技术人才,机遇直接摆在眼前!

有往AI方向发展,或者本身有后端编程基础的朋友,直接冲AI大模型应用开发转岗超合适!

就算暂时不打算转岗,了解大模型、RAG、Prompt、Agent这些热门概念,能上手做简单项目,也绝对是求职加分王🔋

在这里插入图片描述

📝给大家整理了超全最新的AI大模型应用开发学习清单和资料,手把手帮你快速入门!👇👇

学习路线:

✅大模型基础认知—大模型核心原理、发展历程、主流模型(GPT、文心一言等)特点解析
✅核心技术模块—RAG检索增强生成、Prompt工程实战、Agent智能体开发逻辑
✅开发基础能力—Python进阶、API接口调用、大模型开发框架(LangChain等)实操
✅应用场景开发—智能问答系统、企业知识库、AIGC内容生成工具、行业定制化大模型应用
✅项目落地流程—需求拆解、技术选型、模型调优、测试上线、运维迭代
✅面试求职冲刺—岗位JD解析、简历AI项目包装、高频面试题汇总、模拟面经

以上6大模块,看似清晰好上手,实则每个部分都有扎实的核心内容需要吃透!

我把大模型的学习全流程已经整理📚好了!抓住AI时代风口,轻松解锁职业新可能,希望大家都能把握机遇,实现薪资/职业跃迁~

这份完整版的大模型 AI 学习资料已经上传优快云,朋友们如果需要可以微信扫描下方优快云官方认证二维码免费领取【保证100%免费】

在这里插入图片描述

RAG_文本分块 语义分块(Semantic Chunking)是一种更智能的方法,这种方法不依赖于固定的字符数或预设的分隔符,而是尝试根据文本的语义内涵来切分。任何超出此限制的文本块在输入时都会被截断,导致信息丢失,生成的向量也无法完整代表原文的语义。: 最后,根据识别出的所有断点位置,将原始的句子序列进行切分,并将每个切分后的部分内的所有句子合并起来,形成一个最终的、语义连贯的文本块。: 这种两阶段的分块方法,既保留了文档的宏观逻辑结构(通过元数据),又确保了每个块的大小适中,是处理结构化文档进行RAG的理想方案。 阅读详情

相关推荐

永磁同步电机无传感器控制:HFI与ESMO技术详解

高频注入(HFI)和增强型滑模观测器(ESMO)是现代永磁同步电机(PMSM)无传感器控制的核心技术。HFI通过注入高频信号利用电机凸极效应获取转子位置,而ESMO则通过改进传统滑模观测器,有效抑制抖振并提升动态响应。这两种技术的结合特别适用于零低速区域的位置估计,在工业伺服、电动汽车等领域有广泛应用。方波高频注入作为实现方案之一,具有计算量小、实现简单的特点,配合自适应滤波等信号处理技术,可以在保证精度的同时降低系统成本。

weixin_29183637的博客 355

告别粗暴切分:入门 RAG 文本分块,从策略到优化

检索增强生成(RAG)的性能在很大程度上取决于其检索模块的质量,而文本分块(Chunking)是决定检索质量的关键前置步骤。粗暴或不恰当的分块会导致信息丢失、上下文割裂、检索效率低下等问题,严重影响 RAG 系统的最终表现。本文系统性地探讨了文本分块的核心目标与挑战,从克服上下文窗口限制、提高检索精度、维护上下文完整性等角度阐述了其重要性。接着,详细介绍了固定大小、基于句子、递归字符、基于文档结构等基础分块策略,并给出了结合 Markdown 文档结构的混合分块策略的 Python 实现。

m0_59235245的博客 2106

Pycharm环境配置完整教程

本文主要介绍python解释器安装、Pycharm环境配置以及运行第一个程序的零基础的教程,即使是python小白也能正确配置相应的python学习环境哦!

悠眠小虫的博客 2万+

构建高性能企业RAG落地-分块的艺术

刚又落地完一个大型企业级RAG,携带着大量成功的宝贵经验和实例来告诉大家一个优秀的RAG系统中切片是怎么做的。企业落地AI项目时切片的成功意味着项目已经成功了90%,那么究竟优秀的RAG系统的切片是怎么做得呢?本文带你揭晓迷底。

打造全国最全的AI Agent开发知识领域的博客 1391

保姆级教程:用Unidbg搞定阿里系App的x-sign和长x-mini-wua签名(附完整Java代码)

本文详细介绍了如何使用Unidbg框架模拟执行阿里系App的原生库,生成关键的x-sign和x-mini-wua签名参数。通过完整的Java代码示例和实战技巧,帮助开发者高效实现签名算法,适用于安全研究、数据分析和第三方应用开发场景。

weixin_29243279的博客 486

Agent测试框架Harbor指南

Harbor是一个AI Agent单元测试框架,用于自动化测试AI代理在容器环境中的任务执行能力。它支持18+种AI代理,通过沙箱隔离和自动验证机制评估任务完成情况。任务必须具有可编程验证的输出结果,适合代码、数据、系统等可量化任务,不适合创意写作等主观任务。Harbor采用CLI操作方式,核心架构包含Job管理、Trial执行和验证器三个层级,执行流程包括环境启动、Agent执行和结果验证。任务目录包含指令文件、配置文件、Docker环境定义和测试脚本等必需组件,通过测试脚本自动判断任务完成质量。

loo_Charles_ool的博客 1404

DsRAG:新开源的高级RAG分块技巧!

今天给大家分享一个新的策略,称为DS-RAG。一个不好的分块,会带来很多的问题,比如说以下几点:代称,他/她等表示响应的主题,刚好被切分在单独的块中,影响召回单个块可能不包含完整的答案块,答案可能包含在连续的几个块中块可能仅在某种特定上下文中才有意义等等。。。解决方案有2种:在每个块添加上下文头,将更高级别的信息补充在文档块开头(例如将文档标题,摘要放在每个块的开头)从块到段 chunk -> segments。

Python_cocola的博客 914

Mathtype公式下标深度调整技巧:解决固定行距下的显示不全问题

本文针对在Word等文档中设置固定行距时,Mathtype公式下标显示不全的问题,提供了专业解决方案。核心在于调整Mathtype软件内部的“下标深度”参数,通过修改单个公式或批量格式化全文,使公式完美适配固定行距,确保下标清晰完整,且不影响文档整体排版。

pepsi的博客 1500

【大模型系列——解读RAG】_大模型rag是什么意思

RAG即检索增强生成,为 LLM 提供了从某些数据源检索到的信息,并基于此修正生成的答案。RAG 基本上是 Search + LLM 提示,可以通过大模型回答查询,并将搜索算法所找到的信息作为大模型的上下文。查询和检索到的上下文都会被注入到发送到 LLM 的提示语中。嵌入式搜索引擎可以通过 Faiss 来实现,向量搜索领域成为了RAG的一个助力。像pinecone 这样的向量数据库可以构建开源搜索索引,为输入文本增加了额外的存储空间,还增加了一些其他工具。关于向量数据库,可以参考解读向量数据库。

mama19971023的博客 9060

基于STM32的RS485土壤氮磷钾与PH传感器数据采集与OLED显示实战(附完整代码)

本文详细介绍了基于STM32单片机通过RS485协议采集土壤氮磷钾与PH传感器数据的实战项目。涵盖硬件选型、连接方法、Modbus-RTU通信协议解析、STM32程序实现及OLED显示,提供完整代码和调试技巧,适用于农业物联网环境监测系统。

kotlin6android的博客 336

规控面试常见问题

规划控制算法常见问题。

每天进步一点点。 983

RAG-5-文本分块

本文介绍了RAG(检索增强生成)技术中的关键步骤——文本分块(Text Chunking)。文本分块是将长篇文档切分为更小处理单元的过程,这对后续向量检索和模型处理至关重要。文章详细分析了文本分块的必要性,包括满足模型上下文限制、避免信息损失和提升检索精度等。重点探讨了三种基础分块策略:固定大小分块、递归字符分块和语义分块,并介绍了LangChain中的实现方法。此外,还介绍了其他框架如Unstructured和LlamaIndex的分块策略,以及可视化工具ChunkViz。合理分块能显著提升RAG系统的检

weixin_74301566的博客 460

【C语言学习疑难杂症】第20期:0x00007FF7F2821964处引发的异常0xC0000005写入位置 0x0000000000000

检查代码中是否存在野指针访问的情况,确保在进行写入操作之前,内存已经被正确分配或初始化,并且在使用完毕后进行了正确的释放。空指针访问:代码尝试在空指针地址(0x0000000000000000)处进行写入操作,导致访问冲突。检查代码中是否存在数组越界的情况,确保在进行写入操作之前,数组的索引值在合法范围内。检查代码中是否存在空指针访问的情况,确保在进行写入操作之前,指针已经被正确初始化。野指针访问:代码尝试在已释放或未初始化的内存地址进行写入操作,导致访问冲突。

学无止境 828

RAG前沿再跟进:HtmlRAG、分块策略、GraphRAG-DRIFT及多样性生成

本文主要讲了4个问题,分别是关于RAG中的分块策略对比回顾、大模型生成策略,在大模型中增加输出多样性、RAG的chunk表示:HTML比纯文本更适合用于RAG系统中建模检索到的知识、GraphRAG微软版本更新0.4.0,引入DRIFT推理,都是围绕RAG来做的,可以对应到建库、召回以及生成等阶段,都是trick。当然,trick固然很多,但我们需要找到对应合适的场景来应用它们,各位可以多思考。

m0_59163425的博客 1259

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

先Embedding再Chunking!RAG分块新范式火了, semantic chunking 让检索精度飙升!

还在用“一刀切”的方式分块你的文档吗?out 了!现在流行“先 Embedding 再 Chunking”——让语义相似度自己决定 chunk 边界,检索精度直接拉满!👇👎 固定大小分块:按字数/token数硬切,句子被拦腰斩断,语义断裂,检索时一脸懵。 👎 递归字符分块:按段落/换行切,长段落超长,短段落超短,上下文窗口被浪费,无关信息混入,召回率暴跌。结果就是:小块找不到上下文,大块找不到重点! 2025年研究都说了:事实类问题适合64-128 token,叙事类问题适合512-1024 toke

weixin_58753619的博客 962

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

RAG——分块技术对检索的提升

摘要:本文系统介绍了文本分块技术在RAG系统中的关键作用及多种实现方法。文本分块需平衡检索精度与生成完整性,通过字符分块、递归分块、语义分块及结构化分块等方式实现。研究表明,分块大小显著影响问答准确性,需根据嵌入模型限制(通常<512token)和文档特性(如代码需按函数分块)优化设置。最佳实践包括:设置合理重叠窗口(10-20%)、混合父子文档存储、添加元数据标签及构建层次化索引,以提升检索效率并避免"大海捞针"问题。实验显示,针对财务报告,250字符分块较100字符分块将问答准

申俏雅的博客 411

RAG知识库只是表面简单!

当我们说"把文档丢进Dify就能搞定RAG"时,工程师们默默翻了个白眼——因为他们知道,真正的魔法发生在幕后。

2301_81888214的博客 817

从检索到分块:RAG关键技术解析

大文本构建知识库,是无法带着所有内容,也不需要带上所有内容供给大模型进行推理,所以文件必须要切分进行向量化。RAG系统的目标是通过外挂知识库,每次向大模型提问之前,先在知识库搜索相关的知识,带着【参考资料】向AI提问,得出来的答案自然更加靠谱。显而易见地,用户的提问prompt就是搜索关键词,那么随之而来的:如何搜索到准确的知识?如何保证所需要的知识能够被完全搜索出来?检索Retrieval是RAG系统中至关重要的一环,也是降低AI幻觉,提高准确率的重要手段。如果我遗漏的那一条,恰好就是我最需要的答案呢?

weixin_43851330的博客 738

大模型rag技术,什么是RAG?大模型入门到精通,收藏这篇就够了

RAG(Retrieval-Augmented Generation)即检索增强生成,为大模型提供了从特定数据源检索到的信息,以此来修正和补充生成的答案。

2301_82275412的博客 1万+

RAG分块策略深度解析:从固定大小到语义分块的九大实战技巧

本文深度解析了RAG系统中九种关键的文档分块策略,从基础的固定大小分块到高级的语义分块。文章通过实战案例和代码示例,详细阐述了如何根据文档类型和场景(如法律、技术文档)选择并优化分块策略,以解决语义完整性、处理效率与场景适配的核心矛盾,从而显著提升RAG系统的检索与生成效果。

weixin_29091105的博客 364

[特殊字符]小白都能看懂的RAG分块实战:从递归分割到LLM智能拆解的全解析,大模型入门到精通,收藏这篇就足够了!

在构建RAG(检索增强生成)系统时,文本分块质量直接影响知识检索精度与LLM输出效果。本文将深入解析五种分块策略的工程实现与优化方案。

2301_81888214的博客 1137

【大模型系列——解读RAG】

RAG即检索增强生成,为 LLM 提供了从某些数据源检索到的信息,并基于此修正生成的答案。RAG 基本上是 Search + LLM 提示,可以通过大模型回答查询,并将搜索算法所找到的信息作为大模型的上下文。查询和检索到的上下文都会被注入到发送到 LLM 的提示语中。嵌入式搜索引擎可以通过 Faiss 来实现,向量搜索领域成为了RAG的一个助力。像pinecone 这样的向量数据库可以构建开源搜索索引,为输入文本增加了额外的存储空间,还增加了一些其他工具。关于向量数据库,可以参考解读向量数据库。

lhx17673139267的博客 5359
上一篇: 揭秘AI超级Agent:DeerFlow工业化设计全攻略(非常详细),从架构到实现,收藏这一篇就够了!
下一篇: 真正的企业级 Spring AI 2.0 实战指南(非常详细),高并发RAG落地看这篇就够了!
Python_金钱豹
博客等级 码龄5年 1万+粉丝 2835原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值