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