將大型語言模型模塊化打造協作智能體

B UILDING C OOPERATIVE E MBODIED A GENTS MODULARLY WITH L ARGE L ANGUAGE M ODELS
論文鏈接: https://arxiv.org/abs/2307.02485icon-default.png?t=N7T8https://arxiv.org/abs/2307.02485

1.概述

????????在去中心化控制及多任務環境中,多智能體合作問題因原始感官觀察、高昂的通信成本以及多目標任務的復雜性而顯得尤為棘手。過往研究往往基于無成本通信的假設,或依賴于具備共享觀察能力的集中控制器。

????????LLMs在自然語言理解、對話生成、世界知識的豐富性以及復雜推理能力方面展現出了卓越的性能。盡管已有研究證明,LLMs能夠借助零樣本或少樣本提示驅動具身智能體完成單智能體任務,但在去中心化設置下,特別是在通信成本高昂的情況下,構建合作智能體仍面臨巨大挑戰。

????????本研究的核心目標是探討如何有效利用LLMs來構建合作的具身智能體,這些智能體應能在充滿挑戰的去中心化環境中高效合作,與人類進行順暢交流,并成功完成長期的多目標任務。

? ? ? 因此,本研究提出了一種名為CoELA(Cooperative Embodied Language Agent)的認知啟發模塊化框架,該框架利用LLMs的強大推理能力及自然語言理解與生成能力,集成了感知、記憶、通信、規劃和執行五大核心模塊。

  • ?感知模塊:該模塊負責處理從環境中接收到的復雜視覺觀察,并從中提取有用信息。
  • 記憶模塊:此模塊模擬人類的長期記憶功能,用于維護智能體對物理環境及其他智能體的理解。
  • 通信模塊:利用LLMs的能力,該模塊負責生成有效的對話,并決定何時以及發送何種信息。
  • 規劃模塊:根據所有可用信息,該模塊負責制定高層次的計劃,包括通信時機的選擇。
  • 執行模塊:此模塊負責通過生成原始動作來執行已制定的計劃。

2.整體框架

????????如圖所示,CoELA由五個核心組件組成,包括:(a) 感知、(b) 記憶、(c) 通信、(d) 規劃、(e) 執行。在每一次交互過程中,CoELA首先運用(a) 感知組件從環境中獲取原始感官數據,隨后更新(b) 記憶組件中的信息,該組件儲存了智能體關于世界及其他智能體的知識與經驗。接下來,CoELA通過兩步法克服高效通信的難題:首先確定傳遞的信息內容,再判斷是否發送此信息或選擇其他方案,通過(c) 通信組件從(b) 中檢索相關信息,并借助LLM生成最佳消息。之后,借助(d) 規劃組件,CoELA運用強大的推理能力,根據(b) 中的相關信息和當前狀態所提出的可行行動進行決策。生成的計劃用于更新(b2) 情景記憶。最后,(e) 執行組件從(b3) 中檢索存儲的程序知識,將高層次計劃轉化為環境中可執行的原始動作。

(1)感知組件(Perception Component)

????????為確保具身智能體在現實世界中的實用性,它們必須通過傳感器捕獲原始觀察并提取對后續高階推理有益的信息。我們通過訓練一個Mask-RCNN模型(He et al., 2017),使其直接處理從環境中接收的復雜視覺數據,預測RGB圖像中的分割掩碼,并利用RGB-D圖像構建3D點云,提取高層次有用信息,如關鍵對象的狀態,并構建局部語義地圖。

(2)記憶組件(Memory Component)

????????對于智能體而言,維護其對世界及其他智能體的知識和經驗的記憶至關重要。我們參考人類的長期記憶機制(Atkinson & Shiffrin, 1968; Wang & Laird, 2006; Nuxoll & Laird, 2012),為CoELA設計了語義記憶、情景記憶和程序記憶。

????????語義記憶:儲存CoELA關于世界的知識,涵蓋語義地圖、任務進度、自我狀態及他人狀態。每當新的觀察被感知并處理后,語義記憶將相應更新。值得注意的是,由于其他智能體可能在CoELA不知情的情況下與對象互動并改變其狀態,處理記憶與其他智能體描述的世界之間的不一致性增加了挑戰。

????????情景記憶:儲存CoELA過去的經驗,包括動作歷史和對話歷史。每當CoELA執行新動作(包括發送或接收消息),相關信息將被添加至情景記憶中。

