長文本檢索新突破!斯坦福RAPTOR:用遞歸樹結構兼顧語義深度與細節(jié),刷新多數(shù)據(jù)集SOTA

在大語言模型(LLMs)主導的AI時代,“檢索增強”早已成為提升模型事實準確性、降低幻覺的核心技術。然而,當前主流的檢索方法仍面臨一個關鍵瓶頸:無論是傳統(tǒng)的BM25、基于深度學習的DPR,還是新興的LLM檢索器,大多依賴“文本分塊+單一維度匹配”的模式,難以捕捉長文本(如學術論文、書籍章節(jié))中的層次化語義結構——要么因只取片段丟失上下文,要么因過度抽象遺漏關鍵細節(jié)。
斯坦福大學團隊在2024年ICLR提出RAPTOR(Recursive Abstractive Processing for Tree-Organized Retrieval),用“遞歸樹狀檢索”的新思路打破了這一困境。通過構建多層級的文本語義樹,同時保留高層主題框架與低層細節(jié)信息,在NarrativeQA、QASPER等多個權威數(shù)據(jù)集上刷新SOTA,為長文本檢索提供了全新范式。
01、檢索增強的“痛點”:為什么現(xiàn)有方法處理長文本力不從心?
在深入RAPTOR之前,我們先梳理當前檢索技術的發(fā)展現(xiàn)狀與核心局限,理解RAPTOR解決的核心問題。
檢索方法的演進與瓶頸
檢索增強語言模型(RALMs)的發(fā)展可概括為“從詞項匹配到語義理解”的躍遷:
- 傳統(tǒng)階段:依賴TF-IDF、BM25等基于詞頻的技術,僅能捕捉字面匹配,無法理解語義關聯(lián);
- 深度學習階段:DPR(密集段落檢索)等模型用BERT類編碼器將文本轉(zhuǎn)化為向量,通過余弦相似度匹配語義,但仍需將長文本切分為固定長度的片段(如512token);
- LLM檢索階段:部分研究直接用LLM作為檢索器(如GPT-4作為重排序器),但仍未解決“片段化檢索”的本質(zhì)問題。
盡管技術不斷升級,現(xiàn)有方法的核心局限始終存在:
對語料庫“分塊編碼+單一層次匹配”的模式,無法捕捉長文本的層次化語義。例如,一篇學術論文包含“摘要-引言-方法-實驗-結論”的結構,一個技術文檔包含“總覽-步驟-注意事項”的邏輯,現(xiàn)有檢索若只取其中一個片段,要么丟失整體框架(如只取“實驗結果”卻不知對應的“方法設計”),要么因片段孤立導致理解偏差(如斷章取義的技術描述)。
摘要技術的補位與不足
為解決長文本理解問題,摘要技術(尤其是遞歸抽象摘要)曾被寄予厚望:通過將長文本拆分為小塊、分別摘要,再整合為更高層次的摘要,形成“片段→局部摘要→全局摘要”的遞進。
但這種方法的缺陷同樣明顯:過度追求“濃縮”而丟失細粒度細節(jié)。例如,一篇論文的“方法部分”摘要可能只提到“用了GMM聚類”,卻遺漏“用UMAP降維緩解高維問題”的關鍵細節(jié)——而這些細節(jié)恰恰是回答“該方法如何處理高維數(shù)據(jù)”這類問題的核心。
正是這些痛點,催生了RAPTOR的設計:能否用一種結構,同時保留長文本的“高層主題框架”與“低層細節(jié)信息”,讓檢索既能匹配整體語義,又能定位關鍵細節(jié)?
02、RAPTOR核心設計:用“遞歸樹”重構長文本語義
RAPTOR的核心思想非常直觀:長文本天然具有層次化結構(如“書→章節(jié)→段落→句子”),因此可以用“樹”這種數(shù)據(jù)結構來建模其語義關系。樹的葉子節(jié)點對應原始文本片段,中間節(jié)點對應片段的摘要,根節(jié)點對應全局摘要。通過這種結構,檢索時可根據(jù)問題的粒度,靈活匹配不同層級的節(jié)點,實現(xiàn)“宏觀主題”與“微觀細節(jié)”的兼顧。
四步構建RAPTOR樹:從文本片段到語義層次
RAPTOR樹的構建是一個“分塊→嵌入→聚類→摘要”的遞歸過程,直到無法繼續(xù)聚類為止,具體步驟如下:
步驟1:文本分塊,保證語義連貫
首先將原始語料庫分割為100token的短文本塊(長度可調(diào)整),但有一個關鍵優(yōu)化:若某句話超過100token,不截斷句子,而是將整句話移至下一個塊。這種處理避免了“句子被劈成兩半”的問題,確保每個塊的語義完整性。
步驟2:SBERT嵌入,生成語義向量
用multi-qa-mpnet-base-cos-v1(SBERT家族中檢索性能最優(yōu)的模型之一)對每個文本塊進行編碼,生成768維的語義向量。這些文本塊及其向量,構成了RAPTOR樹的葉子節(jié)點。
步驟3:軟聚類,按語義分組
對葉子節(jié)點的向量進行“軟聚類”(節(jié)點可屬于多個簇),而非傳統(tǒng)的“硬聚類”(節(jié)點僅屬一個簇)。原因很簡單:一個文本塊可能包含多個主題(如“實驗結果”塊可能同時涉及“數(shù)據(jù)集A”和“指標B”),軟聚類能更真實地反映語義關聯(lián)。
聚類過程中,RAPTOR解決了兩個關鍵問題:
- 高維向量聚類難:用UMAP對768維向量降維,平衡局部與全局語義結構(通過調(diào)整
n_neighbors參數(shù),先找全局簇,再在全局簇內(nèi)找局部簇); - 簇數(shù)如何確定:用貝葉斯信息準則(BIC) 選擇最優(yōu)簇數(shù)——BIC既考慮聚類擬合度,又懲罰簇數(shù)過多導致的過擬合,避免“為了聚類而聚類”。
步驟4:LLM摘要,生成父節(jié)點
對每個聚類后的簇,用GPT-3.5-turbo生成摘要(摘要長度可控制),再將摘要用SBERT編碼,作為該簇的“父節(jié)點”。
遞歸循環(huán),構建多層樹
將生成的父節(jié)點視為新的“文本塊”,重復“嵌入→聚類→摘要”的過程,生成更高層級的父節(jié)點,直到某個層級的節(jié)點數(shù)過少(無法繼續(xù)聚類)為止。最終形成的樹結構,從下到上是“原始片段→局部摘要→全局摘要”,從上到下則是“全局主題→局部細節(jié)→原始片段”。
下圖清晰展示了RAPTOR樹的構建過程,左側為文本塊,右側為聚類后的摘要節(jié)點,層層遞進形成層次:

