RAG系统在处理复杂上下文时,传统和语义分块方法的局限性,文本分块的质量限制了检索到的内容,从而影响生成答案的准确性。尽管其他算法组件有所进步,但分块策略中的增量缺陷仍可能在一定程度上降低整体系统性能。如何直接量化分块质量?如何有效利用大型语言模型(LLMs)进行分块?如何在保持计算效率的同时提高分块精度等问题一直是我们RAG工作中的严重挑战!
MoC架构是一个混合框架,通过一个多粒度感知的路由器动态协调轻量级分块专家。该架构创新性地整合了:一个正则表达式引导的分块范式,一个基于稀疏激活的计算资源约束机制,以及一个由编辑距离驱动的校正算法。
核心创新:双重评估指标与混合分块架构
-
问题定义
- RAG系统的瓶颈:传统文本分块方法(如固定长度分割、语义相似度分块)存在两大缺陷:
- 语义割裂:固定分块破坏逻辑单元,语义分块易忽略长程依赖。
- 评估间接性:现有方法依赖下游任务(如QA准确率)间接评估分块质量,噪声干扰大。
-
方法论突破
- 双重直接评估指标:
- 边界清晰度(Boundary Clarity, BC):
通过计算分块边界处困惑度(PPL)差异,量化边界明确性(公式1)。值越高,分块越符合语义逻辑。 用于评估分块在分隔语义单元方面的有效性。具体计算公式如下:
- 边界清晰度(Boundary Clarity, BC):
BC ( q , d ) = ppl ( q ∣ d ) ppl ( q ) \operatorname{BC}(q, d)=\frac{\operatorname{ppl}(q\mid d)}{\operatorname{ppl}(q)} BC(q,d)=ppl(q)ppl(q∣d)
其中, ppl ( q ) \operatorname{ppl}(q) ppl(q)表示句子序列 q q q的困惑度, ppl ( q ∣ d ) \operatorname{ppl}(q\mid d) ppl(q∣d)表示在给定上下文 d d d下的对比困惑度。较低的困惑度值表示模型对文本的理解较好,而较高的值表示语义解释的不确定性较大。
- 块粘性(Chunk Stickiness, CS):
构建分块间语义关联图,计算结构熵。值越低,分块独立性越强。该指标用于评估文本块之间的紧密性和顺序完整性。具体计算公式如下:
Edge ( q , d ) = ppl ( q ) − ppl ( q ∣ d ) ppl ( q ) \operatorname{Edge}(q, d)=\frac{\operatorname{ppl}(q)-\operatorname{ppl}(q\mid d)}{\operatorname{ppl}(q)} Edge(q,d)=ppl(q)ppl(q)−ppl(q∣d)
其中,边的权重表示文本块之间的相似度。构建一个语义关联图,节点表示文本块,边权重表示文本块之间的相似度。通过计算编辑距离来恢复算法,确保生成的分块规则与原始文本一致。
- 混合分块器(MoC)架构:
-
数据集构建: 使用GPT-4o生成文本块,并通过结构化
-
- 双重直接评估指标: