一個 RAG 搞定文字、圖片、表格與影片——UniversalRAG 模態路由設計深度解析

GuanLin’s Latent Space
記錄每一個學習的瞬間,分享技術心得與成長歷程

這篇文章是「Advanced RAG 架構思考」系列的第三篇技術解析,對應的綜述概覽在這裡。本篇聚焦 UniversalRAG(arXiv:2504.20734),解析模態差距問題的理論基礎、模態路由的設計邏輯,以及在 10 個 benchmark 上的全面驗證。


前言:一個問題,三種可能的答案來源
#

給你一個問題:「USNS Carl Brashear 軍艦下水典禮上懸掛的是什麼顏色的氣球?」

這個問題的答案,不在任何文字段落裡。答案在一張典禮現場的照片裡——紅色、白色和藍色。

如果你的 RAG 系統只有文字語料庫,它會努力搜尋、找到一些關於這艘船的文字描述,然後告訴你「藍色和金色的氣球」(海軍傳統顏色的語意聯想),或者直接說「文件中找不到相關資訊」。

如果你的系統有圖片語料庫,但架構是「把圖片和文字都放進同一個 Embedding 空間」呢?可能更糟——因為模態差距(Modality Gap),文字查詢會偏向文字結果,圖片的正確答案反而被壓制在排名後面。

這就是 KAIST 的 UniversalRAG(arXiv:2504.20734)試圖解決的問題。

三種 RAG 架構對比
同一個問題,三種架構給出不同結果

核心挑戰:模態差距的本質
#

統一 Embedding 空間的模態差距問題 vs. UniversalRAG 的模態感知路由
左:統一 Embedding 方法偏向文字結果。右:UniversalRAG 路由器分配到正確模態空間(Modality Acc 95.28%)

UniversalRAG 的最重要貢獻之一,是把「模態差距」這個現象做了精確的理論和實驗驗證。

什麼是模態差距?
#

用一個 t-SNE 可視化來說明:論文對五種主流多模態 Encoder(E5-V、PE-Core、MM-Embed、GME、VLM2Vec-V2)的 Embedding 空間做了可視化,結果一致顯示:

文字的 Embedding(綠點)、圖片的 Embedding(紅點)、影片的 Embedding(藍點)各自聚集在不同的區域,沒有充分混合。

即使這些模型都是專門設計來「對齊不同模態」的多模態 Encoder,可視化結果仍然清晰顯示了強烈的模態聚類。

這意味著:當一個文字查詢進來,它的 Embedding 會自然地與文字 Embedding 更接近(因為都是文字),而不是與語意相近的圖片 Embedding 接近。結果是:即使答案在圖片裡,系統也會優先返回語意不那麼相關的文字文件

多模態向量空間中的模態差距 (Modality Gap) 與偏誤
多模態 Encoder (如 VLM2Vec-V2) 的 t-SNE 可視化:圖片 (藍)、影片 (紅)、文字 (綠) 天然分隔。文字 Query (黃) 會因物理距離較近而偏向檢索文字,導致跨模態的圖片解答被忽略。

模態差距的數學形式化
#

UniversalRAG 用數學描述了這個現象。在統一 Embedding 空間中,一個候選結果 c 被查詢 q 選中的相似度分數可以拆成三個部分:

1
s(q, c) = α · 1{m(q) = m(c)} + β · r(q, c) + ε
  • α · 1{m(q) = m(c)}:模態偏差項。當查詢和候選結果的模態相同時(例如都是文字),這項就等於 α;不同時等於 0。α 越大,模態相同帶來的加分越多。
  • β · r(q, c):真正的語意相關性分數。這才是我們希望搜尋結果依賴的東西。
  • ε:噪音項。

問題在於:論文的實驗顯示,α 大到足以蓋過語意相關性 β · r(q, c) 的影響。換句話說,「模態相不相同」比「語意相不相關」更能決定搜尋排名。這就是為什麼文字查詢永遠偏向文字結果,即使答案在圖片裡。

實驗驗證
#

論文在 200 個採樣查詢上(每個 benchmark 各 20 個)對三種方法做了模態選擇分布統計:

