成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

OpenDevin:一個面向通用型Agent AI軟件開發(fā)者的開放平臺

發(fā)布于 2024-8-5 01:07
瀏覽
0收藏

OpenDevin:一個面向通用型Agent AI軟件開發(fā)者的開放平臺-AI.x社區(qū)

一、結(jié)論寫在前面

Code ??https://github.com/OpenDevin/OpenDevin??

Benchmark ??https://hf.co/spaces/OpenDevin/evaluation??

Slack ??https://bit.ly/OpenDevin-Slack??

論文標題:OpenDevin: An Open Platform for AI Software Developers as Generalist Agents

論文鏈接:??https://arxiv.org/pdf/2407.16741??

軟件是論文人類擁有的最強大的工具之一;它使熟練的程序員能夠以復(fù)雜而深刻的方式與世界互動。同時,得益于大型語言模型(LLMs)的改進,與周圍環(huán)境互動并產(chǎn)生影響的AIagent 也得到了快速發(fā)展。

論文介紹OpenDevin,這是一個社區(qū)驅(qū)動的平臺,旨在開發(fā)通過軟件與世界交互的通才及專才AI agent 。其特點包括:    

(1) 一種交互機制,允許用戶界面、agent 和環(huán)境通過強大而靈活的事件流架構(gòu)進行交互。

(2) 一個由沙盒操作系統(tǒng)和一個網(wǎng)頁瀏覽器組成的環(huán)境,agent 可以利用這些環(huán)境來完成任務(wù)。

(3) 一個接口,允許agent 以類似于實際軟件工程師的方式與環(huán)境交互。論文提供agent 以下能力:(a) 創(chuàng)建復(fù)雜的軟件,(b) 執(zhí)行代碼,以及(c) 瀏覽網(wǎng)站以收集信息。

(4) 多agent 委托,允許多個專業(yè)agent 協(xié)同工作。

(5) 評估框架,便于對agent 在廣泛任務(wù)上的表現(xiàn)進行評估。

重要的是,OpenDevin不僅是一個概念框架,還包括了agent 、環(huán)境和評估的全面且即用的實現(xiàn)。截至目前,OpenDevin包含一個擁有超過10個已實現(xiàn)agent 的agent 中心,其中包括一個基于CodeAct架構(gòu)實現(xiàn)的強大通用agent,并增加了網(wǎng)頁瀏覽[52]和代碼編輯功能[2]。用戶通過聊天界面與系統(tǒng)交互,該界面可視化agent 的當前動作并允許實時反饋。此外,評估框架目前支持15個基準測試,論文用這些基準來評估論文的agent。

二、論文的簡單介紹

2.1 論文的背景

隨著AIagent 逐漸能夠解決復(fù)雜問題,其開發(fā)與評估也變得更具挑戰(zhàn)性。近期,眾多努力致力于創(chuàng)建開源框架以促進agent 的開發(fā)。這些agent 框架通常包含:

(1) agent 與世界交互的接口(如基于JSON的函數(shù)調(diào)用或代碼執(zhí)行)

(2) agent 運作的環(huán)境

(3)人機或agent 間通信的交互機制。這些框架通過多種方式簡化了開發(fā)流程(見表1,SC部分)。

在設(shè)計AIagent 時,論文還可考慮人類如何與世界互動。目前,人類與世界互動的最強方式是通過軟件——軟件驅(qū)動著論文生活的方方面面,從基本需求的物流支持到科學(xué)技術(shù)及AI本身的進步。鑒于軟件的強大功能及其在高效開發(fā)、使用和部署方面的現(xiàn)有工具,它為AIagent 以復(fù)雜方式與世界交互提供了理想的接口。然而,構(gòu)建能夠有效開發(fā)軟件的agent 也帶來了獨特的挑戰(zhàn)。論文如何使agent 能夠有效創(chuàng)建和修改復(fù)雜軟件系統(tǒng)中的代碼?論文如何為他們提供工具,以便實時收集信息進行問題調(diào)試或獲取任務(wù)所需信息?論文如何確保開發(fā)過程的安全性,避免對用戶系統(tǒng)產(chǎn)生負面影響?    

2.2 OpenDevin架構(gòu)

論文使用OpenDevin描述了:(1) 如何定義和實現(xiàn)agent ,(2) 每個動作執(zhí)行如何導(dǎo)致觀察結(jié)果,(3) 如何可靠地管理和執(zhí)行agent 僅使用的技能,以及(4) 如何將多個agent 組合在一起以解決任務(wù)。圖3提供了概覽。

