- 分块划分
边际采样分块(Margin-based Sampling Chunking)
核心思想:通过检测文本中的“边际变化”或概率差异来确定分块边界,确保分块的语义连贯性。
实现方式:
- 概率边界检测:使用语言模型计算文本中每个位置的“分块边界概率”。当概率超过阈值时,将此处作为分块起点或终点。
- 滑动窗口对比:比较相邻文本片段的特征(如模型输出的概率分布或嵌入相似性),当差异显著时(边际变化超过阈值),分割为独立块。
- 动态调整:根据上下文长度或领域特性自适应调整分块大小,避免固定窗口的局限性。
优势:
- 灵活性高,适应不同文本结构。
- 减少话题混杂,提升检索相关性。
适用场景:文本结构复杂、话题切换频繁的场景(如多领域混合文档)
困惑度分块(Perplexity-based Chunking)
核心思想:利用语言模型的困惑度(Perplexity,PP)指标,找到语义完整的自然分块边界。
实现方式:
- 逐句/段落评估:计算文本中每个句子或段落的困惑度,低困惑度表明模型“熟悉”该内容(如语法正确、主题明确)。
- 边界检测:在困惑度突增的位置(如话题转换或结构断裂处)进行分块,确保块内语义一致性。
- 预训练模型辅助:使用BERT、GPT等模型生成困惑度曲线,根据曲线平滑度分割文本。
优势:
- 依赖语言模型对文本的理解能力,分块更符合语义逻辑。
- 减少不完整块(如截断的句子或段落)。
适用场景:需要高语义完整性的任务(如问答系统、文档摘要)。
对比
特性 | 边际采样分块 | 困惑度分块 |
---|---|---|
核心依据 | 概率差异或边际变化 | 语言模型的困惑度指标 |
计算成本 | 较低(依赖简单统计或滑动窗口) | 较高(需多次调用模型计算困惑度) |
灵活性 | 高(动态调整分块大小) | 中(依赖模型预训练知识) |
适用场景 | 多领域、结构复杂文本 | 语义连贯性要求高的任务 |