值得注意的是,RAPTOR的構建效率很高——構建時間和token消耗均呈線性擴展,即使處理百萬級token的大型語料庫,也不會出現(xiàn)指數(shù)級耗時。
兩種查詢策略:按需匹配語義粒度
有了樹結構,如何根據(jù)問題找到最相關的節(jié)點?RAPTOR設計了兩種互補的查詢策略,適配不同的問題類型:

策略1:樹遍歷(Tree Traversal)——從宏觀到微觀的精準定位
適合需要“逐步聚焦”的問題(如“RAPTOR的聚類方法如何處理高維向量?”),步驟如下:
- 從樹的根節(jié)點開始,計算查詢向量與所有根節(jié)點的余弦相似度,選擇Top-k個最相關節(jié)點(如k=3);
- 進入這k個節(jié)點的子節(jié)點,再次計算相似度并選Top-k;
- 遞歸向下,直到到達葉子節(jié)點;
- 將所有選中的節(jié)點(根→中間→葉子)的文本拼接,作為檢索上下文。
這種方式的優(yōu)勢是“可控性強”——通過調(diào)整遍歷深度(d)和每步的k值,可以精準控制“宏觀主題”與“微觀細節(jié)”的比例,例如深度越大、k值越大,越偏向細節(jié)。

策略2:折疊樹(Collapsed Tree)——全局匹配,靈活選優(yōu)
適合需要“跨層級匹配”的問題(如“灰姑娘故事中,玻璃鞋是如何幫助王子找到灰姑娘的?”),步驟更簡潔:
- 將RAPTOR樹的所有層級節(jié)點“攤平”為單層(無論根節(jié)點、中間節(jié)點還是葉子節(jié)點,都放在同一集合中);
- 計算查詢向量與該集合中所有節(jié)點的相似度,按相似度排序;
- 依次選擇節(jié)點,直到總token數(shù)達到預設閾值(如2000token),停止選擇。
這種方式的核心優(yōu)勢是“靈活性”——無需固定層級順序,直接從所有節(jié)點中選最相關的,自動適配問題的粒度。例如,回答“故事主題”可能選根節(jié)點,回答“具體情節(jié)”可能選葉子節(jié)點,回答“章節(jié)概要”可能選中層節(jié)點。

哪種策略更好?實驗給出答案
斯坦福團隊在QASPER數(shù)據(jù)集的20個案例上測試發(fā)現(xiàn):折疊樹策略的性能始終更優(yōu)。原因在于,樹遍歷的“每層Top-k”模式會固定“主題-細節(jié)”比例,而折疊樹能根據(jù)問題靈活調(diào)整——例如,一個需要細節(jié)的問題,折疊樹會優(yōu)先選葉子節(jié)點;一個需要框架的問題,會優(yōu)先選根節(jié)點,無需人工調(diào)整參數(shù)。
不過,折疊樹需要對所有節(jié)點計算相似度,看似耗時,但通過FAISS等快速近鄰庫優(yōu)化后,效率可滿足實際需求。因此,RAPTOR在后續(xù)實驗中默認采用折疊樹策略。

03、實驗驗證:刷新3大權威數(shù)據(jù)集SOTA
為驗證RAPTOR的有效性,斯坦福團隊在NarrativeQA(書籍/劇本問答)、QASPER(學術論文問答)、QuALITY(長文本多項選擇) 三個代表性數(shù)據(jù)集上進行了全面實驗,對比了BM25、DPR等傳統(tǒng)檢索方法,并與當前SOTA模型(如CoLT5、CoLISA)對標。
核心結論1:RAPTOR與任何檢索器結合都能提升性能
首先對比“有無RAPTOR樹結構”的差異——將SBERT、BM25、DPR分別作為基礎檢索器,在“直接檢索”和“結合RAPTOR樹”兩種模式下測試:


結果非常明確:無論基礎檢索器是傳統(tǒng)的BM25,還是深度學習的DPR/SBERT,結合RAPTOR樹后性能均有顯著提升。其中,SBERT+RAPTOR的組合表現(xiàn)最優(yōu),說明RAPTOR的樹結構能更好地與語義嵌入檢索器結合,放大語義匹配的優(yōu)勢。
將RAPTOR與BM25和DPR進行比較,使用三種不同的LLM:GPT-3、GPT-4和UnifiedQA。如表3所示,RAPTOR在QASPER數(shù)據(jù)集上的所有三種語言模型中始終優(yōu)于BM25和DPR。QASPER要求綜合NLP論文中的信息,因此RAPTOR的高級摘要節(jié)點使其能夠超越只能提取前k個最相似原始文本塊的方法,這些原始文本塊可能單獨不包含正確的響應。

核心結論2:碾壓傳統(tǒng)檢索,刷新SOTA
在對照比較的基礎上,比較RAPTOR相對于其他最先進模型的性能。
- QASPER:如表5所示,帶有GPT-4的RAPTOR在QASPER上設定了新的基準,F(xiàn)-1分數(shù)為55.7%,超過了CoLT5 XL的53.9%的分數(shù)。

- QuALITY:如表7所示,與GPT-4配對的RAPTOR以82.6%的準確率設定了新的最先進水平,超過了之前的最佳結果62.3%。特別是在QuALITY-HARD子集上,RAPTOR比CoLISA高出21.5%,這代表了人類需要異常長的時間才能正確回答的問題,需要重讀部分文本、困難的推理或兩者兼而有之。

- NarrativeQA:如表6所示,與UnifiedQA配對的RAPTOR設定了新的最先進的METEOR分數(shù)。與同樣使用UnifiedQA的Recursively Summarizing Books遞歸摘要模型相比,RAPTOR在所有指標上都優(yōu)于它。雖然Recursively Summarizing Books僅依賴于樹結構頂部根節(jié)點的摘要,但RAPTOR受益于其中間層和聚類方法,這使其能夠捕獲從一般主題到特定細節(jié)的一系列信息,有助于其整體強勁表現(xiàn)。

