RAG 分塊新突破!LGMGC 框架讓抽取式問答效率翻倍?

在檢索增強(qiáng)生成(RAG)技術(shù)席卷開放域問答(ODQA)領(lǐng)域的當(dāng)下,多數(shù)研究者的目光都聚焦在檢索算法優(yōu)化與生成模型升級(jí)上,卻忽略了一個(gè)關(guān)鍵環(huán)節(jié) —— 文檔分塊??此坪?jiǎn)單的分塊過程,實(shí)則是決定 RAG 性能的 “隱形基石”:若分塊缺乏上下文,檢索到的信息碎片化;若分塊包含過多無關(guān)內(nèi)容,生成器又會(huì)被冗余信息干擾。今天要為大家介紹的 Logits-Guided Multi-Granular Chunker(LGMGC)框架,正是針對(duì)這一痛點(diǎn)提出的創(chuàng)新解決方案,讓文檔分塊既 “懂語義” 又 “多粒度”,大幅提升抽取式問答效果。
01、為什么 RAG 分塊需要 “重新被重視”?
在聊 LGMGC 之前,我們先搞清楚:為什么分塊環(huán)節(jié)值得投入精力研究?
RAG 的 “短板” 藏在分塊里
RAG 模型的工作流程可拆解為 “分塊 - 檢索 - 合成” 三步。前兩步中,檢索器負(fù)責(zé)從海量文檔中找相關(guān)信息,合成器(LLM)負(fù)責(zé)基于檢索結(jié)果生成答案。但如果分塊環(huán)節(jié)出了問題,后續(xù)環(huán)節(jié)再優(yōu)秀也難以發(fā)揮作用:
- 若分塊過?。ㄈ鐔尉浞謮K),會(huì)丟失句子間的邏輯關(guān)聯(lián),比如描述 “某實(shí)驗(yàn)步驟” 的文本被拆分成多個(gè)孤立句子,檢索器無法捕捉完整流程;
- 若分塊過大(如整段分塊),會(huì)混入大量與查詢無關(guān)的內(nèi)容,比如在 “AI 醫(yī)療診斷” 查詢中,檢索到的分塊包含大量 AI 基礎(chǔ)理論,反而干擾答案提取。
現(xiàn)有分塊方法的 “兩難困境”
目前主流的分塊方法,始終面臨 “語義連貫性” 與 “效率成本” 的兩難:
- 傳統(tǒng)分塊(遞歸分塊、語義分塊):遞歸分塊按固定長度切割文本,完全忽略語義;語義分塊雖能通過句子嵌入距離識(shí)別分隔點(diǎn),但難以確定 “最優(yōu)分塊粒度”,比如對(duì)學(xué)術(shù)論文和小說,最優(yōu)分塊長度差異極大,傳統(tǒng)方法無法自適應(yīng)。
- LLM 直接分塊:近年來有研究用 GPT-4、Gemini-1.5 等大模型直接劃分文本,雖能保證語義完整,但成本極高 —— 企業(yè)處理百萬級(jí)文檔時(shí),頻繁調(diào)用 LLM API 的費(fèi)用難以承受;同時(shí),將敏感文檔上傳至第三方 API,還會(huì)引發(fā)數(shù)據(jù)安全風(fēng)險(xiǎn)。
正是在這樣的背景下,LGMGC 框架應(yīng)運(yùn)而生,它既借助 LLM 的語義理解能力,又規(guī)避了高成本與安全風(fēng)險(xiǎn),還能實(shí)現(xiàn)多粒度分塊,完美解決了現(xiàn)有方法的痛點(diǎn)。
02、LGMGC 框架:兩大模塊實(shí)現(xiàn) “語義 + 多粒度” 分塊
LGMGC 的核心思路是 “先找完整語義塊,再拆多粒度子塊”,整個(gè)框架由Logits-Guided Chunker(基于 Logits 的分塊器) 和Multi-Granular Chunker(多粒度分塊器) 兩大模塊組成,二者協(xié)同工作,兼顧語義完整性與檢索靈活性。

