Agent智能體?我們要的到底是什么
本文將深入探討智能體的概念、為何“具有智能體特性”變得如此重要,以及這一趨勢如何影響我們對未來技術的構想。
什么是智能體?
傳統(tǒng)應用程序通常遵循預先定義好的規(guī)則和邏輯,而智能體則不同,它可以根據(jù)LLM的理解和判斷,動態(tài)地選擇下一步操作,這使得智能體能夠處理更加復雜和不確定的任務。
簡單來說,智能體就是一個利用LLM來決定應用程序控制流程的系統(tǒng),可以被視為一種能夠自主決策和執(zhí)行任務的系統(tǒng)。它通過與外部數(shù)據(jù)和計算資源的交互,來實現(xiàn)復雜的任務。
智能體與傳統(tǒng)應用程序的區(qū)別
以LangChain生態(tài)為例,通過LangChain創(chuàng)建的很多LLM應用的工具,特別是那些作為推理引擎并與外部數(shù)據(jù)源和計算資源交互的系統(tǒng),這些系統(tǒng)通常被稱為智能體。
智能體的定義可能因人而異。技術上講,智能體是一個利用LLM來決定應用程序控制流程的系統(tǒng)。
然而,這樣的定義并不完美。人們往往認為智能體是高級的、自主的、類似人類的系統(tǒng),但一個簡單的系統(tǒng)也可以通過LLM在兩條不同路徑之間進行路由,這也符合技術定義。這表明,智能體的定義并不單一,而是具有多樣性。
舉個例子,想象一下一個智能客服機器人。傳統(tǒng)的客服機器人只能根據(jù)預設的關鍵詞進行簡單的問答。但智能客服機器人則可以利用LLM理解用戶的真實意圖,并根據(jù)情況選擇不同的對話策略,例如:
- 如果用戶只是詢問簡單的信息,智能客服機器人可以直接給出答案。
- 如果用戶的問題比較復雜,智能客服機器人可以引導用戶提供更多信息,或者將用戶轉接到人工客服。
Agentic意味著什么?
Agentic可以理解為“具有智能體特性”。一個系統(tǒng)越“具有智能體特性”,就意味著LLM在決定系統(tǒng)行為方面的作用越大。
Agentic譜系
我們可以把Agentic看作一個連續(xù)譜系:
- 一端是完全沒有Agentic的系統(tǒng)。這些系統(tǒng)完全按照預設的規(guī)則運行,LLM的作用僅僅是提供信息或執(zhí)行簡單的指令。
- 另一端是完全Agentic的系統(tǒng)。這些系統(tǒng)的行為完全由LLM決定,甚至可以自己設定目標和計劃。
當然,大多數(shù)實際系統(tǒng)都處于這個譜系的中間地帶。例如,一個智能客服機器人可能在回答簡單問題時沒有Agentic,但在處理復雜問題時就需要一定的**Agentic。
吳恩達提出了一個觀點,即智能體的能力可以被視為一個譜系,就像自動駕駛車輛有不同的自動化等級一樣,智能體的能力也可以有不同的等級,因而在現(xiàn)階段使用Agentic定義比Agent更加合適。這個觀點得到了廣泛的認同,并且有助于更好地理解智能體的不同層次。
LLM的作用程度
根據(jù)系統(tǒng)中LLM的作用程度,可以將智能體劃分為不同的等級:
- 路由器(Router):使用LLM將輸入路由到特定的下游工作流,這種行為具有一定的“智能體特性”。
- 狀態(tài)機(State Machine):如果系統(tǒng)使用多個LLM進行多次路由步驟,并且其中一個步驟決定是否繼續(xù)或結束,這種系統(tǒng)就類似于狀態(tài)機。
- 自主智能體(Autonomous Agent):如果系統(tǒng)能夠構建工具、記住這些工具并在未來的步驟中使用它們,這種系統(tǒng)就具有高度的智能體特性。
盡管這些定義看起來比較技術性,但在設計和描述LLM系統(tǒng)時,這些技術定義是非常有用的。
Agentic為何有價值?
理解Agentic的概念對于構建和使用基于LLM的系統(tǒng)至關重要。它可以幫助我們:
- 選擇合適的系統(tǒng)架構。對于一些簡單的任務,可能并不需要Agentic,傳統(tǒng)的應用程序就足夠了。但對于一些復雜的任務,就需要考慮構建具有Agentic的系統(tǒng)。
- 設計更有效的交互方式。對于具有Agentic的系統(tǒng),我們需要設計更靈活的交互方式,以便LLM能夠充分發(fā)揮其作用。
- 評估系統(tǒng)的性能。對于具有Agentic的系統(tǒng),傳統(tǒng)的評估指標可能不再適用,我們需要探索新的評估方法。
總而言之,Agentic是一個需要根據(jù)具體問題和應用場景進行權衡的因素。
更進一步說,理解你的系統(tǒng)可以有多“具有智能體特性”,可以在開發(fā)過程中指導你的決策——包括構建、運行、交互、評估,甚至監(jiān)控。
Agentic在開發(fā)過程中的作用
- 構建:在構建復雜的智能體系統(tǒng)時,擁有一個框架可以加速開發(fā)過程。這個框架應該支持分支邏輯和循環(huán)。
- 運行:智能體系統(tǒng)越復雜,運行起來就越困難。需要能夠處理長時間運行的任務,并且在執(zhí)行過程中處理任何可能發(fā)生的錯誤。
- 交互:在系統(tǒng)運行時,你需要觀察系統(tǒng)內部的運行情況,并在必要時修改智能體的狀態(tài)或指令。
- 評估:需要一個評估框架來測試智能體的表現(xiàn),包括中間步驟的效率。
- 監(jiān)控:需要一個新的監(jiān)控框架來深入了解智能體的每一步操作,并根據(jù)智能體的步驟查詢運行情況。
理解和利用系統(tǒng)中智能體特性的譜系,可以提高開發(fā)過程的效率和系統(tǒng)的魯棒性。
Agentic是新趨勢
隨著LLM技術的不斷發(fā)展,我們正在構建越來越多的具有Agentic的系統(tǒng)。例如:
Agentic
- 自主機器人:可以根據(jù)環(huán)境和任務自主規(guī)劃行動路線,例如自動駕駛汽車、物流機器人等。
- 智能個人助理:可以根據(jù)用戶的習慣和需求提供個性化的服務,例如安排日程、推薦內容等。
- 智能創(chuàng)作工具:可以輔助用戶進行創(chuàng)作,例如生成文本、圖像、音樂等。
隨著我們在智能體譜系上走得更遠,支持工具的整個生態(tài)系統(tǒng)都需要重新構想。我們需要開發(fā)新的編程模型、調試工具和評估指標,以支持這些更復雜、更智能的系統(tǒng)。
傳統(tǒng)的工具和基礎設施可能無法滿足需求,例如,LangGraph和LangSmith就是為了幫助構建、運行和交互智能體而設計的新工具。
LangGraph和LangSmith
隨著智能體特性的不斷發(fā)展,我們需要重新構想整個支持工具的生態(tài)系統(tǒng),以適應智能體應用的需求。
總結
Agent和Agentic是理解和構建基于LLM的系統(tǒng)的關鍵概念。隨著LLM技術的不斷發(fā)展,我們可以預見,未來將會出現(xiàn)更多更強大的智能體,為我們的生活帶來更多便利和可能性。
智能體技術的探索之路還很長,但通過不斷地學習和創(chuàng)新,我們有望構建一個更加智能、更加互聯(lián)的未來。
本文轉載自 ??AI小智??,作者: AI小智
