分块在整条链路里的位置
Chunk 太碎,召回碎片化,答案拼不起来;Chunk 太大,向量被噪声稀释,Rerank 也救不回来。生产里几乎不用「纯固定长度」:至少加 overlap,避免句子在窗口边缘被切断。
常用策略怎么选
- 递归字符 / 按句:通用底线,适合说明书和制度文档。
- 结构化:按标题、列表、代码函数切;表格转 HTML 或 JSON,不要压成纯文本。
- 语义 / 主题 / 命题化:适合叙事长文,代价是多一次模型调用。
- 父子块:检索打子块,返回父块,兼顾精度和完整上下文。
- Late Chunking、句子窗口、Contextual Retrieval:先编码长文再切,或给每块补文档标题上下文,缓解「块内看不见全文」。


落地时只盯三件事
- overlap 先从 10%–20% 试,用 Hit@K 看边界问题有没有下降。
- 代码按函数切,表格单独通道,不要和正文共用同一套 splitter。
- 用 Prompt Caching 摊薄 Contextual Retrieval 的费用,否则语义分块会把账单打爆。
RAG 文本怎么切:固定窗口、父子块与 Late Chunking
https://lautung.com/archives/rag-chunking
评论