分块是 RAG 质量的第一杠杆,“分块阶段选错,后面全 poison”。多份 2026 实测/指南的共识基线:递归分块约 512 tokens、重叠 50–100 tokens(约 10–20%);文档话题跳跃大时用语义分块;生产进阶用父子分块(小块检索、返回父段落给模型)。不要迷信某个“最佳块大小”数字,它只是起点,要用自己的评测集调。

适用场景:任何 RAG 上线前的基础设定;检索“答非所问/答不全”时的第一排查项

分块 chunking 递归分块 语义分块 父子分块

操作步骤

  1. 默认起步:按标题/段落等语义边界递归分块,约 512 tokens,overlap 50–100 tokens
  2. 每块强制带元数据:文档标题、章节标题、日期、来源、权限等级——元数据过滤是最便宜的精度提升
  3. 特殊文档分别处理:技术文档用“语义+固定窗口”混合;代码按函数/类切;表格整表不拆碎(或用 RAGFlow 类深度解析)
  4. 建 50 条真实问题金标集,对比 2–3 组分块参数(块大小/重叠),用命中率选参数,而不是凭感觉
  5. 分块调不动了再往后调混合检索与 rerank(见第 11 条),不要死磕块大小
接入本站 API:分块本身不耗 LIN 的 API;但在 Dify/RAGFlow/FastGPT 里改分块后要重新用 Embedding 模型跑索引,Embedding 若走 LIN 的兼容接口,这部分 token/调用量走 LIN 额度——批量重建索引前先小批量试算。

注意事项

  • ⚠️ 块太小丢上下文、块太大语义被稀释(指南共识:two extremes 都翻车)
  • ⚠️ 按固定字符数硬切,把一句话/一个表格从中间切断
  • ⚠️ 改了分块却不重跑评测集,凭几条手测就上线

来源:https://dev.to/ali_82f3409ed625e8ba8515b/rag-chunking-tested-what-actually-improves-retrieval-58aj