????????程序記憶:包含如何在特定環境中執行特定高層次計劃的知識,涵蓋實現這些計劃的代碼和神經模型參數。

(3)通信組件(Communication Component)

????????為應對“發送什么”的問題,我們設計了一個通信組件,利用LLMs強大的自由形式語言生成能力作為消息生成器。為更好地調整LLMs以適應合作任務并避免無效的隨意聊天,通信組件首先從記憶組件中檢索相關信息(包括語義地圖、任務進度、智能體狀態、他人狀態、動作和對話歷史),然后使用模板將這些信息轉換為文本描述,最終提示LLMs生成待發送的消息。為更好地約束LLMs生成的消息,我們在提示的結尾添加了一個注釋,并在對話歷史的開頭附加了兩個種子消息,以引導產生預期的有效通信行為。

(4)規劃組件(Planning Component)

????????CoELA需要一個強大的規劃組件來決定在利用所有收集和存儲的可用信息的基礎上采取何種行動,以最大限度地提升合作效率。從頭開始設計這樣的組件需要大量的專業人力資源,且難以普遍化。因此,我們直接利用強大的LLMs作為規劃組件,首先從記憶組件中檢索相關信息并將其轉換為文本描述,然后根據當前狀態和存儲的程序知識編制所有可用高層次計劃的行動列表,以供LLMs選擇。這種形式化的過程使LLMs能更集中地進行推理并生成可執行計劃,無需任何少樣本演示。我們還采用Kojima等人(2022)介紹的零樣本鏈式推理技術,鼓勵LLMs在給出最終答案之前進行更多推理。

(5)執行組件(Execution Component)

????????如(Deitke et al., 2022)所述,解決具有挑戰性的具身任務需要模塊化方法來應對任務的復雜性。我們發現,盡管LLMs在制定高層次計劃方面表現卓越,但在制定低層次控制方面表現不佳。為實現不同環境中有效且通用的合作決策,我們設計了一個執行組件,將高層次計劃轉化為環境中可執行的原始動作,使規劃組件能夠泛化并專注于利用LLMs豐富的世界知識和強大的推理能力解決整體任務。從實際角度來看,這種設計還能減少LLMs的推理時間,節省時間和成本。CoELA從其記憶組件中檢索與計劃相關的程序知識,然后執行適合環境的原始動作。

3.實驗

(1)實驗設置

  • ?ThreeDWorld Multi-Agent Transport (TDW-MAT)任務:該任務源自ThreeDWorld Transport Challenge的擴展,旨在通過增加對象與容器類型、優化對象放置的真實性,以及強化智能體間通信功能,進一步推進多智能體協同運輸的研究。智能體需運用容器作為運輸工具,將盡可能多的目標對象運送至指定位置。智能體以自我中心的512×512 RGB-D圖像為觀察依據,在低層次導航控制、互動與通信等多個動作空間中作出決策。我們選擇了TDW-House數據集中的6個場景,并結合食物與物品兩大任務類型,共構建24個測試集場景,每個場景包含3000幀。
  • Communicative Watch-And-Help (C-WAH)任務:C-WAH任務源于Watch-And-Help Challenge的擴展,基于VirtualHome-Social模擬平臺,專注于智能體合作能力與通信機制的研究。任務涵蓋五種常見的家庭活動,每種活動均設定了具體的謂詞與滿足條件。我們從中選取了10個測試集場景,每種活動類型各占2個,每個場景包含250步操作。

(2)基線方法:

  • ?MCTS-based Hierarchical Planner (MHP):該方法沿用了原Watch-And-Help Challenge中的頂尖基線,結合了基于MCTS的高層次規劃與基于回歸規劃的低層次規劃策略。
  • Rule-based Hierarchical Planner (RHP):此方法繼承自ThreeDWorld Transport Challenge的優質基線,結合基于啟發式規則的高層次規劃與A*算法的低層次規劃,并采用了前沿探索策略。
  • Multi-Agent Transformer (MAT):MAT是基于多智能體強化學習(MARL)的基線方法,通過集中決策轉換器從共享觀察中生成動作。為適應本實驗設置,MAT將語義地圖與智能體狀態作為觀察對象,并采用50幀堆疊作為強化學習步驟。

(3)實現細節:

