直接答案

分块(Chunking)把长文档切成检索单元,切得好坏直接决定"能不能检索到"。通用建议:按文档语义结构(标题、段落)切分,单块 300-500 字符,相邻块重叠 10-15%;表格、代码、步骤清单保持完整不切。不要用固定长度无脑切割——那是检索质量差的第一大原因。

四种策略对比

策略做法优点缺点
固定长度每 N 字符一切实现最简单切断语义,不推荐
递归字符按分隔符层级切兼顾长度与边界不理解内容结构
语义切分按句向量相似度断句块内主题集中计算成本高
结构切分按标题/章节层级语义最完整依赖文档规范

块大小与重叠怎么定

块太小(如 100 字),检索单元语义不完整,模型拿到的是"断章取义"的片段;块太大(如 2000 字),一个块混多个主题,相似度被稀释,还会挤占上下文窗口。300-500 字符配合 10-15% 重叠,是大多数中英文语料的平衡点。重叠的作用是防止关键句恰好落在切分边界上被丢掉一半。

五个常见错误

一是表格被从中间切断,行列对应关系全毁;二是标题与正文分家,块失去了"这是什么内容"的语境;三是步骤清单被拆散,第 3 步检索到了而第 1、2 步丢失;四是块太短只有一句话,缺少决策所需的上下文;五是 PDF 双栏排版按行提取,左右两栏文字串行错乱。前四个都靠"结构优先"的切分策略规避,第五个要在解析层解决。

小结

分块没有万能参数,但有明确原则:尊重语义边界、保持表格完整、适度重叠。上线后若发现"检索到了但答不对",优先回头检查分块,而不是急着换模型。

常见问题快答

Markdown 文档怎么分块最好?

按标题层级切(## 为界),块内保留标题路径作为上下文前缀,块长 300-500 字符,表格整块保留。

重叠设多大合适?

块长的 10%-15%(如 400 字符块设 50-60),太大产生大量冗余,太小容易边界丢句。

要不要给每块加元数据?

要。来源文档、章节、更新时间、部门权限标签,检索过滤与引用溯源都靠它。

G
geo小助手内容团队
geo小助手(沈阳逍宇科技有限公司)内容团队,专注生成式引擎优化(GEO)方法论的实践与沉淀。

最后更新于 2026-08-03。本文持续修订,重大更新会标注日期。