搜索智能體RAG落地不佳?UIUC開(kāi)源s3,僅需2.4k樣本,訓(xùn)練快效果好
當(dāng)前,Agentic RAG(Retrieval-Augmented Generation)正逐步成為大型語(yǔ)言模型訪問(wèn)外部知識(shí)的關(guān)鍵路徑。但在真實(shí)實(shí)踐中,搜索智能體的強(qiáng)化學(xué)習(xí)訓(xùn)練并未展現(xiàn)出預(yù)期的穩(wěn)定優(yōu)勢(shì)。一方面,部分方法優(yōu)化的目標(biāo)與真實(shí)下游需求存在偏離,另一方面,搜索器與生成器間的耦合也影響了泛化與部署效率。
我們(UIUC & Amazon)提出的 s3(Search-Select-Serve)是一種訓(xùn)練效率極高、結(jié)構(gòu)松耦合、生成效果導(dǎo)向的 RL 范式。該方法使用名為 Gain Beyond RAG (GBR) 的獎(jiǎng)勵(lì)函數(shù),衡量搜索器是否真的為生成帶來(lái)了有效提升。實(shí)驗(yàn)表明,s3 在使用僅 2.4k 訓(xùn)練樣本的情況下,便在多個(gè)領(lǐng)域問(wèn)答任務(wù)中超越了數(shù)據(jù)規(guī)模大百倍的強(qiáng)基線(如 Search-R1、DeepRetrieval)。
- 論文標(biāo)題:s3: You Don’t Need That Much Data to Train a Search Agent via RL
- 論文鏈接:https://arxiv.org/pdf/2505.14146
- 代碼倉(cāng)庫(kù):https://github.com/pat-jj/s3
研究動(dòng)機(jī)
RAG 的發(fā)展軌跡:從靜態(tài)檢索到 Agentic 策略
我們將 RAG 系統(tǒng)的發(fā)展分為三階段:
1.Classic RAG:使用固定 query、BM25 等 retriever,生成器對(duì)結(jié)果無(wú)反饋;
2.Pre-RL-Zero Active RAG:引入多輪 query 更新,如 IRCoT、Self-RAG 等,部分通過(guò) prompt 引導(dǎo) LLM 檢索新信息。Self-RAG 進(jìn)一步通過(guò)蒸餾大型模型的行為,訓(xùn)練小模型模擬多輪搜索行為;
3.RL-Zero 階段:強(qiáng)化學(xué)習(xí)開(kāi)始用于驅(qū)動(dòng)檢索行為,代表方法如:
- DeepRetrieval:以 Recall、NDCG 等搜索指標(biāo)為優(yōu)化目標(biāo),專注于檢索器本身的能力;
- Search-R1:將檢索與生成聯(lián)合建模,以最終答案是否 Exact Match 作為強(qiáng)化信號(hào),優(yōu)化整合式的搜索 - 生成策略。
盡管 RL 方法在思路上更具主動(dòng)性與交互性,但在實(shí)際落地中仍面臨諸多挑戰(zhàn)。
當(dāng)前 RL-based Agentic RAG 落地表現(xiàn)不佳的原因
我們對(duì)當(dāng)前 Agentic RAG 方案效果不穩(wěn)定、訓(xùn)練難、遷移能力弱的原因,歸納為三點(diǎn):
1. 優(yōu)化目標(biāo)偏離真實(shí)下游任務(wù)
Search-R1 等方法采用 Exact Match (EM) 作為主要獎(jiǎng)勵(lì)指標(biāo),即答案是否與參考答案字面一致。這一指標(biāo)過(guò)于苛刻、對(duì)語(yǔ)義變體不敏感,在訓(xùn)練初期信號(hào)稀疏,容易導(dǎo)致模型優(yōu)化「答案 token 對(duì)齊」而非搜索行為本身。
例如,對(duì)于問(wèn)題「美國(guó)第 44 任總統(tǒng)是誰(shuí)?」,
- 回答「Barack Obama」:?
- 回答「The 44th president was Barack Obama.」:?(EM=0)
這種不合理的信號(hào)會(huì)誘導(dǎo)模型在生成階段做格式補(bǔ)償,從而無(wú)法反映搜索策略本身是否有效。
2. 檢索與生成耦合,干擾搜索優(yōu)化
將生成納入訓(xùn)練目標(biāo)(如 Search-R1),雖然可以提升整體答案準(zhǔn)確率,但也會(huì)帶來(lái)問(wèn)題:
- 無(wú)法判斷性能提升究竟來(lái)自「更好的搜索」,還是「更強(qiáng)的語(yǔ)言生成對(duì)齊能力」;
- 對(duì) LLM 參數(shù)依賴強(qiáng),不利于模型遷移或集成;
- 微調(diào)大模型成本高,限制了訓(xùn)練效率和模塊替換的靈活性。
3. 現(xiàn)有評(píng)價(jià)標(biāo)準(zhǔn)無(wú)法準(zhǔn)確衡量搜索貢獻(xiàn)
EM、span match 等傳統(tǒng) QA 指標(biāo)主要關(guān)注輸出結(jié)果,與搜索質(zhì)量關(guān)聯(lián)有限。而 search-oriented 指標(biāo)(如 Recall@K)雖可度量 retriever 性能,卻無(wú)法體現(xiàn)這些信息是否真的被模型「用好」。這些偏差直接導(dǎo)致現(xiàn)有 RL Agentic RAG 方法在評(píng)估、訓(xùn)練和泛化上均存在瓶頸。
s3 - 專注搜索效果優(yōu)化的 search agent RL 訓(xùn)練框架
s3 的出發(fā)點(diǎn)很簡(jiǎn)單:
如果我們真正關(guān)心的是「搜索提升了生成效果」,那就應(yīng)該只訓(xùn)練搜索器、凍結(jié)生成器,并以生成結(jié)果提升為獎(jiǎng)勵(lì)。
這便是「Gain Beyond RAG(GBR)」的定義:
即:用 s3 搜索到的上下文喂給 Frozen Generator 之后的生成效果,相比初始的 top-k 檢索結(jié)果是否更好。值得注意的是,s3 訓(xùn)練時(shí)始終初始化于相同的原始 query,從而能清晰對(duì)比 s3 檢索對(duì)結(jié)果帶來(lái)的真實(shí)「增益」。
準(zhǔn)確率(Acc)評(píng)估標(biāo)準(zhǔn)
我們采用了更語(yǔ)義友好的 Generation Accuracy(GenAcc)指標(biāo)。它結(jié)合了兩種機(jī)制:
- Span Match:判斷生成答案是否包含參考答案的任意 token span
- LLM Judge:由一個(gè)輕量 LLM 判斷答案是否語(yǔ)義正確
兩者只要任意一個(gè)通過(guò),則視為正確。這一指標(biāo)在人工對(duì)比中與人類判斷一致率高達(dá) 96.4%,相比之下,EM 僅為 15.8%。
訓(xùn)練與優(yōu)化 - 僅需 2.4k 樣本即可完成 ppo 訓(xùn)練:
我們采用 PPO 進(jìn)行策略優(yōu)化。為了提升訓(xùn)練效率:
- 我們預(yù)篩除掉了「naive RAG 就能答對(duì)」的樣本;
- 將訓(xùn)練樣本集中在需要真正檢索的新信息的任務(wù)上;
- Generator 完全凍結(jié),訓(xùn)練代價(jià)完全集中在 Searcher。
s3 訓(xùn)練總時(shí)間只需 114 分鐘(vs Search-R1 的 3780 分鐘),數(shù)據(jù)也減少約 70 倍。
實(shí)驗(yàn)分析
General QA w/ RAG
實(shí)驗(yàn)一:通用 QA 任務(wù),s3 優(yōu)于 Search-R1 和 DeepRetrieval。
我們?cè)诹鶄€(gè)通用數(shù)據(jù)集上評(píng)估了 Direct Inference、Naive RAG、IRCoT、DeepRetrieval、Search-o1、Search-R1 以及 s3 的性能。實(shí)驗(yàn)中,我們使用了不同的下游 LLM,包括 Qwen2.5-7B-Instruct,Qwen2.5-14B-Instruct 和 Claude-3-Haiku。
盡管 s3 僅使用了 2.4k 條 NQ+HotpotQA 訓(xùn)練數(shù)據(jù)(training source 和 Search-R1 一樣),它在其中五個(gè)數(shù)據(jù)集上實(shí)現(xiàn)了最優(yōu)表現(xiàn),展現(xiàn)出顯著的泛化能力。
Medical QA w/ RAG
實(shí)驗(yàn)二:醫(yī)學(xué) QA 任務(wù),s3 展現(xiàn)驚人的跨領(lǐng)域能力。
我們隨后在五個(gè)醫(yī)學(xué)領(lǐng)域的 QA 數(shù)據(jù)集上進(jìn)一步評(píng)估了模型性能,測(cè)試使用了兩個(gè)語(yǔ)料庫(kù):Wikipedia2018(與通用測(cè)試一致)和 MedCorp(ACL 2024)。結(jié)果顯示,Search-R1 在其訓(xùn)練語(yǔ)料上表現(xiàn)良好,但在語(yǔ)料變更后顯現(xiàn)出過(guò)擬合趨勢(shì);相比之下,s3 能穩(wěn)定遷移至不同的數(shù)據(jù)集與語(yǔ)料庫(kù),凸顯出其基于 searcher-only 優(yōu)化策略的強(qiáng)泛化能力。
reward 優(yōu)化曲線
圖 5 展示了我們的 reward 曲線,可以看出 s3 在接近 10 個(gè)訓(xùn)練步驟(batch size 為 120)內(nèi)便迅速「收斂」。這一現(xiàn)象支持兩個(gè)推斷:(1)預(yù)訓(xùn)練語(yǔ)言模型本身已具備一定的搜索能力,我們只需通過(guò)合理的方式「激活」這種能力;(2)在一定范圍內(nèi),適當(dāng)增加每輪搜索的文檔數(shù)量和最大輪次數(shù),有助于提升最終性能。
消融實(shí)驗(yàn)
在不同配置下,移除組件對(duì)性能的影響(平均準(zhǔn)確率)。我們使用了三組設(shè)定進(jìn)行對(duì)比,結(jié)果表明 s3 的設(shè)計(jì)在準(zhǔn)確性與效率之間達(dá)到了最優(yōu)平衡。
我們進(jìn)一步通過(guò)消融實(shí)驗(yàn),驗(yàn)證了 s3 框架中兩個(gè)關(guān)鍵設(shè)計(jì)的必要性:
- 「從原始問(wèn)題開(kāi)始檢索」是方向正確的保障:我們發(fā)現(xiàn),以用戶原始問(wèn)題作為第一輪檢索的起點(diǎn),有助于模型明確搜索目標(biāo)、建立有效的檢索路徑。若不設(shè)置這一初始點(diǎn),搜索策略往往偏離主題,導(dǎo)致性能顯著下降。
- 「文檔選擇」機(jī)制顯著降低 token 消耗:該機(jī)制允許模型在每輪檢索后主動(dòng)篩選信息,從而避免將所有檢索結(jié)果一股腦送入生成器。通過(guò)這一設(shè)計(jì),s3 的輸入 token 平均減少了 2.6 至 4.2 倍,不僅提升了效率,也減少了噪聲干擾,對(duì)生成效果有正面作用。
總體來(lái)看,s3 設(shè)計(jì)中的「起點(diǎn)初始化 + 動(dòng)態(tài)選擇」是支撐其高效、強(qiáng)泛化性能的關(guān)鍵。即使在某些數(shù)據(jù)集上通過(guò)增加輸入內(nèi)容能獲得短期增益,s3 原始結(jié)構(gòu)在訓(xùn)練效率、推理速度與生成準(zhǔn)確率上依然展現(xiàn)出更穩(wěn)定的優(yōu)勢(shì)。
FAQ
Q1:為什么我們報(bào)告的 Search-R1 結(jié)果與原論文不一致?
A1:Search-R1 原文使用 Exact Match(EM)作為 reward 和評(píng)估指標(biāo),并對(duì)模型進(jìn)行了針對(duì)性微調(diào)。將這種針對(duì) EM 優(yōu)化的模型,與其他 zero-shot 方法比較,略顯不公平,也難以衡量搜索本身的效果。因此我們采用更語(yǔ)義友好的 Generation Accuracy(GenAcc),結(jié)合 span 匹配和 LLM 判斷,與人類評(píng)估一致率達(dá) 96.4%。相比之下,EM 只能捕捉字面一致,反而容易誤導(dǎo)模型優(yōu)化方向。
Q2:s3 為什么不訓(xùn)練生成器?這樣是否限制了模型性能?
A2:我們?cè)O(shè)計(jì) s3 的核心理念是:如果我們想真正優(yōu)化搜索效果,不應(yīng)讓生成器被訓(xùn)練,否則會(huì)混淆「搜索變好」與「語(yǔ)言模型變強(qiáng)」帶來(lái)的增益。凍結(jié)生成器不僅提升了訓(xùn)練效率(節(jié)省大模型微調(diào)成本),也便于模型遷移到不同任務(wù)與生成器,真正做到「搜索能力即插即用」。