![]() Agent來襲:AI如何變身軟件界的超級英雄? ?作者|Zhongmei 來源|神州問學 前言 “AI Agent不僅會徹底改變計算機的使用方式,它還將顛覆軟件行業(yè),是一個對科技行業(yè)的沖擊波,是一場自'輸入命令到點擊圖標’變革之后計算機領域的最大變革” ——比爾·蓋茨 AI Agent作為一種新興的人工智能技術,隨著LLM的異軍突起正在同步快速發(fā)展并廣泛應用于各個行業(yè)。AI Agent的概念和框架是理解其功能和潛力的基礎。目前已有數(shù)十篇關于AI Agent的行研報告(列在文末),他們顯示,AI Agent不僅僅是一個工具,這種智能體具備自主性、反應性和交互性,能夠通過獨立思考和調(diào)用工具來逐步完成給定目標。這使得它的應用方向和領域非常廣泛,例如,智能體能夠在可以用于自動化決策過程,提高效率和精確度;能在金融、醫(yī)療、教育等多個領域提供個性化服務。此外,AI Agent還能夠在虛擬與真實世界之間建立橋梁,增強其感知能力和對環(huán)境的理解。同時,關于關于AI Agent的商業(yè)實踐和市場趨勢,多份報告中顯示,AI Agent正成為AI應用層的基本架構,涵蓋toC和toB產(chǎn)品等不同領域。這表明AI Agent技術不僅在學術界受到重視,也在商業(yè)界顯示出巨大的潛力和價值??偨Y(jié)來說,AI Agent行業(yè)的深度梳理揭示了這一領域的快速發(fā)展和廣泛應用前景。隨著技術的進步和市場需求的增加,預計AI Agent將在未來幾年內(nèi)繼續(xù)擴展其影響力,并可能成為推動人工通用智能(AGI)發(fā)展的關鍵因素。 學習AI Agent的設計范式由此變得至關重要,本文將從吳恩達教授(Andrew Ng)在美國紅杉資本的人工智能峰會(AI Ascent)的一場演講內(nèi)容入手 ,探討Agentic Workflow的多步迭代模式和他自己對AI agent設計模式的四種分類,最后作為結(jié)尾,會對美國AI 大廠在研 Agent進行盤點 。 吳恩達對AI Agent的闡述與洞見 'AI Agent 是一個令人興奮的新興趨勢,AI Agentic Workflow比下一代基礎大模型,對AI發(fā)展有著更大的推動作用,所有從事人工智能的人都應該關注。' —— 吳恩達 在AI Asecent上,吳恩達首先指出,現(xiàn)在大多數(shù)人使用LLM的方式,就是輸入一個Prompt,然后等它生成一個答案。(圖1左側(cè)所示)這就好比:給定一個主題,讓一個人去寫文章,這個人就坐在電腦前,從頭到尾不斷打字直到全部寫完,而不允許使用退格鍵。盡管這樣做很困難,但是LLM的表現(xiàn)極其出色。與之形成對比的是 Agentic Workflow(智能體性工作流)。如果一樣是寫論文,那在這種方式下的流程應該是這樣的:先讓LLM寫一個文章大綱,讓它如果需要研究就在互聯(lián)網(wǎng)上進行資料搜集;跟著寫一個草稿,讓LLM自己閱讀自己的第一稿,思考哪些部分需要修改,對文稿進行修改;如此循環(huán)、迭代多次。(圖1右側(cè)所示) ![]() 圖1. 非智能體性工作流vs智能體性工作流 很多人沒有意識到這種Agentic Workflow方式,能帶來多顯著的優(yōu)化效果,但吳恩達表示自己經(jīng)常這樣做,得到的效果往往很驚艷。驚訝于對Agentic Workflow的效果,他的團隊進行了一個案例研究。研究使用了OpenAI在2021年發(fā)布的HumanEval數(shù)據(jù)集(包含164個精心設計的Python編程問題,是評估LLM代碼性能方面業(yè)界公認的基準測試),數(shù)據(jù)集中包含例如,“給定一個數(shù)字列表,找出奇數(shù)位置上的數(shù)字并返回其中的所有奇數(shù)的總和“這樣的問題。 我們平常大多都會采用Zero-Shot(不給大模型具體訓練樣本或標簽提示,直接提問讓其回答)的方式提問,讓 AI 編寫代碼并直接運行,于是AI給了錯誤的回答。但是現(xiàn)實中是沒有人這樣一次過寫成代碼的。實驗結(jié)果顯示,在Zero-shot的方式下,即使是GPT3.5,正確率也僅有48%;GPT-4 更強會做的更好,正確率達到了 67.7%。但是當圍繞著GPT-3.5上使用一個Agentic Workflow,它的實際表現(xiàn)將超越GPT-4。如果在GPT-4上使用代理工作流程,它的表現(xiàn)也非常出色。這意味著Agent對于構建應用程序影響巨大、至關重要。(如圖2所示) ![]() 圖2. GPT3.5和GPT4在不同使用方式下在HumanEval數(shù)據(jù)集上的表現(xiàn) 吳恩達總結(jié)的四種Agent模式 “AI Agent是一個非常混亂、動蕩的領域,存在大量的研究和開源項目,很多團隊做了多種多樣的嘗試,但我試圖將其更具體的劃分為四種模式” —— 吳恩達 圖3呈現(xiàn)的就是吳恩達劃分的四種模式,其中,相對經(jīng)典、業(yè)界廣泛使用的是前兩種:Reflection 和 Tool Use,而Planning 和 Multi-agent 屬于比較新穎、有前景的方式。 ![]() 圖3. Agent推理設計方案總覽 1. Reflection(反思) 首當其沖的Reflection,翻譯成中文是反思,類似于AI 的自我審視和修正。舉例說明:現(xiàn)在讓AI寫一段定義 do_task函數(shù)的代碼,等它寫好后,將生成的代碼,加上類似“仔細檢查這段代碼的正確性、效率和結(jié)構是否良好”,再次返回給AI。這時同一個模型就可能提出其中的bug、給出修改建議并生成更好的代碼版本,如此反復,AI就完成了自我迭代。(圖4所示) ![]() 圖4. AI Agent通過Reflection方式編程 吳恩達表示,Agent Reflection是一個得到廣泛認可、廣為使用的做法。這是一個魯棒性很強的技術,使用它時,實際效果往往都會提升。同時它的使用也可以很靈活,比如上述的案例是Single-agent,但其實也可以使用兩個 Agent,一個撰寫代碼,然后另一個來審查代碼。(圖5所示)同時,這兩個 Agent 可以用相同的 LLM,也可以用不同的,這種 Reflection 的方式在很多場景都適用,實際實現(xiàn)上難度也低。 ![]() 圖5. 撰寫代碼Agent和審查代碼Agent共同通過Reflection方式編程 Recommended reading: Self-Refine: Iterative Refinement with Self-Feedback, Madaan et al. (2023) Reflexion: Language Agents with Verbal Reinforcement Learning, Shinn et al., (2023) 2. Tool Use(工具使用) 第二個設計模式是很多人熟悉的Tool Use(工具使用),如果平時玩GPT-4,對LLM插件肯定不陌生,圖6中,上方左側(cè)顯示的是一個來自Copilot的截圖,顯示當被問及“網(wǎng)評最好的咖啡機“時,調(diào)用了網(wǎng)絡搜索工具;上方右側(cè)展示的是GPT-4對話截圖,顯示當被問及”初始資金100美元,年利率7%,12年后可以得到多少錢“時,LLM調(diào)用了代碼運行工具,生成并運行代碼得到答案。事實上,當前有很多不同的工具被用于分析、獲取信息、采取行動、提升個人生產(chǎn)力。大量文獻也顯示,早期工作中工具幾乎都源于計算機視覺(CV)領域,因為在多模態(tài)大模型出現(xiàn)之前,模型對圖像都無法處理,唯一的選擇就是生成一個可以操作圖像的函數(shù),例如:生成圖像、目標檢測。(圖6下方)所以LLM的Tool Use其實是拓展LLM 的能力邊界的方式。 ![]() 圖6.Tool Use示例 Recommended reading: Gorilla: Large Language Model Connected with Massive APls, Patil et al. (2023) MM-REACT: Prompting ChatGPT for Multimodal Reasoning and Action, Yang et al. (2023) 3. Planning(規(guī)劃) 第三個是 Planning(規(guī)劃),對于大量玩過規(guī)劃算法的人,談論ChatGPT的時候都會驚嘆于人工智能的能力。規(guī)劃指的是,用戶輸入任務后,AI Agent自主將其拆解成AI可以完成的小目標,拆解流程后,選擇工具,調(diào)用并執(zhí)行后輸出結(jié)果。吳恩達表示,自己曾在運行現(xiàn)場實時demo時,遇見一些錯誤,但是AI Agent自主規(guī)避了失敗、順利繼續(xù)運行,最終完成了任務。他接著給出了一個從HuggingGPT 論文中改編的例子:你和LLM說,”請生成一張圖片,圖中的女孩在看書,她的姿勢要和我提供的.jpeg文件中男孩的姿勢相同,最后用語音描述你生成的圖像“,這時AI Agent會規(guī)劃出做法:先提取.jpeg文件中男孩的姿態(tài),這可能就需要在HuggingFace上找到一個合適的模型來提取這個姿勢;接下來再找到一個圖像模型生成一張同樣姿勢的女孩讀書的圖片;跟著用image2text模型描述圖片后,再再用文本-語音模型進行語音合成。(圖7) ![]() 圖7. Planning 示例 吳恩達也強調(diào),他并不是說現(xiàn)在AI Agent可以穩(wěn)定、可靠的工作了,實際上他們有些不穩(wěn)定,但是當它們奏效時,效果確實令人驚嘆。并且,當有了Agent循環(huán),有時可以從前期失敗中恢復過來。所以對于一些研究工作,他已經(jīng)開始使用研究代理,代替自己進行耗時耗力的谷歌搜索過程,幾分鐘后看看它能找到什么,雖然它時而管用,時而不管用,但是已經(jīng)成為了個人工作流程的一部分了。 Recommended reading: Chain-of-Thought Prompting Elicits Reasoning in Large Language Models, Wei et al., (2022) HuggingGPT: Solving Al Tasks with ChatGPT and its Friends in Hugging Face, Shen et al. (2023) 4.Multiagent Collaboration(多智能體合作) 最后一個設計模式是,多Agent合作,可能聽起來很奇特,但是效果可能比你想象中的好。這涉及到使用多個LLMs來共同完成任務,多個AI Agent 之間的合作能夠帶來更加豐富和多樣的輸入,與此同時,模擬出一個更加接近真實工作環(huán)境的場景,這使得不同的AI Agent在同一任務中以不同的角色、用不同專業(yè)知識、不同工具參與迭代,為了共同目標而努力。這就使得LLM由執(zhí)行單一任務的代理,轉(zhuǎn)變成了一個能協(xié)調(diào)復雜工作流程的AI Agent系統(tǒng)。以清華面壁智能的開源項目 ChatDev為例,在項目中,通過提示 LLMs,告訴它們:你現(xiàn)在是軟件工程公司的 CEO、你現(xiàn)在是軟件工程師、你現(xiàn)在是設計師、你現(xiàn)在是產(chǎn)品經(jīng)理.......,告訴他們通過合作,進行拓展對話,開發(fā)一個多人游戲。隨后他們就會花一段時間編寫代碼,測試它,迭代它,并最終生成一個出人意料的復雜程序。(圖8)這種方法的潛在價值巨大,因為它為自動化和提升工作流程的效率提供了新的可能性。 ![]() 圖8. Multiagent Collaboration 示例 Recommended reading: Communicative Agents for Software Development, Qian et al.. (2023) AutoGen: Enabling Next-Gen LLM Applications via Multi-Agent Conversation, Wu et al. (2023) 吳恩達對AI Agent的展望 通往AGI的道路是一場旅程而不是終點,但我相信,Agent能幫助我們在這條漫長征途上邁出微小而堅實的一步。 —— 吳恩達 1. 通過Agent Workflow ,AI 能做的任務將在今年得到大幅擴展。 2. 一個實際上讓人難以習慣的事情是,當我們向 LLM 發(fā)出提示時,我們希望立即得到回應。例如,當你進行網(wǎng)絡搜索時,你希望在半秒鐘內(nèi)得到回應,這就是人性,即時抓取,即時反饋。但是對于許多 Agent Workflow,我們需要耐心等待幾分鐘,甚至幾小時以獲得回應。 3. token生成速度也很重要,因為在這些workflow中,需要不斷的迭代,即使使用質(zhì)量略低但速度更快的語言模型,通過更多輪次的迭代,也可能比使用更高質(zhì)量但速度較慢的模型獲得更好的結(jié)果。 4. 坦率說,我也很期待 Claude4,GPT-5 和 Gemini 2.0 以及所有這些你們正在構建的精彩模型。如果你也在期待Zero-Shot使用GPT-5,你很可能最后發(fā)現(xiàn),你過去在使用某個llm的agent時已經(jīng)得到了和你想象中接近水平的表現(xiàn),這是一個重要的趨勢。 硅谷 AI 大廠在研 Agent ![]() 外媒 The Information 在報告《To Unlock Al Spending, Microsoft, OpenAl and Google Prep Agents》中盤點了Microsoft, OpenAI, Google等等,多個AI巨頭供應商的AI Agent方向,圖9顯示的是匯總表格,覆蓋了三種歸納出的 Agent 類型、主要功能描述、示例,以及正在開發(fā)該類Agent開發(fā)的代表大廠。 1. Computer-using agents(電腦使用型智能體):這類Agent會接管用戶的計算機,通過操作光標和鍵盤,在不同的應用程序間切換以執(zhí)行任務。代表性的示例任務為:Computer-using agents可以自主在用戶文件夾以及在線資源中展開研究工作,進而在類似Google Sheets的應用程序中整理繪制出新的演示文稿。目前,OpenAI、Adept和Google正致力于開發(fā)這種類型的代理。例如:OpenAI 正在悄悄設計類似鋼鐵俠的AI助手「賈維斯」(Jarvis)一樣的Agent: 它可以同時操作不同的應用程序,例如將數(shù)據(jù)從文件傳輸?shù)诫娮颖砀?,自動為你制作下一次會議所需的PPT; 再比如讓它幫忙寫作業(yè),它會打開瀏覽器、搜索分析信息、撰寫論文,最后幫你打印出來。Adept公司被爆料籌集了4億多美元,從零構建人工智能,CEO David Luan 曾表示,Adept利用人們再電腦上工作的視頻對模型進行訓練,這樣他們的AI就可以像人一樣操作電腦,比如,瀏覽網(wǎng)頁在Redfin上找房子,或者在CRM系統(tǒng)中記錄電話。 2. Muti-step application agents(多步驟應用型智能體):這類 Agent 能夠在一個應用程序內(nèi)部,無人工干預情況下,完成多步驟的任務鏈。一個典型的任務示例是, Agent 根據(jù)公司銷售軟件中的數(shù)據(jù)自動起草發(fā)票,然后記錄并匯總客戶的支付信息,微軟和谷歌是這類 Agent 的代表性開發(fā)者。比如,微軟據(jù)現(xiàn)員工曾透露,微軟正在開發(fā)Agent來自動執(zhí)行多種操作,比如根據(jù)客戶的訂單歷史記錄創(chuàng)建、發(fā)送和跟蹤客戶發(fā)票,或者用不同的語言重寫應用程序的代碼,并驗證其是否按預期運行。就在5月21日凌晨,微軟向整個AI PC市場拋入一枚重磅炸彈,發(fā)布了自家最新、最強的“Copilot+PC”。微軟CEOSatya Nadella強調(diào)說,微軟做的不僅是理解我們的電腦,更是可以預測我們想要什么的電腦,將AI進階成“主動式AI”。 3. Web-based task agents(基于網(wǎng)絡的任務型智能體):這類Agent并不直接接管用戶的額設備,而是通過使用不同的在線資源和應用執(zhí)行基于網(wǎng)絡的任務。打個比方是,這類Agent 能夠研究和規(guī)劃用戶的假期行程,并基于該行程預訂旅游住宿。OpenAI 和 Meta 是在這一領域工作的主要公司。據(jù)報道,OpenAI正在開發(fā)一款由微軟支持的革命性AI代理軟件,旨在自動執(zhí)行復雜的網(wǎng)絡任務,如搜集信息、規(guī)劃行程,甚至是訂購機票。而Meta AI Agent則是在Facebook上嶄露頭角,F(xiàn)acebook的在線幫助上,如果受到邀請,或者有人在帖子中提出問題,但一小時內(nèi)沒有人回復,Meta AI Agent將加入群組對話。但是也有用戶反饋Meta的這個Agent過于自主,沒事就進個群聊幾句,還不時給大家伙提提建議,導致部分用戶感到很困惑。 結(jié)語 AI Agent的前景是公認廣闊的,大模型在各個方面都顛覆著人們對AI的認知。從我個人的學習和動手開發(fā)的過程中,有一些小小的看法: 1. AI Agent擴展LLM的能力,所以LLM自身能力是Agent下限:種種跡象表明,當以Agent方式使用LLM時,效果會得到提升,但是同樣的AI設計構建策略下,依舊是模型自身的能力越強,表現(xiàn)越好。AI Agent只是使用預算情況有限的情況下,最大程度利用當下affordable LLM的途徑。 2. Tools的設計和開發(fā)很重要,重要過卷基礎模型:LLM的預訓練對數(shù)據(jù)和算力要求都極高,對資源消耗巨大,費用昂貴。工具是拓展LLM能力邊界的方式。設計出和實際情況貼近的、LLM能正確調(diào)用的工具,在某種程度上是手動增強了大模型的“涌現(xiàn)能力”,增益其所不能。所以與其買一千張A100自己訓練一個ChatGPT或者ChatGLM,不如設計適合他們的工具。 3. 自主Planning還是預設SOP:現(xiàn)階段由于Agent不足夠穩(wěn)定,但是toB場景下,往往容錯率低,且要求AI表現(xiàn)始終如一,所以現(xiàn)階段往往在多步驟任務的設計中會對標RPA。但是這樣預設SOP的方式就使得Agent對未見任務還是表現(xiàn)不好,所以也許應該針對Agent Planning這一小模塊進行強化學習微調(diào),讓Agent在使用過程中,學習經(jīng)驗,進步成魯棒性很強、對人工依賴變少的人工智能。 4. 一步一步慢慢來:隨著Agent的火熱,大公司們有時會擴大并淡化了Agent的定義。比如,有些公司發(fā)布的Agent,實際上只是對話式聊天機器人的不同版本,它們并不是我們理想中的Agent。有些Agent是用于處理特定任務,但是他們執(zhí)行時好時壞,有時還會陷入死循環(huán)。所以人們也會意識到Agent沒有預期的那么厲害,就會陷入觀望而不是動手實操??墒瞧鋵嵓夹g的進步,大部分都是循序漸進的,沒必要急著肯定或者否定,多看別人的研究,多找落地場景,多動手開發(fā),才能真正達成人們期待中的Agent的作用。 |
|
|