← 返回概念解读

Concept Fable精修版

语义分块

Semantic Chunking · Retrieval preparation

先读故事。这里不急着给定义,先让问题自己长出来。

寓言故事

裁纸匠不再按尺子切书

档案馆要把长卷宗放进新索引柜。最早的裁纸匠很省事:每隔三十行切一刀,每张纸长度一样,放进抽屉也整齐。

刚开始没人抱怨。直到读者开始问细问题,馆员才发现许多答案被一刀切断。前半句在上一张纸,条件在下一张纸;标题留在前面,真正规则落在后面。

馆长让裁纸匠每张纸之间多留几行重叠。断裂少了一些,抽屉却迅速变满,同一句话被反复收录。检索时,几张几乎一样的纸同时被搬出来,占了桌面位置。

有人又建议按章节标题切。可有些章节很长,里面混着背景、定义、例外和操作步骤;有些章节只有两句话,单独成块又太薄。一位老编辑没有先拿尺子。他先读每一段,看话题什么时候真正转弯:从背景进入规则,从规则进入例外,从例外进入示例。转弯处才下刀。

他还会把标题、列表和上下句关系一起看。有些短段落必须跟前一句放在一起,因为它只是补充条件;有些长段落虽然没换标题,却已经讲到另一个主题。

新切法不像尺子切出来那样整齐,但读者拿到的纸更像一个完整意思单元。问退货例外,就不会只拿到‘见下列情况’;问审批条件,也不会少掉前面的适用范围。后来馆员发现,索引柜变得安静了。不是因为资料少了,而是每次拿出的片段更完整、更贴近问题,机器不用在破碎句子之间猜缝。

裁纸匠开始先读再裁。他把同一个问题、条件和例外留在一张纸上;遇到长段落,就沿着标题、转折和清单边缘下刀。头几天他裁得慢,馆员抱怨进柜速度下降。可读者再来问细问题时,搬出的纸少了,答案却完整了,桌面也不再堆满重复页。

馆长后来立下规矩:裁纸不是为了每张一样长,而是为了让以后找纸的人拿到一块完整意思。馆长终于把旧尺子收进抽屉:切文档不是为了让长度好看,而是为了让意思不被切断。

揭示

这个故事讲的是:语义分块

语义分块(Semantic Chunking)按照语义边界切分文档,而不是机械按固定字符数、token 数或行数切分。它会尽量让每个 chunk 成为相对完整的意义单元,例如一个规则、一个步骤、一段定义、一组例外或一个案例。语义分块能提升 RAG 检索和生成质量,因为 embedding 看到的是完整语义,模型拿到的上下文也更少断裂。它的代价是实现复杂度更高,通常需要结合标题结构、段落边界、句向量相似度、解析器或 LLM 辅助切分,并在 chunk size、overlap 和成本之间做权衡。

它重要的地方在于:它不只是一个术语,而是在真实 AI / Agent 系统里会反复出现的结构性问题。理解它,才能判断什么时候该加模型,什么时候该改流程,什么时候该补治理。

隐喻映射

  • 每隔三十行切一刀:固定长度分块
  • 答案被一刀切断:机械分块破坏语义边界
  • 多留几行重叠:chunk overlap,可以缓解断裂但增加重复和上下文占用
  • 按章节标题切:结构化切分有帮助,但标题层级不总等于语义边界
  • 话题真正转弯处下刀:semantic chunking 的核心判断
  • 标题、列表和上下句关系:可用于语义分块的文档结构信号
  • 完整意思单元:更适合 embedding、retrieval 和 LLM 上下文使用的 chunk
  • 不用在破碎句子之间猜缝:减少 RAG 因上下文断裂导致的误答

Soloharness 判断

这个概念的实战价值,是帮你把“看起来聪明的 AI 功能”拆成可交付、可验收、可治理的工作单元。

chunkingembeddings