ai-agents-for-beginners

AI 代理入門

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

AI 代理與代理使用案例簡介

歡迎來到 “AI Agents for Beginners” 課程!本課程提供建構 AI 代理的基礎知識與實作範例。

加入 Azure AI Discord 社群,與其他學習者及 AI 代理開發者交流,並針對本課程提出任何問題。

在開始本課程時,我們會先更深入了解什麼是 AI 代理,以及如何在我們所建構的應用程式與工作流程中使用它們。

介紹

本課程涵蓋:

學習目標

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

定義 AI 代理與 AI 代理的類型

什麼是 AI 代理?

AI 代理是 系統,使 Large Language Models(LLMs) 能夠 執行動作,方法是透過擴展其能力,賦予 LLMs 存取工具知識

讓我們把此定義分解成較小的部分:

什麼是 AI 代理?

大型語言模型 - 在 LLMs 出現之前,代理的概念就已存在。使用 LLMs 建構 AI 代理的優勢在於它們解讀人類語言與資料的能力。這種能力使 LLMs 能解讀環境資訊並擬定改變環境的計畫。

執行動作 - 在 AI 代理系統之外,LLMs 的應用通常限於根據使用者的提示產生內容或資訊。在 AI 代理系統中,LLMs 可以透過解讀使用者的請求並使用環境中可用的工具來完成任務。

存取工具 - LLM 可存取哪些工具,取決於 1) 它運作的環境以及 2) AI 代理的開發者。在我們的旅遊代理範例中,代理的工具受到預訂系統中可用操作的限制,且/或開發者可以將代理的工具存取限制在航班相關操作。

記憶+知識 - 記憶在使用者與代理之間的對話語境內可以是短期的。長期而言,超出環境所提供的資訊外,AI 代理也可以從其他系統、服務、工具,甚至其他代理檢索知識。在旅遊代理的例子中,這些知識可以是位於客戶資料庫中關於使用者旅遊偏好的資訊。

不同類型的代理

現在我們已有 AI 代理的一般定義,讓我們看看一些特定的代理類型,以及它們如何應用於旅遊預訂 AI 代理。

代理類型 描述 範例
簡單反射型代理 根據預先定義的規則執行即時動作。 旅遊代理解析電子郵件內容並將旅遊抱怨轉發給客戶服務。
基於模型的反射代理 根據世界模型及其變化執行動作。 旅遊代理在能取得歷史價格資料的情況下,會優先處理價格有顯著變動的路線。
目標導向代理 透過解讀目標並決定達成目標所需的動作來建立計畫。 旅遊代理會決定從目前位置到目的地所需的必要交通安排(汽車、大眾運輸、航班)來預訂整個行程。
效用導向代理 考慮偏好並以數值方式權衡取捨來決定如何達成目標。 旅遊代理在預訂旅程時會在便利性與成本之間權衡以最大化效用。
學習型代理 透過回饋逐步改進並相應地調整動作。 旅遊代理利用旅後調查中的客戶回饋來改善未來預訂。
分層代理 具有多個代理的分級系統,高階代理會把任務拆分成子任務由低階代理完成。 旅遊代理在取消行程時,會將任務拆分為子任務(例如取消特定預訂),由低階代理完成並回報給高階代理。
多代理系統 (MAS) 代理獨立完成任務,彼此可以合作或競爭。 合作:多個代理分別預訂特定旅遊服務,如飯店、航班與娛樂。競爭:多個代理管理並在共用的飯店預訂行事曆上競爭以為客戶訂房。

何時使用 AI 代理

在前面的章節中,我們使用旅遊代理的使用情境來說明不同類型的代理如何在旅遊預訂的不同情境中使用。我們將在整個課程中持續使用這個應用範例。

讓我們看看哪些類型的使用案例最適合使用 AI 代理:

何時使用 AI 代理?

我們會在「建構可信賴的 AI 代理」課程中探討更多使用 AI 代理的考量。

代理式解決方案基礎

代理開發

設計 AI 代理系統的第一步是定義工具、動作與行為。在本課程中,我們著重使用 Azure AI Agent Service 來定義代理。它提供的功能包括:

代理模式

與 LLM 的溝通是透過提示(prompts)。鑒於 AI 代理的半自動性質,在環境變更後並不總是有可能或必要手動再次提示 LLM。我們使用 Agentic Patterns,讓我們能以更可擴展的方式在多個步驟中提示 LLM。

本課程分為數個目前流行的代理模式。

代理框架

代理框架讓開發者能透過程式碼實作代理模式。這些框架提供範本、外掛程式與工具,以促進更好的 AI 代理協作。這些好處也提供了更佳的可觀測性與 AI 代理系統的故障排除能力。

在本課程中,我們將探索 Microsoft Agent Framework (MAF) 來建構可投入生產的 AI 代理。

範例程式碼

對 AI 代理還有更多問題嗎?

加入 Microsoft Foundry Discord 與其他學習者見面,參加辦公時間,並取得 AI 代理相關問題的解答。

上一課

課程設定

下一課

探索代理框架


免責聲明: 本文件已使用 AI 翻譯服務「Co-op Translator」(https://github.com/Azure/co-op-translator) 進行翻譯。儘管我們力求準確,但自動翻譯可能包含錯誤或不精確之處。原始語言之文件應被視為具權威性的參考來源。對於關鍵資訊,建議採用專業人工翻譯。我們不對因使用本翻譯而產生的任何誤解或錯誤詮釋承擔責任。