ai-agents-for-beginners

多代理設計

(點擊上方圖片觀看本課程的影片)

多代理設計模式

當你開始處理涉及多個代理的專案時,就需要考慮多代理設計模式。然而,何時切換到多代理模式以及其優勢可能並不立即明顯。

簡介

在本課程中,我們將回答以下問題:

學習目標

完成本課程後,你應該能夠:

更大的圖景是什麼?

多代理是一種設計模式,允許多個代理協作以實現共同目標

這種模式廣泛應用於各種領域,包括機器人技術、自主系統和分散式計算。

適合使用多代理的情境

那麼,哪些情境適合使用多代理呢?答案是,有許多情境特別適合採用多代理,尤其是在以下情況:

使用多代理相較於單一代理的優勢

單一代理系統可能適合簡單任務,但對於更複雜的任務,使用多代理可以帶來多項優勢:

舉例來說,假設為用戶預訂一次旅行。單一代理系統需要處理旅行預訂過程的所有方面,從搜尋航班到預訂酒店和租車。為了實現這一點,單一代理需要具備處理所有這些任務的工具。這可能導致一個複雜且難以維護和擴展的單體系統。而多代理系統則可以有不同的代理專注於搜尋航班、預訂酒店和租車。這使得系統更加模組化、易於維護且可擴展。

這可以類比為一個家庭經營的旅行社與連鎖經營的旅行社的對比。家庭經營的旅行社由單一代理處理旅行預訂過程的所有方面,而連鎖經營的旅行社則有不同的代理負責不同的部分。

實現多代理設計模式的基本構件

在實現多代理設計模式之前,你需要了解構成該模式的基本構件。

讓我們再次以為用戶預訂旅行的例子來具體說明。在這種情況下,基本構件包括:

多代理互動的可見性

掌握多個代理之間的互動情況非常重要。這種可見性對於除錯、優化以及確保整體系統的效能至關重要。為了實現這一點,你需要有工具和技術來追蹤代理的活動和互動,例如日誌記錄和監控工具、可視化工具以及效能指標。

例如,在為用戶預訂旅行的情境中,你可以設置一個儀表板,顯示每個代理的狀態、用戶的偏好和限制,以及代理之間的互動。這個儀表板可以顯示用戶的旅行日期、航班代理推薦的航班、酒店代理推薦的酒店以及租車代理推薦的租車選項。這將使你清楚了解代理之間的互動情況,以及用戶的偏好和限制是否得到滿足。

讓我們更詳細地探討這些方面:

多代理模式

讓我們深入探討一些可以用來創建多代理應用的具體模式。以下是一些值得考慮的有趣模式:

群組聊天

此模式適用於需要創建一個群組聊天應用的情境,讓多個代理可以彼此通信。典型的使用情境包括團隊協作、客戶支持和社交網絡。

在此模式中,每個代理代表群組聊天中的一個用戶,並通過消息協議交換消息。代理可以向群組聊天發送消息、接收來自群組聊天的消息,並回應其他代理的消息。

此模式可以通過集中式架構(所有消息通過中央伺服器路由)或分散式架構(消息直接交換)來實現。

群組聊天

任務交接

此模式適用於需要創建一個應用,讓多個代理可以彼此交接任務的情境。

典型的使用情境包括客戶支持、任務管理和工作流程自動化。

在此模式中,每個代理代表一個任務或工作流程中的一個步驟,代理可以根據預定規則將任務交接給其他代理。

任務交接

協作過濾

此模式適用於需要創建一個應用,讓多個代理可以協作向用戶提供推薦的情境。

為什麼需要多個代理協作?因為每個代理可以擁有不同的專業知識,並以不同的方式為推薦過程做出貢獻。

舉例來說,假設用戶希望獲得有關購買股票的推薦:

推薦

情境:退款流程

考慮一個情境,客戶試圖為某產品申請退款,這個過程中可能涉及許多代理,但我們可以將其分為專屬於此流程的代理和可用於其他流程的通用代理。

專屬於退款流程的代理

以下是一些可能參與退款流程的代理:

通用代理

這些代理可以用於業務的其他部分。

以上列出了許多代理,既包括專屬於退款流程的代理,也包括可用於業務其他部分的通用代理。希望這能幫助你了解如何決定在多代理系統中使用哪些代理。

作業

設計一個多代理系統來處理客戶支援流程。識別流程中涉及的代理、它們的角色與職責,以及它們之間如何互動。同時考慮專門針對客戶支援流程的代理以及可用於業務其他部分的一般代理。

在閱讀以下解決方案之前,先思考一下,您可能需要的代理比您想像的更多。

TIP: 想想客戶支援流程的不同階段,還有系統中可能需要的代理。

解決方案

解決方案

知識檢查

問題:什麼時候應該考慮使用多代理?

解決方案測驗

總結

在本課中,我們探討了多代理設計模式,包括多代理適用的場景、使用多代理相較於單一代理的優勢、實現多代理設計模式的構建模塊,以及如何了解多個代理之間的互動情況。

對多代理設計模式有更多疑問嗎?

加入 Azure AI Foundry Discord,與其他學習者交流,參加辦公時間,並解答您對 AI 代理的疑問。

其他資源

規劃設計

下一課

AI 代理的元認知


免責聲明
本文件已使用 AI 翻譯服務 Co-op Translator 進行翻譯。我們致力於提供準確的翻譯,但請注意,自動翻譯可能包含錯誤或不準確之處。應以原始語言的文件作為權威來源。對於關鍵資訊,建議尋求專業人工翻譯。我們對因使用此翻譯而產生的任何誤解或錯誤解讀概不負責。