2.2.1 agent 定義與實現(xiàn)

一個agent 能夠感知環(huán)境狀態(tài)(例如,先前的動作和觀察結(jié)果),并在解決用戶特定任務(wù)時產(chǎn)生執(zhí)行動作。

狀態(tài)與事件流。在OpenDevin中,狀態(tài)是一種數(shù)據(jù)結(jié)構(gòu),封裝了agent 執(zhí)行所需的所有相關(guān)信息。該狀態(tài)的一個關(guān)鍵組成部分是事件流,它是一個按時間順序排列的過去動作和觀察結(jié)果的集合,包括agent 自身的動作和用戶交互(例如,指令、反饋)。然而,狀態(tài)不僅僅局限于事件流。    

OpenDevin:一個面向通用型Agent AI軟件開發(fā)者的開放平臺-AI.x社區(qū)

圖1:OpenDevin 用戶界面(UI,SD)允許用戶查看文件、檢查執(zhí)行的bash命令/Python代碼、觀察agent 的瀏覽器活動,并直接與agent 交互。

還包括agent 操作的輔助信息,例如LLM調(diào)用的累積成本、用于跟蹤多agent 委托的元數(shù)據(jù)以及其他執(zhí)行相關(guān)參數(shù)。

行動。受 CodeAct [63] 啟發(fā),OpenDevin 通過一組核心通用行動將agent 與環(huán)境連接。IPythonRunCellAction 和 CmdRunAction 使agent 能在沙盒環(huán)境(如安全隔離的 Linux 操作系統(tǒng))中執(zhí)行任意 Python 代碼和 bash 命令。BrowserInteractiveAction 允許使用 BrowserGym 引入的特定領(lǐng)域語言與網(wǎng)絡(luò)瀏覽器交互?;诰幊陶Z言(PL)的行動空間既強大又靈活,可使用不同形式的工具(如 Python 函數(shù)、REST API 等)執(zhí)行任何任務(wù) ,同時保持可靠性和易維護性。這種設(shè)計也兼容需要預(yù)定義工具列表的現(xiàn)有工具調(diào)用agent。用戶可以輕松使用 OpenDevin 原始行動支持的 PL 定義工具(如為計算器編寫 Python 函數(shù)),并通過類 JSON 的函數(shù)調(diào)用體驗 使這些工具可供agent 使用。此外,框架強大的基于 PL 的原語使agent 能在直接相關(guān) API 不可用時自行創(chuàng)建工具(如生成 Python 函數(shù) )。    

觀察。觀察描述agent 觀察到的環(huán)境變化。這可能由agent 的行動引起,也可能不是:它可以是 1) 用戶指示agent 執(zhí)行特定任務(wù)的自然語言消息,2) agent 先前行動的執(zhí)行結(jié)果(如代碼執(zhí)行結(jié)果、可訪問性樹 、網(wǎng)頁截圖等)。

實現(xiàn)新agent 。agent 抽象設(shè)計簡單而強大,允許用戶輕松創(chuàng)建和定制各種任務(wù)的agent 。agent 抽象的核心在于 step 函數(shù),它以當前狀態(tài)為輸入,基于agent 邏輯生成適當?shù)男袆印D 2 展示了agent 抽象的簡化示例代碼。通過提供這種抽象,OpenDevin 允許用戶專注于定義所需的agent 行為和邏輯,而無需關(guān)心行動執(zhí)行的底層細節(jié)。

 

OpenDevin:一個面向通用型Agent AI軟件開發(fā)者的開放平臺-AI.x社區(qū)

圖 3:OpenDevin 由三個主要組件組成:1) agent 抽象,社區(qū)可以在此貢獻不同實現(xiàn)的agent (S2.1)到agent 中心(S3);2) 事件流,用于跟蹤動作和觀察的歷史記錄;3) agent 運行時,執(zhí)行所有agent 動作并轉(zhuǎn)化為觀察結(jié)果(2.2)

2.2.2 agent 運行時:動作執(zhí)行如何產(chǎn)生觀察結(jié)果

agent 運行時提供了一個通用環(huán)境,使agent 具備與人類軟件開發(fā)者相當?shù)膭幼骺臻g,使 OpenDevin agent 能夠處理廣泛的軟件開發(fā)和基于網(wǎng)絡(luò)的任務(wù),包括復(fù)雜的軟件開發(fā)工作流程、數(shù)據(jù)分析項目、網(wǎng)頁瀏覽任務(wù)等。它允許agent 訪問 bash 終端以運行代碼和命令行工具,使用 Jupyter 筆記本進行即時編寫和執(zhí)行代碼,并與網(wǎng)絡(luò)瀏覽器交互以進行基于網(wǎng)絡(luò)的任務(wù)(例如,信息搜索)。    

Linux SSH 沙盒。對于每個任務(wù)會話,OpenDevin 會啟動一個安全隔離的 Docker 容器沙盒,其中所有來自agent 的 bash 命令都在此執(zhí)行。OpenDevin 通過 SSH 協(xié)議連接到沙盒,執(zhí)行agent 發(fā)送的任意命令,并將執(zhí)行結(jié)果作為觀察結(jié)果返回給agent 。一個可配置的工作區(qū)目錄,包含用戶希望agent 處理的文件,會被掛載到這個安全沙盒中,供 OpenDevin agent 訪問。

Jupyter IPython。Linux 沙盒還支持運行一個交互式 Jupyter 服務(wù)器,agent 可以使用它進行交互式 Python 代碼執(zhí)行和調(diào)試。

Web 瀏覽器。OpenDevin 實現(xiàn)了一個基于 Playwright 的 Chromium 瀏覽器。它通過 BrowserGym 定義的一組瀏覽器動作原語 與agent 進行交互,例如導(dǎo)航、點擊、輸入、滾動。執(zhí)行這些動作后,瀏覽器運行時會提供關(guān)于瀏覽器當前狀態(tài)的豐富觀察結(jié)果,包括 HTML、DOM、可訪問性樹、截圖、打開的標簽頁等。這些觀察結(jié)果還可以通過可配置的屬性進行增強,使agent 更好地理解網(wǎng)頁觀察結(jié)果,例如使用截圖上的標記集、可見元素標記、焦點元素、可交互元素標記、視口內(nèi)元素過濾 等。

表1:不同AIagent 框架的比較。SwE指的是“軟件工程”。標準化工具庫:如果框架包含可重用的工具用于不同的agent 實現(xiàn);內(nèi)置沙盒與代碼執(zhí)行:如果支持沙盒執(zhí)行任意agent 生成的代碼;內(nèi)置網(wǎng)頁瀏覽器:如果為agent 提供完全功能的網(wǎng)頁瀏覽器訪問;人機協(xié)同:如果支持多輪人機協(xié)同(例如,人類可以在任務(wù)執(zhí)行過程中中斷agent ,和/或提供額外反饋和指令);AgentHub:如果托管多種agent 實現(xiàn);評估框架:如果提供對實施agent 在挑戰(zhàn)性基準上的系統(tǒng)評估;agent 質(zhì)量控制(QC):如果框架集成測試(SE)以確保整體框架軟件質(zhì)量    

OpenDevin:一個面向通用型Agent AI軟件開發(fā)者的開放平臺-AI.x社區(qū)

2.2.3 agent技能:可擴展的agent-計算機接口

SWE-Agent強調(diào)了精心設(shè)計的agent-計算機接口(ACI,即特定任務(wù)的專用工具)在成功解決復(fù)雜任務(wù)中的重要性。然而,創(chuàng)建、維護和分發(fā)大量工具可能是一個艱巨的工程挑戰(zhàn),尤其是在論文希望這些工具可供不同agent實現(xiàn)使用時。為了應(yīng)對這些挑戰(zhàn),論文構(gòu)建了AgentSkills庫,這是一個旨在增強agent能力的工具箱,提供了通過基本bash命令或Python代碼不易獲得的實用程序。

易于創(chuàng)建和擴展工具。AgentSkills設(shè)計為包含不同實用函數(shù)(即工具)的Python包,這些函數(shù)會自動導(dǎo)入到Jupyter IPython環(huán)境中(82.2)。將Python函數(shù)定義為工具的簡易性降低了社區(qū)成員為技能庫貢獻新工具的門檻。Python包的通用性也使得不同的agent實現(xiàn)能夠通過論文的核心動作IPythonRunCellAction輕松利用這些工具。

嚴格測試和維護。論文遵循軟件工程的最佳實踐,為AgentSkills中的工具編寫了廣泛的單元測試,以確保其可靠性和可用性。

納入標準與理念。在AgentSkills庫中,論文的目標并非包裝所有可能的Python包并重新教授agent 其使用方法(例如,LLM已知曉能讀取CSV文件的pandas庫,因此論文無需再創(chuàng)建工具來教導(dǎo)agent 讀取相同文件格式)。論文僅在以下情況添加新技能:(1)對于LLM而言,直接編寫代碼實現(xiàn)該功能并非易事(例如,編輯代碼并替換特定行),和/或(2)涉及調(diào)用外部模型(例如,調(diào)用語音轉(zhuǎn)文本模型,或代碼編輯模型)。    

當前支持的技能。AgentSkills庫包含從SWE-Agent[72]改編的文件編輯工具,如edit file,允許從指定行修改現(xiàn)有文件;滾動功能scroll up和scroll down用于查看文件的不同部分。此外,它還包含支持閱讀多模態(tài)文檔的工具,如parse-image和parse-pdf,分別利用視覺-語言模型(例如,GPT-4V)從圖像中提取信息和從PDF中讀取文本。

2.2.4 agent 委托:協(xié)作多agent 交互

OpenDevin同樣支持多個agent 之間的交互。為此,論文采用了一種特殊動作類型AgentDelegateAction,使一個agent 能夠?qū)⑻囟ㄗ尤蝿?wù)委托給另一個agent 。例如,具備有限網(wǎng)頁瀏覽能力的通用型CodeActAgent,可以通過AgentDelegateAction將網(wǎng)頁瀏覽任務(wù)委托給專門的BrowsingAgent,以執(zhí)行更復(fù)雜的瀏覽活動(例如,導(dǎo)航網(wǎng)頁、點擊按鈕、提交表單,等等)。

2.3 AgentHub:社區(qū)貢獻agent 的集線器

基于論文的agent 抽象,OpenDevin支持廣泛的社區(qū)貢獻agent 實現(xiàn),供終端用戶選擇,并作為不同agent 任務(wù)的基準。

CodeAct Agent。CodeActAgent 是基于 CodeAct 框架 的默認通用型agent 。在每個步驟中,agent 可以(1)通過自然語言與人類交流,以請求澄清、確認等,或者(2)通過執(zhí)行代碼(即 CodeAct)來完成任務(wù),包括執(zhí)行 bash 命令、Python 代碼或特定于瀏覽器的編程語言。這種通用動作空間使得agent (v1.5 及以上版本)能夠執(zhí)行多種任務(wù),包括編輯文件、瀏覽網(wǎng)頁、運行程序等。

瀏覽agent 。論文實現(xiàn)了一個名為 Browsing Agent 的通用型網(wǎng)絡(luò)agent ,作為網(wǎng)絡(luò)agent 任務(wù)的簡單而有效的基線。該agent 類似于 WebArena中的agent ,但具有改進的觀察和動作,僅使用零樣本提示。在每個步驟中,agent 通過任務(wù)描述、瀏覽動作空間描述、使用可訪問性樹的當前瀏覽器觀察、先前動作以及帶有鏈式思考推理的動作預(yù)測示例來提示大型語言模型(LLM)。LLM 的預(yù)期響應(yīng)將包含鏈式思考推理以及預(yù)測的下一個動作,包括完成任務(wù)并向用戶傳達結(jié)果的選項。

GPTSwarm agent 。GPTSwarm 開創(chuàng)性地使用可優(yōu)化的圖來構(gòu)建agent 系統(tǒng),通過模塊化統(tǒng)一語言agent 框架。每個節(jié)點代表一個獨特的操作,而邊定義協(xié)作和通信路徑。這種設(shè)計允許自動優(yōu)化節(jié)點和邊,推動多agent 系統(tǒng)的進步。    

微型agent (Micro Agent)。此外,OpenDevin 支持創(chuàng)建微型agent ,這是一種針對特定任務(wù)的agent 。微型agent 復(fù)用了現(xiàn)有通用agent (例如,CodeAct Agent)的大部分實現(xiàn)。其設(shè)計旨在降低agent 開發(fā)的門檻,社區(qū)成員可以分享針對其特定用例表現(xiàn)良好的專用提示。無需編程,用戶只需提供agent 的名稱、描述、輸入和輸出的模式,以及可選的專用提示(例如,展示如何執(zhí)行特定任務(wù)的示例演示),即可創(chuàng)建微型agent ,例如生成 git 提交消息的 CommitWriterAgent,以及用于糾正整個代碼庫拼寫錯誤的 TypoFixerAgent。

2.4 評估

為了系統(tǒng)地跟蹤構(gòu)建通用數(shù)字agent 的進展,如表 2 所示,論文將 15 個已建立的基準集成到 OpenDevin 中。這些基準涵蓋軟件工程、網(wǎng)頁瀏覽和雜項輔助任務(wù)。這里論文將 OpenDevin 與不基于基準內(nèi)容進行手動提示工程的開源可復(fù)現(xiàn)基線進行比較。請注意,為了簡潔起見,本節(jié)余下部分論文將 OpenDevin 簡稱為 OD。

2.4.1 結(jié)果概覽

在 OpenDevin 中,論文的目標是開發(fā)能夠通過軟件接口與世界交互的通用數(shù)字agent。論文認識到,軟件agent 不僅應(yīng)在代碼編輯方面表現(xiàn)出色,還應(yīng)在網(wǎng)頁瀏覽和各種輔助任務(wù)中表現(xiàn)優(yōu)異,例如回答有關(guān)代碼倉庫的問題或進行在線研究。

表 2:OpenDevin 中的評估基準    

OpenDevin:一個面向通用型Agent AI軟件開發(fā)者的開放平臺-AI.x社區(qū)

表 3:OpenDevin agent 的選定評估結(jié)果(84)。完整結(jié)果請參見表 4(軟件)、表 5(網(wǎng)頁)、表 6(雜項輔助)

OpenDevin:一個面向通用型Agent AI軟件開發(fā)者的開放平臺-AI.x社區(qū)

表3展示了一系列精選的評估結(jié)果。盡管OpenDevinagent 在每個類別中可能無法達到頂尖性能,但它們的設(shè)計考慮到了通用性。值得注意的是,同一個CodeActagent ,無需對其系統(tǒng)提示進行任何修改,就在三大任務(wù)類別(軟件開發(fā)、網(wǎng)頁交互和雜項任務(wù))中展示了競爭性的表現(xiàn)。與通常為特定任務(wù)類別設(shè)計和優(yōu)化的基準agent 相比,這一點尤為顯著。   

2.4.2 軟件工程

接下來,論文在表4中報告軟件工程基準的具體結(jié)果。

2.4.2.1 SWE-Bench

SWE-bench旨在評估agent 解決真實GitHub問題的能力,如錯誤報告或功能請求。agent 與倉庫交互并通過文件編輯和代碼執(zhí)行嘗試修復(fù)問題。agent 修改后的代碼倉庫會針對一個測試套件進行測試,該套件包含了從人類開發(fā)者對同一問題的修復(fù)中添加的新測試。每個測試實例都附帶一段“提示文本”,包含自然語言建議,指導(dǎo)如何解決問題。在本文中,論文報告的所有結(jié)果均未使用提示文本。為了便于訪問和高效測試,創(chuàng)建了一個規(guī)范子集,即SWE-bench Lite。出于成本節(jié)約考慮,論文默認使用此子集進行測試。

結(jié)果。如表4所示,論文最新版本的 CodeActAgent v1.8 通用agent ,使用 claude-3.5-sonnet 模型,達到了 26% 的解決率,與其他專門用于軟件開發(fā)的開源agent 相比具有競爭力。論文還使用 gpt-4o-mini 評估了 CodeActAgent v1.8。雖然它僅解決了 6.3% 的問題,但其成本不到其他模型的 1%。

2.4.2.2 HumanEvalFix

HumanEvalFix要求agent 在提供的測試用例幫助下修復(fù)給定函數(shù)中的bug。這些bug的設(shè)計確保了一個或多個測試用例會失敗。論文專注于該基準測試的Python子集,允許模型通過多輪自我調(diào)試來解決bug,并結(jié)合測試執(zhí)行的反饋。論文遵循Muennighoff等人 [37] 的設(shè)置,使用pass@k [8]。

結(jié)果。如表4所示,OpenDevin CodeActAgent成功修復(fù)了Python分支中79.3%的bug。這顯著優(yōu)于所有非agent 方法,幾乎是StarCoder2-15B [28, 32] 性能的兩倍。雖然SWE-Agent達到了87.7%,但Yang等人 [72] 為模型提供了一個完整的示范,展示了成功修復(fù)測試數(shù)據(jù)集中一個bug的樣本軌跡("1-shot"),而論文對OpenDevin的評估是0-shot(無示例)。由于HumanEvalFix是由人類創(chuàng)建的,所有bug都經(jīng)過仔細驗證,在這個基準測試中達到100%是完全可行的,這也是論文在OpenDevin未來迭代中希望實現(xiàn)的目標。    

OpenDevin:一個面向通用型Agent AI軟件開發(fā)者的開放平臺-AI.x社區(qū)

2.4.2.3 ML-Bench

ML-Bench 評估agent 在18個GitHub倉庫中解決機器學(xué)習(xí)任務(wù)的能力。該基準包含9,641個任務(wù),涵蓋169個多樣化的ML問題,要求agent 根據(jù)用戶指令生成bash腳本或Python代碼。在沙盒環(huán)境中,agent 可以迭代執(zhí)行命令并接收反饋,使其能夠逐步理解倉庫上下文并滿足用戶需求。按照原始論文的設(shè)置,論文對ML-Bench的四分之一子集進行agent 評估。

結(jié)果。如表4所示,搭載GPT-4o的OpenDevinagent 在ML-Bench上取得了76.47%的最高成功率,超越了SWE-Agent (42.0470)。性能隨著模型能力的降低而下降。這些結(jié)果展示了Devinagent 在復(fù)雜ML任務(wù)中的有效性。論文注意到,在ML-LLM-Bench設(shè)置下,與非agent 方法相比,agent 顯示出減少幻覺和語法錯誤的潛力[57]。

2.4.2.4 Gorilla APIBench

Gorilla APIBench評估agent 使用API的能力。它包含涉及TorchHub、TensorHub和HuggingFace的任務(wù)。在評估過程中,模型會收到一個與API使用相關(guān)的問題,例如“識別一個能夠?qū)浺糁械目谡Z轉(zhuǎn)換為文本的API”。正確性評估基于模型的API調(diào)用是否在正確的領(lǐng)域內(nèi)。

結(jié)果。如表4所示,使用GPT-4o的OpenDevin以36.4%的成功率,優(yōu)于未專門微調(diào)用于API調(diào)用的基線模型。盡管Gorilla在APIBench上表現(xiàn)更佳,但Patil等人特別針對API調(diào)用對這一模型進行了微調(diào)。

2.4.2.5 ToolQA

ToolQA[81]評估agent 使用外部工具的能力。該基準包括涉及航班狀態(tài)、咖啡價格、Yelp數(shù)據(jù)和Airbnb數(shù)據(jù)等主題的任務(wù),需要使用各種工具,如文本工具、數(shù)據(jù)庫工具、數(shù)學(xué)工具、圖形工具、代碼工具和系統(tǒng)工具。它分為兩個難度級別:簡單和困難。簡單問題側(cè)重于單一工具的使用,而困難問題則強調(diào)推理。在評估中,使用簡單子集來評估工具使用能力。

結(jié)果。與所有基線相比,使用GPT-4o的OpenDevin表現(xiàn)出最高性能。

2.4.2.6 BioCoder

BioCode是一個倉庫級代碼生成基準,評估agent 在生物信息學(xué)相關(guān)任務(wù)上的表現(xiàn),特別是檢索和準確利用上下文的能力。原始提示包含相關(guān)代碼的上下文;然而,論文已將其移除,以展示OpenDevin在多輪交互中進行上下文檢索、自我調(diào)試和推理的能力。BioCoder包含157個Python函數(shù)和50個Java函數(shù),每個函數(shù)針對生物信息學(xué)中的特定領(lǐng)域,如蛋白質(zhì)組學(xué)、基因組學(xué)和其他專業(yè)領(lǐng)域。該基準通過在現(xiàn)有倉庫中生成代碼來針對實際代碼,其中相關(guān)代碼已被屏蔽。    

結(jié)果。表4顯示,使用GPT-4o的OpenDevin達到了44.0\%的成功率。這一成績超越了所有基于提示的非agent 基線模型,其中單獨使用GPT-4僅能達到較低水平。BioCoder被證明是對非agent 方法特別具有挑戰(zhàn)性的基準,因為它們沒有整合任何倉庫級別的檢索方法,使得這些模型缺乏訪問關(guān)鍵的倉庫級別信息,如全局變量和函數(shù)聲明。

表5:OpenDevin網(wǎng)頁瀏覽評估結(jié)果

OpenDevin:一個面向通用型Agent AI軟件開發(fā)者的開放平臺-AI.x社區(qū)

2.4.2.7 BIRD

BIRD 是一個針對文本到SQL任務(wù)(即,將自然語言翻譯成可執(zhí)行SQL)的基準,旨在現(xiàn)實且大規(guī)模的數(shù)據(jù)庫環(huán)境中進行。論文從開發(fā)集中選取300個樣本整合到OpenDevin中,并基于執(zhí)行準確性進行評估。

此外,論文擴展了設(shè)置,允許agent 進行多輪交互以得出最終的SQL查詢,使其能夠通過觀察SQL執(zhí)行結(jié)果來糾正歷史結(jié)果。    

結(jié)果。如表4所示,OpenDevin與GPT-4o在BIRD的一個子集上達到了47.3%的執(zhí)行準確率,展示了OpenDevin作為SQLagent 的潛力。這一結(jié)果優(yōu)于使用代碼LLM進行提示的方法,例如CodeLlama-7B-Instruct(18.3%)和CodeQwen-7B-Chat(31.3%)。

2.4.3 網(wǎng)頁瀏覽

論文在表5中報告了網(wǎng)頁瀏覽基準的評估結(jié)果。

2.4.3.1 WebArena

WebArena 是一個可自托管的、基于執(zhí)行的網(wǎng)頁agent 基準,允許agent 自由選擇完成給定任務(wù)的路徑。WebArena包含812個人工精選的任務(wù)指令,涵蓋購物、論壇、開發(fā)者平臺和內(nèi)容管理系統(tǒng)等多個領(lǐng)域。每個任務(wù)都配有一個手寫的測試用例,通過檢查網(wǎng)頁元素的狀態(tài)或agent 返回的文本答案來驗證agent 的成功。

結(jié)果。從表5中可以看出,論文的BrowsingAgent在使用領(lǐng)域通用提示技術(shù)的LLMagent 中表現(xiàn)出了競爭力。一些agent (例如AutoWebGLM)需要針對WebArena任務(wù)域的手動調(diào)整。這展示了通用瀏覽agent 與領(lǐng)域定制專家agent 之間的性能權(quán)衡,論文選擇更通用的瀏覽agent 作為OpenDevin中的構(gòu)建模塊。

2.4.3.2 MiniWoB

MiniWoBt+是一個交互式網(wǎng)頁基準,內(nèi)置獎勵函數(shù)。任務(wù)在125個不同的極簡網(wǎng)頁界面上合成初始化。與WebArena不同,任務(wù)更簡單,無需頁面變化,步驟更少,并提供低級別的逐步任務(wù)指導(dǎo)。需要注意的是,它包含一部分需要視覺能力才能成功解決的環(huán)境,許多現(xiàn)有工作選擇僅關(guān)注任務(wù)的一個子集。盡管如此,論文報告了全集的性能,并且只包括在全集上評估的基線。

結(jié)果。從表5中論文可以看到,論文的通用型BrowsingAgent在不對環(huán)境進行任何適應(yīng)的情況下,完成了近一半的任務(wù)。然而,由于MiniWoBtt的合成性質(zhì),那些專門為環(huán)境訓(xùn)練的先進agent ,通過強化學(xué)習(xí)或人類行為克隆的方式,幾乎已經(jīng)達到了性能的飽和。這表明在通用型和專家型agent 之間存在著比WebArena基準更大的權(quán)衡。

2.4.4 雜項輔助

雜項輔助基準的結(jié)果在表6中報告。特別是,論文報告了以下結(jié)果:    

2.4.4.1 GAIA

GAIA 評估agent 的通用任務(wù)解決技能,涵蓋不同的現(xiàn)實場景。它要求agent 具備多種能力,包括推理、多模態(tài)理解、網(wǎng)頁瀏覽和編程。GAIA包含466個精選任務(wù),分為三個級別。由于需要將多種工具與agent 集成,設(shè)置GAIA傳統(tǒng)上具有挑戰(zhàn)性,但OpenDevin的基礎(chǔ)設(shè)施(例如,運行時\S2.2,今天2.3)顯著簡化了集成過程。

結(jié)果。在論文的實驗中,論文在GAIA(一級驗證)上取得了32.1的分數(shù),顯著超過了原始的AutoGPT [14]。GAIA對多模態(tài)輸入和網(wǎng)頁導(dǎo)航技能的支持非常敏感,隨著OpenDevin基礎(chǔ)設(shè)施的改進,預(yù)計將進一步提高分數(shù)。

2.4.4.2 GPQA

GPQA 評估agent 在解決高難度研究生級別問題時協(xié)調(diào)工具使用的能力。它包含448個精選且難度較高的生物學(xué)、物理學(xué)和化學(xué)多選題。工具使用(例如,Python)和網(wǎng)絡(luò)搜索通常有助于agent 回答這些問題,因為它們提供了LLM通常無法進行的精確計算,并提供了超出LLM參數(shù)知識庫的信息訪問。

結(jié)果。結(jié)果展示在表6和表7中。論文觀察到,OpenDevin集成支持多種工具使用(例如,用于計算的Python)以及網(wǎng)頁搜索(用于搜索相關(guān)事實),使得生成的agent 能夠更好地解決復(fù)雜的多步驟問題,在GPQA[50]的主要和鉆石子集上分別超越了先前的最先進水平9.6%和12.3%。

2.4.4.3 AgentBench

AgentBench評估agent 在多輪開放式生成環(huán)境中的推理和決策能力。論文選擇了包含144個任務(wù)的代碼基礎(chǔ)操作系統(tǒng)(OS)子集。OpenDevin的agent 通過多輪方式使用bash命令直接與特定任務(wù)的OS交互,結(jié)合交互和推理來自動完成任務(wù)。

結(jié)果。在論文的實驗中(表6),OpenDevin CodeActAgent v1.5在使用gpt-4o的情況下在AgentBench上達到了57.6%的分數(shù),超過了原論文中使用gpt-4的42.4%基線。有趣的是,當使用較弱的模型如gpt-3.5-turbo時,OpenDevinagent 通常表現(xiàn)不如原基線agent 。這一發(fā)現(xiàn)表明,像OpenDevin中實現(xiàn)的通用agent 需要一定的基礎(chǔ)模型能力閾值——特別是遵循指令的能力——才能有效運作。

2.4.4.4 MINT

MINT是一個基準測試,旨在評估agent 通過多輪交互使用工具和由GPT-4模擬的自然語言反饋解決挑戰(zhàn)性任務(wù)的能力。論文使用Eurus[76]中使用的編碼和數(shù)學(xué)子集進行評估。論文遵循與原論文相同的設(shè)置,允許agent 最多進行五次迭代,并給予兩次提出解決方案的機會。    

結(jié)果。如表6所示,OpenDevinagent 在原基準測試中與默認agent 表現(xiàn)相當,數(shù)學(xué)子集上有所改進。

表6:OpenDevin雜項輔助評估結(jié)果

OpenDevin:一個面向通用型Agent AI軟件開發(fā)者的開放平臺-AI.x社區(qū)

2.4.4.5 ProofWriter

ProofWriter是一個合成數(shù)據(jù)集,旨在評估大型語言模型(LLMs)的演繹推理能力。與 Logic-LM [43] 一樣,?論文專注于最具挑戰(zhàn)性的子集,其中包含 600 個需要 5 步推理的實例。為了最小化語義解析潛在錯誤的影響,論文使用 Logic-LM 提供的邏輯形式。    

結(jié)果。如表 6 所示,OpenDevin agent 使用符號求解器來解決任務(wù),達到了與最先進的神經(jīng)符號模型(即 Logic-LM相當?shù)男阅堋?/span>

2.4.4.6 Entity Deduction Arena

實體推理競技場(Entity Deduction Arena,EDA)評估agent 通過戰(zhàn)略性提問推斷未知實體的能力,類似于"20個問題"游戲。這個基準測試考驗agent 在多輪對話中的狀態(tài)跟蹤、戰(zhàn)略規(guī)劃和歸納推理能力。論文評估了兩個數(shù)據(jù)集"Things"(物品)和"Celebrities"(名人),每個數(shù)據(jù)集包含100個實例,并報告這兩個數(shù)據(jù)集的平均成功率。

結(jié)果。表6顯示,CodeActAgent與原論文 報告的結(jié)果相比,產(chǎn)生了可比的性能。

本文轉(zhuǎn)載自 ??AI帝國??,作者: 無影寺

收藏
回復(fù)
舉報
回復(fù)
相關(guān)推薦
主站蜘蛛池模板: 97精品国产手机 | 精品久久影院 | 九九久久精品 | 成人精品国产一区二区4080 | 亚洲成年在线 | 欧美一区二区在线观看 | 国内自拍偷拍 | 日韩在线欧美 | 911影院 | 久久精品99国产精品 | 亚洲91 | 91精品国产91久久久久游泳池 | 欧美一级欧美一级在线播放 | 久久综合激情 | 91在线看网站 | 91国内产香蕉 | 精品综合久久久 | 美美女高清毛片视频免费观看 | 国产日韩欧美 | 日韩看片 | 欧美区在线 | 日本一区二区三区视频在线 | 日韩综合一区 | 91九色porny首页最多播放 | 国产日韩一区二区三区 | 国产aⅴ爽av久久久久久久 | 伊人精品一区二区三区 | av免费观看在线 | 另类专区成人 | 99在线免费视频 | 日韩 欧美 综合 | 国产小视频在线观看 | 久久精品综合网 | 国产美女一区二区三区 | 国产视频第一页 | 黄色一级片aaa | 欧美a在线看 | 玖玖视频 | 国产免费一区二区 | 国产免费福利在线 | 国产国产精品 |