作者:盧建暉 -?微軟高級云技術布道師
?「極客說」 是一檔專注 AI 時代開發者分享的專欄,我們邀請來自微軟以及技術社區專家,帶來最前沿的技術干貨與實踐經驗。在這里,您將看到深度教程、最佳實踐和創新解決方案。關注「極客說」,與行業頂尖專家一起探索科技的無限可能!
在 Microsoft Ignite 2024 上,微軟發布了 Azure AI Agent Service,我們可以在 Azure AI Foundry 上通過 Azure AI Foundry SDK 及 Azure AI Agent Service 的 UI 直接構建基于智能業務的 AI Agent。
與 Azure AI Assistant API 相比,Azure AI Agent Service 可以讓我們擁有更靈活的模型,如可以直接調? Llama 3、Mistral 以及 Cohere 等開源?模型,有更好的企業功能接入(Microsoft Fabric、Microsoft SharePoint、Azure AI Search、Microsoft Bing 等),更強的企業安全機制以及數據存儲?式。
目前 Azure AI Agent Service 處于 Public Preview 階段,開發者可以通過 Azure AI Foundry SDK,使用 Python 或者 C# 快速構建基于 Azure AI Agent Service 的智能體;企業則基于業務擁有不同的 AI Agents。
那在?作流中應該如何組合這些 AI Agents 呢?我們就需要通過 AutoGen 或者 Semantic Kernel 對這三個 AI Agents 進?編排。
在 Azure AI Foundry SDK 創建 AI Agent 的技巧
建議使用以下模板在 Azure AI Foundry 中創建項?:
https://portal.azure.com/#create/Microsoft.Template
注意
1. 目前 Azure AI Agent Service 處于 Public Preview 階段,所以我們需要在特定區域和模型中使?。
當然你也可以使? Azure AI Foundry model catalog 中的:
-
Llama 3.1-70B-instruct
-
Mistral-large-2407
-
Cohere command R+
2. Azure AI Foundry SDK 現在?持 Python / C# 的版本
安 裝 Python 的 Azure AI Foundry SDK
pip install azure-ai-projects
pip install azure-identity
安 裝 .NET 的 Azure AI Foundry SDK
dotnet add package Azure.AI.Projects --version 1.0.0-beta.1
如果你希望了解如何結合 Azure AI Foundry SDK 創建 AI Agent ,建議參考:
https://learn.microsoft.com/en-us/azure/ai-services/agents/quickstarthttps://learn.microsoft.com/en-us/azure/ai-services/agents/quickstart
下?介紹?個場景,如?個 Blog 創作場景,我們可以圍繞該創作場景定義三個 AI Agent Service 服務:內容搜集的 Agent、編寫技能的 Agent、以及保存內容功能的 Agent,然后通過 AutoGen / Semantic Kernel 對 AI?Agent 進?編排。
Azure AI Agent Service 定義單智能體
Azure AI Agent Service 更多是對特定智能任務的單 Agent 進?定義,比如你可以定義?個數據挖掘的智能體,也可以定義?個鏈接 Azure Function 的智能體,更可以利? Function Calling 接入第三?郵件發送服務的智能體等。如上述場景談及的智能體我們可以這樣定義:
🔍 內容搜集的 Agent
內容搜集的 Agent 主要通過搜索引擎來搜索 Blog 提綱的內容,從?為 Blog 添加更詳細的內容。Azure AI Agent Service 提供了 Grounding with Bing 服務進行擴展,你可以非常簡單地接入 Bing?搜索中。
具體實現:
-
Python
https://github.com/kinfey/MultiAIAgent/blob/main/03.AzureAIAgentWithAutoGen01.ipynb
https://github.com/kinfey/MultiAIAgent/blob/main/03.AzureAIAgentWithAutoGen01.ipynb
-
C#
https://github.com/kinfey/MultiAIAgent/blob/main/08.AzureAIAgentWithSK01.ipynb
https://github.com/kinfey/MultiAIAgent/blob/main/08.AzureAIAgentWithSK01.ipynb
📖編寫技能的 Agent
編寫技能的 Agent 可以直接通過?LLM 完成編寫的內容。
🛠 保存內容功能的 Agent
保存內容功能的 Agent 通過 Azure AI Agent Service 的 code-interpreter 完成內容保存?作。
具體實現:
-
Python
https://github.com/kinfey/MultiAIAgent/blob/main/01.AzureAIAgentCode.ipynb
https://github.com/kinfey/MultiAIAgent/blob/main/01.AzureAIAgentCode.ipynb
-
C#
https://github.com/kinfey/MultiAIAgent/blob/main/05.AzureAIAgentCodedotNET.ipynb
https://github.com/kinfey/MultiAIAgent/blob/main/05.AzureAIAgentCodedotNET.ipynb
利? AutoGen / Semantic Kernel 編排多智能體
在企業場景中,我們擁有不同的單智能體,可以協助我們完成不同的工作,同時,基于不同任務又可以組合不同的智能體來完成相關?作。如需要發送 Blog,我們可以將上述的三個智能體進?組合來完成任務。AutoGen / Semantic Kernel 都支持智能體的編排?作,我們可以利? AutoGen 中的 Function Calling / Semantic Kerenl Plugin 進行 Azure AI?Agent Service 的綁定來完成上述三個智能體的編排?作。
以下是具體架構:
AutoGen 的編排?式
示例:
https://github.com/kinfey/MultiAIAgent/blob/main/04.AzureAIAgentWithAutoGen02.ipynbhttps://github.com/kinfey/MultiAIAgent/blob/main/04.AzureAIAgentWithAutoGen02.ipynb
Semantic Kernel 的編排?式
通過編排多智能體,我們可以非常輕松地完成不同需要的?作流,這?是兩個不同的指令,都可以完成博客的編寫?作。
示例:
https://github.com/kinfey/MultiAIAgent/blob/main/09.AzureAIAgentWithSK02.ipynbhttps://github.com/kinfey/MultiAIAgent/blob/main/09.AzureAIAgentWithSK02.ipynb
多智能體的結合可以幫助我們快速地完成不同的任務。隨著 LLM / SLM 能?的增強,也會在企業業務功能上有更好的融合。AI Agent as a Service 將會到來,結合多智能體幫助企業更輕松地構建和部署智能 AI 代理,更快邁進真正的?AI 時代。
相關資源
了解 Azure AI Agent Service?https://learn.microsoft.com/en-us/azure/ai-services/agents/
學習 Microsoft AutoGen?https://microsoft.github.io/autogen/dev/
學習 Microsoft Semantic Kernel?https://github.com/microsoft/semantic-kernel
資料推薦
智能 GitHub Copilot 副駕駛? 提示和技巧https://info.microsoft.com/GC-DevOps-CNTNT-FY25-08Aug-23-Smart-GitHub-Copilot-Tips-and-Tricks-SRGCM12801_LP01-Registration---Form-in-Body.html
Azure OpenAI 生成式人工智能白皮書https://info.microsoft.com/GC-AzureAI-CNTNT-FY25-08Aug-21-Azure-OpenAI-Generative-Artificial-Intelligence-White-Paper-SRGCM12789_LP01-Registration---Form-in-Body.html
利用 AI 和 DevOps 重新定義開發人員體驗https://info.microsoft.com/ww-landing-redefining-the-developer-experience.html?lcid=ZH-CN
SAP on Microsoft Cloudhttps://info.microsoft.com/GC-SAP-CNTNT-FY25-08Aug-27-SAP-on-Microsoft-Cloud-SRGCM12804_LP01-Registration---Form-in-Body.html