????????在感知模塊訓練中,我們采用了Mask-RCNN。同時,通過OpenAI API實例化了頂尖LLM GPT-4,并設置了溫度參數為0.7,top-p為1,最大tokens數為256。此外,我們還進行了使用LoRA技術微調LLAMA-2的實驗。

(4)度量標準:

- 運輸率(TR):用于評估TDW-MAT任務中子目標的完成比例。

- 平均步數(L):衡量C-WAH任務完成的效率。

- 合作智能體效率改進(EI):以量化方式反映智能體合作所帶來的效果提升。

(5)實驗結果

與AI智能體合作

????????CoELA與基線智能體在合作中展現出更優的效果。據表1數據顯示,相較于RHP單獨完成任務的情況,與CoELA合作顯著提升了運輸率(TR)和效率提升(EI),分別為0.69(36%)和0.61(29%)。這充分表明,即便在不深入了解其他智能體內部工作機制的條件下,CoELA亦能有效推理其他智能體的狀態。

????????在C-WAH任務中,如表2所示,與CoELA合作實現的效率提升高達45%,而與MHP合作僅提升33%。進一步在符號觀察和視覺觀察的場景下,CoELA+CoELA的組合表現優于其他智能體組合。

????????對于CoLLAMA與GPT-4的對比,當采用開源模型LLAMA-2替代GPT-4時,性能出現明顯下降。然而,經過微調的CoLLAMA在TDW-MAT任務中取得了0.70的TR,并在部分子任務上超越了GPT-4。

????????針對CoELA的合作表現,進行了定性分析。結果表明,CoELA能夠有效分享進展與信息,適時請求幫助并響應他人請求,根據合作對象的情況調整計劃,并明智地選擇通信時機。

與人類合作

????????關于與人類合作的重要性,我們進行了一項人類實驗。在C-WAH環境中,讓8位受試者與智能體Alice進行合作。實驗涵蓋了四種場景:與MHP合作、與CoELA合作、無通信的CoELA合作以及單獨完成任務。受試者可通過點擊可見對象并選擇動作與智能體進行交互,包括導航至各個房間以及通過聊天框進行通信。

????????每次實驗后,受試者根據與智能體的合作情況進行了7點Likert量表的評分,評估標準涵蓋通信的有效性、智能體對信息的理解與分享程度、幫助程度以及信任度。

????????實驗結果如圖4a所示,CoELA在與人類合作時表現優于MHP,即便在無通信條件下,CoELA的表現亦優于MHP。圖4b進一步顯示,人類更傾向于信任與他們進行自然語言交流的CoELA(信任評分6.3對比無通信CoELA的4.7,p=0.0003),從而實現了更佳的合作效果。與采用模板語言交流的MHP相比,人類更傾向于與能夠理解和響應人類對話的CoELA進行合作。

?(6)分析????????

我們需要強大的LLM用于規劃和通信模塊嗎?

  • 如圖4c所示,當我們用GPT-3.5替換GPT-4來驅動CoELA時,智能體需要更多的步驟來完成任務。GPT-3.5在狀態推理方面犯的錯誤更多,因此生成的計劃不太合理,導致CoELA完成任務的時間更長。GPT-3.5也傾向于更頻繁地生成無用信息。性能差距可以歸因于GPT-4更高級的推理和理論心智能力,這一點也在Bubeck et al. (2023)中有所觀察。

通信是否有效?

  • 盡管在某些情況下通信仍然失敗,但如圖3所示,我們的智能體表現出有效的通信行為,如分享信息、請求幫助、響應請求以及知道何時不進行通信。更重要的是,自然語言通信為我們提供了一種透鏡,用于理解人類和AI之間的決策,這可能導致更好的合作。如圖4c所示,在禁用智能體之間的通信時沒有觀察到顯著的性能下降,因為在我們的設置中,進行高效通信非常具有挑戰性,要求智能體準確建模他人并理解自然語言的模糊性,這對當前LLMs來說仍然難以做到穩健。

記憶模塊和執行模塊是否有效?

  • 如圖4c所示,智能體在沒有記憶模塊的情況下完成任務所需的步驟幾乎翻倍,這表明記憶模塊在存儲和更新對場景和其他智能體的知識和經驗方面的重要性。我們還嘗試移除執行模塊并讓規劃模塊進行低層次控制,發現同樣效果不佳。

(7)LLM的失敗案例和局限性

