全面超越AutoGPT,面壁智能聯(lián)合清華NLP實驗室開源大模型「超級英雄」XAgent
近日,國內(nèi)領(lǐng)先的人工智能大模型公司面壁智能又放大招,聯(lián)合清華大學 NLP 實驗室共同研發(fā)并推出大模型「超級英雄」——XAgent。
通過任務(wù)測試,XAgent 在真實復雜任務(wù)的處理能力已全面超越 AutoGPT。
- 現(xiàn)已在 GitHub 正式開源,地址 https://github.com/OpenBMB/XAgent
- 案例展示地址:https://x-agent.net/
- 博客地址:https://blog.x-agent.net
XAgent 何許「人」也?
XAgent 是一個可以實現(xiàn)自主解決復雜任務(wù)的全新 AI 智能體,以 LLM 為核心,能夠理解人類指令、制定復雜計劃并自主采取行動。
傳統(tǒng)智能體通常受到人類定制規(guī)則的限制,只能在限定范圍內(nèi)解決問題。它們更像是為人類所用的「工具」,而不是真正的「自主智能體」,難以自主解決復雜問題。
相反,XAgent 被賦予了自主規(guī)劃和決策的能力,使它能夠獨立運行,發(fā)現(xiàn)新的策略和解決方案,不受人類預(yù)設(shè)的束縛。
它的能力已全面超越 AutoGPT,在眾多場景任務(wù)上展示出了驚人的自主性和復雜任務(wù)的求解能力,將 AI 智能體的智能水平提升到了一個全新高度。
那么問題又來了:它是如何實現(xiàn)的呢?
「左右腦」協(xié)同,雙循環(huán)機制
正如人類具備「左腦」 和「右腦」,在處理復雜任務(wù)時通常從「 宏觀」和「微觀」 兩個視角進行考慮,既要針對全局進行統(tǒng)籌和規(guī)劃,也要從執(zhí)行層面來考量。
相較于 AutoGPT,面壁智能和清華大學在 XAgent 的設(shè)計中創(chuàng)新地引入了一種「雙循環(huán)機制」:
- 外循環(huán):負責全局任務(wù)規(guī)劃,將復雜任務(wù)分解為可操作的簡單任務(wù)。
- 內(nèi)循環(huán):負責局部任務(wù)執(zhí)行,專注于細節(jié)。
通過雙循環(huán)機制的協(xié)作,XAgent 如同大模型領(lǐng)域的「超級英雄」,它在應(yīng)對復雜任務(wù)的不同環(huán)節(jié)時,展現(xiàn)出超強的專業(yè)度和豐富的技能。
就像漫威宇宙中的「美隊」,XAgent 既有全局觀的領(lǐng)導力,也有細致入微的執(zhí)行力。
在外循環(huán)中,XAgent 展現(xiàn)出作為一個「規(guī)劃」(PlanAgent)的領(lǐng)導力,它會把復雜任務(wù)拆分成若干簡單任務(wù),并監(jiān)督問題解決的完整過程。
首先,它將給定的復雜任務(wù)分解成更小、更易管理的「子任務(wù)」,生成「初始規(guī)劃」,形成任務(wù)序列。
隨后,它將逐次把每個子任務(wù)傳遞給內(nèi)循環(huán)解決。在這個過程中,外循環(huán)會不斷監(jiān)督任務(wù)的進度和狀態(tài),并根據(jù)反饋對后續(xù)規(guī)劃進行「迭代優(yōu)化」。
在內(nèi)循環(huán)中,XAgent 快速轉(zhuǎn)變身份,展現(xiàn)出作為一個高效「執(zhí)行者」(ToolAgent)的專業(yè)度,確保外循環(huán)傳遞的子任務(wù)達到預(yù)期。
根據(jù)子任務(wù)性質(zhì)的不同,它可以從外部系統(tǒng)中檢索工具,并針對子任務(wù)進行一步步求解。
在子任務(wù)完成后,它將生成當前子任務(wù)執(zhí)行過程的反思,反饋給外循環(huán),指示當前任務(wù)是否完成,以及任務(wù)執(zhí)行中的潛在優(yōu)化點。
如圖所示,用戶給 XAgent 提交了 iris.zip 文件,讓 XAgent 對數(shù)據(jù)進行分析。
可以看到,XAgent 首先通過外循環(huán)將這個任務(wù)分解成了 4 個子任務(wù):
- 對數(shù)據(jù)進行檢查與理解;
- 檢查系統(tǒng)的 Python 環(huán)境,查看相關(guān)數(shù)據(jù)分析庫是否存在;
- 編寫數(shù)據(jù)分析代碼,對數(shù)據(jù)進行處理與分析;
- 根據(jù) python 代碼執(zhí)行結(jié)果撰寫分析報告。
隨后,在執(zhí)行每一個子任務(wù)時,XAgent 通過內(nèi)循環(huán)熟練地使用文件讀寫、 shell 命令、python notebook 及相應(yīng) pandas、sci-kit learn、seaborn、matplotlib 等數(shù)據(jù)分析庫,甚至會對數(shù)據(jù)進行可視化分析。
AutoGPT 在執(zhí)行相同任務(wù)時,并沒有制定檢查 python 環(huán)境與相關(guān)庫的規(guī)劃,而是直接開始寫代碼執(zhí)行,導致使用相關(guān)庫時失敗報錯,最終也沒有完成對數(shù)據(jù)的復雜分析。
人機協(xié)作:智能體交互新范式
雖然 AutoGPT 在一定程度上突破了傳統(tǒng) GPT 模型的局限性,但它仍然存在死循環(huán)、錯誤調(diào)用等執(zhí)行出錯的現(xiàn)象,需要人工干預(yù)才能解決。
而 XAgent 在設(shè)計之初就針對相關(guān)問題進行了考量,并引入了專為增強人機協(xié)作的交互機制:它可以自主與用戶進行交互,并向人類發(fā)出干預(yù)和指導的請求。
對于一個智能體而言,「是否能夠與人類協(xié)作」也是體現(xiàn)其智能程度的重要指標。
首先,XAgent 具備直觀的界面,用戶可以直接覆蓋或修改它提出的建議,從而將 AI 效率與人類的直覺和專業(yè)知識有效結(jié)合。
其次,在面臨陌生挑戰(zhàn)的情況下,XAgent 具備「向人類尋求幫助」能力,它會向用戶征求實時反饋、建議或指導,確保即使在不確定的領(lǐng)域,智能體也能發(fā)揮出最佳作用。
圖片
這種交互范式,將 AI 的自主性與人類的智慧有機融合,展示了人與 XAgent 之間的全新的協(xié)作關(guān)系。
如圖所示,用戶想讓 XAgent 幫忙推薦一些好吃的餐館來和朋友聚會,但是卻沒有提供具體詳細的信息。
這個時候 XAgent 可以意識到目前用戶所提供的信息不夠充足,難以進行推薦,于是向人類提出請求,詢問用戶的傾向地點、預(yù)算范圍、口味喜好、有哪些忌口等等,在得到用戶的反饋后從而提供了推薦的餐廳。
而 AutoGPT 則直接開始到網(wǎng)絡(luò)上搜索餐館信息進行推薦,最終推薦的結(jié)果地點不對,也沒有考慮用戶的預(yù)算,沒有符合用戶的需求。
高效通信語言,超強工具調(diào)用
無論「雙循環(huán)」的運轉(zhuǎn)機制,還是「人機協(xié)作」 的交互能力,在 XAgent 的總體設(shè)計中,面壁智能和清華團隊著重考慮的是智能體的穩(wěn)定、高效和安全等核心特性。
而結(jié)構(gòu)化的通信方式同樣是建立強大、穩(wěn)定智能體的重要因素之一。
XAgent 采用 Function Call 作為其內(nèi)部的通信語言,具備結(jié)構(gòu)化、標準化、統(tǒng)一化等優(yōu)勢。
- 結(jié)構(gòu)化:Function Call 具備清晰且嚴謹?shù)母袷剑梢悦鞔_表述所需內(nèi)容,從而最小化了潛在的錯誤。
- 標準化:Function Call 可以將與外部工具的交互過程標準化,提供一種通用語言,使智能體具備使用和整合多種工具的能力,解決復雜任務(wù)。
- 統(tǒng)一化:通過將信息摘要、任務(wù)規(guī)劃、工具執(zhí)行等所有環(huán)節(jié)轉(zhuǎn)化為特定的 Function Call 形式,確保每個環(huán)節(jié)均以統(tǒng)一的方式進行處理,從而簡化系統(tǒng)設(shè)計。
此外,工具調(diào)用也是評價 AI Agent 是否具備解決復雜問題的重要能力之一。
XAgent 在設(shè)計中原創(chuàng)了工具執(zhí)行引擎 ToolServer,可以實現(xiàn)更安全、高效、可擴展的工具執(zhí)行能力。
它在隔離的 Docker 環(huán)境中運行,確保工具執(zhí)行不會危及主系統(tǒng)的穩(wěn)定性或安全性。
這種設(shè)計帶來多重好處:
- 安全:在 Docker 容器內(nèi)運行工具可以保護主系統(tǒng)免受潛在危害。
- 高效:系統(tǒng)可以根據(jù)需求和使用模式啟動、停止和重啟節(jié)點,實現(xiàn)最佳資源使用。
- 可擴展:方便管理代碼,調(diào)試和擴展性更強。
ToolServer 的關(guān)鍵組件包括:ToolServerNode、ToolServerMonitor、ToolServerManager,在執(zhí)行操作、節(jié)點檢查、周期管理等方面提供強大的能力。
目前,XAgent 的 ToolSever 支持 FileSystemEnv、PythonNotoBook、WebEnv、ExecuteShell、RapidAPIEnv、AskHumanforHelp 等多種工具。
XAgent 不僅可以幫我們做一些簡單的任務(wù),它甚至可以幫助我們訓練模型。
比如,用戶希望能夠?qū)﹄娪霸u論進行分析,判斷一下大眾對電影評價的好壞。這個時候 XAgent 會首先下載 imdb 數(shù)據(jù)集去訓練一個 BERT 模型,并使用訓練好的 BERT 模型對電影評論進行預(yù)測。
釋放大模型潛力,全面超越 AutoGPT
經(jīng)過在一系列任務(wù)中的測試可以看到(如下圖 a、b 所示),基于 GPT-4 的 XAgent 表現(xiàn)效果在所有基準測試中都超過了原始的 GPT-4,并全面超越了 AutoGPT。
這些任務(wù)需要 Agent 推理規(guī)劃和使用外部工具的能力,包括:用搜索引擎回答問題的能力(FreshQA+HotpotQA)、Python 編程能力(MBPP)、數(shù)學推理能力(MATH)、交互式編程能力(InterCode)、具身推理能力(ALFWorld)、真實復雜任務(wù)等。
圖 a:XAgent 在真實復雜任務(wù)處理中全面超越 AutoGPT
圖 b:超越 AutoGPTXAgent 在六大 AI Agent 基準測試中全面領(lǐng)先 GPT-4
可以看出,XAgent 的系統(tǒng)設(shè)計能夠充分釋放 GPT-4 的基礎(chǔ)能力,并達到極高的測試效果和人類傾向(Human Preference)。
這不僅表明 XAgent 在需要推理規(guī)劃的傳統(tǒng) AI 測試中表現(xiàn)出色,而且在處理復雜的實際指令時具有更高的性能
拓展應(yīng)用邊界,堅實技術(shù)基礎(chǔ)
AI Agent 的出現(xiàn)讓整個行業(yè)看到了大模型技術(shù)的重要落地方向,無需進行復雜的 prompt 探索,就可以實現(xiàn)整套工作流的任務(wù)執(zhí)行。
作為具有無限潛能的大模型「超級英雄」,XAgent 可以成為每一個普通的人的「個人助理」。它可以幫助我們規(guī)劃日程,安排行程,管理生活和工作的時間和資源分配。
它還可以自主使用多種數(shù)據(jù)采集、處理和分析工具,全自動地完成對海量數(shù)據(jù)的分析并形成報告,幫助用戶高效獲取重要信息。
此外,XAgent 還能結(jié)合外部工具與自主規(guī)劃算法,根據(jù)環(huán)境信息做出決策,以實現(xiàn)更高效和精確的任務(wù)執(zhí)行。
XAgent 的研發(fā)團隊是由來自面壁智能和清華大學 THUNLP 實驗室的多位大模型領(lǐng)域的專家和學者組建。他們更像是大模型領(lǐng)域的「超級英雄」。
這一創(chuàng)新成果之所以能夠成功推出,正是團隊在長期的科研工作過程中構(gòu)建了一系列前沿創(chuàng)新的大模型 Infra,堅實技術(shù)基礎(chǔ),拓展創(chuàng)新和研發(fā)的邊界。
面壁智能聯(lián)合清華大學 NLP 實驗室、OpenBMB 開源社區(qū)打造了一個「三位一體」 的大模型產(chǎn)學研生態(tài)布局,提出并發(fā)布了多個大模型工具使用框架和引擎:
- Tool Learning:大模型工具學習范式,將專業(yè)工具與大模型的優(yōu)勢相融合,從而在問題解決方面達到更高的準確性、效率和自主性。
- BMTools:大模型學習引擎,是讓語言模型使用擴展工具的開源倉庫,同時也是開源社區(qū)構(gòu)建和共享工具平臺。
- ToolLLM,大模型工具學習框架,給大模型接入 16000+ 真實 API,讓大模型可以通過調(diào)用外部工具以完成更復雜的用戶指令任務(wù)。
- WebCPM,中文領(lǐng)域首個支持聯(lián)網(wǎng)搜索的模型框架,填補國產(chǎn)大模型該領(lǐng)域的空白,讓大模型能像人類一樣在網(wǎng)頁上實時搜索答案,提高了 AIGC 的實時性和準確性。
XAgent 拓展了 AI 智能體在執(zhí)行復雜任務(wù)中的能力上限,讓我們看到大模型技術(shù)融入生產(chǎn)和生活的前沿趨勢和無限潛力。