模塊 1:Logits-Guided Chunker
該模塊的核心是 “利用預(yù)訓(xùn)練 LLM 的 Logits 信息,識(shí)別文本中的完整語義單元”。簡(jiǎn)單來說,LLM 能預(yù)測(cè)每個(gè) token 的后續(xù)概率分布,而句子結(jié)束標(biāo)記([EOS])的概率,恰好能反映當(dāng)前句子是否構(gòu)成 “完整語義”。
具體實(shí)現(xiàn)分為 4 步,邏輯清晰且易于部署:
- 預(yù)處理:固定長度初分:先將輸入文檔按固定長度 θ(如 200/300/500 個(gè)單詞)切割成初始?jí)K,避免文本過長導(dǎo)致 LLM 處理壓力;
- 算概率:聚焦 [EOS] 標(biāo)記:給每個(gè)初始?jí)K加一個(gè)提示(如 “請(qǐng)判斷以下句子是否完整,若完整則輸出 [EOS]”),然后讓 LLM 計(jì)算每個(gè)句子末尾 [EOS] 標(biāo)記的條件概率 p [EOS]—— 概率越高,說明該句子越完整,越適合作為語義邊界;
- 定分割:選最高概率點(diǎn):在初始?jí)K中,選擇 p [EOS] 最高的位置作為分割點(diǎn),分割點(diǎn)之前的文本即為 “語義完整的父塊”,剩余內(nèi)容則與下一個(gè)初始?jí)K拼接,進(jìn)入下一輪迭代;
- 迭代:直到滿足閾值:重復(fù)上述步驟,直到剩余文本長度低于設(shè)定閾值,最終得到一系列 “上下文連貫、語義獨(dú)立” 的父塊。
這里有個(gè)關(guān)鍵優(yōu)勢(shì):該模塊僅需 LLM 的一次前向傳播(即輸出 Logits 信息),無需讓 LLM 生成完整文本,因此可使用本地部署的量化 LLM(如 8 位量化的 Llama3-8b),既降低了成本,又避免了數(shù)據(jù)外傳,完美適配企業(yè)場(chǎng)景。
模塊 2:Multi-Granular Chunker
檢索和生成對(duì)分塊粒度的需求完全不同:
- 檢索階段:需要小粒度塊 —— 塊越小,包含無關(guān)信息的概率越低,檢索精度越高;
- 生成階段:需要大粒度塊 —— 塊越大,包含的上下文越豐富,生成的答案越全面。
Multi-Granular Chunker 模塊的核心就是 “解耦“檢索” 與 “生成” 的粒度需求”,在父塊基礎(chǔ)上拆分出多粒度子塊,具體操作如下:
- 父塊打底:以 Logits-Guided Chunker 生成的 “語義完整父塊” 為基礎(chǔ),確保子塊的語義根源是完整的;
- 子塊拆分:將每個(gè)父塊按 “θ/2” 和 “θ/4” 的長度拆分成兩個(gè)粒度的子塊(比如父塊是 400 個(gè)單詞,子塊就是 200 個(gè)和 100 個(gè)單詞);
- 相似度聯(lián)動(dòng):推理時(shí),父塊的相似度得分由其子塊的 “最高得分” 決定 —— 比如檢索 “某實(shí)驗(yàn)的結(jié)論” 時(shí),先計(jì)算所有子塊與查詢的相似度,取最高分作為對(duì)應(yīng)父塊的得分;
- 選塊生成:最終選擇得分前 k 的父塊傳給 LLM 生成器,既保證了檢索精度(子塊篩選),又提供了完整上下文(父塊生成)。
整體流程:1+1>2 的協(xié)同效果
LGMGC 的整體流程可總結(jié)為 “兩步走”:
- 第一步:生成父塊:用 Logits-Guided Chunker 將文檔分割成語義完整的父塊,解決 “語義連貫性” 問題;
- 第二步:拆分多粒度子塊:用 Multi-Granular Chunker 將父塊拆分成不同粒度的子塊,解決 “檢索 - 生成粒度不匹配” 問題。
通過這種 “先整后分” 的邏輯,LGMGC 實(shí)現(xiàn)了 “1+1>2” 的效果:父塊保證了語義不破碎,子塊保證了檢索夠精準(zhǔn),二者結(jié)合讓后續(xù)的 RAG 流程效率大幅提升。
03、實(shí)驗(yàn)驗(yàn)證
為了驗(yàn)證 LGMGC 的效果,研究者在段落檢索和開放域問答兩大任務(wù)中進(jìn)行了對(duì)比實(shí)驗(yàn),選用了多個(gè)權(quán)威數(shù)據(jù)集和基線方法,結(jié)果證明 LGMGC 在所有指標(biāo)上均表現(xiàn)最優(yōu)。
實(shí)驗(yàn)設(shè)置
數(shù)據(jù)集:
- 檢索任務(wù):GutenQA(“大海撈針” 型數(shù)據(jù)集,每個(gè)問題的答案僅 1-2 句話,考驗(yàn)檢索精度);
- 問答任務(wù):LongBench 單文檔數(shù)據(jù)集(含 NarrativeQA 敘事文本、QasperQA 學(xué)術(shù)論文、MultifieldQA 多領(lǐng)域文本,覆蓋不同文本類型,用于評(píng)估端到端的 RAG 性能)。
評(píng)價(jià)指標(biāo):
- 檢索任務(wù):DCG@k(衡量檢索結(jié)果相關(guān)性與排名)、Recall@k(衡量檢索到相關(guān)證據(jù)的比例);
- 問答任務(wù):F1 分?jǐn)?shù)(衡量預(yù)測(cè)答案與真實(shí)答案的匹配度)。
基線方法:遞歸分塊、語義分塊、段落級(jí)分塊、LumberChunker(LLM 直接分塊),以及 LGMGC 的兩個(gè)子模塊(LG Chunker、MG Chunker),確保對(duì)比的全面性。
段落檢索:語義連貫 + 多粒度 = 更高精度
實(shí)驗(yàn)結(jié)果顯示,在不同塊大?。é?200/300/500)下,LGMGC 的表現(xiàn)始終碾壓基線:
- Logits-Guided Chunker(LG Chunker)在不同塊大?。é?= 200、300、500 個(gè)單詞)下,始終優(yōu)于Recursive Chunker、Semantic Chunker和Para Chunker。這表明 LG Chunker 在捕捉上下文連貫性和生成獨(dú)立、集中的語義塊方面具有顯著優(yōu)勢(shì)。
- LumberChunker在某些指標(biāo)上略優(yōu)于 LG Chunker,但 LG Chunker 更具成本效益且更易于部署。LumberChunker 需要遞歸調(diào)用 LLM API,而 LG Chunker 只需要一次前向傳播的 logits 信息,支持本地實(shí)現(xiàn),避免了額外的計(jì)算成本和安全風(fēng)險(xiǎn)。
- Multi-Granular Chunker(MG Chunker)也表現(xiàn)出顯著的性能提升,尤其是在多粒度分塊方面,能夠更好地適應(yīng)不同類型的查詢需求。
- LGMGC結(jié)合了 LG Chunker 和 MG Chunker 的優(yōu)勢(shì),在所有指標(biāo)上均取得了最佳結(jié)果。LGMGC 不僅在語義連貫性方面表現(xiàn)出色,還在多粒度分塊方面展現(xiàn)了靈活性。