????????盡管使用最先進的LLMs構建的CoELA表現出色并取得了令人印象深刻的結果,但我們發現智能體在幾個基本能力上仍然存在不足。我們提供了對這些局限性的深入分析,并分享了一些關于未來設計更好合作具身智能體的見解。

????????限制3D空間信息的使用

  • CoELA沒有有效引入對象和房間的空間信息到純文本語言模型中,這可能導致智能體提出的探索計劃在語義上合理但實際上耗時。利用能夠有效處理視覺模態并生成自然語言的多模態大型模型可以克服這一局限性,構建更好的具身智能體(Huang et al., 2023; Driess et al., 2023; Lu et al., 2022)。

????????缺乏對低層次動作的有效推理

  • 為了幫助LLMs更好地專注于解決總體任務,我們抽象出高層次計劃供LLMs直接推理,但這也使得LLMs無法執行低層次動作的推理,可能導致看似合理但實際上無效的決定。例如,在圖5a中,Alice看到Bob同時拿著一個容器和一個目標物體,并認為他可能不知道如何使用容器,于是發送消息指示他將物體放入容器,盡管Bob實際上已經在執行這一動作。開發能夠直接進行低層次控制的智能體對于構建更好的合作智能體至關重要。

在復雜推理上的不穩定表現

  • 盡管LLMs在大多數情況下能做出正確的推理,但它們仍偶爾犯錯,包括誤解環境規則和對未滿足目標的錯誤推理(如圖5b所示)。這些錯誤可能導致任務失敗,這呼吁我們開發具有更強指令遵循和推理能力的LLMs。

? ? ? ? ? ? ??

?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/41184.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/41184.shtml
英文地址,請注明出處:http://en.pswp.cn/web/41184.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【機器學習】機器學習重塑廣告營銷:精準觸達,高效轉化的未來之路

📝個人主頁🌹:Eternity._ 🌹🌹期待您的關注 🌹🌹 ?目錄 📒1. 引言📙2. 機器學習基礎與廣告營銷的結合🧩機器學習在廣告營銷中的核心應用領域🌹用…

【React】React18 Hooks 之 useReducer

目錄 useReducer案例1:useReducer不帶初始化函數案例2:useReducer帶初始化函數注意事項1:dispatch函數不會改變正在運行的代碼的狀態注意事項2:獲取dispatch函數觸發后 JavaScript 變量的值注意事項3:觸發了reducer&am…

webrtc sfu性能壓測

1. 前言 不少網友最近私信我,咨詢webrtc sfu服務端性能問題,SRS開源服務能支持多少路webrtc流,mediasoup單房間能支持多少個人,推流能接入多少路,拉流能拉取多少路?720p能支持多少路,360p能支持…

Spring Boot集成olingo快速入門demo

1.什么是olingo? Apache Olingo 是個 Java 庫,用來實現 Open Data Protocol (OData)。 Apache Olingo 包括服務客戶端和 OData 服務器方面。 Open Data Protocol (開放數據協議,OData) 是用來查詢和更新數據的一種W…

【吊打面試官系列-MyBatis面試題】MyBatis 實現一對多有幾種方式,怎么操作的?

大家好,我是鋒哥。今天分享關于 【MyBatis 實現一對多有幾種方式,怎么操作的?】面試題,希望對大家有幫助; MyBatis 實現一對多有幾種方式,怎么操作的? 有聯合查詢和嵌套查詢。聯合查詢是幾個表聯合查詢,只查詢一次,通過…

觀察矩陣(View Matrix)、投影矩陣(Projection Matrix)、視口矩陣(Window Matrix)及VPM矩陣及它們之間的關系

