AI Agent(智能體)是近來一個(gè)火熱的話題。我之前也寫了幾篇文章介紹AI Agent方面的應(yīng)用,但并沒有深入挖掘其背后的技術(shù)細(xì)節(jié)。今天這篇文章就來聊一聊AI Agent背后的故事。這是一篇由IBM和微軟的研究人員于2024年4月發(fā)表的名為《The Landscape of Emerging AI Agent Architectures for Reasoning, Planning, and Tool Calling: A Survey》的論文,論文詳細(xì)研究并分析了當(dāng)前AI Agent架構(gòu)的發(fā)展概況,主要關(guān)注AI Agent在實(shí)現(xiàn)復(fù)雜目標(biāo)時(shí)所需的推理、規(guī)劃和工具調(diào)用能力。
AI Agent技術(shù)正逐漸成為解決復(fù)雜任務(wù)中不可或缺的力量,尤其是在推理、規(guī)劃和工具調(diào)用方面發(fā)揮著關(guān)鍵作用。在不同的應(yīng)用場景下,單智能體(single-agent)和多智能體(multi-agent)系統(tǒng)各自展現(xiàn)出獨(dú)特的優(yōu)勢。單智能體系統(tǒng)在任務(wù)定義明確且對(duì)外部反饋依賴較低的情況下表現(xiàn)出色,而多智能體系統(tǒng)則在需要多方協(xié)作和多路徑并行處理任務(wù)的環(huán)境中顯示出其獨(dú)特的優(yōu)勢,但實(shí)現(xiàn)難度較大。為了提升AI Agent系統(tǒng)的有效性,必須對(duì)智能體進(jìn)行細(xì)致的個(gè)性化設(shè)置,配備合適的工具,并賦予其強(qiáng)大的推理能力。此外,清晰的角色定義、動(dòng)態(tài)的團(tuán)隊(duì)構(gòu)建以及高效的信息共享機(jī)制是提高Agent系統(tǒng)性能的另外幾個(gè)關(guān)鍵因素。
目前,AI Agent系統(tǒng)的研究仍面臨一些挑戰(zhàn)和局限性。評(píng)估標(biāo)準(zhǔn)的不一致性、現(xiàn)實(shí)應(yīng)用場景的適應(yīng)性、以及語言模型的內(nèi)在偏差是當(dāng)前研究中需要重點(diǎn)關(guān)注的問題。未來的研究可能會(huì)集中在建立更加全面和客觀的評(píng)估體系上,提高AI Agent系統(tǒng)在真實(shí)世界場景中的可靠性和穩(wěn)?。≧obust)性,并探索減少系統(tǒng)偏差的有效方法。盡管當(dāng)前的AI Agent系統(tǒng)尚未完全成熟,但它們?cè)谔幚硗评怼⒁?guī)劃和工具使用等方面的能力已經(jīng)超越了傳統(tǒng)的靜態(tài)語言模型。隨著技術(shù)的持續(xù)進(jìn)步,預(yù)計(jì)AI Agent將在更多的領(lǐng)域中發(fā)揮關(guān)鍵作用,成為推動(dòng)AI應(yīng)用發(fā)展的重要環(huán)節(jié)。
以下是來自E2B的一張關(guān)于“AI Agents Landscape”的行業(yè)全景圖。
自從ChatGPT發(fā)布以來,第一波生成式AI應(yīng)用大多是基于“檢索增強(qiáng)生成”(Retrieval Augmented Generation,簡寫為RAG)模式,通過聊天界面與文檔語料庫進(jìn)行交互。盡管目前眾多研究正致力于提高RAG系統(tǒng)的穩(wěn)健性,但研究者們也在積極探索下一代AI應(yīng)用的開發(fā),其中AI Agent技術(shù)成為了一個(gè)共同關(guān)注的焦點(diǎn)。
與以往大語言模型(Large Language Model,LLM)的零樣本提示(zero-shot prompting)相比,AI Agent允許用戶進(jìn)行更為復(fù)雜的交互和任務(wù)協(xié)調(diào)。AI Agent系統(tǒng)內(nèi)置了規(guī)劃、循環(huán)、反思等控制機(jī)制,這些機(jī)制充分利用了模型的內(nèi)在推理能力,以實(shí)現(xiàn)從任務(wù)開始到結(jié)束的全流程處理。此外,AI Agent還能夠調(diào)用工具、插件和執(zhí)行函數(shù),這使得它們能夠勝任更多通用性的工作。
目前,學(xué)術(shù)界對(duì)于在解決復(fù)雜任務(wù)時(shí),是單智能體系統(tǒng)還是多智能體系統(tǒng)更為有效,存在一定的討論。單智能體架構(gòu)在處理那些定義清晰、無需其他智能體角色或用戶反饋的任務(wù)時(shí)表現(xiàn)出了其優(yōu)勢。相對(duì)地,多智能體架構(gòu)則在需要多方協(xié)作和能夠采取多條執(zhí)行路徑的情況下,展現(xiàn)出其獨(dú)特的優(yōu)勢。
智能體(Agents):AI Agent是受語言模型驅(qū)動(dòng)的實(shí)體,能夠規(guī)劃并在多次迭代中采取行動(dòng)以執(zhí)行目標(biāo)。智能體架構(gòu)可以由一個(gè)單智能體組成,或者由多個(gè)智能體協(xié)作解決問題。
通常,每個(gè)智能體都被賦予一個(gè)角色個(gè)性(persona)和訪問各種工具的權(quán)限,這些工具將幫助它們獨(dú)立或作為團(tuán)隊(duì)的一部分完成工作。一些智能體還包含一個(gè)記憶組件,可以在消息和提示之外保存和加載信息。在本文中,我們遵循包含“大腦、感知和行動(dòng)”三個(gè)部分的智能體定義。這些組成部分滿足了智能體理解、推理并對(duì)其周圍環(huán)境采取行動(dòng)的最低要求。
【拓展延伸】
我在之前的文章中介紹過的智能體/智能體平臺(tái)包括:ChatGPT的GPT Store(GPTs),字節(jié)跳動(dòng)的Coze和扣子,以及月之暗面的Kimi+,和百度的文心智能體平臺(tái)。這些平臺(tái)初期走的都是單智能體(single-agent)的路線,即由一個(gè)獨(dú)立的智能體完成一項(xiàng)特定的任務(wù)。后來GPTs和Kimi+推出了在對(duì)話過程中以@
的形式使用其他智能體的功能,這便是當(dāng)前多智能體(multi-agent)的雛形。
智能體角色個(gè)性(Agent Persona):智能體角色個(gè)性描述了智能體應(yīng)該扮演的角色或個(gè)性,包括任何特定于該智能體的其他指令。角色個(gè)性還包含智能體可以訪問的任何工具的描述。它們使智能體意識(shí)到自己的角色、工具的目的以及如何有效利用它們。研究人員發(fā)現(xiàn),“塑造的個(gè)性確實(shí)影響了大型語言模型(LLM)在常見下游任務(wù)(例如撰寫社交媒體帖子)中的行為”。與讓模型逐步分解其計(jì)劃的鏈?zhǔn)剿伎迹–oT)相比,使用多個(gè)智能體角色來解決問題的方案也表現(xiàn)出了顯著的改進(jìn)。
工具(Tools):在AI智能體的背景下,工具代表模型可以調(diào)用的任何功能。它們?cè)试S智能體通過拉取或推送信息與外部數(shù)據(jù)源進(jìn)行交互。以專業(yè)合同撰寫智能體為例,該智能體被賦予了一個(gè)明確的角色個(gè)性,詳細(xì)說明了撰寫者的角色定位以及其需要完成的各類任務(wù)。此外,為了輔助合同撰寫智能體更高效地工作,還為其配備了一系列的工具。這些工具包括但不限于:在文檔中添加注釋的功能、閱讀和理解現(xiàn)有文檔內(nèi)容的能力,以及發(fā)送包含最終草稿的電子郵件的工具。通過這些工具,智能體能夠在執(zhí)行合同撰寫任務(wù)時(shí),更加靈活和專業(yè)。
【拓展延伸】
在GPTs或Coze/扣子創(chuàng)建個(gè)性化的智能體時(shí),你可以自定義該智能體所需用到的插件(plugin),以增強(qiáng)智能體的能力。這些插件都是上面提到的智能體的工具。
單智能體架構(gòu)(Single Agent Architectures):這些架構(gòu)由一個(gè)語言模型驅(qū)動(dòng),將獨(dú)立完成所有的推理、規(guī)劃和工具執(zhí)行。智能體被賦予一個(gè)系統(tǒng)提示和完成其任務(wù)所需的任何工具。在單智能體模式中,沒有來自其他AI智能體的反饋機(jī)制;然而,可能有人提供反饋以指導(dǎo)智能體的選項(xiàng)。
多智能體架構(gòu)(Multi-Agent Architectures):這些架構(gòu)涉及兩個(gè)或更多的智能體,每個(gè)智能體可以使用相同的語言模型或一組不同的語言模型。智能體可能可以訪問相同的工具或不同的工具。每個(gè)智能體通常都有自己的角色個(gè)性。
多智能體架構(gòu)可以在任何復(fù)雜性級(jí)別上擁有廣泛的組織形式。在該論文中,研究人員將它們分為兩個(gè)主要類別:垂直和水平。值得一提的是,這些類別代表了一個(gè)范圍的兩端,大多數(shù)現(xiàn)有的架構(gòu)位于這兩個(gè)極端之間。
垂直架構(gòu)(Vertical Architectures):在這種結(jié)構(gòu)中,一個(gè)智能體充當(dāng)領(lǐng)導(dǎo)者,其他智能體直接向其報(bào)告。根據(jù)架構(gòu)的不同,報(bào)告智能體可能只與領(lǐng)導(dǎo)智能體通信。或者,領(lǐng)導(dǎo)者可以定義為所有智能體之間的共享對(duì)話。垂直架構(gòu)的定義特征包括有一個(gè)領(lǐng)導(dǎo)智能體和清晰的分工。
水平架構(gòu)(Horizontal Architectures):在這種結(jié)構(gòu)中,所有智能體都被視為平等的,并且是關(guān)于任務(wù)的一個(gè)群組討論的一部分。智能體之間的通信發(fā)生在一個(gè)共享的線程中,每個(gè)智能體都可以看到其他智能體的所有消息。智能體也可以自愿完成特定任務(wù)或調(diào)用工具,這意味著它們不需要由領(lǐng)導(dǎo)智能體分配。水平架構(gòu)通常用于協(xié)作、反饋和組討論對(duì)任務(wù)總體成功至關(guān)重要的任務(wù)。
AI Agent旨在擴(kuò)展語言模型的能力,以解決現(xiàn)實(shí)世界的任務(wù)。成功的實(shí)現(xiàn)需要強(qiáng)大的問題解決能力,使Agent能夠在新任務(wù)上表現(xiàn)出色。為此,Agent需要具備推理和規(guī)劃的能力,以及調(diào)用與外部環(huán)境互動(dòng)的工具。
推理和規(guī)劃的重要性
推理是構(gòu)成人類認(rèn)知的基礎(chǔ),它賦予我們決策、問題解決以及理解周圍世界的能力。AI Agent若想要在復(fù)雜環(huán)境中有效互動(dòng)、自主做出決策,并在多樣化的任務(wù)中為人類提供幫助,強(qiáng)大的推理能力是不可或缺的。這種“行動(dòng)”與“推理”的緊密結(jié)合,不僅讓智能體能夠迅速掌握新任務(wù),即便在面對(duì)未知情境或信息不明確時(shí),也能做出穩(wěn)健的決策和推理。此外,智能體還需依賴推理能力,以便根據(jù)新的反饋或所學(xué)信息來調(diào)整它們的計(jì)劃。缺乏推理能力的智能體在執(zhí)行直接任務(wù)時(shí),可能會(huì)誤解指令、僅基于字面意思做出響應(yīng),或未能預(yù)見多步驟行動(dòng)的后果。
規(guī)劃是推理能力的另一重要應(yīng)用,通常涉及五種主要方法:任務(wù)分解、多計(jì)劃選擇、外部模塊輔助規(guī)劃、反思與改進(jìn)以及記憶增強(qiáng)規(guī)劃。這些方法使得智能體能夠?qū)?fù)雜任務(wù)細(xì)分為子任務(wù)、從多個(gè)候選計(jì)劃中做出選擇、利用現(xiàn)有的外部計(jì)劃、根據(jù)新信息更新舊計(jì)劃,或借助外部信息來優(yōu)化計(jì)劃。大多數(shù)智能體模型在采取行動(dòng)前,都有一個(gè)專門的規(guī)劃步驟,通過運(yùn)用這些技術(shù)中的一個(gè)或多個(gè)來制定行動(dòng)計(jì)劃。例如,“像圖一樣計(jì)劃”(Plan Like a Graph,PLaG)方法,通過將計(jì)劃視作有向圖,允許多個(gè)步驟并行執(zhí)行,這在處理包含許多獨(dú)立子任務(wù)的復(fù)雜問題時(shí),相比其他方法能顯著提升性能。
有效調(diào)用工具的重要性
與基礎(chǔ)語言模型的直接提示相比,AI Agent的抽象層次更關(guān)鍵地體現(xiàn)在它們能夠調(diào)用多種工具來解決復(fù)雜問題。這些工具賦予了智能體與外部數(shù)據(jù)源進(jìn)行交互的能力,如通過API發(fā)送或檢索信息。通常,需要大量工具調(diào)用的問題往往也伴隨著對(duì)復(fù)雜推理的需求。
無論是單智能體還是多智能體架構(gòu),都可以通過結(jié)合推理和工具調(diào)用步驟來應(yīng)對(duì)具有挑戰(zhàn)性的任務(wù)。在解決這些問題時(shí),智能體通常需要經(jīng)過多次的推理、記憶和反思迭代,以確保問題解決的有效性和準(zhǔn)確性。它們通過將大問題分解為一系列小的子問題,然后順序使用合適的工具來解決每個(gè)子問題。此外,多智能體模式特別擅長處理需要并行處理和高穩(wěn)健性的復(fù)雜任務(wù),因?yàn)槊總€(gè)智能體都能夠獨(dú)立地處理自己的子問題。在多智能體模式中,通常首先將一個(gè)復(fù)雜的大問題分解為若干較小的任務(wù),然后每個(gè)智能體利用自己獨(dú)立的工具集來解決這些任務(wù)。這種方法不僅提高了問題解決的效率,也增強(qiáng)了系統(tǒng)的靈活性和穩(wěn)健性。
對(duì)于單智能體,每種方法在采取行動(dòng)之前都專門設(shè)有一個(gè)針對(duì)問題進(jìn)行推理的階段。研究人員根據(jù)智能體推理和工具調(diào)用能力選擇了ReAct、RAISE、Reflexion、AutoGPT + P和LATS這幾種單智能體架構(gòu)進(jìn)行討論。
研究發(fā)現(xiàn),智能體成功執(zhí)行目標(biāo)任務(wù)取決于適當(dāng)?shù)囊?guī)劃和自我修正。沒有自我評(píng)估和制定有效計(jì)劃的能力,單智能體可能會(huì)陷入無盡的執(zhí)行循環(huán),無法完成給定任務(wù)或返回不符合用戶期望的結(jié)果。當(dāng)任務(wù)需要直接的方法調(diào)用且不需要來自另一個(gè)智能體的反饋時(shí),單智能體架構(gòu)特別有用。
ReAct(推理+行動(dòng))方法是一種讓智能體首先針對(duì)特定任務(wù)形成思考,然后基于這些思考執(zhí)行動(dòng)作并觀察結(jié)果的過程。這種方法在多樣化的語言和決策任務(wù)中相比傳統(tǒng)的零樣本提示(zero-shot prompting)展現(xiàn)出更高的有效性,因?yàn)槟P偷恼麄€(gè)思考過程都被記錄下來了,從而提高了模型的可信度和人類的互操作性。在HotpotQA數(shù)據(jù)集上的評(píng)估中,ReAct方法的幻覺率僅為6%,而使用鏈?zhǔn)剿伎迹–oT)方法的幻覺率為14%。
然而,ReAct方法也有其局限性,尤其是在模型可能會(huì)重復(fù)生成相同的想法和行動(dòng),而未能產(chǎn)生新想法來完成任務(wù)時(shí)。在任務(wù)執(zhí)行過程中引入人類反饋可能會(huì)增強(qiáng)其有效性并提高在現(xiàn)實(shí)世界場景中的適用性。
RAISE方法在ReAct方法的基礎(chǔ)上增加了模擬人類短期和長期記憶的記憶機(jī)制,通過使用臨時(shí)存儲(chǔ)和長期存儲(chǔ)的以往類似案例數(shù)據(jù)集來實(shí)現(xiàn)。這些組件的添加提升了智能體在較長對(duì)話中保持上下文的能力,并且通過微調(diào)模型,即使使用較小的模型也能獲得最佳性能,展現(xiàn)了在效率和輸出質(zhì)量上超越ReAct的優(yōu)勢。盡管RAISE在某些方面顯著改進(jìn)了現(xiàn)有方法,但它在理解復(fù)雜邏輯方面存在挑戰(zhàn),限制了其在多種場景下的實(shí)用性。此外,RAISE智能體在其角色或知識(shí)方面經(jīng)常出現(xiàn)幻覺,例如,一個(gè)沒有明確角色定義的銷售智能體可能會(huì)開始編寫Python代碼,而不是專注于其銷售任務(wù),有時(shí)還可能向用戶提供誤導(dǎo)性或錯(cuò)誤的信息。盡管通過微調(diào)模型解決了一些問題,但幻覺仍是RAISE實(shí)現(xiàn)的一個(gè)限制。
Reflexion是一種單智能體模式,它通過語言反饋實(shí)現(xiàn)自我反思,利用成功狀態(tài)、當(dāng)前軌跡和持久記憶等指標(biāo),結(jié)合大語言模型評(píng)估器為智能體提供具體的反饋,從而提高了成功率并減少了與鏈?zhǔn)剿伎迹–oT)和ReAct方法相比的幻覺發(fā)生。盡管Reflexion在某些方面取得了進(jìn)步,但它也有局限性,包括容易陷入非最優(yōu)的局部最小解,以及使用滑動(dòng)窗口而非數(shù)據(jù)庫來處理長期記憶,這限制了長期記憶的容量。此外,盡管Reflexion在性能上超越了其他單智能體模式,但在需要大量多樣性、探索和推理的任務(wù)上,仍有提升性能的空間。
AutoGPT + P(Planning,規(guī)劃)是一種旨在解決用自然語言指揮機(jī)器人的智能體在推理方面的限制的方法。它結(jié)合了對(duì)象檢測、對(duì)象可利用性映射(OAM)以及由大語言模型驅(qū)動(dòng)的規(guī)劃系統(tǒng),使智能體能夠探索環(huán)境中缺失的對(duì)象、提出替代方案或請(qǐng)求用戶協(xié)助以實(shí)現(xiàn)目標(biāo)。AutoGPT + P首先利用場景圖像來檢測物體,然后語言模型根據(jù)這些物體從四種工具中選擇使用:計(jì)劃工具、部分計(jì)劃工具、建議替代方案工具和探索工具。這些工具不僅允許機(jī)器人生成完成目標(biāo)的完整計(jì)劃,還能夠探索環(huán)境、做出假設(shè)并創(chuàng)建部分計(jì)劃。
然而,語言模型并非完全獨(dú)立生成計(jì)劃。它與一個(gè)經(jīng)典規(guī)劃器協(xié)作,生成目標(biāo)和步驟,后者使用規(guī)劃領(lǐng)域定義語言(PDDL)執(zhí)行計(jì)劃。研究發(fā)現(xiàn),大語言模型目前還無法直接將自然語言指令轉(zhuǎn)換為執(zhí)行機(jī)器人任務(wù)的計(jì)劃,主要是因?yàn)樗鼈兊耐评砟芰κ芟?。通過將LLM的規(guī)劃能力與經(jīng)典規(guī)劃器相結(jié)合,該方法顯著改進(jìn)了其他純粹基于語言模型的機(jī)器人規(guī)劃方法。盡管如此,AutoGPT + P作為一種新興方法,也存在一些缺點(diǎn),包括工具選擇的準(zhǔn)確性不一,有時(shí)可能會(huì)不恰當(dāng)?shù)卣{(diào)用某些工具或陷入循環(huán)。在需要探索的場景中,工具選擇有時(shí)會(huì)導(dǎo)致不合邏輯的探索決策,例如在錯(cuò)誤的地方尋找對(duì)象。此外,該框架在人類交互方面也存在限制,智能體無法尋求澄清,用戶也無法在執(zhí)行期間修改或終止計(jì)劃。
Language Agent Tree Search(LATS)是一種單智能體架構(gòu),它通過使用樹結(jié)構(gòu)來協(xié)同規(guī)劃、行動(dòng)和推理。這種技術(shù)受到蒙特卡洛樹搜索的啟發(fā),將狀態(tài)表示為節(jié)點(diǎn),而采取行動(dòng)則視為在節(jié)點(diǎn)之間的遍歷。LATS使用基于語言模型的啟發(fā)式方法來搜索可能的選項(xiàng),然后利用狀態(tài)評(píng)估器來選擇行動(dòng)。與其他基于樹的方法相比,LATS實(shí)現(xiàn)了自我反思的推理步驟,顯著提升了性能。當(dāng)采取行動(dòng)后,LATS不僅利用環(huán)境反饋,還結(jié)合來自語言模型的反饋,以判斷推理中是否存在錯(cuò)誤并提出替代方案。這種自我反思的能力與其強(qiáng)大的搜索算法相結(jié)合,使得LATS在執(zhí)行各種任務(wù)時(shí)表現(xiàn)出色。
然而,由于算法本身的復(fù)雜性以及涉及的反思步驟,LATS通常比其他單智能體方法使用更多的計(jì)算資源,并且完成任務(wù)所需的時(shí)間更長。此外,盡管LATS在相對(duì)簡單的問答基準(zhǔn)測試中表現(xiàn)良好,但它尚未在涉及工具調(diào)用或復(fù)雜推理的更復(fù)雜場景中得到測試和驗(yàn)證。這意味著盡管LATS在理論上具有強(qiáng)大的潛力,但在實(shí)際應(yīng)用中可能需要進(jìn)一步的調(diào)整和優(yōu)化。
多智能體架構(gòu)通過智能體之間的通信和協(xié)作計(jì)劃執(zhí)行來實(shí)現(xiàn)目標(biāo),為基于技能的智能體分工和來自多樣智能體角色的有益反饋提供了機(jī)會(huì)。這些架構(gòu)通常按階段工作,智能體團(tuán)隊(duì)在每個(gè)規(guī)劃、執(zhí)行和評(píng)估階段動(dòng)態(tài)地創(chuàng)建和重組。這種重組通過為特定任務(wù)分配專門的智能體并在不再需要時(shí)將其移除,實(shí)現(xiàn)了更優(yōu)的結(jié)果。通過將智能體的角色和技能與手頭任務(wù)相匹配,智能體團(tuán)隊(duì)能夠提高準(zhǔn)確性并縮短達(dá)成目標(biāo)的時(shí)間。有效的多智能體架構(gòu)的關(guān)鍵特性包括智能體團(tuán)隊(duì)中的清晰領(lǐng)導(dǎo)、動(dòng)態(tài)團(tuán)隊(duì)構(gòu)建以及團(tuán)隊(duì)成員之間的有效信息共享,以確保重要信息不會(huì)在無關(guān)的閑聊中丟失。
在多智能體系統(tǒng)的背景下,研究和框架(如“Embodied LLM Agents Learn to Cooperate in Organized Teams”、DyLAN、AgentVerse和MetaGPT)展示了如何通過智能體間的協(xié)作來促進(jìn)目標(biāo)的執(zhí)行。這些方法旨在廣泛覆蓋與多智能體模式相關(guān)的關(guān)鍵主題和示例。通過智能體之間的協(xié)作和角色分配,這些架構(gòu)能夠更高效地處理復(fù)雜任務(wù),同時(shí)減少完成任務(wù)所需的時(shí)間和提高整體準(zhǔn)確性。
在Xudong Guo等人的另一個(gè)研究中發(fā)現(xiàn),領(lǐng)導(dǎo)智能體對(duì)于提升多智能體架構(gòu)的表現(xiàn)至關(guān)重要。該架構(gòu)通過設(shè)置一個(gè)領(lǐng)導(dǎo)智能體來實(shí)現(xiàn)垂直管理,同時(shí)允許智能體之間進(jìn)行水平溝通,即除了與領(lǐng)導(dǎo)智能體交流外,智能體們還能相互之間直接交換信息。研究發(fā)現(xiàn),有組織領(lǐng)導(dǎo)的智能體團(tuán)隊(duì)完成任務(wù)的速度比沒有領(lǐng)導(dǎo)的團(tuán)隊(duì)快近10%。此外,他們發(fā)現(xiàn)在沒有指定領(lǐng)導(dǎo)的團(tuán)隊(duì)中,智能體大部分時(shí)間都在相互下達(dá)指令(約占溝通的50%),其余時(shí)間則用于分享信息或請(qǐng)求指導(dǎo)。相反,在有指定領(lǐng)導(dǎo)的團(tuán)隊(duì)中,領(lǐng)導(dǎo)的60%溝通涉及給出方向,促使其他成員更多地專注于交換和請(qǐng)求信息。結(jié)果表明,當(dāng)領(lǐng)導(dǎo)是人類時(shí),智能體團(tuán)隊(duì)最為有效。
除了團(tuán)隊(duì)結(jié)構(gòu)之外,研究強(qiáng)調(diào)采用“批評(píng)-反思”步驟的重要性,用于生成計(jì)劃、評(píng)估表現(xiàn)、提供反饋和重組團(tuán)隊(duì)。他們的結(jié)果表明,具有動(dòng)態(tài)團(tuán)隊(duì)結(jié)構(gòu)和輪流領(lǐng)導(dǎo)的智能體在任務(wù)完成時(shí)間和平均溝通成本上都提供了最佳結(jié)果。最終,領(lǐng)導(dǎo)力和動(dòng)態(tài)團(tuán)隊(duì)結(jié)構(gòu)提高了團(tuán)隊(duì)整體的推理、規(guī)劃和執(zhí)行任務(wù)的能力。
DyLAN(Dynamic LLM-Agent Network,動(dòng)態(tài)LLM-智能體網(wǎng)絡(luò))框架構(gòu)建了一個(gè)專注于復(fù)雜任務(wù)如推理和代碼生成的動(dòng)態(tài)智能體結(jié)構(gòu)。該框架通過評(píng)估每個(gè)智能體在上一輪工作中的貢獻(xiàn)度,并僅將貢獻(xiàn)最多的智能體帶入下一輪執(zhí)行,從而實(shí)現(xiàn)了一種水平式的工作模式,即智能體之間可以相互共享信息,而無需一個(gè)明確的領(lǐng)導(dǎo)者。DyLAN在多種衡量算術(shù)和一般推理能力的基準(zhǔn)測試上展現(xiàn)了提升的性能,這突顯了動(dòng)態(tài)團(tuán)隊(duì)的重要性,并證明了通過持續(xù)地重新評(píng)估和排名智能體的貢獻(xiàn),能夠構(gòu)建出更適合完成特定任務(wù)的多智能體團(tuán)隊(duì)。
AgentVerse是一種多智能體架構(gòu),它通過明確的團(tuán)隊(duì)規(guī)劃來提升AI Agent的推理和問題解決能力。AgentVerse將任務(wù)執(zhí)行劃分為招聘、協(xié)作決策制定、獨(dú)立行動(dòng)執(zhí)行和評(píng)估四個(gè)主要階段,這些階段可以根據(jù)目標(biāo)的進(jìn)展情況重復(fù)進(jìn)行,直至最終目標(biāo)達(dá)成。通過嚴(yán)格定義每個(gè)階段,AgentVerse引導(dǎo)智能體集合更有效地進(jìn)行推理、討論和執(zhí)行。
例如,在招聘階段,智能體會(huì)根據(jù)目標(biāo)進(jìn)展情況被添加或移除,確保在問題解決的任何階段都有合適的智能體參與。研究者發(fā)現(xiàn),水平團(tuán)隊(duì)通常更適合需要協(xié)作的任務(wù),如咨詢,而垂直團(tuán)隊(duì)則更適合那些需要明確劃分責(zé)任和工具調(diào)用的任務(wù)。這種結(jié)構(gòu)化的方法使得AgentVerse能夠有效地指導(dǎo)智能體團(tuán)隊(duì),以適應(yīng)不同任務(wù)的需求,從而提高整體的執(zhí)行效率和問題解決能力。
MetaGPT是一種多智能體架構(gòu),旨在解決智能體在共同解決問題時(shí)可能出現(xiàn)的無效交流問題。在很多多智能體系統(tǒng)中,智能體之間的對(duì)話可能導(dǎo)致無關(guān)緊要的閑聊,這并不有助于推進(jìn)任務(wù)目標(biāo)。MetaGPT通過要求智能體生成結(jié)構(gòu)化的輸出,如文檔和圖表,而非交換非結(jié)構(gòu)化的聊天記錄,來解決這一問題。
此外,MetaGPT還實(shí)現(xiàn)了一種“發(fā)布-訂閱”的信息共享機(jī)制。這種機(jī)制允許所有智能體在一個(gè)地方共享信息,但只閱讀與其各自的目標(biāo)和任務(wù)相關(guān)的信息。這不僅簡化了整體目標(biāo)的執(zhí)行流程,還減少了智能體之間的交流噪聲。在HumanEval和MBPP等基準(zhǔn)測試中,與單智能體架構(gòu)相比,MetaGPT的多智能體架構(gòu)展現(xiàn)出了顯著更好的性能。
無論是單智能體還是多智能體架構(gòu),它們的目標(biāo)都是增強(qiáng)語言模型的功能,使其能夠獨(dú)立或協(xié)同人類用戶來執(zhí)行任務(wù)。當(dāng)前大多數(shù)智能體實(shí)現(xiàn)都遵循計(jì)劃、行動(dòng)和評(píng)估的過程,以迭代解決問題。研究發(fā)現(xiàn),單智能體和多智能體架構(gòu)在復(fù)雜目標(biāo)執(zhí)行上都展現(xiàn)出了引人注目的性能。在各種架構(gòu)中,清晰的反饋、任務(wù)分解、迭代細(xì)化和角色定義都能提高智能體的性能。
在選擇單智能體與多智能體架構(gòu)的典型條件方面,研究發(fā)現(xiàn)單智能體模式通常最適合工具列表有限且流程明確定義的任務(wù)。單智能體架構(gòu)不僅實(shí)現(xiàn)起來相對(duì)簡單,因?yàn)橹恍枰x一個(gè)智能體和一套工具,而且不會(huì)遇到來自其他智能體的不良反饋或分心的無關(guān)對(duì)話。然而,如果它們的推理和細(xì)化能力不強(qiáng),可能會(huì)陷入執(zhí)行循環(huán),無法朝著目標(biāo)取得進(jìn)展。
多智能體架構(gòu)特別適合于那些能夠從多個(gè)智能體角色反饋中受益的任務(wù),比如文檔生成。在這樣的架構(gòu)中,一個(gè)智能體可以對(duì)另一個(gè)智能體所撰寫的文檔給出明確反饋。此外,當(dāng)任務(wù)需要同時(shí)處理多個(gè)不同任務(wù)或工作流程時(shí),多智能體系統(tǒng)也顯示出其效用。研究還表明,在缺乏示例的情況下,多智能體模式相較于單智能體能夠更好地執(zhí)行任務(wù)。由于多智能體系統(tǒng)的復(fù)雜性,它們往往需要有效的對(duì)話管理和明確的領(lǐng)導(dǎo)來指導(dǎo)。
盡管單智能體和多智能體模式在它們的能力表現(xiàn)上存在差異,但研究指出,如果提供給智能體的提示本身已經(jīng)足夠優(yōu)秀,那么多智能體間的討論可能并不能進(jìn)一步提升其推理能力。這意味著,在決定采用單一智能體還是多智能體架構(gòu)時(shí),應(yīng)更多地考慮他們的具體用例和上下文需求,而不是僅僅基于推理能力這一單一標(biāo)準(zhǔn)。
智能體在處理異步任務(wù)執(zhí)行方面扮演著關(guān)鍵角色。雖然單個(gè)智能體有能力同時(shí)啟動(dòng)多個(gè)異步任務(wù),但其工作模式本質(zhì)上并不支持跨不同執(zhí)行線程的責(zé)任分配。這表示,任務(wù)雖然是并發(fā)處理的,但并不等同于由獨(dú)立決策實(shí)體管理的真正并行處理。因此,單個(gè)智能體在執(zhí)行任務(wù)時(shí)必須按順序來,完成一批異步操作后才能繼續(xù)進(jìn)行評(píng)估和下一步操作。相比之下,多智能體架構(gòu)允許每個(gè)智能體獨(dú)立運(yùn)作,從而實(shí)現(xiàn)了更為靈活和動(dòng)態(tài)的職責(zé)分配。這種架構(gòu)不僅使得不同領(lǐng)域或目標(biāo)下的任務(wù)可以同時(shí)進(jìn)行,而且還使得每個(gè)智能體都能夠獨(dú)立地推進(jìn)自己的任務(wù),而不受其他智能體任務(wù)狀態(tài)的制約,體現(xiàn)了一種更為靈活和高效的任務(wù)管理策略。
反饋和人類監(jiān)督對(duì)智能體系統(tǒng)的影響至關(guān)重要。在解決復(fù)雜問題時(shí),我們很少能在第一次嘗試中就提出正確且穩(wěn)健的解決方案。通常,會(huì)先提出一個(gè)可能的解決方案,然后對(duì)其進(jìn)行批評(píng)和改進(jìn),或者咨詢他人以獲得不同角度的反饋。對(duì)于智能體而言,這種迭代反饋和改進(jìn)的理念同樣重要,有助于它們解決復(fù)雜問題。這是因?yàn)檎Z言模型往往在回答的早期就急于給出答案,這可能導(dǎo)致它們逐漸偏離目標(biāo)狀態(tài),形成所謂的“雪球效應(yīng)”。通過實(shí)施反饋機(jī)制,智能體更有可能糾正自己的方向,從而達(dá)到目標(biāo)。
此外,納入人類監(jiān)督可以改善即時(shí)結(jié)果,使智能體的響應(yīng)更符合人類的預(yù)期,減少智能體采取低效或錯(cuò)誤方法解決問題的可能性。至今為止,將人類驗(yàn)證和反饋納入智能體架構(gòu)已被證明能夠產(chǎn)生更可靠和值得信賴的結(jié)果。然而,語言模型也表現(xiàn)出了迎合用戶立場的傾向,即使這意味著放棄公正或平衡的觀點(diǎn)。特別是,AgentVerse論文描述了智能體如何容易受到其他智能體反饋的影響,哪怕這些反饋本身并不合理。這可能導(dǎo)致多智能體架構(gòu)制定出偏離目標(biāo)的錯(cuò)誤計(jì)劃。雖然強(qiáng)有力的提示可以幫助緩解這一問題,但開發(fā)智能體應(yīng)用時(shí)應(yīng)意識(shí)到在實(shí)施用戶或智能體反饋系統(tǒng)時(shí)存在的風(fēng)險(xiǎn)。
在多智能體架構(gòu)中,智能體之間的信息共享和群組對(duì)話存在挑戰(zhàn)。多智能體模式更傾向于進(jìn)行非任務(wù)相關(guān)的交流,比如互相問候,而單智能體模式則因?yàn)闆]有團(tuán)隊(duì)需要?jiǎng)討B(tài)管理,更傾向于專注于手頭任務(wù)。在多智能體系統(tǒng)中,這種多余的對(duì)話可能會(huì)削弱智能體有效推理和正確執(zhí)行工具的能力,最終分散智能體的注意力,降低團(tuán)隊(duì)效率。特別是在水平架構(gòu)中,智能體通常共享一個(gè)群聊,能夠看到對(duì)話中每個(gè)智能體的每一條消息。通過消息訂閱或過濾機(jī)制,可以確保智能體只接收與其任務(wù)相關(guān)的信息,從而提高多智能體系統(tǒng)的性能。
在垂直架構(gòu)中,任務(wù)通常根據(jù)智能體的技能被明確劃分,這有助于減少團(tuán)隊(duì)中的干擾。然而,當(dāng)領(lǐng)導(dǎo)智能體未能向輔助智能體發(fā)送關(guān)鍵信息,且沒有意識(shí)到其他智能體未獲得必要信息時(shí),就會(huì)出現(xiàn)挑戰(zhàn)。這種失誤可能導(dǎo)致團(tuán)隊(duì)混亂或結(jié)果失真。解決這一問題的一種方法是在系統(tǒng)提示中明確包含有關(guān)訪問權(quán)限的信息,以便智能體進(jìn)行適當(dāng)情境的交互。
角色定義對(duì)于單智能體和多智能體架構(gòu)都至關(guān)重要。在單智能體架構(gòu)中,清晰的角色定義確保智能體專注于既定任務(wù),正確執(zhí)行工具,并減少對(duì)其他能力的幻覺。在多智能體架構(gòu)中,角色定義同樣確保每個(gè)智能體都明白自己在團(tuán)隊(duì)中的職責(zé),不會(huì)承擔(dān)超出其描述能力和范圍的任務(wù)。此外,建立一個(gè)明確的團(tuán)隊(duì)領(lǐng)導(dǎo)者可以簡化任務(wù)分配,從而提高多智能體團(tuán)隊(duì)的整體表現(xiàn)。為每個(gè)智能體定義清晰的系統(tǒng)提示,可以減少無效溝通,避免智能體進(jìn)行無關(guān)的討論。
動(dòng)態(tài)團(tuán)隊(duì)的概念,即根據(jù)需要將智能體引入或移出系統(tǒng),也被證明是有效的。這確保了參與規(guī)劃或執(zhí)行任務(wù)的所有智能體都適合當(dāng)前工作的需求,從而提高了團(tuán)隊(duì)的效率和任務(wù)執(zhí)行的相關(guān)性。
無論是單智能體還是多智能體系統(tǒng),在處理需要推理和工具調(diào)用的復(fù)雜任務(wù)時(shí)都表現(xiàn)出色。單智能體在有明確角色定位、工具支持、能夠接收人類反饋,并能逐步向目標(biāo)推進(jìn)的情況下,工作效果最佳。而在構(gòu)建協(xié)作的智能體團(tuán)隊(duì)以共同完成復(fù)雜目標(biāo)時(shí),如果團(tuán)隊(duì)中的智能體具備以下特征之一,將大有裨益:有明確的領(lǐng)導(dǎo)、有清晰的規(guī)劃階段并能根據(jù)新信息不斷優(yōu)化計(jì)劃、能有效過濾信息以優(yōu)化溝通,以及能夠根據(jù)任務(wù)需要調(diào)整團(tuán)隊(duì)成員以確保他們具備相關(guān)技能。智能體架構(gòu)若能融入這些策略之一,其表現(xiàn)很可能會(huì)超越單一智能體系統(tǒng)或缺乏這些策略的多智能體系統(tǒng)。
盡管AI Agent架構(gòu)在很多方面顯著增強(qiáng)了語言模型的功能,但在評(píng)估、整體的可靠性,以及解決由底層語言模型帶來的問題等方面,仍然面臨著挑戰(zhàn)。
盡管大語言模型可以通常通過一套標(biāo)準(zhǔn)化的測試來評(píng)估其理解和推理能力,但對(duì)智能體的評(píng)估卻沒有統(tǒng)一的標(biāo)準(zhǔn)。許多研究團(tuán)隊(duì)為他們開發(fā)的智能體系統(tǒng)設(shè)計(jì)了獨(dú)有的評(píng)估標(biāo)準(zhǔn),這使得不同智能體系統(tǒng)之間的比較變得困難。此外,一些新設(shè)立的智能體評(píng)估標(biāo)準(zhǔn)包含手工打造的復(fù)雜測試集,這些測試集的評(píng)分需要人工完成。雖然這能夠提供對(duì)智能體能力深度評(píng)估的機(jī)會(huì),但它們通常缺乏大規(guī)模數(shù)據(jù)集的穩(wěn)健性,并且由于評(píng)分者可能同時(shí)是智能體系統(tǒng)的開發(fā)者,這也可能引入評(píng)估偏見。此外,智能體在連續(xù)的迭代中生成一致答案的能力也可能因?yàn)槟P汀h(huán)境或問題狀態(tài)的變化而受到影響,這種不穩(wěn)定性在小規(guī)模且復(fù)雜的評(píng)估集中尤為突出。
一些研究人員使用標(biāo)準(zhǔn)的大語言模型基準(zhǔn)來評(píng)估智能體系統(tǒng)的性能。然而,最新研究揭示了這些模型訓(xùn)練數(shù)據(jù)中可能存在數(shù)據(jù)污染問題。當(dāng)基準(zhǔn)測試問題被稍作修改后,模型的性能就會(huì)急劇下降,這一現(xiàn)象能夠證實(shí)數(shù)據(jù)污染的存在。這一發(fā)現(xiàn)對(duì)語言模型及其驅(qū)動(dòng)的智能體系統(tǒng)在基準(zhǔn)測試中取得的高分提出了質(zhì)疑,因?yàn)檫@些得分可能并不真實(shí)反映模型的實(shí)際能力。
同時(shí),隨著LLM技術(shù)的進(jìn)步,現(xiàn)有的數(shù)據(jù)集往往跟不上模型日益增長的能力,因?yàn)檫@些基準(zhǔn)測試的復(fù)雜度水平通常是固定不變的。為了應(yīng)對(duì)這一挑戰(zhàn),研究人員已經(jīng)開始開發(fā)動(dòng)態(tài)基準(zhǔn)測試,這些測試能夠抵御簡單的記憶行為。此外,他們還在探索創(chuàng)建完全合成的基準(zhǔn)測試,這些基準(zhǔn)測試將基于用戶的特定環(huán)境或用例,以更準(zhǔn)確地評(píng)估智能體的性能。盡管這些方法可能有助于減少數(shù)據(jù)污染,但減少人類的參與可能會(huì)增加評(píng)估結(jié)果在準(zhǔn)確性和問題解決能力方面的不確定性。
許多語言模型基準(zhǔn)被設(shè)計(jì)為在沒有工具調(diào)用的單次迭代中解決,例如MMLU或GSM8K。雖然這些對(duì)于衡量基礎(chǔ)語言模型的能力很重要,但它們并不是衡量智能體能力好的標(biāo)準(zhǔn),因?yàn)樗鼈儧]有考慮到智能體系統(tǒng)在多個(gè)步驟上推理或訪問外部信息的能力。StrategyQA通過評(píng)估模型在多個(gè)步驟上的推理能力來改進(jìn)這一點(diǎn),但答案限于是/否響應(yīng)。隨著行業(yè)繼續(xù)轉(zhuǎn)向以智能體為重點(diǎn)的用例,將需要額外的措施來更好地評(píng)估智能體在涉及超出其訓(xùn)練數(shù)據(jù)的工具的任務(wù)中的性能和泛化能力。
一些特定的智能體基準(zhǔn),如AgentBench,評(píng)估基于語言模型的智能體在各種不同環(huán)境中的表現(xiàn),如網(wǎng)頁瀏覽、命令行界面和視頻游戲。這更好地表明了智能體通過推理、規(guī)劃和調(diào)用工具來實(shí)現(xiàn)給定任務(wù)的泛化能力。像AgentBench和SmartPlay這樣的基準(zhǔn)引入了客觀的評(píng)估指標(biāo),旨在評(píng)估實(shí)現(xiàn)的成功率、輸出與人類響應(yīng)的相似度和整體效率。雖然這些客觀指標(biāo)對(duì)于理解實(shí)現(xiàn)的整體可靠性和準(zhǔn)確性很重要,但考慮更微妙或主觀的性能度量也很重要。工具使用效率、可靠性和規(guī)劃穩(wěn)健性等指標(biāo)幾乎和成功率一樣重要,但更難衡量。這些指標(biāo)的許多需要人類專家評(píng)估,與LLM作為評(píng)判的評(píng)估相比,這可能是昂貴且耗時(shí)的。
目前,許多基準(zhǔn)測試主要集中在評(píng)估智能體系統(tǒng)解決邏輯問題或進(jìn)行電子游戲的能力上。這些測試的結(jié)果確實(shí)為我們提供了智能體系統(tǒng)潛在能力的線索,但它們是否能夠準(zhǔn)確反映智能體在現(xiàn)實(shí)世界任務(wù)中的表現(xiàn),目前尚無定論?,F(xiàn)實(shí)世界的數(shù)據(jù)往往更為復(fù)雜和多變,涉及的范圍也遠(yuǎn)超現(xiàn)有基準(zhǔn)測試的覆蓋。
WildBench是一個(gè)典型的例子,它基于與ChatGPT進(jìn)行的570,000次真實(shí)對(duì)話的數(shù)據(jù)集,因此包含了廣泛的任務(wù)和情景,從而更全面地評(píng)估智能體的性能。盡管WildBench能夠覆蓋多樣化的主題,但大多數(shù)現(xiàn)實(shí)世界的基準(zhǔn)測試還是更傾向于專注于特定的任務(wù)。例如,SWE-bench就是一個(gè)專門針對(duì)Python軟件工程任務(wù)的基準(zhǔn)測試,它使用了GitHub上的現(xiàn)實(shí)世界問題集。這種基準(zhǔn)測試在評(píng)估設(shè)計(jì)用于編寫Python代碼的智能體時(shí)非常有用,能夠很好地展示智能體處理代碼相關(guān)問題的推理能力。然而,當(dāng)評(píng)價(jià)智能體處理其他編程語言的能力時(shí),這類基準(zhǔn)測試的參考價(jià)值就會(huì)大打折扣。
語言模型在評(píng)估過程中以及社會(huì)公平性方面常常表現(xiàn)出偏見。此外,智能體系統(tǒng),被指出存在不夠穩(wěn)健的問題,它們有可能展現(xiàn)出不當(dāng)行為,并能產(chǎn)生比傳統(tǒng)語言模型更隱蔽的內(nèi)容,這些都構(gòu)成了嚴(yán)峻的安全挑戰(zhàn)。還有研究觀察到,即使在被引導(dǎo)從特定的政治角度進(jìn)行辯論時(shí),語言模型驅(qū)動(dòng)的智能體仍然傾向于遵循模型內(nèi)部固有的偏見,這可能導(dǎo)致推理過程中的錯(cuò)誤。
隨著智能體所承擔(dān)的任務(wù)變得更加復(fù)雜,以及它們?cè)跊Q策過程中的參與度增加,研究者們需要更加深入地研究并解決這些系統(tǒng)中的偏見問題。這對(duì)研究者來說無疑是一項(xiàng)巨大的挑戰(zhàn),因?yàn)樵趧?chuàng)建可擴(kuò)展和創(chuàng)新的評(píng)估基準(zhǔn)時(shí),通常需要語言模型一定程度的參與。然而,為了真正評(píng)估基于語言模型的智能體的偏見,所采用的基準(zhǔn)測試必須包含人類的評(píng)估,以確保評(píng)估的準(zhǔn)確性和公正性。
AI Agent能夠有效增強(qiáng)LLM語言模型的推理、規(guī)劃和工具調(diào)用能力。無論是單智能體還是多智能體架構(gòu),都展現(xiàn)出了解決復(fù)雜問題所需的問題解決能力。最適宜的智能體架構(gòu)取決于具體的應(yīng)用場景。不過,無論是哪種架構(gòu),表現(xiàn)優(yōu)異的智能體系統(tǒng)通常會(huì)采用以下至少一種策略:明確的系統(tǒng)提示、清晰的領(lǐng)導(dǎo)和任務(wù)分配、專門的推理與規(guī)劃到執(zhí)行再到評(píng)估的流程、靈活的團(tuán)隊(duì)結(jié)構(gòu)、人工或智能體的反饋機(jī)制,以及智能的消息篩選功能。這些技術(shù)的運(yùn)用使得智能體在多種測試基準(zhǔn)中表現(xiàn)得更加出色。
盡管AI驅(qū)動(dòng)的智能體目前展現(xiàn)出巨大的潛力,但它們?nèi)匀幻媾R著一些挑戰(zhàn)和需要改進(jìn)的地方。為了實(shí)現(xiàn)更加可靠的智能體,我們必須在不久的將來解決包括全面的基準(zhǔn)測試、現(xiàn)實(shí)世界的適用性,以及減少語言模型中的有害偏見等問題。研究者通過回顧從靜態(tài)語言模型到更加動(dòng)態(tài)和自主的智能體的演變,旨在提供一個(gè)全面的視角來理解當(dāng)前AI Agent領(lǐng)域的格局,并為那些正在使用現(xiàn)有智能體架構(gòu)或正在開發(fā)定制智能體架構(gòu)的個(gè)體或組織提供有價(jià)值的見解。
聯(lián)系客服