開放域問答:分塊優(yōu)化讓 RAG 性能翻倍
在問答任務(wù)中,LGMGC 的優(yōu)勢(shì)更明顯:
結(jié)果表明,與直接將整個(gè)文檔提供給生成器相比,應(yīng)用RAG流程顯著提升了性能。關(guān)于分塊器的性能,結(jié)果與段落檢索評(píng)估中的結(jié)果一致。在使用最優(yōu)塊大小的情況下,LGMGC在所有三個(gè)數(shù)據(jù)集上均表現(xiàn)出最高的性能,無論使用哪種檢索器和生成器。這表明,與現(xiàn)有基線相比,LGMGC在下游問答任務(wù)中能夠產(chǎn)生更優(yōu)的結(jié)果。

04、總結(jié)
LGMGC 框架的創(chuàng)新之處,在于它跳出了 “要么重語義、要么重效率” 的傳統(tǒng)思維,通過 “Logits 引導(dǎo)語義分塊 + 多粒度適配需求” 的組合,為 RAG 分塊提供了全新范式。其核心價(jià)值可總結(jié)為三點(diǎn):
- 語義更準(zhǔn):借助 LLM 的 Logits 信息,精準(zhǔn)識(shí)別語義邊界,避免分塊碎片化;
- 成本更低:用本地量化 LLM 替代第三方 API,降低部署成本與安全風(fēng)險(xiǎn);
- 適配性強(qiáng):多粒度子塊能滿足檢索(小粒度)與生成(大粒度)的不同需求,適配學(xué)術(shù)、小說、新聞等多種文本類型。
當(dāng)然,LGMGC 并非完美:目前它對(duì)超長篇文檔(如 10 萬字以上的書籍)的處理效率仍有提升空間;同時(shí),塊大小 θ 的選擇仍需人工調(diào)試,未來若能實(shí)現(xiàn) θ 的自適應(yīng)調(diào)整,性能還能進(jìn)一步提升。
但不可否認(rèn)的是,LGMGC 為 RAG 技術(shù)的工程化落地提供了關(guān)鍵突破口 —— 對(duì)于企業(yè)而言,它既能提升問答系統(tǒng)的精度,又能控制成本與風(fēng)險(xiǎn),是現(xiàn)階段分塊方案的優(yōu)選。如果你正在搭建 RAG 系統(tǒng),不妨試試 LGMGC,或許能讓你的系統(tǒng)性能實(shí)現(xiàn) “質(zhì)的飛躍”!
論文地址:https://arxiv.org/pdf/2501.09940


































