极客说|Azure AI Agent Service 结合 AutoGen/Semantic Kernel 构建多智能体解决⽅案

作者:卢建晖 - 微软高级云技术布道师

「极客说」 是一档专注 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+

  1. 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 搜索中。

具体实现:

📖编写技能的 Agent

编写技能的 Agent 可以直接通过 LLM 完成编写的内容。

🛠 保存内容功能的 Agent

保存内容功能的 Agent 通过 Azure AI Agent Service 的 code-interpreter 完成内容保存⼯作。

具体实现:

利⽤ 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

相关推荐
埃菲尔铁塔_CV算法20 分钟前
双线性插值算法:原理、实现、优化及在图像处理和多领域中的广泛应用与发展趋势(二)
c++·人工智能·算法·机器学习·计算机视觉
甄同学28 分钟前
【WPS】【WORD&EXCEL】【VB】实现微软WORD自动更正的效果
microsoft·word·wps
程序猿阿伟31 分钟前
《AI赋能鸿蒙Next,打造极致沉浸感游戏》
人工智能·游戏·harmonyos
遇健李的幸运1 小时前
深入浅出:Agent如何调用工具——从OpenAI Function Call到CrewAI框架
人工智能
天天讯通1 小时前
AI语音机器人大模型是什么?
人工智能·机器人
说私域1 小时前
微商关系维系与服务创新:链动2+1模式、AI智能名片与S2B2C商城小程序的应用研究
人工智能·小程序
人机与认知实验室1 小时前
人-AI协同如何重塑未来战争?
人工智能
学技术的大胜嗷1 小时前
小目标检测难点分析和解决策略
人工智能·目标检测·计算机视觉
编程乐趣2 小时前
Garnet:微软官方基于.Net 8开源缓存系统,可无需任何改动直接替代Redis,而且还更高性能!
microsoft·缓存·.net
李加号pluuuus2 小时前
【论文阅读+复现】High-fidelity Person-centric Subject-to-Image Synthesis
论文阅读·人工智能·计算机视觉