方法文字圖片影片
VLM2Vec-V2100%0%0%
GME85%12%3%
UniversalRAG (Qwen3-VL-2B)30%23%24%(+No-Retrieval 23%)

VLM2Vec-V2 的結果非常極端:即使問題需要圖片或影片,它幾乎 100% 都返回文字結果。GME 稍好,但仍然嚴重偏向文字(85%)。

相比之下,UniversalRAG 的分布更均勻,說明模態路由成功地把不同類型的查詢分配到對應的模態語料庫。


UniversalRAG 的架構設計
#

核心思路:不是更好的統一,而是不要統一
#

面對模態差距問題,一個直覺的解法是「訓練更強的多模態 Encoder,讓不同模態的 Embedding 更好地對齊」。UniversalRAG 選擇了完全不同的路徑:

不是讓不同模態共享同一個 Embedding 空間,而是為每種模態維護獨立的 Embedding 空間,並在查詢時動態決定應該搜尋哪個空間。

這個設計的優點:

  1. 避免模態差距:不同模態的 Embedding 從不相互比較
  2. 可擴展性:加入新模態只需增加新的語料庫和路由規則,不影響現有模態
  3. 效率提升:每次只在一個(或少數幾個)語料庫中搜尋,而不是全體搜尋

知識語料庫的組織
#

UniversalRAG 建立了七種類型的語料庫:

語料庫類型描述對應查詢類型
None(無需檢索)常識性問題,LLM 直接回答
ParagraphWikipedia 段落級文字單跳事實查找
DocumentWikipedia 文件級文字多跳推理問題
TableHybridQA 中的表格結構化數據查詢
Image圖片語料庫視覺性問題
Clip短影片片段局部影片問題
Video完整長影片全程影片理解

粒度(Granularity)設計的邏輯:同一種模態內,也有粒度差異。文字有段落和文件兩個粒度,影片有短片段(Clip)和完整影片(Video)兩個粒度。

為什麼粒度重要?

  • 問「波音 747 的翼展是多少?」→ 一個段落就夠,不需要完整文件
  • 問「阿根廷是如何贏得 2022 年世界盃的?」→ 需要多份文件的多步推理
  • 問「Messi 在上場比賽的那個進球動作是怎麼完成的?」→ 需要比賽的一個短片段
  • 問「《藍眼武士》這部劇的主角在整季中的角色發展是什麼?」→ 需要完整一集的影片

強迫複雜問題從短片段回答,或讓簡單問題搜索完整長影片,都會降低答案品質。


路由模組的設計
#

路由模組的工作很單純:接收一個問題,判斷它應該去哪個語料庫找答案,輸出一個或多個「模態 + 粒度」的組合。

兩個設計細節值得注意:

  • 可以輸出「不需要檢索」——讓 LLM 直接回答,適合常識性問題
  • 可以同時輸出多個組合——允許跨模態路由,例如同時搜尋文字和圖片 論文實現了兩種路由策略:

訓練式路由(Training-based Router)
#

訓練資料的自動標注:由於沒有人工標注「每個問題應該用哪種模態」的資料,論文利用各 benchmark 的「歸納偏置」——每個 benchmark 有明確的模態特性(如 MRAG-Bench 是圖片 benchmark),自動把這些特性作為路由標籤。

訓練方式:在開源 LVLM 上(如 Qwen3-VL-2B)加一個分類器頭,用 Multi-hot 向量和 Binary Cross-Entropy Loss 訓練,讓模型學會預測每個查詢對應的模態-粒度組合。

推理方式:sigmoid 函數輸出每個選項的概率,超過預設閾值(0.8)的所有選項都被選擇(允許多模態路由)。

在實際生產環境中,這個 Router 不需要用 GPT-4o 或 Claude 這類大模型。用開源輕量模型(如 Qwen2.5-7B-Instruct)加少量 Few-Shot 範例微調,就能達到 90% 以上的路由準確率,路由延遲也能壓在幾十毫秒內。路由器的計算開銷遠小於後續的搜尋和生成,這一步的效率優化空間值得投資。

