中科大、上海AI Lab發(fā)表的MindSearch思·索: 模擬模仿人類思維引發(fā)的深度AI探索者 原創(chuàng)
一、結(jié)論寫在前面
論文來自中國科學(xué)技術(shù)大學(xué)、上海AI Lab
論文標(biāo)題:MindSearch: Mimicking Human Minds Elicits Deep AI Searcher
論文鏈接:??https://arxiv.org/pdf/2407.20183??
代碼鏈接:??https://github.com/InternLM/MindSearch??
摘要
通過結(jié)合LLMs和搜索引擎來解決信息搜索與整合任務(wù)因三個挑戰(zhàn)而表現(xiàn)不佳:(1)復(fù)雜請求往往無法通過一次搜索準(zhǔn)確且完整地檢索;(2)待整合的相關(guān)信息分散在多個網(wǎng)頁中,伴隨大量噪音;(3)大量內(nèi)容冗長的網(wǎng)頁可能迅速超出LLMs的最大上下文長度。
受人類專家解決現(xiàn)實(shí)問題方式的啟發(fā),論文提出了MindSearch,這是一個基于LM的簡單而有效的多agent框架,包括一個WebPlanner(模擬人類思維進(jìn)行問題推理)和多個WebSearcher(管理信息搜索過程)給定一個用戶查詢,WebPlanner首先將查詢分解為多個可并行解決的原子子問題,并將它們分派給相應(yīng)的WebSearcher。為了進(jìn)一步增強(qiáng)推理能力,WebPlanner將復(fù)雜的問題解決過程建模為迭代圖構(gòu)建:通過預(yù)定義一系列與拓?fù)渌季S圖構(gòu)建相關(guān)的標(biāo)準(zhǔn)代碼接口,WebPlanner能夠通過生成Python代碼在圖中逐步添加節(jié)點(diǎn)/邊,從而將問題逐步分解為順序/并行的子問題。同時,負(fù)責(zé)每個子問題的WebSearcher采用分層檢索過程,從大量搜索頁面中提取有價值的數(shù)據(jù)供LLMs使用,顯著提高了信息聚合效率。通過將推理和檢索過程的不同方面分配給專門的agent,MindSearch有效減輕了每個單一agent的負(fù)擔(dān),促進(jìn)了長上下文的更穩(wěn)健處理。它無縫地彌合了搜索引擎的原始數(shù)據(jù)檢索能力與LLMs的上下文理解能力之間的差距。
基于GPT-4或InternLM2.5-7B模型,MindSearch在閉集和開集QA問題的響應(yīng)質(zhì)量上,無論在深度還是廣度方面,均顯示出顯著改進(jìn)。此外,基于InternLM2.5-7B模型的MindSearch生成的響應(yīng)更受人類青睞,優(yōu)于ChatGPT-Web(基于GPT-4)和Perplexity.ai應(yīng)用,這表明基于開源模型的MindSearch已經(jīng)能夠提供與專有AI搜索引擎相競爭的解決方案。
二、論文的簡單介紹
2.1 論文的背景
圖1:MindSearch的總體框架。它由兩個主要組成部分構(gòu)成:WebPlanner和WebSearcher。WebPlanner作為高級規(guī)劃器,協(xié)調(diào)推理步驟和多個WebSearcher。WebSearcher執(zhí)行細(xì)粒度的網(wǎng)絡(luò)搜索,并將有價值的信息匯總回規(guī)劃器,形成一個簡單而有效的多agent框架
LLM與搜索引擎的互補(bǔ)優(yōu)勢凸顯了它們結(jié)合的強(qiáng)大機(jī)遇,LLM的推理能力可以通過搜索引擎訪問的廣泛網(wǎng)絡(luò)信息得到補(bǔ)充,可能徹底改變網(wǎng)絡(luò)信息檢索和整合的解決方案。先前的工作(Asai et al., 2023; Chan et al., 2024)僅將信息檢索和整合任務(wù)視為簡單的檢索增強(qiáng)生成(RAG)任務(wù)。雖然這種表述簡單直接,但往往導(dǎo)致性能不佳,對基于網(wǎng)絡(luò)的信息檢索的深度和復(fù)雜性處理表面化,面對更復(fù)雜的用戶查詢時存在三大挑戰(zhàn):
(1) 現(xiàn)實(shí)世界的問題通常需要在檢索相關(guān)信息之前進(jìn)行深入分析和問題適當(dāng)分解,這無法通過一次性檢索網(wǎng)頁來實(shí)現(xiàn)。
(2) 海量的搜索網(wǎng)頁和大量的信息噪聲對LLM進(jìn)行有效的信息整合提出了巨大挑戰(zhàn)。
(3) 網(wǎng)絡(luò)搜索內(nèi)容的迅速激增可能很快超過LLM的最大上下文長度,這進(jìn)一步降低了信息整合的性能。
2.2 MindSearch
為了有效整合搜索引擎的網(wǎng)絡(luò)信息檢索能力與LLMs的推理和信息整合能力,MindSearch包含了一個WebPlanner和一組WebSearchers(圖1)。WebPlanner首先通過圖推理將用戶問題分解為順序或并行的搜索任務(wù),并根據(jù)搜索反饋決定下一步行動。WebSearcher負(fù)責(zé)查詢,并在互聯(lián)網(wǎng)上執(zhí)行分層信息檢索以回答子問題。論文還討論了多agent設(shè)計范圍內(nèi)的上下文管理。
2.2.1 WebPlanner:通過圖構(gòu)建進(jìn)行規(guī)劃
WebPlanner作為高級規(guī)劃器,負(fù)責(zé)協(xié)調(diào)推理步驟和其他agent。然而,論文觀察到,僅提示LLM規(guī)劃整個數(shù)據(jù)工作流架構(gòu)并不能產(chǎn)生令人滿意的表現(xiàn)。具體而言,當(dāng)前的LLMs在分解復(fù)雜問題及其拓?fù)潢P(guān)系理解方面存在困難,導(dǎo)致搜索查詢粒度過粗。這種方法未能充分利用LLMs作為人類與搜索引擎之間中介的潛力,無法將人類意圖轉(zhuǎn)化為逐步搜索任務(wù)并提供準(zhǔn)確響應(yīng)。
為了提升大型語言模型(LLM)解決復(fù)雜問題的能力,論文建模了問題解決過程的DAG(有向無環(huán)圖)。給定一個用戶問題Q,解決方案軌跡為G(Q)=,其中V是一組節(jié)點(diǎn)v,每個節(jié)點(diǎn)代表一個獨(dú)立的網(wǎng)絡(luò)搜索,包括一個輔助的START節(jié)點(diǎn)(初始問題)和一個END節(jié)點(diǎn)(最終答案)。E表示指示節(jié)點(diǎn)(搜索內(nèi)容)之間推理拓?fù)潢P(guān)系的定向邊。這種DAG形式主義捕捉了尋找最優(yōu)執(zhí)行路徑的復(fù)雜性,為語言模型提供了一個更正式和直觀的表示。
利用當(dāng)前LLM在代碼任務(wù)上的卓越性能,論文明確提示模型通過編寫代碼與圖進(jìn)行交互。為此,論文預(yù)定義了向圖中添加節(jié)點(diǎn)或邊的原子代碼函數(shù)(圖2中的步驟1和2)。在每一輪中,LLM首先閱讀整個對話,包括之前生成的代碼和網(wǎng)絡(luò)搜索結(jié)果,然后輸出對思維圖進(jìn)行推理的想法和新代碼,這些代碼由Python解釋器執(zhí)行。在執(zhí)行過程中,一旦一個節(jié)點(diǎn)被添加到推理圖中,它就會調(diào)用Websearcher執(zhí)行搜索過程并總結(jié)信息。
圖 2 : WebPlanner 如何通過規(guī)劃即編碼逐步解決問題的具體示例。在每個回合中,WebPlanner 輸出一系列思考以及生成的代碼。代碼將被執(zhí)行并產(chǎn)生搜索結(jié)果返回給規(guī)劃器。在最后一個回合,WebPlanner 直接提供最終響應(yīng)而無需生成任何代碼。
由于新添加的節(jié)點(diǎn)僅依賴于先前步驟中生成的節(jié)點(diǎn),論文可以并行處理它們以實(shí)現(xiàn)更快的信息聚合速度。當(dāng)所有信息收集完畢后,規(guī)劃器通過添加結(jié)束節(jié)點(diǎn)(圖 2 中的步驟 3)生成最終響應(yīng)。
通過與 Python 解釋器集成,WebPlanner 通過統(tǒng)一的代碼動作與圖進(jìn)行交互,動態(tài)構(gòu)建推理路徑。這種“代碼即規(guī)劃”的過程使 LLM 能夠充分利用其卓越的代碼生成能力,在長上下文場景中受益于控制和數(shù)據(jù)流,從而在解決復(fù)雜問題時表現(xiàn)更佳。
2.2.2 WebSearcher:分層檢索的網(wǎng)頁瀏覽
WebSearcher 作為具有互聯(lián)網(wǎng)訪問權(quán)限的高級 RAG(檢索與生成)agent,根據(jù)搜索結(jié)果總結(jié)有價值的響應(yīng)(圖 3)。由于網(wǎng)絡(luò)上的內(nèi)容極其龐大,LLM 在有限的上下文長度內(nèi)(例如 8K 個token)處理所有相關(guān)頁面是具有挑戰(zhàn)性的。為了解決這個問題,論文采用了一種直接的從粗到細(xì)的選擇策略。首先,LLM 根據(jù) WebPlanner 分配的問題生成幾個類似的查詢,以擴(kuò)大搜索內(nèi)容并提高相關(guān)信息的召回率。然后,這些查詢通過各種搜索 API(如 Google、Bing 和 DuckDuckGo)執(zhí)行,返回包括網(wǎng)頁 URL、標(biāo)題和摘要的關(guān)鍵內(nèi)容。搜索結(jié)果根據(jù)網(wǎng)頁 URL 自動合并,并提示 LLM 選擇最有價值的頁面進(jìn)行詳細(xì)閱讀。然后,所選網(wǎng)頁 URL 的完整內(nèi)容被添加到 LLM 的輸入中。在閱讀這些結(jié)果后,LLM 根據(jù)搜索結(jié)果生成響應(yīng)以回答原始問題。這種分層檢索方法顯著降低了瀏覽大量網(wǎng)頁的難度,并允許高效提取具有深入細(xì)節(jié)的高度相關(guān)信息。
圖3:WebSearcher的詳細(xì)工作流程。它包括最多4個步驟:查詢重寫、搜索內(nèi)容聚合、詳細(xì)頁面選擇和最終總結(jié)。
2.2.3 在MindSearch中管理LLM上下文
MindSearch通過提供一個簡單的多agent解決方案,來處理復(fù)雜的信息搜索和與搜索引擎的集成。這種范式也自然地實(shí)現(xiàn)了不同agent之間的長上下文管理,從而提高了框架的整體效率,特別是在需要模型快速閱讀大量網(wǎng)頁的情況下。由于WebPlanner將搜索任務(wù)分配給不同的搜索agent,并且僅依賴于WebSearcher的搜索結(jié)果,因此WebPlanner可以純粹專注于用戶問題的分解和分析,而不會被過長的網(wǎng)頁搜索結(jié)果分散注意力。同時,每個WebSearcher只需要搜索其任務(wù)子查詢的內(nèi)容,而不受其他內(nèi)容的影響。得益于明確的角色分配,MindSearch在整個過程中大大減少了上下文計算,為LLM的長上下文任務(wù)提供了一個高效的上下文管理解決方案。這種多agent框架也為訓(xùn)練單一LLM提供了直接且簡單的長上下文任務(wù)構(gòu)建流程,這一點(diǎn)在(Team, 2024)中也有所體現(xiàn)。最終,MindSearch在不到3分鐘的時間內(nèi)收集和整合了來自超過300頁的相關(guān)信息,而人類專家完成類似認(rèn)知工作量大約需要3小時。
由于多個agent之間存在顯式的上下文狀態(tài)傳遞,論文需要在整個工作流程中謹(jǐn)慎處理上下文。論文實(shí)證發(fā)現(xiàn),僅關(guān)注規(guī)劃器分解的查詢可能會在信息收集階段由于搜索agent內(nèi)部的局部感受野而丟失有用信息。如何有效地處理多個agent之間的上下文并非易事。論文發(fā)現(xiàn),通過有向圖邊構(gòu)建的拓?fù)潢P(guān)系有助于論文輕松處理不同agent之間的上下文。更具體地說,論文在執(zhí)行每個搜索agent時,簡單地將來自其父節(jié)點(diǎn)以及根節(jié)點(diǎn)的響應(yīng)作為前綴。因此,每個WebSearcher可以有效地專注于其子任務(wù),同時不會丟失先前的相關(guān)上下文以及最終目標(biāo)。
圖4:人類專家對開放集QA問題的主觀評估結(jié)果
2.3 實(shí)驗(yàn)
論文在兩類主要的問題回答(QA)任務(wù)上評估MindSearch:閉集QA和開放集QA,這反映了MindSearch的主觀和客觀判斷。為了公平比較,所有模型僅通過BING搜索API訪問互聯(lián)網(wǎng),不考慮額外的參考來源。
2.3.1 開放集QA
2.3.1.1 實(shí)施細(xì)節(jié)?
為了更好地評估實(shí)用性和搜索性能,論文精心挑選了100個真實(shí)世界的人類查詢,并從MindSearch(InternLM2.5-7b-chat)、Perplexity.ai(其Pro版本)和使用搜索插件的ChatGPT)收集響應(yīng)。論文請五位人類專家根據(jù)以下三個方面手動選擇他們偏好的響應(yīng):
?深度:深度指答案的徹底性和深度。具有深度的響應(yīng)提供詳細(xì)信息并深入探討問題的復(fù)雜性。
?廣度:廣度涉及答案所涵蓋的范圍和多樣性。具有廣度的回答觸及問題的各個方面或多個相關(guān)領(lǐng)域,提供不同的視角或解決方案。
?事實(shí)性:事實(shí)性是指答案的準(zhǔn)確性和基于事實(shí)的程度。它應(yīng)基于可靠的數(shù)據(jù)和信息,避免錯誤或誤導(dǎo)性內(nèi)容,確保所提供信息的真實(shí)性和可信度。
最終結(jié)果通過多數(shù)投票決定。在評估過程中,回答與其方法之間的對應(yīng)關(guān)系對評估者不可見,以保證公平性。
2.3.1.2 結(jié)果與分析
評估結(jié)果如圖4所示,論文還提供了圖 5 中的定量結(jié)果。從圖 4 中,論文可以觀察到模型回答在深度和廣度方面的絕對改進(jìn),這驗(yàn)證了論文提出的 WebPlanner 的優(yōu)越性。通過將代碼集成到 DAG 構(gòu)建階段,LLM 能夠逐步將復(fù)雜問題分解為可執(zhí)行的查詢,同時平衡時間效率和搜索空間的探索之間的權(quán)衡。此外,MindSearch 針對問題進(jìn)行了更細(xì)粒度的搜索主題,因此與其他模型相比提供了更緊湊和詳細(xì)的回答。然而,MindSearch 在事實(shí)性方面并未表現(xiàn)出更好的性能。論文懷疑更詳細(xì)的搜索結(jié)果可能會分散模型對初始問題的注意力,尤其是在 LLM 持有不完整的長上下文能力時。因此,MindSearch 的一個自然未來工作是減輕網(wǎng)絡(luò)瀏覽過程中的幻覺問題。
圖 5:MindSearch 與 Perplexity.ai(Pro)在同一問題上的解決方案軌跡比較。得益于其細(xì)粒度搜索,MindSearch 提供了更詳細(xì)和恰當(dāng)?shù)捻憫?yīng)
表 1:在各種封閉集問答任務(wù)上的性能比較。論文選擇了兩個具有代表性的大型語言模型(LLMs):GPT-4o(閉源)和 InternLM2.5-7b-chat(開源)
除了定量結(jié)果外,論文還提供了 Perplexity.ai(Pro)與 MindSearch 之間的定性響應(yīng)比較,以直觀地理解它們的性能。從圖 5 中,論文可以觀察到 MindSearch 產(chǎn)生了更具體和詳細(xì)的響應(yīng)。論文實(shí)證發(fā)現(xiàn),更好的響應(yīng)可以歸因于與 Perplexity.ai 相比更恰當(dāng)?shù)囊?guī)劃搜索路徑,這也表明如何分解人類意圖是最終問題的關(guān)鍵步驟。
2.3.2 封閉集問答
2.3.2.1實(shí)施細(xì)節(jié)?
論文在廣泛的封閉集問答任務(wù)上廣泛評估了論文的方法,包括 Bamboogle、Musique和 HotpotQA。為了進(jìn)一步驗(yàn)證論文方法的泛化性,論文選擇了閉源 LLM(GPT-4o)和開源 LLM(InternLM2.5-7b-chat)作為論文的 LLM 后端。由于論文的方法采用零樣本實(shí)驗(yàn)設(shè)置,論文利用主觀 LLM 評估器(GPT4-o)來評估 HotpotQA 的正確性。
2.3.2.2 結(jié)果與分析
在表1中,論文將論文的方法與兩種直接的基線方法進(jìn)行了比較:不使用搜索引擎的原始LLM(w/o Search Engine),以及簡單地將搜索引擎視為外部工具并采用ReAct風(fēng)格交互的方法(ReAct Search)。論文可以得出結(jié)論,MindSearch顯著優(yōu)于其原始基線方法,驗(yàn)證了所提出方法的有效性。當(dāng)從閉源LLM轉(zhuǎn)移到開源LLM時,這些優(yōu)勢進(jìn)一步放大,這進(jìn)一步證明了MindSeach提供了一種簡單的方法來增強(qiáng)弱LLM的知識廣度并緩解幻覺問題。
?
本文轉(zhuǎn)載自 ??AI帝國???,作者: 無影寺