定性分析:RAPTOR如何處理復雜問題?
為更直觀理解RAPTOR的優(yōu)勢,我們以“灰姑娘故事問答”為例,對比RAPTOR與DPR的檢索結果:
- 問題:“灰姑娘是如何找到幸福結局的?”
- DPR檢索結果:返回與“幸福結局”字面匹配的2-3個片段(如“王子與灰姑娘結婚”),但缺少“南瓜馬車、玻璃鞋、午夜時限”等關鍵情節(jié),導致回答不完整;
- RAPTOR檢索結果:自動選擇3個節(jié)點——1個根節(jié)點(故事主題:“善良終將獲得回報”)、2個葉子節(jié)點(“王子用玻璃鞋找到灰姑娘”“仙女教母提供幫助”),拼接后形成“主題+細節(jié)”的完整上下文,回答更全面。
這一案例完美體現(xiàn)了RAPTOR的核心價值:通過樹結構整合不同層級的信息,既不丟失全局邏輯,又不遺漏關鍵細節(jié)。


樹結構的貢獻
檢查樹的每一層節(jié)點對RAPTOR檢索能力的貢獻。假設上層節(jié)點在處理需要對文本有更廣泛理解的主題或多跳查詢時起著關鍵作用。
通過定量和定性方法驗證了這一假設。使用QuALITY數(shù)據(jù)集的故事進行定量分析,為每個故事構建RAPTOR樹。然而,在檢索期間,將搜索限制在不同的層子集。例如,專門從葉節(jié)點和每個上層檢索,以及從不同的連續(xù)層子集檢索。在表8中展示了針對一個故事的具體發(fā)現(xiàn),揭示了使用所有層的全樹搜索優(yōu)于僅關注特定層的檢索策略。
這些發(fā)現(xiàn)突出了RAPTOR中全樹結構的重要性。通過為檢索提供原始文本和高級摘要,RAPTOR可以有效處理從高階主題查詢到面向細節(jié)的問題的更廣泛的問題。

