• Chunking是将文本拆分成更小的“块”(chunk),每个chunk作为向量化和存储的基本单位。
• 合理的chunking策略影响检索效果和RAG系统的上下文信息量。
• 没有万能适用的chunking方法,需结合具体用例灵活选择。
6大核心chunking技术:
→ 固定大小Chunking(Fixed-Size Chunking):简单经济,忽略文本结构,适合起步尝试。支持重叠chunk提升上下文感知。
→ 递归Chunking(Recursive Chunking):先按段落等主分隔符切,再递归用句子等细分,尊重文本结构,灵活适配各种场景。
→ 文档结构Chunking(Document-Based Chunking):基于文档自然分区如标题、章节,适合HTML、Markdown等结构化文本。
→ 语义Chunking(Semantic Chunking):先划分成有意义单元(句子/段落),基于向量余弦距离合并,检测上下文变化生成chunk。
→ LLM驱动Chunking(LLM-Based Chunking):利用大语言模型生成语义隔离且独立成章的句子或命题,精准度高但计算成本大。
→ 晚期Chunking(Late Chunking):先对全文嵌入,再基于token级向量分块,最大程度保留全文上下文,兼顾成本与效果。
💡 实用建议:
• 从固定大小chunking开始,根据需求逐步探索更复杂策略。
• 技术文档推荐文档结构chunking;对话类数据语义chunking表现优异。