路由準確率:Qwen3-VL-2B 訓練版達到 95.28% Modality Accuracy,非常接近理論上限——也就是假設路由永遠正確時能達到的最高分(42.45)。

無訓練路由(Training-free Router)
#

直接用 Prompt Engineering 讓大型 Frontier Model(如 GPT-5)做路由判斷。

論文設計了詳細的 Prompt,包含七種模態類型的定義和具體範例:

1
2
3
4
5
6
7
問題類型 → 路由決策:
「What is the capital of France?」→ No(直接回答)
「What is the birth date of Alan Turing?」→ Paragraph(段落)
「Which academic discipline do... Turing and Von Neumann have in common?」→ Document(文件)
「Describe the appearance of a blue whale.」→ Image(圖片)
「Describe the moment Messi scored in the 2022 World Cup final.」→ Clip(短片段)
「Analyze how Argentina won the 2022 World Cup.」→ Video(完整影片)

無訓練路由的優勢是對未見過的問題類型有更好的泛化性(論文的 Out-of-Domain 實驗驗證了這一點)。

主要實驗結果
#

10 個 Benchmark 的全面對比
#

論文在 10 個覆蓋不同模態和粒度的 benchmark 上做了評估:

Benchmark模態粒度任務類型
MMLU無需檢索通識
Natural Questions文字段落單跳問答
HotpotQA文字文件多跳問答
HybridQA文字+表格混合跨模態推理
MRAG-Bench文字+圖片圖片視覺問答
WebQA文字+圖片混合開放域視覺
InfoSeek文字+圖片混合知識密集型視覺
LVBench影片短片段/長影片長影片理解
VideoRAG-Wiki影片混合指令型影片
VideoRAG-Synth影片混合合成影片

平均分對比(Qwen3-VL-8B-Instruct 作為生成器):

方法平均分
Naïve(無檢索)35.59
ParagraphRAG37.26
VideoRAG35.01
MultiRAG(全模態混合)34.07
GME(統一 Embedding)33.88
VLM2Vec-V2(統一 Embedding)33.31
UniversalRAG (Qwen3-VL-2B, Trained)42.40
Oracle(理想路由)42.45

UniversalRAG 的平均分 42.40 接近 Oracle 的 42.45,比表中最強的 baseline ParagraphRAG(37.26)高出約 14%。

關鍵觀察
#

單模態 RAG 的最大問題是「模態錯配」:當查詢需要的模態和實際搜尋的模態不匹配,性能會大幅下降。VideoRAG 在 HybridQA(需要表格+文字)上的 EM 只有 2.30%——影片語料庫完全無法回答這類問題;ImageRAG 在 LVBench(需要影片)上的 Acc 也只有 25.35%,遠低於 VideoRAG(32.05)。這說明「選對模態」比「提升單個模態的性能」更重要。

統一 Embedding 不如不搜尋:GME(33.88)甚至低於 Naïve(35.59),MultiRAG(34.07)也接近底部。強迫所有模態進入同一個 Embedding 空間,反而帶來負面效果。

訓練式路由 > 無訓練路由(In-Domain):在訓練集覆蓋的問題類型上,訓練式路由(Qwen3-VL-2B:95.81% Router Acc)顯著優於無訓練路由(GPT-5:72.33%)。

無訓練路由 > 訓練式路由(Out-of-Domain):在未見過的問題類型上,GPT-5 路由的泛化性更強——Router Acc 77.38%(vs 訓練式的 71.29%),最終答題平均分也反超(GPT-5:44.39 vs Qwen3-VL-2B:44.07)。這個 Trade-off 後面有更詳細的討論。

路由效果分析
#

跨模態路由的價值
#

論文對比了「只路由到單一最優模態」vs.「允許路由到多個模態」的性能差距:

方法HybridQA EMWebQA R-L
Qwen3-VL-2B(單模態路由)9.60%67.93%
Qwen3-VL-2B(跨模態路由)11.05%70.22%

HybridQA 需要同時查表格和文字,WebQA 需要同時查圖片和文字,允許跨模態路由都帶來了顯著提升。

