譯者 | 布加迪
審校 | 重樓
我在過去設計對話式系統時親眼目睹了傳統AI的局限性。我設計的系統可以可靠地檢測實體,但其僵硬的邏輯使得這種解決方案不能擴展。對話遵循預先編程的路徑:如果用戶說X,就回應Y。任何偏差都會破壞整個流程,凸顯出這類系統有多死板多僵硬。
基于基礎模型的代理改變了這一切。它們是自主系統,能夠處理不可預測的場景并無縫協作。代理可以規劃行程、收集實時數據或管理客戶賬戶,隨時適應變化。
代理不僅僅是工具的使用者,它們本身就是工具。像模塊化組件一樣,代理獨立工作,或與其他代理集成以解決復雜問題。預測模型帶來了精準預測,生成式模型重新定義了創造力。現在,代理AI將智能轉化為自主行動。
我們在本文中將剖析代理的結構、探究其協作,并深入研究將它們擴展到強大的、相互關聯的生態系統所需的基礎設施。
什么是代理?
簡單地說,代理有代理機制,它們不依賴靜態路徑——它們進行推理、使用工具并動態適應。與使用腳本的機器人不同,代理實時調整工作流,以適應不可預測的輸入。
在人工智能領域,代理有著悠久的歷史,從Alan Turing和John McCarthy早期的理論思考,到20世紀60年代基于規則的推理代理,這些代理旨在在定義的上下文中自主行動,但其功能受制于狹窄的應用和僵硬的邏輯。
如今,基礎模型的出現改變了一切。
基礎模型讓代理能夠動態適應復雜、不可預測的環境所需的推理和泛化。代理的環境定義了其范圍,無論是棋盤、網絡還是道路,其工具決定了它可以采取什么行動。與早期系統不同,現代代理將強大的推理與多功能工具結合起來,帶來了曾經難以想象的應用場景。
圖1. 控制邏輯,程序型與代理型
我們在下面將剖析代理的結構:代理如何感知、推理、行動和學習。
剖析代理的結構
就像人類一樣,代理通過結合其感覺、記憶、推理和行動能力來解決問題。但在我們深入研究如何做到這一點的機理之前,先介紹一個支撐一切的基本要素:角色(persona)。
圖2. 剖析多代理系統
角色(工作職能)
代理的角色定義了其工作功能和專業知識。它就像嵌入到系統提示中的詳細職位描述,決定了代理的行為和反應。系統提示設定期望,并影響模型在token上的概率分布,以便使輸出與定義的角色保持一致。
系統提示示例:
感知
有了明確的角色,解決任何問題的第一步就是了解環境。對于代理來說,感知是感官輸入,即它們如何從周圍世界收集數據。人類用眼睛、耳朵和觸覺,代理則使用API、傳感器和用戶輸入。
- 示例:物流代理通過從交通API和天氣預報中提取實時數據以感知延遲,就像人類駕駛員查閱交通報告一樣。
推理和決策
一旦收集到信息,就需要對信息進行處理和解讀。推理是代理分析數據、得出見解并決定下一步做什么的能力。對于人類來說,推理在大腦中進行。對于代理,它由像LLM這樣的模型提供支持,模型可以動態適應輸入和上下文。
- 示例:客戶服務代理可能會分析用戶的語氣以識別挫敗感、相互對照賬戶歷史記錄以查找未解決的問題,并決定上報問題。
記憶
記憶允許代理跨交互保留特定領域的信息。其目的并非學習。人類既依賴短期記憶(比如回憶一段對話的開始),又依賴長期記憶(比如記住幾年前學過的一項技能)。代理也是這樣工作的。
短期記憶允許代理跟蹤會話中的即時上下文,這些上下文可能在會話期間臨時存儲在內存緩沖區中。與此同時,長期記憶指存儲歷史數據,比如用戶偏好或過去的交互。這可能是矢量數據庫或另一個永久存儲區。矢量數據庫支持語義搜索,嵌入允許代理有效地檢索相關信息。
- 示例:銷售助理記得過去的交互,比如注意到客戶對特定功能的興趣,并利用它來定制后續服務。
規劃
一旦代理知道需要做什么,它就會設計計劃來實現目標。這一步反映了人類如何制定策略:將問題分解成更小的步驟,并優先考慮某些行動。
- 示例:膳食規劃代理組織一周的食譜,考慮到飲食限制、可用配料和用戶的時間表。
行動
沒有執行,計劃毫無價值。行動是代理與外界交互的呈現,無論是通過發送消息、控制設備還是更新數據庫。
- 示例:客戶支持代理更新工單、發出退款或發送電子郵件以解決問題。
代理的執行處理程序負責確保準確地執行這些動作并驗證結果。
學習
人類通過從錯誤中學習和適應新信息加以改進。代理同樣如此,使用機器學習來完善其推理、改進預測和優化行動。
- 示例:產品推薦引擎跟蹤點擊率,并根據與用戶產生共鳴的內容調整建議。
這個過程可能需要在提示裝配期間動態調整代理的上下文,以便它根據情境反饋改進其響應,而不會對模型的權重進行永久性更改。另外,學習也可能通過強化學習來進行決策使用與特定行動相關聯的獎罰機制來加以優化。在許多情況下,適應上下文為代理提供了一種靈活而有效的改進方式,沒有微調帶來的開銷。
協調和協作
人類很少單獨工作,我們相互合作、分享知識、分工任務。在多代理系統中,協調使代理能夠做同樣的事情,一起工作以實現共同的目標。
- 示例:CRM助理在Salesforce系統中更新客戶的聯系人詳細信息,同時通知計費助理代理調整訂閱記錄。
這種協作常常由像Apache Kafka這樣的消息代理提供支持,消息代理促進了代理之間的實時通信和同步。動態共享狀態和任務的能力使多代理系統比獨立代理強大得多。
工具接口
人類使用工具來增強能力,比如醫生使用聽診器、程序員使用集成開發環境(IDE)。代理也不例外。工具接口是代理實現專門功能的途徑,便于它們擴大應用范圍,并在現實世界中有效地操作。
- 示例:旅行代理使用航班API查找機票、使用天氣API規劃路線、使用財務API計算成本。
這些接口通常依賴模塊化API處理程序或插件架構,以便代理動態高效地擴展其功能。
啟示
如果您細加分解,會發現代理解決問題的方式與人類相同:它們感知環境、處理信息、回憶相關知識、制定計劃并采取行動。
但代理與眾不同的不僅僅是其工作方式,還有其擴展能力。
人類可能精通一個領域,但代理生態系統可以將來自無數領域的專家聚集在一起,合作解決單個系統無法處理的挑戰。
我們在下一節中將探討如何構建使這些代理發展壯大的基礎設施——不是充當孤立的工具,而是成為動態的、相互關聯的AI勞動力的一部分。
代理充當工具和微服務
從本質上講,代理是有智能的工具。
它們可以使用API、外部庫甚至其他代理來完成工作。這種模塊化反映了微服務架構的原則,幾十年來微服務架構來一直為企業級系統提供支撐。如果將代理視為微服務,我們就可以運用相同的經驗:將它們設計為輕量級、專門化和可互操作。這種方法讓我們可以通過像搭樂高積木一樣組合代理,在不創建臃腫的單體式系統的情況下擴展功能,從而組合復雜的工作流。
比如說,營銷代理可能會聯系客戶細分代理來分析用戶數據,然后將結果傳遞給活動策略代理來優化廣告投放。如果將代理視為共享生態系統中的工具,工作流就可以動態拼接,從而實現前所未有的靈活性和可擴展性。
為什么這對可擴展性很重要?
這種類似微服務的架構對于構建可擴展的代理生態系統至關重要。我們可以設計更小、更專業的代理來協同工作,而不是創建試圖做所有事情的單體式代理。這種方法支持更快的開發、更輕松的維護以及獨立擴展各個組件的能力。
如果立足于微服務架構,我們可以為代理系統帶來企業級的可靠性、模塊化和性能。生成式AI的未來不是構建孤立的代理,而是創建協作生態系統,代理的功能像微服務一樣,無縫地協同工作以解決復雜問題。
我們在下一節中將探討如何將擴展微服務的經驗運用到代理基礎設施中,以確保我們準備好支持下一代生成式AI系統。
代理需要事件
從微服務的經驗來看,傳統的請求/響應架構對代理而言根本不具有可擴展性。
在這些系統中,每個動作都需要明確的協調,從而引入延遲、瓶頸和緊密耦合的依賴項。這就像組織中的每一個決定都需要書面批準,這在小型環境中有效,但復雜性增加后,速度和效率就會奇低。
圖3. 多代理系統導致了迷宮般的緊密耦合的相互依賴關系
向事件驅動架構轉變標志著構建可擴展代理系統迎來了關鍵時刻。代理不是等待直接指令,而是被設計成自主地發出和監聽事件。事件充當發生了某些事件(數據更改、觸發的動作或重要的更新)的信號,允許代理動態獨立地響應。
圖4. 事件驅動代理:代理發出并監聽事件
剖析事件驅動代理
這種架構直接影響了代理的結構組成:
- 感知:代理通過事件感知世界,事件提供了結構化的實時輸入。
- 推理:事件驅動決策過程,代理動態解釋信號以確定下一步。
- 記憶:事件持久性確保歷史數據始終可用于上下文回憶,從而降低交互丟失或不完整的風險。
- 動作:代替僵硬的工作流,代理通過發出事件來行動,使下游代理或系統能夠在需要的地方獲取信息。
該系統中的代理接口不再由僵硬的API定義,而是由它們發出和使用的事件定義。這些事件用簡單的標準化格式(比如JSON有效負載)加以封裝,可執行以下功能:
- 簡化代理對變化的理解和反應。
- 促進跨不同工作流和系統的可重用性。
- 在動態的、不斷發展的環境中實現無縫集成。
構建代理生態系統
IT外媒VentureBeat特別指出:“進入到2025年,我們更需要創建基礎設施來管理多個AI代理和應用程序。”
這不僅僅是預測,更是號召我們行動起來。
剖析代理:感知、推理、記憶、行動和協作為它們的能力奠定了基礎,但如果沒有合適的基礎設施,這些部分就無法擴展。
像Kafka和Flink這樣的平臺是擴展微服務的核心。通過借助事件解耦服務,這些系統使微服務(現在是代理)能夠在沒有僵硬依賴關系的情況下無縫交互。對于充當微服務的代理而言,這意味著它們可以自主地發出和使用事件,動態地集成到工作流中,同時確保大規模環境下的治理、一致性和適應性。
未來不是僅僅一個代理解決一個問題,而是數百個代理協同工作,無縫擴展和適應不斷變化的挑戰。若想在2025年領先,我們不僅要致力于創建代理,還要致力于創建大規模管理代理的基礎設施。
原文標題:More than machines: The inner workings of AI agents,作者:Sean Falconer