跳到內容

Technology

新聞|Librarian Agents:用強化學習訓練 4B 模型在提問前先把文件庫整理成檔案系統

Stanford 與 CMU 的研究者訓練一個 Qwen3.5-4B 建構代理,在問題出現前把原始文件整理成帶來源連結的階層檔案系統,以凍結答題代理的正確率當獎勵。整理 MDP 與獎勵設計、BrowseComp-Plus 與 BRIGHT 的結果、成本攤提,以及評測規模與結構消融透露的限制。

Published: at 09:00 AM
編輯本頁下載圖卡

重點

想解決什麼

文件散在大量來源時,常見的檢索增強生成(RAG)每來一個問題就重新搜尋一次,跨文件的關聯每次都要重新找。知識圖譜之類的預先結構化方法可以先做一部分工作,但通常綁定固定的抽取規則,例如只抽命名實體,問題一偏離索引就不好用。

作者注意到一個不對稱:Claude Code 這類 agent 很會在現成的檔案系統裡找東西,卻很少被訓練去「為之後的問題」建一個好找的工作區。Librarian Agents 想訓練的就是後者,並把建構成本攤到同一批文件的多個問題上。

方法

工作區與動作。 初始工作區是放在根目錄下的原始文件。建構代理每一步選一個動作:

答題代理只能列檔與讀檔,讀完作答並由評分器判對錯。

獎勵。 論文定義的效用是答題正確率減去讀取 token 與讀檔次數的懲罰,再扣掉建構成本。主要實驗把這些懲罰係數都設為 0,只看正確率:

rt=U(Ft)−U(Ft−1)r_t = U(\mathcal{F}_t) - U(\mathcal{F}_{t-1})

每一步的獎勵是工作區效用的變化,累加起來會望遠鏡式相消,等於最終效用減去初始效用,所以跟只看最終結果的目標等價,又能把功勞分給前面的步驟。每一步都叫答題代理測一次太貴,實際做法是每 8 個建構回合測一次可答性(每條軌跡最多 4 次),獎勵給兩次測試之間的變化,最後再加上最終答題正確與否。用來估獎勵的問題不會給建構代理看,評測題也不會用來建工作區或挑檢查點。

訓練設定。

項目設定
建構代理Qwen3.5-4B,LoRA rank 32
演算法GRPO,學習率 4×10−54\times10^{-5},batch 8,每組 4 條 rollout
訓練資料BrowseComp-Plus 680 題,每題一組獨立文件
建構上限32 回合,每次生成 1,024 token,整條軌跡 60,000 token
寫檔內容由固定的 Qwen3.5-35B-A3B 執行
長歷史壓縮由固定的 Gemini 3.1 Flash Lite 執行

4B 模型負責決定建什麼、合併什麼、刪什麼;檔案內容由另一個固定的 35B MoE 模型寫。

結果

BrowseComp-Plus(50 題保留測試)。

答題代理Librarian AgentsEmbeddingReranker
Qwen3.5-4B0.750.420.44
Gemini 3.1 Flash Lite0.770.300.42

未經強化學習的建構代理也比訓練後差很多。論文另外比較了幾種預先計算方法的正確率與建構成本:

方法正確率建構成本(token)
GraphRAG0.3611,923
AutoCompaction0.04501,637
建構代理(未訓練)0.28127,683
Librarian Agents0.77178,926

同一批文件重複使用。 作者另外用 Gemini 3.1 Flash Lite 參考 DeepDive 題目,為 50 組文件生成 443 個問題,每組 7 到 10 題:

BRIGHT 零樣本轉移(每領域 50 題,答題代理 Qwen3.5-4B,pass@1)。

方法AOPSBiologyStack Overflow平均
BM2530.517.59.019.0
Dense31.519.511.520.8
Hybrid33.014.07.018.0
Agentic RAG28.517.06.517.3
Graph12.55.01.56.3
Librarian Agents36.034.585.552.0

訓練也改變了建構行為。在 BRIGHT 上,訓練後的建構代理平均做出 53.4 個合成檔案、45.4 個群組、8.0 次合併;未訓練版是 4.8、4.2 與 0.6。

跟既有做法比新在哪

限制

參考資料

註釋

編輯本頁

Podcast

關於語音摘要

此語音摘要由 Google NotebookLM 提供,不完全代表作者本人對文章的理解。