從底層邏輯來看:在傳統多模態 RAG 中,面對影片 QA(如 LVBench、CinePile)時,系統常常用文字去撞圖片的 Embedding;面對圖片問題時,又可能撈到文字段落。UniversalRAG 的「分而治之」讓圖片問題回歸 Vision-Language 專屬空間,影片問題回歸時間軸切片(Clips)索引——這正是它能在 10 個不同維度的 Benchmark 上同步刷新成績的關鍵。

粒度感知的價值
#

在文字模態內,段落(短)和文件(長)的選擇對不同問題有顯著影響:

  • 簡單事實問題(NQ)→ 段落更好,文件引入噪音
  • 多跳問題(HotpotQA)→ 文件更好,段落資訊不足

論文還測試了不同粒度級別數量(1 / 2 / 3 / 4)對性能的影響:

路由粒度數HotpotQA EM(GPT-5)LVBench Acc(GPT-5)
1(固定粒度)23.20%31.92%
224.35%32.30%
324.20%32.43%
424.70%32.85%

增加粒度選擇帶來持續改善,但改善幅度在 3-4 個粒度後逐漸趨緩,顯示存在收益遞減。


In-Domain vs. Out-of-Domain:路由策略的選擇困境
#

這是 UniversalRAG 論文中最有深度的分析之一,揭示了一個工程實踐中必須面對的 Trade-off。

訓練式路由的問題
#

以 InternVL3.5-1B 為例,訓練式路由在 In-Domain 表現非常好(95.81% Router Acc),但在 Out-of-Domain 下降到 71.29%。原因是訓練標籤是從各 benchmark 的「歸納偏置」自動生成的,這些標籤對特定 benchmark 有強烈的偏向,遇到不同分布的問題就容易出錯。

無訓練路由的泛化性
#

GPT-5 做路由在 In-Domain 是 72.33%(不如訓練式),但在 OOD 是 77.38%(反超訓練式)。大型 Frontier Model 的廣泛知識讓它對未見過的問題類型有更好的常識性判斷。

集成路由:兩全其美
#

論文提出兩種集成策略:

信心度集成(Confidence-based Ensembling)

  • 如果訓練式路由的信心度(sigmoid 概率)超過閾值,採用訓練式路由的結果
  • 否則,退回到無訓練路由

多數投票(Majority Voting)

  • 收集三個路由器(訓練式 + 兩個無訓練)的預測
  • 取多數票決定最終路由
方法In-Domain AvgOOD Avg
訓練式(Qwen3-VL-2B)42.1243.80
無訓練(GPT-5)41.6844.39
集成(信心度)42.5344.71
集成(多數投票)42.8344.54

集成策略在 In-Domain 和 OOD 都取得了最佳或次佳的結果,是實際部署中的推薦方案。


效率分析:路由是成本還是投資?
#

論文提供了一個重要的效率分析,對比 UniversalRAG 和統一 Embedding 方法在不同語料庫規模下的延遲:

在語料庫規模超過 10M 條目後,UniversalRAG 的延遲開始低於統一 Embedding 方法(VLM2Vec-V2),而且差距隨著規模增大而擴大。

為什麼?

統一 Embedding 方法需要在所有 kN 條目中搜尋(k 是模態種類數,N 是每種模態的語料庫大小)。UniversalRAG 只在路由選定的一個(或少數幾個)語料庫中搜尋,搜尋空間大幅縮小。

路由的計算成本是固定的(論文用小於 1B 的模型做路由),這個固定成本在大規模語料庫下被搜尋空間縮小帶來的收益所抵消。

論文的理論分析(Proposition 3):在近似最近鄰搜尋(如 FAISS)的情況下,由於搜尋本身已是對數時間,UniversalRAG 的相對加速效果比線性搜尋弱——當語料庫規模 N 極大時,加速比趨近於常數但接近 1。實際效益主要來自路由減少了不必要的跨模態搜尋,而非純粹的速度理論提升。


工程落地的四個思考
#

一、路由模組的部署策略
#

論文顯示 1B 參數的模型可以達到約 90% 的路由準確率,接近 4B 模型的性能(~95%)。在計算資源有限的場景下,1B 路由器 + 高品質語料庫,可能比 4B 路由器 + 普通語料庫更划算。

