今天是跑在很前面的Multi-Agent Systems(MAS)...
▶︎Multi-Agent Systems 多代理人系統是什麼
Multi-Agent 系統就是:由兩個以上的 AI Agent 所組成的系統,透過在一個「共享」的環境中,以協作(合作或交互作用)、競爭的方式,一起實現一個複雜的目標(通常是單一AI Agent 無法解決的問題)。
也就是數個「結合了LLM、工具使用、具長久記憶,能自主性執行複雜任務」的AI Agent,組成國家隊。復仇者聯盟的概念。
想特別指出的是,
Multi-Agent 系統的誕生不是要取代單一 AI Agent。
單一AI Agent可以優秀俐落地處理簡單、直接的單一或少步驟任務,直接且成本更低。
而針對複雜、步驟細瑣、多專業領域、且專業性要求高的任務,則更適合Multi-Agent 系統,透過其專業分工、並行處理、交互驗證,來實現更高效率、更低總體成本。
所以從這一點說,我會認為Multi-Agent 系統最關鍵之處,就在於它能否展現極佳的整合能力,包括技能、資訊、流程協調上。
▶︎Multi-Agent 系統的優秀之處
- 專業能力
- 執行成本與系統維護成本
- 輸出品質(抗錯/Robustness)與排錯效率
- 系統韌性與可擴展性:在系統內,出錯Agent的替代選項更容易尋找(尤其考慮最終output的完整一致性);另,也更易於調整增刪個別 AI Agent,無需重構整個系統。
- 護欄與安全:我想特別再說明一下這一點是因為,在Multi-Agent 系統中,可以為不同 Agent 設置不同的安全護欄。然後再外加一個專門審閱的Agent,柵欄會多很多層。
▶︎Multi-Agent 系統的執行面
*How to build:
Multi-Agent 可以是使用同一款模型(或不同的也可以),內建(或外掛)不同資料庫/工具(APIs)、針對不同的特定能力進行訓練、並有各自匹配(根據該Agent的角色分配)出可徵調的、不同功能AI,然後再連結在一起(中心化,或,去中心化)。
如之前已提到的,Multi-Agent 系統的關鍵與強大,就在於能整合不同類型的 AI 模型 (包括生成式 AI 和非生成式 AI) 協同工作,以完成更複雜的任務。而要達到整合,中心化或去中心化,方向不同、策略不同,需要的工具與能力也隨之不同,但兩者現階段都已是可實現的。
簡單說明中心化,其實就是有一個統籌的總管AI Agent(Coordinator),負責進行所有跨AI Agent的相關工作。
依據目前主流做法,還是以中心化的為主,然後在一些次要項目或單純資訊流通上則可由各Agent之間流通。
*運行流程:
- 初始 Prompt (使用者提出prompt)
- 總管AI Agent(Coordinator)接收 (⇠依據主流「中心化」作法)
接收後,開始進行任務分解、規劃、指派給各 Agent 分頭執行 - 各AI Agent協作與信息傳遞
在這環節中,會包含多輪的迭代和反饋,主要是出於各AI Agent的交互作用,如反饋、審核等等。 - 結果整合與最終輸出
子任務結果統整後回報總管Agent進行最後檢視與修調。
特別說明,從2-4,隨著採取中心化或去中心化的不同,也會相應地在實作上有所不同。
*基礎關鍵機制:
1.對各AI Agent的角色分配 (Role Assignment)
類似R&R,賦予每一個AI Agent明確的職責、任務,並相應的配備有一套特定的技能、知識和可用的工具。
規劃起始的Prompt Engineering很重要,因為:
(a) 聚焦定義Multi-Agent系統要執行的任務類型與內容;
(b) 從整體系統的角度,提出prompt策略,定義需要怎麼樣的AI Agent,定義它們各自的Persona、職責、任務。
2.各AI Agent之間的溝通 (Communication Mechanism)
(a) 設置共享內存數據庫:大家各自將信息寫入一個共享區域,大家都有讀取權限。
(b) 各AI Agent 之間直接進行消息傳遞。
(c) 身處同一個共享環境的「觀察」:透過觀察環境的變化來獲取其他 AI Agent 的行動結果。
3.AI Agent們的協作與規劃 (Coordination & Planning)
如前面提到,統整的幾個面向:
(a) 大家的合作可以是透過中心化,也可以是去中心化的。按照目前主流,大多是有一個Coordinator Agent,總管AI Agent。
(b) Prompt Chaining(&策略)在系統層面,與各AI Agent協作上的引導與規劃都很重要。
(c) AI Agent 們完成任務後的結果反饋,相互之間對結果的審核、批評或提供改進意見,就變成一個大的迭代循環(一如單一AI Agent),逐步完善output。
-
應用場景與案例:
目前商業化的實踐並不常見,但,應用相同框架與原理,以模塊(Module instead of AI Agent)實現,且直接觸及終端消費者的,其實已蠻成熟的了,像是:營銷自動化平台、金融投資AI**。
**註:特別以金融投資應用為例是因為其應用的重點部分是競爭,不止合作。這很有趣,藉由各AI Agent的競爭模擬,為終極任務尋求最佳投資策略、預測最佳投資時間點..等等。對我來說,這個例子很好的展示了競爭如何在Multi-Agent 系統中實現。