跳到主内容
快讯直播
AI智模界
AI 词典

分块(Chunking):把长文档切成能被检索的小块

一句话定义:分块(Chunking)就是把一份长文档切成一段段短文本(chunk),再分别转成向量存进检索库,让系统需要时只取相关的那几段,而不是把整本书塞给模型。

为什么不能整篇塞进去

想象公司有上千页规章制度,员工问「年假能攒到明年吗」。把这上千页全塞进大模型(LLM)的上下文窗口(context window),一来装不下,二来就算装得下,模型也容易被满屏无关内容带偏,成本还高。

分块就像把这份制度拆成一张张索引卡:每条规则一张卡,卡上贴一个「语义标签」(也就是嵌入向量 embedding)。提问时,问题也变成一个标签,系统比对标签,抽出最像的几张卡递给模型,模型照着卡片回答。

一般流程

1. 切:按固定长度(字符数或 token 数)切,或按标题、段落、列表、代码块等结构切。

2. 留重叠(overlap):相邻块重复一小段,避免一句话被拦腰截断。

3. 嵌入:每块单独过嵌入模型,得到一个向量。

4. 检索:用户问题也向量化,算相似度,取最相近的若干块(top-k)。

5. 组装:把这些块拼进提示词,让模型基于它们作答。

和相邻概念的区别

  • 分块 vs 嵌入:分块决定「切什么」,嵌入决定「怎么把它变成可比较的数字」。
  • 分块 vs 检索增强生成(RAG):分块是 RAG 流水线的第一步,切得好坏直接决定后面检索效果的上限。
  • 分块 vs 摘要:摘要会改写内容,分块尽量保留原文。查合同条款、报错日志时,原话比概括更靠得住。

块切多大

没有万能值,权衡方向大致如下:

切法后果
块太大一块里混进无关内容,检索命中率下降,还挤占上下文
块太小一句话被切碎,语义不完整,模型拿到半截话
无重叠关键句子跨在边界上,两块都没包住
按结构切通常比硬切长度更贴近语义,但依赖文档本身有清晰的标题层级

对两类人的意义

做 AI 应用的人:块大小、重叠量、按结构还是按长度切,都要拿业务里的真实问题反复试,别照搬别人的数字。具体默认值与最佳实践,以官方文档和你自己的评测为准。

普通职场人:AI 答内部问题答得准不准,很多时候不是模型笨,而是文档被切坏了。写文档时多用小标题、短段落、把一件事说完整,既方便同事扫读,也方便机器切对。

AI 生成本文由 AI 基于公开信息自动生成,仅供参考。