04、總結與展望:RAPTOR的價值與未來方向
RAPTOR的創(chuàng)新之處,在于跳出了“分塊檢索”的傳統(tǒng)框架,用“遞歸樹”建模長文本的層次化語義,為長文本檢索提供了新范式。其核心貢獻可概括為三點:
- 結構創(chuàng)新:通過“聚類-摘要”遞歸構建語義樹,平衡“宏觀主題”與“微觀細節(jié)”;
- 策略靈活:折疊樹查詢自動適配問題粒度,無需人工調(diào)整層級參數(shù);
- 性能卓越:在3大權威數(shù)據(jù)集上刷新SOTA,尤其擅長復雜多跳問答。
當然,RAPTOR仍有可探索的方向:
缺乏 “簡單任務” 與樸素 RAG 的對比,適用性邊界不清晰
RAPTOR 的實驗集中于 “復雜多跳問答”,但未與樸素 RAG(如 “分塊 + DPR+LLM”) 在 “簡單任務” 中進行對比 —— 所謂簡單任務,指無需跨片段推理、僅需定位單一信息的場景,例如:
- FAQ 問答(如 “企業(yè)報銷流程的截止日期是什么?”);
- 事實提?。ㄈ?“某篇論文使用的數(shù)據(jù)集樣本量是多少?”);
- 短文本匹配(如 “查找與‘Transformer 結構’相關的段落”)。
對于這類任務,RAPTOR 的層次樹結構可能存在 “冗余”:
- 構建樹需要額外的聚類、摘要步驟,增加了預處理時間;
- 折疊樹查詢需遍歷所有層級節(jié)點,可能比樸素 RAG 的 “直接匹配片段” 更耗時;
- 若問題僅需單一細節(jié),RAPTOR 檢索到的 “中層 / 頂層摘要” 反而可能干擾 LLM 的判斷(如回答 “樣本量” 時,摘要中的 “數(shù)據(jù)集概況” 可能引入無關信息)。
缺乏這一對比,導致我們無法明確 RAPTOR 的 “適用性邊界”—— 它究竟是 “復雜任務專屬優(yōu)化”,還是 “所有檢索場景都適用”?這一問題對實際落地(如企業(yè)知識庫選型)至關重要。
未與 “圖結構檢索(如 GraphRAG)” 對比,結構優(yōu)勢未充分驗證
RAPTOR 的核心是 “樹結構”,而當前檢索領域另一重要方向是 “圖結構檢索”(如 GraphRAG)——GraphRAG 將文本中的實體、關系(如 “論文作者→使用方法→數(shù)據(jù)集”)建模為圖,通過圖遍歷實現(xiàn)跨實體的信息檢索,尤其擅長處理 “多對多關系”(如 “某方法在哪些數(shù)據(jù)集中被驗證過?”)。
然而,RAPTOR 的論文未將 GraphRAG 作為基線進行對比,無法回答以下關鍵問題:
- 當任務需要捕捉 “實體間復雜關聯(lián)” 時(如 “學術領域中,Transformer 與 BERT 的技術演進關系是什么?”),樹結構(RAPTOR)與圖結構(GraphRAG)哪個更優(yōu)?
- 樹結構的 “層次化” 優(yōu)勢(如快速定位全局主題)與圖結構的 “網(wǎng)絡化” 優(yōu)勢(如靈活捕捉跨層級關系),是否存在互補空間?
這一缺失不僅影響了 RAPTOR 性能評估的全面性,也未能探討 “樹 - 圖融合” 的可能性,是實驗設計中的一大遺憾。
落地企業(yè)知識庫場景,解決實際業(yè)務痛點
RAPTOR 的層次樹結構天然適配企業(yè)知識庫的需求 —— 企業(yè)知識庫通常包含兩類內(nèi)容:
- 結構化知識(如組織架構、流程規(guī)范),需要層次化理解;
- 非結構化知識(如技術文檔、項目報告),需要跨片段綜合。
未來可針對企業(yè)場景進行定制化優(yōu)化:
- 預處理階段:結合企業(yè)知識的 “業(yè)務分類”(如 “人力資源”“研發(fā)”“財務”)初始化樹的頂層節(jié)點,減少聚類的盲目性;
- 檢索階段:支持 “按業(yè)務層級篩選”(如 “僅檢索研發(fā)部門的文檔”),進一步提升檢索效率;
- 更新階段:設計 “增量樹構建” 算法 —— 當知識庫新增文檔時,無需重建整棵樹,僅需將新文檔的片段聚類到現(xiàn)有樹的對應層級,降低維護成本。
例如,在 “員工培訓” 場景中,RAPTOR 可生成 “培訓手冊的全局摘要(頂層)→各章節(jié)核心要點(中層)→具體操作步驟(底層)” 的樹結構,員工查詢時:
- 想了解整體框架,直接獲取頂層摘要;
- 想學習具體步驟,獲取底層片段;
- 想理解 “步驟背后的原理”,獲取中層摘要與關聯(lián)片段 —— 這種靈活的檢索體驗,遠優(yōu)于傳統(tǒng)知識庫的 “關鍵詞搜索 + 全文定位”。
RAPTOR 并非 “替代傳統(tǒng)檢索的萬能方案”,而是 “針對復雜長文本任務的專項優(yōu)化”—— 它的核心價值在于證明了 “結構感知” 對檢索增強的重要性:未來的檢索技術,不應再局限于 “如何優(yōu)化片段匹配精度”,而應更關注 “如何用更合理的結構組織長文本,讓檢索更貼合人類理解邏輯”。
無論是后續(xù)的 “簡單任務對比”“樹 - 圖融合”,還是 “企業(yè)場景落地”,本質(zhì)都是在回答一個核心問題:如何讓檢索系統(tǒng)不僅能 “找到信息”,還能 “理解信息的結構與關聯(lián)”? 而 RAPTOR 的層次樹結構,為這個問題提供了一個極具啟發(fā)性的答案。
如果你對 RAPTOR 的技術細節(jié)感興趣,可直接查看論文和開源項目:
- 論文地址:arXiv:2401.18059
- 項目地址:github.com/parthsarthi03/raptor

































