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