【LLM】AgentGym:具有自我演化能力的通用LLM agent
一、結論寫在前面
論文來自復旦自然語言處理實驗室 & 復旦視覺與學習實驗室
論文首次嘗試構建具有自我演化能力的通用LLM基礎agent。論文確定了三個關鍵要素:1)多樣化的環境供agent探索學習;2)一套軌跡集賦予agent基本能力和先驗知識;3)一種有效且可擴展的演化方法。
論文提出了AGENTGYM框架,一個包含多樣化環境、任務和目標的交互平臺,專為LLM基礎agent設計。AGENTGYM通過HTTP服務提供便捷的API,標準化任務規范、環境設置以及agent的觀測/動作空間。在此平臺上,論文實現了一個統一的多輪交互和實時反饋接口,跨越不同環境,以支持在線評估、軌跡采樣和交互訓練。
具體而言,它包含14種agent環境、89種任務,涵蓋網絡任務、具身任務及更多,并具有高度靈活性以擴展至更多類型。同時,論文提出了一種新算法AGENTEVOL,用于探索基于大型語言模型(LLM)的通用agent的自進化。論文將發布整個套件、算法實現以及agent檢查點。
實驗結果表明,演化后的agent能夠達到與最先進模型相當的性能。論文發布了AGENTGYM套件,包括平臺、數據集、基準測試、檢查點及算法實現。
項目網站:??https://lagentgym.github.io??
AGENTGYM倉庫:??https://github.com/WooooDyy/AgentGym??
二、論文的簡單介紹
2.1 論文的背景
類似于人類學習,agent通過模仿開始獲取基礎知識和技能。隨著發展,agent應能通過與不同環境的互動持續學習和適應未見任務。此外,它可能從自身及他人的經驗中汲取豐富洞見和智慧,發展出一定程度的泛化能力。圖1展示了這一演化過程。
圖1:本文中基于通用能力LLM的agent自我進化示意圖。agent首先根據人類監督進行行為克隆,然后跨環境和任務進行探索和學習,以實現自我進化
論文首次探討了通用能力LLM(大型語言模型)基礎agent在多種任務和環境中自我進化的潛力,從模仿學習過渡到交互學習,類似于人類的學習方式(圖1)。
論文確定了實現這一研究目標的三個關鍵支柱。首先,多樣化的環境和任務,使agent能夠動態全面地進化,而非局限于孤立的世界,這可能限制泛化能力。其次,一套適當大小的軌跡集,用于訓練具有初步指令遵循能力和知識的基線agent。這有助于在多樣化和復雜的環境中進一步探索,因為在這些環境中,agent通過試錯從頭開始學習所有內容將極其低效。第三,一種有效且靈活的進化方法,能夠適應不同難度的環境,激發LLM基礎agent的泛化能力。這涉及agent如何與環境互動以及如何利用反饋。
圖2:AGENTGYM框架概覽。該框架涵蓋了跨越多個類別的十四個環境。每個環境都部署為HTTP服務,客戶端提供封裝的統一接口供agent使用,便于與環境交互。論文從多樣化的環境中收集專家標注的軌跡,稱為AGENTTRAJ。隨后,論文讓agent在該集合上進行行為克隆,以獲得一個基礎的通用能力agent。通過論文的AGENTEVOL方法,論文探索agent在不同環境和任務中的進化。最后,論文使用提出的基準套件AGENTEVAL對agent進行全面評估
2.2 AGENTGYM:平臺、基準套件與軌跡集
以用戶友好的方式為每個環境部署獨立的服務,以防止沖突。客戶端可以通過HTTP協議與環境通信。該架構的核心是控制器,它作為agent與環境服務之間交互的通道,為agent提供了一個封裝的、統一的環境功能或操作接口。此外,論文還實現了諸如評估器、訓練器和數據收集管道等用戶友好的組件,以支持社區發展。
指令收集與基準構建。論文收集了跨環境和任務的20509條指令和查詢。對于已有大量指令的任務,如WebShop和ALFWorld,論文主要依賴其原始來源。對于指令較少的任務,如使用工具的任務,論文通過自指導和指令進化方法進行擴展,特別是通過提示GPT-4生成新指令[33; 34]。詳情見附錄C。然后,論文從每個環境中提取一個多樣且具有挑戰性的子集${\cal Q}_{eval}$,包含1160條指令,以構建基準套件AGENTEVAL,該套件能全面評估基于LLM的agent。剩余的指令集表示為Q = Uees Qe,其中表示環境e的剩余指令。
AGENTGYM是一個框架,旨在幫助社區輕松評估和開發基于大型語言模型(LLM)的通用能力agent。它具有多種交互環境及任務,采用統一的格式,即ReAct格式[35]。該框架支持實時反饋和并發處理,并易于擴展。論文包含了14個環境和89個任務,涵蓋網頁瀏覽、文字游戲、家務任務、數字游戲、具身任務、工具使用和編程等領域。這些任務對當前的LLM基agent具有挑戰性。
?對于網頁瀏覽任務,論文引入了WebArena(WA)和WebShop(WS)。
?在文字游戲中,論文包括了MAZE(MZ)和Wordle(WD)。論文選擇ALFWorld(ALF)用于家務任務。
?在具身任務中,論文包含了Sci-World(Sci)和BabyAI(Baby)。論文選擇TextCraft(TC)用于數字游戲。
?論文獲取了Tool-Weather(WT)、Tool-Movie(MV)、Tool-Academia(AM)、Tool-Sheet(ST)和Tool-TODOList(TL)用于工具使用任務。論文建立了BIRD(BD)用于編程任務。
平臺架構和組件。認識到不同agent環境固有的多樣化依賴性,AGENTGYM以用戶友好的方式為每個環境部署單獨的服務,以防止沖突。客戶端可以使用HTTP協議與環境通信。該架構的核心是控制器,它充當agent和環境服務之間交互的管道,為agent提供封裝統一的環境功能或操作接口以供調用。此外,論文實現了用戶友好的組件,如評估器、訓練器和數據收集管道,以支持社區發展。
表1:AGENTGYM與其他agent框架的比較涵蓋了幾個方面:環境數量、交互平臺的可用性及其使用、軌跡集的可用性、進化的支持及其模式
表2:AGENTGYM的統計數據,包括任務類型數量、指令集大小、評估集大小、軌跡集大小(AGENTTRAJ和AGENTTRAJ-L)以及每個環境的平均回合數
軌跡收集與過濾。在AGENTGYM中,服務器提供包括任務描述、環境設置和問題在內的指令給agent。接下來,agent以ReAct風格與環境交互,直至任務完成。論文收集了SOTA模型(如GPT-4-Turbo)和眾包注釋的軌跡。
論文嚴格過濾軌跡,根據獎勵或正確性確保數據質量,并獲得一組6130個軌跡。這一集合,命名為AGENTTRAJ。為公平比較,論文使用相同的流程對所有指令進行注釋和過濾,得到AGENTTRAJ-L以展示BC的性能上限。
表2展示了AGENTGYM框架的詳細統計數據。
2.3 AGENTEVOL:通用LLM基礎agent的綜合演化
這里論文首先通過行為克隆訓練一個基礎的通用能力agent,使其具備在agent任務中的基本交互能力。在此基礎上,論文初步探索了LLM基礎agent在多個環境和任務中的全面演化。論文將算法總結在算法1中。
2.3.1 基于收集軌跡的行為克隆
行為克隆通過讓LLM基礎agent逐步模仿收集的專家軌跡來微調它們。實踐中,論文期望agent能夠完成適當的內部思考h和行動a。論文使用AGENTTRAJ(表示為
)來訓練一個具有基本指令遵循能力和先驗知識的基礎通用能力agent。
2.3.2 通過探索和學習的演化
本工作試圖探索通用LLM基礎agent在多個環境和任務中自我演化的潛力。更重要的是,agent在演化過程中將面臨先前未見的任務和指令。因此,agent需要探索環境,接收反饋,并基于反饋優化自身。
然而,在論文的設置中,由于agent任務的大采樣空間和長期性質,標準RL面臨重大挑戰,導致高計算復雜性和訓練不穩定性,這阻礙了可擴展性。因此,論文從RL與概率推理之間成熟的聯系中汲取靈感,并提出了一種名為AGENTEVOL的agent演化方法,該方法涉及agent在探索和學習之間交替進行。
從估計的最優策略中學習。在本工作中,論文將RL視為特定概率模型內的推理問題。與傳統RL公式不同,后者關注于識別最大化預期獎勵的軌跡,基于推理的方法從最優軌跡分布開始。論文最初定義P(O = 1)來表示“通過最大預期獎勵獲得最優策略”或“在RL任務中取得成功”的事件,這可以通過在每個采樣點整合最優策略概率來計算。算法1:AGENTEVOL
在AGENTEVOL算法中,論文將這兩個步驟稱為探索步驟和學習步驟。
2.4 實驗與討論
2.4.1 實驗設置
環境與任務。論文探索了在 AGENTGYM 框架下通用能力 LLM 基agent的自我演化。主要實驗涵蓋了 11 個環境:WebShop 、ALF-World 、SciWorld 、BabyAI 、TextCraft 、BIRD 、MAZE、Wordle 、Tool-TODOList、Tool-Weather 和 Tool-Movie 。需要注意的是,BC 中使用的指令數量少于演化中的指令數量,以研究agent在執行探索時的泛化能力。
基線。論文包含了閉源模型,如 GPT-3.5-Turbo 、GPT4-Turbo 、Claude 3 和 DeepSeek-Chat 。論文還包含了開源模型,如 Llama-2-Chat ,以及基于專家軌跡訓練的agent,即 AgentLM 。為了公平比較,論文包含了一個基線,該基線在 AGENTTRAJ-L 上執行 BC,作為通過 BC 可達到的最大性能。
實現細節。所有實驗均使用八塊A100-80GB GPU進行。論文的主要骨干模型是Llama-2-Chat-7B。不同的環境服務部署在同一服務器的不同端口上。論文將迭代次數設為4。為了節省計算資源,每個指令在進化過程中只采樣一次。
2.4.2主要結果
表3中的實驗結果表明:
(1)盡管閉源模型表現良好,甚至像GPT-4-Turbo這樣的SOTA閉源模型也未能完全在所有任務上取得滿意的性能,突顯了開發更高效agent的需求。
(2)開源模型,如表3所示:評估在多樣任務上的結果。BCbase表示使用AGENTTRAJ訓練的agent,提供了一個具有基本能力和先驗知識的基準agent。BClarge表示在AGENTTRAJ-L上執行BC的agent,代表了本文中BC性能的上限。它與SOTA模型和agent相競爭,甚至超越它們。論文的進化方法AGENTEVOL,通過探索和學習,在大多數任務和環境中超越了BClarge。每個部分的最佳性能以粗體突出顯示。Llama2-Chat在所有任務上表現不佳,突顯了BC初始化步驟的重要性。
(3) 在agent軌跡上訓練的模型,如AgentLM ,在許多任務上與GPT-4-Turbo表現相當,特別是70B版本。然而,它們在TextCraft 或SciWorld 等任務上未能達到同等性能,這可以歸因于訓練數據的不足。
(4) 在AGENTTRAJ-L上訓練的agent,即BClarge,取得了優異的性能,與SOTA模型相匹配甚至超越,顯示其是一個強大的基準。
(5) 盡管AGENTEVOL用于模仿的軌跡有限,但它在許多任務上超越了BClarge和SOTA模型,如WebShop、ALFWorld 和BabyAI ,驗證了agent進化的優越性和潛力。
2.4.3 討論與分析
關于數據合并策略和迭代次數 的消融研究。在論文的實驗中,論文將每次迭代中采樣的軌跡與初始軌跡合并來訓練agent,而不是將其與前一次迭代生成的軌跡合并。這里,論文進行了一項消融研究,以展示這種合并策略和迭代次數
的影響。實驗結果如圖 3 所示,與初始數據合并提供了更穩定的改進,而與前一次迭代軌跡合并導致性能波動,可能是由于過擬合。此外,隨著
的增加,性能趨向于改善,但在后期的迭代中逐漸收斂。因此,論文選擇
以平衡性能和效率。
關于樣本數量 的消融研究。在探索步驟中,論文每迭代一次對每個指令進行一次采樣。這里,論文對樣本數量
進行了四項任務的消融研究。表
中的結果顯示,性能隨著
的增加而增加,但改進并不顯著。因此,論文選擇
以提高計算效率。
圖3:數據合并策略和迭代次數
的消融研究。策略1表示將當前agent生成的軌跡與初始軌跡集合合并;策略2表示將當前軌跡與上一迭代生成的軌跡合并
探索范圍的消融研究。在論文的實驗中,首先使用Ds訓練一個基礎agent,然后讓它探索更廣泛的指令和任務范圍。論文針對四個任務進行消融研究,以觀察agent在BC階段有限指令下的進化情況。表顯示,即使在有限的范圍內,基礎agent的性能也有所提升,這可能歸因于從agent中采樣的更多樣化軌跡。然而,改進并不顯著,表明有效的進化需要一個更廣泛的環境。
不同模型的有效性。為了展示論文的方法在不同骨干模型上的泛化能力,論文在Llama-2-13B 和DeepSeek-Coder-1.3B 上進行了實驗。整個進化過程仍然基于AGENTGYM。表
中的實驗結果顯示,論文的AGENTEVOL在不同骨干模型上保持了其進化能力,實現了性能的超越。
表6:成功和失敗軌跡的進化實驗
成功與失敗軌跡的演化。在學習步驟中,論文僅利用獎勵高的樣本軌跡(成功),而不使用失敗的軌跡。受先前工作的啟發,論文探究是否可以納入失敗軌跡以促進更好的演化。
具體而言,論文構建成功與失敗軌跡的對,并使用DPO方法優化agent,該方法針對成對數據集擬合模型。表6的結果顯示,盡管使用兩種類型的軌跡仍能帶來演化效果,但性能不及論文的方法,表明多任務設置中的偏好優化相比單任務更具挑戰性。未來,論文期望探索更多算法,充分利用所有軌跡以實現全面的演化。
論文標題:AgentGym: Evolving Large Language Model-based Agents across Diverse Environments
論文鏈接:https://arxiv.org/pdf/2406.04151
本文轉載自 ??AI帝國??,作者: 無影寺
