被Manus驚到了?OpenAI深夜發(fā)布Agent開發(fā)三劍客!開源一個新的SDK,現(xiàn)場手搓三個Agent!還抖了一個內(nèi)部的料
出品 | 51CTO技術(shù)棧(微信號:blog51cto)
“2025年將是Agent之年,這一年,ChatGPT和我們的開發(fā)工具將從僅僅回答問題,轉(zhuǎn)變?yōu)檎嬲秊槟阍诂F(xiàn)實(shí)世界中做事?!?/p>
上周Manus通用智能體的發(fā)布之后帶火了Claude的MCP框架之后,OpenAI終于坐不住了,今天凌晨一點(diǎn)通過直播的形式,一口氣把自己內(nèi)部工程人員在用的Agent開發(fā)工具發(fā)布了出來。
整體直播不長,只有20分鐘,但足以讓外界從OpenAI的視角來見識一番以全球最先進(jìn)的基座模型來做出來的Agent的效果。
這次直播發(fā)布了三款A(yù)gent開發(fā)工具:一系列內(nèi)置工具、一個新的API以及一個開源SDK。
最大的一個感受是:此次OpenAI演示的Agent,不同之處已經(jīng)突破了文本形式的檢索和輸出,強(qiáng)大的多模態(tài)理解的能力加上computer use工具,可以說打造的Agent的表現(xiàn)體驗(yàn)是超過了Manus的Demo用例的。
話不多說,這就為大家總結(jié)一下。
OpenAI Agent開發(fā)者:拼湊低級API太難受了
OpenAI工程人員將Agent定義為一個能夠獨(dú)立行動、為您完成任務(wù)的系統(tǒng)。2025新年伊始,OpenAI在ChatGPT中發(fā)布了兩種Agent。第一種是“Operator”,它可以瀏覽網(wǎng)頁并為用戶在網(wǎng)絡(luò)上完成任務(wù)。第二種是“Deep Research”,它可以為你生成任何主題的詳細(xì)報告,你只需要提供一個主題,它就可以在15分鐘內(nèi)完成可能需要一周時間的研究并給出答案。
于此同時,OpenAI也推出一系列新工具,能夠讓開發(fā)者能夠輕松構(gòu)建可靠且有用的Agent。OpenAI希望將這些工具以及更多功能通過API提供給開發(fā)者。
不過在剛剛過去的3個月里,OpenAI正在與世界各地的開發(fā)者交流,探討如何讓他們更輕松地構(gòu)建代理。
而據(jù)開發(fā)者反饋,主要有兩點(diǎn),一是模型已經(jīng)準(zhǔn)備就緒。憑借先進(jìn)的推理能力和多模態(tài)理解能力,我們的模型現(xiàn)在能夠完成代理所需的復(fù)雜多步驟工作流。但另一方面,開發(fā)者們表示,他們不得不拼湊來自不同來源的低級API,這不僅困難、速度慢,而且常常顯得脆弱。
因此,OpenAI做了這樣一個決定:今天把這些工具整合成一系列工具、新的API以及新的開源SDK,讓這一切變得更加容易。
內(nèi)置工具好用到絲滑:兩個search、一個computer use
開發(fā)者體驗(yàn)團(tuán)隊的工程師lan、API團(tuán)隊的工程師Steve、API產(chǎn)品團(tuán)隊人員Nick分別介紹了今天OpenAI所推出的所有內(nèi)容。
圖片
先從內(nèi)置工具說起。正如上面圖中所演示的,分別是網(wǎng)絡(luò)搜索工具Web search和文件搜索工具File search。
其中網(wǎng)絡(luò)搜索工具可以允許OpenAI的模型訪問互聯(lián)網(wǎng)上的信息,從而確保用戶的回答和輸出內(nèi)容是最新的。
據(jù)介紹,網(wǎng)絡(luò)搜索工具是為ChatGPT搜索提供動力的工具,它由一個經(jīng)過微調(diào)的GPT-4o或4o mini模型來驅(qū)動。它非常擅長從網(wǎng)絡(luò)上檢索大量數(shù)據(jù),找出相關(guān)信息,并在回答中清晰地引用這些信息。在衡量這類功能的基準(zhǔn)測試中,例如簡單問答的測試中,GPT-4o的得分達(dá)到了90%的頂尖水平。
圖片
而第二個工具,文件搜索工具則是Steve的最愛。去年,OpenAI在輔助API中推出了文件源工具,方便開發(fā)者上傳、嵌入他們的文檔,并輕松地在這些文檔上進(jìn)行RAG操作。而今天,OpenAI則在文件搜索工具中推出兩個新功能。
第一個是元數(shù)據(jù)過濾。通過元數(shù)據(jù)過濾,用戶可以為文件添加屬性,以便輕松篩選出與用戶查詢最相關(guān)的文件。第二個是直接搜索端點(diǎn)。即,用戶現(xiàn)在可以直接搜索向量存儲庫,而無需讓模型填充用戶查詢。
這兩個工具可為最強(qiáng)搭檔,網(wǎng)絡(luò)搜索工具用于公共數(shù)據(jù),文件搜索工具則用于私有數(shù)據(jù)。
第三個工具是計算機(jī)使用(Computer Use)工具。在API中,它被稱為operator,它允許用戶控制所正在操作的計算機(jī)。這可以是一臺虛擬機(jī),也可以是一個只有圖形用戶界面的遺留應(yīng)用程序,但用戶通常沒有API訪問權(quán)限。
如果你想自動化這類任務(wù)并在此基礎(chǔ)上構(gòu)建應(yīng)用程序,就可以使用計算機(jī)使用工具,它配備了計算機(jī)使用模型。這個模型與ChatGPT中的Operator使用的是同一個模型。它在OS世界網(wǎng)絡(luò)、網(wǎng)絡(luò)航海家等基準(zhǔn)測試中表現(xiàn)出色,早期用戶對該模型的反饋也非常積極。
新的API:足夠靈活的響應(yīng)API
在開發(fā)這些工具并考慮如何推出它們時,OpenAI還從第一性原理出發(fā),設(shè)計了最適合這些工具的API。
OpenAI在2023年3月與GPT3.5 Turbo一起發(fā)布了“聊天實(shí)現(xiàn)”功能,當(dāng)時的每個API交互都只是輸入文本和輸出文本。
很快,OpenAI就引入了多模態(tài)模型,圖像、音頻也都具備了理解能力。此外,OpenAI也正在引入工具,還有像o1 Pro、Deep Research、Operator這樣的產(chǎn)品,它們在幕后進(jìn)行了多次模型交互和多次工具調(diào)用。
因此,OpenAI想要構(gòu)建一個足夠靈活的API原語,它支持多輪交互,支持工具,我們稱這個新的API為“響應(yīng)API”。
Steve在現(xiàn)場手搓了一個新API的Agent演示。操作非常簡單,如果你之前使用過“聊天實(shí)現(xiàn)”功能,看起來將非常熟悉:選擇一些上下文,選擇一個模型,然后得到一個回答。只需要在response字段中的補(bǔ)充instruction的內(nèi)容即可。
為了展示響應(yīng)API的強(qiáng)大功能,Steve打算構(gòu)建一個個人時尚助手。
這個例子很有代表性,個人時尚助手首先肯定要了解用戶的喜好。
為此,Steve創(chuàng)建了一個向量數(shù)據(jù)庫,為了直播效果,Steve還爆料稱其中的一些條目是自己團(tuán)隊成員的穿著記錄,他們?yōu)榇艘恢痹谵k公室里跟蹤人們,了解他們的動態(tài)和穿搭。
演示說明:“我們有一個完整的業(yè)務(wù)團(tuán)隊在研究這個,所以我會添加文件搜索工具,并復(fù)制其向量存儲ID。在這里,我實(shí)際上可以將存儲庫中的文件篩選到與你想要的風(fēng)格相關(guān)的文件。所以,我們先從ilan開始。我們將篩選到他的名字,然后返回到這里,我們會刷一下并說‘可以’?!?/p>
不過這些數(shù)據(jù)庫里的數(shù)據(jù)也有可能是陳舊的。這時候?yàn)g覽器工具是一個很好的方式,可以將用戶的最新的信息帶入你的應(yīng)用程序?!八詾榱藶檫@個個人時尚助手創(chuàng)建一個真正好的應(yīng)用程序,我們希望能夠從網(wǎng)絡(luò)上獲取最新數(shù)據(jù),以便我們既有最新信息,也有與你的用戶真正相關(guān)的內(nèi)容。”
為了展示這一點(diǎn),Steve演示了添加網(wǎng)絡(luò)搜索工具的過程?!熬W(wǎng)絡(luò)搜索工具真的很棒,因?yàn)槟氵€可以添加關(guān)于你使用地點(diǎn)的信息?!?/p>
響應(yīng)API理解起來非常簡單,因?yàn)樗梢哉{(diào)用文件搜索工具,也可以調(diào)用網(wǎng)絡(luò)搜索工具,并且可以在一次API響應(yīng)中給出最終答案。為了告訴它我們到底想要什么,讓我們給它一些指令。
比如:我們希望模型在被要求推薦產(chǎn)品時,可以使用文件搜索工具了解Kevin的喜好,然后使用網(wǎng)絡(luò)搜索工具找到他所在位置附近的一家商店,他可能會對那里感興趣。所以,我們可以回去在對話框中提示:“找一件夾克”。
這樣,模型將發(fā)出文件搜索調(diào)用,以了解Kevin過往喜歡穿什么樣的東西。然后,它將發(fā)出網(wǎng)絡(luò)搜索工具調(diào)用,以找到基于他所在位置的他可能會喜歡的東西。所以,模型能夠在一次API調(diào)用的范圍內(nèi),找到很多Patagonia,這實(shí)際上與Kevin的偏好相符?!八恢痹谵k公室里穿很多Patagonia,但一個個人時尚助手如果不為你代購就不算完整?!?/p>
接下來就是重頭戲,computer use。使用計算機(jī)使用預(yù)覽模型和計算機(jī)使用預(yù)覽工具也非常簡單,見下面的現(xiàn)場操作視頻。
圖片
只需要在resonse字段中生命model為computer-use-preview模型即可。
在直播中的例子,該模型要求計算機(jī)提供一個截圖,并在這個計算機(jī)上運(yùn)行一個本地Docker容器。在計算機(jī)上傳完截圖后,該API將查看計算機(jī)的狀態(tài)并發(fā)出另一個動作:點(diǎn)擊、拖動、移動、輸入,然后計算機(jī)將執(zhí)行那個動作。再截一個圖,把它發(fā)回模型,然后它將繼續(xù)以這種方式進(jìn)行,直到它認(rèn)為任務(wù)已經(jīng)完成,然后返回一個最終答案。
開源的代理SDK:更復(fù)雜的Agent怎么辦?
對于那些構(gòu)建更復(fù)雜應(yīng)用程序的人來說,比如你正在構(gòu)建一個客戶支持代理,處理退款的代理應(yīng)用程序,還有另一個處理客戶支持常見問題查詢的,還有處理訂單和賬單的等等??紤]到這一類的Agent,OpenAI去年發(fā)布了一個名為Swarm的SDK,Swarm使代理編排變得容易。
“這本該是一個實(shí)驗(yàn)性和教育性的東西,但企業(yè)用戶中很多人都將其投入生產(chǎn)了?!?/p>
因此,在用戶的倒逼之下,OpenAI決定將Swarm打造成一個生產(chǎn)級的產(chǎn)品,增加許多新功能,并且我們將重新將其命名為代理SDK(Agents SDK)。
據(jù)開發(fā)Swarm的工程師ilan介紹,他花了很多時間與企業(yè)和建設(shè)者合作,幫助他們構(gòu)建代理體驗(yàn),并親眼看到一些簡單的想法在實(shí)際實(shí)施時會變得多么復(fù)雜。
因此,代理SDK的理念是保持簡單想法的簡單性,同時允許你以一種相當(dāng)簡單的方式構(gòu)建更復(fù)雜、更健壯的想法。
初體驗(yàn)上跟上面的Response API有些類似,需要定義代理,有一些指令,同樣需要文件搜索和網(wǎng)絡(luò)搜索這兩個工具。
默認(rèn)情況下,該SDKh會使用Response API,但OpenAI實(shí)際上支持多個供應(yīng)商,任何真正符合“聊天實(shí)現(xiàn)”功能的都可以與代理SDK一起工作。
不過問題在于,比如,你想在個人時尚代理上添加“退貨”,“訂單”等不同的業(yè)務(wù)邏輯,就會讓代理的測試變得困難。
所以,推薦還是按照“多Agent”的思路來進(jìn)行設(shè)計,這樣可以真正分離關(guān)注點(diǎn)并分別開發(fā)和測試它們。
圖片
而在新的SDK中,已經(jīng)預(yù)置了客戶支持代理,可以支持獲取過往訂單并提交退款請求。表面上這些只是普通的Python函數(shù),但實(shí)際上都是Swarm中非常受喜歡的功能。
OpenAI將其這些Python函數(shù)帶到了代理SDK中,并查看其類型推斷或類型簽名,然后自動生成模型需要使用的JSON模式以執(zhí)行這些函數(shù)調(diào)用。然后,一旦完成這些,Agent就可以運(yùn)行代碼并返回結(jié)果。
當(dāng)然,這些Python函數(shù)用戶也可以自定義。
多個代理之間如何互動通信呢?OpenAI提出了“交接”的概念,即一個代理熟悉后,然后將其傳遞給另一個代理。在幕后,你保持整個對話的完整性,只是替換指令和工具,這為你提供了一種方式來分流對話并加載正確的上下文。
所以,還需要在原有的代理之上再創(chuàng)建了一個分流代理,它可以將對話傳遞給時尚助手代理或客戶支持代理。
開發(fā)者肯定關(guān)心系統(tǒng)幕后究竟發(fā)生了什么。通常往往需要開發(fā)者手動添加一些調(diào)試語句,但代理SDK不需要,它的監(jiān)控和追蹤功能是開箱即用的,非常簡潔。
通過OpenAI的追蹤UI,可以看出剛剛每一步都發(fā)生了什么。比如:刷新了頁面;從分流代理開始,發(fā)送了一個請求,進(jìn)行了交接,然后切換到客戶支持代理,它調(diào)用了一個函數(shù);這里值得一說的是,交接在這里是一個一級對象,所以你可以看到我們實(shí)際上將它交給了哪個代理,以及它沒有選擇的其他選項(xiàng),這實(shí)際上是一個非常有用的調(diào)試功能。
一旦進(jìn)入客戶支持代理,你就可以看到它調(diào)用了“獲取過往訂單”函數(shù)。最后,我們得到了一個回復(fù)。
此外,代理SDK還推出了一些其他內(nèi)置的防護(hù)欄,你可以啟用它們,我們有生命周期事件,最重要的是,這是一個開源框架,所以我們會繼續(xù)構(gòu)建它,你很快就可以安裝它。
現(xiàn)在你可以通過pip install OpenAI-middle-dash-agents來安裝,據(jù)悉,OpenAI很快也會推出JavaScript版本。
One More Thing:舊API計劃停用
1.OpenAI此次引入了Response API,但“聊天實(shí)現(xiàn)”功能API并不會消失。OpenAI將繼續(xù)用新模型和能力支持它。不過后續(xù)OpenAI發(fā)布的一些需要這些功能的模型和產(chǎn)品,將僅在Response API中提供。
2.Response API的功能是聊天實(shí)現(xiàn)API支持功能的超集。所以,用戶遷移到Response API時的過程將非常簡單。
3.Assistance API即將遷移。OpenAI根據(jù)所有測試用戶提供的反饋構(gòu)建了Assistance API?!皼]有在AssistanceAPI階段學(xué)到的經(jīng)驗(yàn),我們也不會走到今天?!?/p>
OpenAI將為Response API增加更多功能,使其能夠支持Assistance API所做的一切。一旦完成,該公司就會發(fā)布一個遷移指南,讓應(yīng)用程序無損地從AssistanceAPI遷移到ResponseAPI。
一旦完成,OpenAI計劃停用輔助API。
最后,對于今天的深夜發(fā)布:兩個內(nèi)置工具web search/file search、一個新API(Response)、一個開源的代理SDK,大家如何看待呢?
會不會跟一些網(wǎng)友一樣,覺得有點(diǎn)小遺憾:為什么不是GPT5呢?
不管怎樣,從純對話的Agent到能真正用于生產(chǎn)提效率的高級自主Agent,注定會發(fā)生在2025。
直播回放鏈接:??https://openai.com/live/??
本文轉(zhuǎn)載自??51CTO技術(shù)棧??
