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生成文本塊,并通過結構化
-
- 雙重直接評估指標: