1.6 KiB
1.6 KiB
title, type, tags, last_updated
| title | type | tags | last_updated | ||||
|---|---|---|---|---|---|---|---|
| Split | concept |
|
2025-01-16 |
Definition
Split(文档块/文本片段)是 Indexing 阶段将长文档切分后的产物,每个 Split 的 token 数量满足 Embedding Model 的 Context Window 限制,同时尽可能保持语义完整性。
Why Splitting Matters
Embedding Model 的 Context Window 有限(通常 512~8192 token),无法直接处理整篇长文档,因此必须切分。切分质量直接影响检索效果:
- Split 过大:超过 Context Window 无法处理,即使能处理也引入过多噪声
- Split 过小:语义不完整,检索到的片段无法支撑 LLM 生成准确答案
- Split 不重叠:相邻片段边界处的重要信息可能被切分点切断
Common Splitting Strategies
- Fixed-size Split:按固定 token 数切分(简单但可能切断句子)
- Sentence-aware Split:按句子或段落切分(语义更完整)
- Recursive Split:递归地按换行符→句子→单词逐级切分(平衡粒度与完整性)
- Semantic Split:按语义相似度聚类后切分(最理想但实现复杂)
In RAG Pipeline
- Indexing 阶段输出:每个文档切分为多个 Split,分别 Embedding 后入库
- Retrieval 阶段处理:用户问题检索到的是 Split 粒度的文档块,而非整篇文档
Related Concepts
- Indexing — Split 是 Indexing 阶段的产物
- Embedding — 每个 Split 独立进行向量化
- Context Window — Split 大小的上限约束