建議:把路由模型部署在低延遲的推理環境(如 vLLM、TensorRT-LLM),因為它是每次查詢的必經路徑。路由延遲應控制在 100ms 以內。

二、語料庫的冷啟動問題
#

在 UniversalRAG 中,各模態語料庫需要獨立建立。對於圖片和影片語料庫,索引建立的成本遠高於文字語料庫(需要多模態 Encoder 生成 Embedding)。

建議

  • 文字語料庫(Paragraph/Document):優先建立,成本低,覆蓋了大多數查詢
  • 圖片語料庫:根據業務場景判斷優先級
  • 影片語料庫:成本最高,建議在業務驗證後再投入建立
  • 建立增量更新機制,新文件入庫時自動觸發對應模態的 Embedding 計算

三、無需檢索的識別很重要
#

UniversalRAG 包含了「No Retrieval」這個路由選項,讓系統對簡單的常識性問題直接用 LLM 回答,不觸發任何搜尋。

論文的實驗顯示,這個選項覆蓋了 MMLU 上的大多數問題(這類問題 LLM 直接回答表現最好)。

工程意義:建立「無需檢索分類器」可以顯著降低系統的整體延遲和計算成本。以實務經驗來看,企業知識庫中有不小比例的查詢屬於常識性問題,LLM 直接回答即可,不必每次都觸發檢索(具體比例會因業務場景而異,論文本身未給出通用的百分比估計)。

四、訓練路由標籤的品質控制
#

論文用「歸納偏置自動標注」的方式生成訓練資料,這在實際應用中可能產生噪音標籤(某些 benchmark 的自動標注可能不準確)。

在企業場景中,如果要訓練定制化的路由模型:

  • 建議從自動標注開始,然後用人工驗證高不確定性的樣本
  • 特別關注「需要跨模態回答」的問題,這類問題的標注最難自動化
  • 定期評估路由準確率,設置性能監控和告警

失敗案例分析
#

論文的 Appendix F(Table 15)列出了幾個路由失敗的具體案例,但論文並未把這些案例正式分成命名的類別。以下的分類方式是自己整理歸納的框架,方便對應工程上的防禦策略,並非論文原文的分類:

類型一:誤判為不需檢索

問題:「法語 polytechnique 來自哪種語言?」 正確路由:Paragraph(論文標註的 Ground Truth 是需要檢索段落) 實際路由:No Retrieval(路由器誤判為 LLM 已有足夠知識,不必檢索,反而漏掉了應有的查證)

類型二:視頻和段落的邊界混淆

問題:「Kobe 在 Jimmy Kimmel 致敬節目中,右側坐的是誰?」 正確路由:Video(需要影片內容才能判斷畫面中的人物) 實際路由:Paragraph(誤判為可用文字段落回答,但段落語料庫缺乏這類視覺細節)

類型三:段落和文件的粒度邊界

問題:「William A. Dembski 的哪本書總結了他在另一本書中提出的智慧設計概念?」 正確路由:Document(需要多份文件的多跳推理) 實際路由:Paragraph(只找了一個段落,資訊不足)

這些案例說明路由模組的主要挑戰不在「文字 vs. 圖片 vs. 影片」的粗粒度判斷(通常很準確),而是在「同模態內的粒度選擇」和「跨模態需求的識別」。


結論
#

UniversalRAG 提出的核心設計原則,用一句話說就是:在你開始「搜尋什麼」之前,先弄清楚「應該去哪裡搜尋」。

但現有大多數 RAG 系統都在隱含地假設:所有答案都在同一種模態的同一個語料庫裡。

UniversalRAG 打破了這個假設,建立了一個真正的「萬用 RAG」基礎架構。它的貢獻不只是一個新演算法,更像是一個新的系統設計範式:模態感知、粒度感知、按需路由。

說到底,這篇論文真正想講的是:真實世界的知識本來就是多模態、多粒度的。RAG 系統的設計假設如果跟真實世界不符,再強的 Encoder 也救不了它。


系列文章導航
#


延伸資源
#