一文看懂:四種多Agent范式哪種最好 精華
Multi-Agent Large Language Models for Conversational Task-Solving
在單個大型語言模型多年來主宰人工智能領域的時代,多智能體系統在對話任務解決中嶄露頭角。此前的研究雖已展現出其在推理任務和創新嘗試方面的潛力,但對于其在對話范式方面的局限以及個體智能體的影響,卻缺乏分析。多智能體討論在不同復雜程度任務中的表現怎樣,以及這些對話的結構如何影響進程,都尚不明確。為填補這一空缺,本文對各種討論范式下的多智能體系統進行了系統評估,衡量了它們在生成任務和問答任務中的優劣。
除實驗外,我提出了 2022 至 2024 年 20 項多智能體研究的分類法,接著介紹了在對話任務解決中部署多智能體 LLM 的框架。我證實,盡管多智能體系統在復雜推理任務中表現卓越,憑借專家角色勝過單個模型,但在基礎任務上卻不盡人意。具體而言,我指出了三個出現的挑戰:
1)雖然更長的討論能增強推理能力,但智能體無法始終符合嚴格的任務要求,從而導致問題偏移,使得較短的對話對基礎任務更有效。
2)長時間的討論存在對齊崩潰的風險,給這些系統帶來新的安全隱患。
3)我展示了通過長時間生成造成的討論壟斷,給諸如總結之類的任務帶來了決策公平性的問題。
此項工作揭示了多智能體交互和不同對話范式所帶來的潛力與挑戰,為未來研究如何提升多智能體 LLM 的效率、性能和安全性提供了思路。
??https://arxiv.org/abs/2410.22932??
1.什么是多智能體大語言模型
今年來,生成式人工智能取得重大突破,單個大語言模型應用在問答、創意寫作、代碼生成等任務中取得不俗的效果。但單LLM應用仍然存在諸多問題,比如:偏差、對非事實性陳述過度自信、可解釋性問題,以及無法提供解決更復雜任務所需的多維度推理。
受社會選擇理論啟發,考慮運用多個LLMs來減輕單個模型的局限性,以解決更復雜的任務。這些LLMs被稱作智能體,在協作討論或交流中模擬人類互動。多個智能體可配備不同的專業知識或偏好,從而強化討論效果以及系統相對于單個LLM的響應。在規定輪流發言的固定通信模式下,智能體可被提示探討問題的潛在解決方案。決策機制會檢查智能體之間的一致性,生成優于單個模型的最終輸出。
總體而言,多智能體LLM(Multi-Agent LLM,MALLM)是一個考慮智能體、討論和決策來解決對話問題的概念。
圖片
上圖展示了MALLM(多智能體大型語言模型)與單個模型的思維鏈對比。
MALLM包含三個主要部分:自動角色分配、協作討論和決策制定。
多智能體LLM用戶模擬社會互動,能在對話場景中提升解決問題的能力,其優勢包括:
? 首先,智能體在推理任務上能提升系統相對于單個LLM的響應。
? 其次,每個智能體的不同觀點能減輕響應中的偏差。
? 第三,基于反饋的交流促成一種自我反思機制,減少幻覺內容。
? 第四,多智能體討論通過提供智能體之間有價值的討論日志來解決LLMs的黑箱問題。
? 最后,新穎的多智能體系統為解決像心理理論這類單個模型無法處理的固有多智能體任務奠定了基礎。
2. 多智能體任務的分類
本文作者提出了構成多智能體 LLM 的三個主要支柱:智能體(Agent)、討論(Discussion)和決策(Decision)。
2.1 智能體(Agent)
如下圖,作者將智能體分為兩類:
? 1.參與討論的智能體稱為參與者(Participants):以特定的風格或格式交流,這往往會塑造出一種角色形象。比如,角色形象可以是領域專家,以便更有效地利用訓練數據中的知識,或者是某種個性,讓討論更具活力。
? 2.另外一些稱為支持人(Moderator):比如提出解決方案、控制輪流發言或者確保智能體在討論中維持其角色形象。
圖片
2.1.1 主持人(Moderator)
一些應用/研究引入了一個中心智能體(Moderator)。這個中心智能體的目的在不同研究中有所不同。通常,主持人通過提示或架構設計保持中立,不給討論帶來主觀性。
2.1.1.1 草案提議者(Draft Proposer)
對于某些決策機制,需要反復起草。在這種情況下,可以利用主持人在考慮其他代理的反饋時提出新的解決方案。草案提議者不影響決策,在交流過程中保持客觀。因此,它會被提示將已提出的想法總結成旨在滿足最多代理的草案。
2.1.1.2 順序管理者(Turn Manager)
定義智能體的輪流順序無需預先設定。受脫口秀或商務會議等人類互動的啟發,采用了一個主持人擁有權力決定就某個問題咨詢哪個專業代理。必要時,它還能讓額外的專家代理參與解決問題。這種方式讓討論充滿動態,不遵循通常采用的定義輪流發言的方案。
2.1.1.3 政策反饋(Policy Feedback)
智能體在討論中可能難以找到共識或遵守預定義的準則。此時,政策反饋機制能夠鼓勵智能體的某些行為。
? 采用監督智能體來檢查討論中的智能體在討論時是否忘記了其被塑造的個性。
? 在談判游戲中使用觀察智能體向個別智能體提供關于如何改進談判策略的書面反饋。
2.1.1.4 任務指定者(Task Specifier)
用戶輸入和相應的任務可能非常詳細且難以被多智能體系統理解(例如在軟件開發中)。
比如,不直接把用戶輸入傳遞給智能體。而是在執行前,進一步明確用戶給定的任務。這個步驟能夠提供一個計劃,指示代理如何解決更復雜的任務,比如開發應用程序。
2.1.1.5 狀態分類器(State Classifier)
多智能體的一個關鍵挑戰是決定何時結束交流。比如,采用話語狀態分類器來判斷討論是正在進行、已完成還是代理之間達成一致的可能性不大。雖然將此分類器用于相對簡單的談判游戲,但話語狀態分類器的概念也能應用于其他任務,有可能在似乎難以達成共識的討論中節省計算資源。
2.1.2 參與者(Participant)
參與者是通過提供反饋和改進當前方案為討論做出貢獻的智能體。通常,參與者有獨特的偏好和信念,并基于這些偏好為討論貢獻力量。
2.1.2.1. LLM
每個參與者都配備了一個 LLM 作為核心,生成思維過程并為討論出力。LLM 為其他智能體生成建設性的反饋,改進當前草案,并能通過提示提出新想法。
像 GPT-4 這樣具有高推理能力的模型,能夠為討論提供更優的貢獻,從而在需要強大協作的任務中獲得更高分數。
2.1.2.2 角色形象(Persona)
參與討論的每個智能體都可以被提示代表一種個性、專家角色或類似的屬性。這些屬性被稱為智能體的角色形象。角色形象通過提供更獨特的想法和有主見的反饋來強化討論。它們能夠提升推理和知識密集型任務的表現,比如解謎、創意故事寫作和數學推理。選擇正確的角色形象還能產生偏差較小的結果[69]。
2.1.2.3 記憶(Memory)
為了遵循更類似人類的互動,P采用了一個存儲每個代理討論日志的記憶模塊。
根據討論格式或要解決的任務,不同的智能體可以有不同的討論日志可用,無法獲取全部信息。這些動態還有待進一步探索,因為智能體之間信息差異的影響在多代理問題解決的背景下尚未得到研究。
2.1.2.4 工具(Tools)
由于復雜性或模塊性,某些問題對于 LLM 代理可能頗具挑戰或無法解決。對于此類情況,為智能體配備了外部工具。
理想情況下,參與者能夠根據情況從一組工具中選擇正確的工具。雖然當前的 LLM 代理往往在正確評估情況方面存在問題,但數據集 ToolQA 可用于微調 LLM 代理在正確情況下使用哪些工具。
2.2 討論
智能體之間的交互需要遵循一些準則。這些準則明確了輪到哪個智能體參與討論,以及誰能獲取哪些信息。
圖片
2.2.1 范式(Paradigm)
范式:要明確討論的結構,就得確定智能體是以何種概念進行交流。這往往涉及架構的修改以及討論順序處理的實現。
概述了四種不同的范式,在輪次順序和信息可見性方面存在差異。這些范式分別被稱為記憶(memory)、接力(relay)、報告(report)、和辯論(debate)。
圖片
2.2.1.1 輪次順序(Turn Order)
每個范式的關鍵方面之一是討論中各個智能體的輪次順序。討論可以簡單地進行,即每個智能體都有機會依次參與。更復雜的范式會打亂輪次順序,從而影響信息流向各個代理的速度。
2.2.1.2 可見性(Visibility)
可以對范式進行調整,以限制各個智能體的信息訪問權限。范式中智能體之間的消息可見性可能不同。
例如,一種范式可能允許所有智能體之間交換的消息完全可見,而另一種范式可能將其限制為僅直接交換消息的智能體可見。
2.2.1.3 總結器(Summarizer)
在考慮多輪的討論時,輸入給智能體的提示詞會變得越來越大。即便是最新的LLM也難以有效地利用長上下文信息。可以使用了一個總結模塊,將冗長的初步討論濃縮為關鍵要點。與長上下文輸入相比,對討論記憶進行總結能提高性能。
2.2.1.4 智能體數量(Agent Number)
參與討論的智能體數量對討論的展開方式有重要影響。
增加討論中的參與者數量,推理任務的性能會更好,這可能是由于產生了更多的推理步驟。
將他們的角色分配器與固定和靈活數量的生成角色進行了比較。使用靈活數量的角色優于固定方法,表明 LLM 能夠自行決定一些討論參數。
2.2.2 提示(Prompt)
大多數多智能體系統將指令調整后的 LLM 用作討論的智能體。將這些模型置于推理模式后,會用一般討論設置、任務指令、先前的討論日志以及其他信息(如分配的角色)對其進行提示。提示技術在不同的成果中差異很大,且取決于系統應用。
2.2.2.1 上下文長度
為讓 LLM 參與討論,每個提示中都包含初步討論。較長的提示會導致正確答案的收斂速度變慢。然而,最終共識的質量表現會更好。表面模型性能和效率之間的權衡。
2.2.2.2 角色分配器
使用 LLM 的多智能體系統不使用或僅使用單個角色。不同的任務可能需要或受益于專門的角色,而這些角色的手動定義是勞動密集型的。
LLM 能夠自行找到合適的角色。因此,可以有效地提示 LLM 為任務和示例生成一系列合適的角色。
2.3 決策制定(Decision Making)
圖片
決策制定可以分為三種:投票、共識和樹搜索。
? 投票對類似分類或標注(如多項選擇問答)這類任務頗有用處。若智能體預先給出可能的解決方案,投票機制也能應對生成任務。
? 共識主要用于生成任務,比如創意故事創作。通過迭代反饋循環,所有智能體都對最新草案加以改進。一旦每個智能體都認同最新草案且無需再作修改,便達成了共識。
? 樹搜索有助于遍歷討論中的多種可能路徑以尋得最優解。在將多智能體系統應用于多步驟任務時也能發揮作用。
2.3.1 投票
智能體在討論期間可提出自身草案作為解決生成任務的方案。其他任務可能本身就提供了一組可選標簽(多項選擇)?;谕镀钡臎Q策制定,代理各自對青睞的解決方案進行投票。
? 排名:每個智能體能將可能的解決方案從優至劣進行排序。允許權衡優選方案。通過排名投票,能找到一個在合理程度上滿足眾多智能體的折衷辦法。在先前的工作中,排名投票對人類集體行為的估量頗為有力。
? 累積:采用累積投票,每個代理有固定數量的點數可分配給提出的解決方案。獲點數最多的解決方案當選為最終決策。對于 LLMs,若期望代理間高度一致,累積投票相較排名投票是更優選擇。這是因為累積分配一定數量的點數能通過表明每個代理的(不)同意強度產生一致結果。
? 批準。每個智能體可選擇固定數量的解決方案予以批準。迫使智能體批準固定數量的解決方案或許能減少 LLMs 在決策時的執拗,利于在更開放的任務上更快收斂。批準投票的變體可以寬松些,允許智能體批準較少或不批準解決方案。更具動態性的批準機制在有明確參照的任務上可能展現出更優的情境表現。
2.3.2 共識
生成任務可通過協作創建草案來解決。其直覺在于通過考慮多個智能體的想法來創建草案以生成更優解。共識與投票的不同在于,不是從一組草案中挑選最佳方案,而是對當前草案進行完善,直至滿足共識要求。
? 一致性(Consistency):當反復向一個或多個智能體提示相同任務時,能獲取一組可能的解決方案。Self-Consistency獲取可能的解決方案并檢查其一致性。選取與其他所有解決方案最相似的最一致的方案作為最終答案。Self-Consistency最初是基于單智能體 LLM 提出的,但該機制也能應用于多智能體系統。
? 迭代(Iterative):迭代共識并非一次性生成多個解決方案,而是接連提出新方案。通過持續討論來優化輸出,直至一定數量的智能體滿意。這一理念在諸如 Solo Performance Prompting的提示技術和 PEER等協作模型中得到運用。
2.3.3 樹搜索
智能體針對一個問題給出若干解決方案。從集合中選出最佳方案并非易事。討論過程中提出的各種解決方案可繪制成決策樹,且存在多種遍歷此樹以獲取最優解的方法。多智能體 LLMs 中樹搜索方法帶來的效率問題。探索率過高時,最終解決方案的生成可能會慢許多倍,阻礙其在現實中的應用。因此,搜索樹的方法對效率和性能至關重要。
? 評論家:利用循環中的評論家來挑選被認為是最佳的草案。在每一輪中,智能體制定一組可能的解決方案。評論家(可以是經提示的 LLM 或人類)隨后選出最優解。樹規劃器在執行前生成若干任務計劃。若任務規劃器在遍歷決策樹時出錯,它會在前一個分叉節點繼續遍歷。這兩種變體都不同于蒙特卡羅樹搜索等啟發式方法,因為評論家的選擇標準基于提示工程或人類偏好。
? 啟發式。多智能體對話的決策樹也能以啟發式進行探索。運用啟發式方法,無需額外模型來遍歷此樹。比如,將蒙特卡羅樹搜索適配到多智能體場景中,并通過開發與探索率來把控問題解決流程。依次執行六個步驟(選擇、擴展、評估、模擬、反向傳播和反思),直至任務完成或達到限制。在借助已知的樹搜索算法用于多智能體交互方面,還有諸如波束搜索或最佳優先樹搜索等其他嘗試。雖然這些算法在性能和速度上存在差異,但由于總體概念仍是對樹的啟發式探索,所以它們仍歸為此類。
3. MALLM 框架
圖片
本篇論文作者提出了一個名為 MALLM(MultiAgent LLM)的開源框架,用于處理多智能體。MALLM 提供了一個可定制且模塊化的接口,便于研究多智能體 LLM 的特性與組件。通過調整簡單參數或定義自定義子類,能測試新的構想。提示模板設計得只要有指令就能支持眾多任務。同時,該框架抗錯性強,因并行化的 API 調用而高效,還自帶集成評估管道。
作者使用MALLM框架,對多智能體系統的范式等內容進行深入評估。
3.1 范式的性能是否取決于任務?多智能體系統與思維鏈提示相比如何?
圖片
上標展示了單個智能體(COT)相比的結果:多智能體 LLM 比具有 CoT 的單個 LLM 展現出更強的推理能力,但由于問題漂移,無法完成像翻譯這樣的基本任務。
圖片
上圖對簡單倫理問題和 StrategyQA 數據集的討論范式性能進行了比較。對于戰略 QA 和倫理 QA 等復雜任務,多智能體系統比 CoT 基線有改進。所有范式都將戰略推理能力比 CoT 提高了高達 4.0%的準確率,表面智能體對解決方案的迭代改進的優勢。
按照任務要求,多智能體系統顯示出逐步規劃的能力,優于常用的 CoT 方法。這與之前的工作一致,表明多智能體系統的表現與 CoT 提示相當或更優[5, 60, 71]。
對于基本任務,如抽取式 QA、總結、翻譯和釋義類型生成,并未觀察到多智能體討論相對于基線有顯著改進。
3.2 內部通信結構有多重要?
集中式討論范式能夠提高多智能體 LLM 的倫理一致性。
多智能體討論還使簡單倫理問題數據集的準確率提高了高達 6.6%。表明多智能體系統通常可以改善倫理決策。
報告范式顯著促進了性能提升。在智能體之間的信息可見性方面與其他范式不同。使用報告范式,一個智能體可以查看正在交換的所有消息,而另外兩個智能體彼此從不交互。
使用其他范式(記憶、中繼、辯論),個體智能體的偏好可能在討論期間更多地影響其他智能體的信念。
因此,一個更集中的會話結構,將其他智能體視為顧問,可以鼓勵更一致的決策過程。
3.3 多智能體LLM在識別無法回答的問題上會比單個LLM更有效嗎?
圖片
上圖展示了在抽取式問答數據集 SQuAD 2.0 中回答能力的評估得分。表明系統對于源文檔不支持的無法回答問題的能力。
確定問題的回答能力對于系統減輕或明確不合格答案中的幻覺十分關鍵。然而,在識別無法回答的問題方面,多智能體討論與 CoT 提示相比,表現既沒有明顯更差,也沒有明顯更好。最佳范式(中繼)僅將回答能力檢測的準確率提高了 0.5%。
3.4 長度對任務性能有影響嗎?
因任務而異。推理任務得益于更多的討論輪次,而長時間的討論則會導致倫理一致性崩塌。
圖片
上圖展示了智能體都同意解決方案(即達成共識)之前交換的消息數量。棕色虛線報告了基于交換消息數量的所有范式的平均表現。
對于所有范式和數據集,討論都迅速收斂,在得出最終解決方案之前僅交換了少量消息。通常,智能體對第一個智能體提出的第一個草案感到滿意。
對于記憶、接力和報告范式,討論在三條消息后結束(每個智能體一條消息)。
辯論范式在再次檢查是否達成一致之前強制兩個智能體進行兩輪辯論。因此,這里的辯論范式在五條和十條消息后(分別為 1 輪和 2 輪,每輪五條消息)提前結束。大多數其他討論在前三輪內結束。
表明專家角色的智能體彼此高度一致。
發現對于大多數任務(總結、翻譯、釋義類型生成、抽取式問答),評估分數不會因討論的長度而提升,與基線性能相比還略有下降。似乎是基本任務的常見特征?;蛟S,多智能體系統在幾條消息后就能很快達到可能的最佳結果。然而,個體智能體的偏好卻不必要地拉長了討論,
3.5 內部通信結構有多重要?
所有智能體的全面信息獲取有助于更快達成共識。
圖片
上圖展示了每個范式在達成共識之前按輪數和交換消息數量計算的討論平均長度。
最右側的列表明了范式的輪次順序以及智能體之間的信息獲取情況,范式影響信息吞吐量。
在記憶范式下,智能體交換 4.79 條消息后能最快達成共識。
辯論范式需要交換最多的消息(7.58),因為它要求每個輪次兩個智能體各進行兩輪內部辯論。
與具有相同輪次順序的記憶范式相比,中繼范式的信息吞吐量明顯更差,平均要交換 7 條消息后中繼討論才結束。
表明智能體對討論日志的可見性受限會致使達成共識的速度變慢。同時,記憶和中繼的表現相近。所以,如果響應速度至關重要,討論應采用智能體之間完全透明的范式。
3.6 角色如何影響討論和結果?
角色有益于像戰略QA 或道德QA 這類復雜任務。
但在像翻譯這樣的簡單任務中,可能會使設置過于復雜,損害性能。
圖片
上圖對比了使用三個人物角色和使用兩個人物角色與一個中立草案提議者智能體時的任務表現。
專家角色的影響因任務而異。
當用草案提議者替換一位專家時,像簡單道德問題或 StrategyQA 這樣的復雜任務的性能會受影響。
本文轉載自 ??大語言模型論文跟蹤??,作者:HuggingAGI