V表示攝像機的觀察矩陣(View Matrix),它的作用是把對象從世界坐標系變換到攝像機坐標系。因此,對于世界坐標系下的坐標值worldCoord(x0, y0, z0),如果希望使用觀察矩陣VM將其變換為攝像機坐標系下的坐標值localCoord(x…

【滲透入門】HTTP請求包

文章目錄 前言HTTP GET請求包HTTP POST請求包Content-Type 前言 HTTP(HyperText Transfer Protocol)請求包,是Web通信的基礎。HTTP請求包格式主要由以下幾部分組成: 請求行:包含了請求方法(GET、POST、PUT…

32單片機,C語言與匯編聯合編譯的幾種方式

適用編譯器:Keil5 方式一: 單獨創建一個.s匯編文件,在匯編文件內對函數進行EXPORT聲明 r0寄存器是函數傳入的第一個參數,r1寄存器是函數傳入的第二個參數,以次類推。參數最多不確定是到r4為止,還是到r12…

Node.js-path 模塊

path 模塊 path 模塊提供了 操作路徑 的功能,如下是幾個較為常用的幾個 API: 代碼實例: const path require(path);//獲取路徑分隔符 console.log(path.sep);//拼接絕對路徑 console.log(path.resolve(__dirname, test));//解析路徑 let pa…

Robust Regression

最小二乘回歸受數據中的離群點的影響較大,穩健回歸通過降低離群點的影響緩解此問題。M估計法是穩健回歸的重要方法之一,M 估計法的目標函數為: m i n ∑ ρ ( ? i ) m i n ∑ ρ ( y i ? β ^ ? X i ) min\sum\rho(\epsilon_i) min\sum\…

vulhub-activemq(CVE-2016-3088)

在 Apache ActiveMQ 5.12.x~5.13.x 版本中,默認關閉了 fileserver 這個應用(不過,可以在conf/jetty.xml 中開啟);在 5.14.0 版本后,徹底刪除了 fileserver 應用。【所以在滲透測試過程中要確定好 ActiveMQ …

word 使用手冊

word 文檔中如何將下行的指定文字退格到上行中 就像是這樣的 編號:111 密碼:222 編號:123 密碼:321 編號:124 密碼:331 變成 編號:111密碼:222 編號:123密碼&#xff1…

數據結構1:C++實現變長數組

數組作為線性表的一種,具有內存連續這一特點,可以通過下標訪問元素,并且下標訪問的時間復雜的是O(1),在數組的末尾插入和刪除元素的時間復雜度同樣是O(1),我們使用C實現一個簡單的邊長數組。 數據結構定義 class Arr…

華為OD機試 - 來自異國的客人(Java 2024 D卷 100分)

華為OD機試 2024D卷題庫瘋狂收錄中,刷題點這里 專欄導讀 本專欄收錄于《華為OD機試(JAVA)真題(D卷C卷A卷B卷)》。 刷的越多,抽中的概率越大,每一題都有詳細的答題思路、詳細的代碼注釋、樣例測…

新手教學系列——前后端分離API優化版

在之前的文章《Vue 前后端分離開發:懶人必備的API SDK》中,我介紹了通過Object對象自動生成API的方法。然而,之前的代碼存在一些冗余之處。今天,我將分享一個改進版本,幫助你更高效地管理API。 改進版API SDK 首先,讓我們來看一下改進后的代碼: import request from …

深入理解 KVO

在 iOS 中,KVO(Key-Value Observing)是一個強大的觀察機制,它的底層實現相對復雜。KVO 利用 Objective-C 的動態特性,為對象的屬性提供觀察能力。 KVO 的底層實現 1. 動態子類化 當一個對象的屬性被添加觀察者時&am…

6、Redis系統-數據結構-01-String

Redis 數據結構簡介 前言 Redis 是一個高性能的內存數據庫,其關鍵在于其數據結構的設計。Redis 數據結構是指底層實現 Redis 鍵值對中值的數據類型的方式。它包括了以下幾種主要對象: String(字符串)對象:最基本的數…

[C++][CMake][流程控制]詳細講解

目錄 1.條件判斷1.基本表達式2.邏輯判斷3.比較4.文件操作5.其他 2.循環1.foreach2.while 1.條件判斷 在進行條件判斷的時候,如果有多個條件,那么可以寫多個elseif,最后一個條件可以使用else,但是開始和結束是必須要成對出現的&am…

WordPress常見問題及簡要說明

1. 如何安裝WordPress? 簡要說明:WordPress是一個流行的內容管理系統,可以幫助用戶快速搭建網站。安裝WordPress需要以下幾個步驟:下載WordPress安裝包、上傳到服務器、創建數據庫、配置數據庫信息、完成安裝。 2. 如何創建一個新的WordPr…

掌握電量脈搏:WebKit 電池狀態(Battery Status API)支持全解析

掌握電量脈搏:WebKit 電池狀態(Battery Status API)支持全解析 隨著移動設備的廣泛使用,Web 應用對設備的電池狀態信息的需求日益增長。Battery Status API 提供了一種方式,允許 Web 應用訪問設備的電池信息&#xff…