写点什么

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

  • 2025-01-14
    北京
  • 本文字数:1933 字

    阅读完需:约 6 分钟

大小:751.72K时长:04:16
极客说|Azure AI Agent Service 结合 AutoGen/Semantic Kernel 构建多智能体解决⽅案

在 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-projectspip 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/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

  • C#

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

  • C#

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.ipynb


Semantic Kernel 的编排⽅式



通过编排多智能体,我们可以非常轻松地完成不同需要的⼯作流,这⾥是两个不同的指令,都可以完成博客的编写⼯作。


示例:

https://github.com/kinfey/MultiAIAgent/blob/main/09.AzureAIAgentWithSK02.ipynb


多智能体的结合可以帮助我们快速地完成不同的任务。随着 LLM / SLM 能⼒的增强,也会在企业业务功能上有更好的融合。AI Agent as a Service 将会到来,结合多智能体帮助企业更轻松地构建和部署智能 AI 代理,更快迈进真正的 AI 时代。


更多精彩内容请点击下载

《极客说|微软新模型:Phi-4 来了》

《利用 AI 和 DevOps 重新定义开发人员体验》

《SAP on Microsoft Cloud》

《智能GitHub Copilot副驾驶®提示和技巧》

2025-01-14 10:024848

评论

发布
暂无评论
发现更多内容

看完了京东年薪150万的大佬扔给我的“阿里内部Java 成长笔记”,差距不止一点点

Java 程序员 架构 面试 计算机

BitMap 转置算法:不一样的 Count 求解方式

GrowingIO技术专栏

BitMap

基于 Qt Quick Plugin 快速构建桌面端跨平台组件

网易云信

音视频 qt

Why WebRTC|前世今生

声网

WebRTC RTC

测试开发专题-开篇

禅道项目管理

软件测试 自动化测试 测试开发

测试开发网络篇-网络协议简介

禅道项目管理

软件测试 自动化测试 测试开发

普通代码块 静态代码块 构造代码块......傻傻分不清

麦洛

Java

聊聊那些小而美的开源搜索引擎

代码先生

搜索引擎 elasticsearch meilisearch

HIVE跑个insert into select xxx 为什么CPU飙高

InfoQ_Springup

hadoop

UCloud一站式智能大数据平台USDP免费版正式发布!

UCloud技术

hadoop CDH

3、深潜KafkaProducer核心架构

杨四正

kafka 消息队列 kafka架构 kafka源码分析

java性能分析与问题定位 实战

try catch

Java 性能分析

JavaScript+TensorFlow.js让你在视频中瞬间消失

不脱发的程序猿

JavaScript 人工智能 开源 TensorFlow.js

520 表白,因一个分号被拒

悟空聊架构

520单身福利

阿里内部百亿级高并发系统(全彩版小册开源):基础篇、数据库篇、缓存篇、消息队列篇、分布式服务篇、维护篇、实战篇;带你从基础到实战

Java 程序员 架构 高并发

CompusBulider (模模搭)学习笔记7:3D场景中第一人称行走

ThingJS数字孪生引擎

3D可视化 数字孪生

多线程 VS 多进程(一)

若尘

多线程 多进程 Python编程 5月日更

千万级学生管理系统考试试卷存储方案设计

Hesher

架构 Architecture 架构实战营 存储系统

支付中心设计

try catch

支付 支付中心

架构实战营模块3课后作业-基于“自研集群+MySQL存储”的消息队列架构设计方案

吴建中

架构实战营

采用DevOps的7个主要障碍,你一定不知道!

禅道项目管理

DevOps

SparkStreaming知识点总结

五分钟学大数据

大数据 5月日更

Flume的负载均衡load balancer

大数据技术指南

flume 5月日更

基础设施设施即代码(IaC)平台 Pulumi | 混合云管理利器

郭旭东

基础设施即代码 IaC

520 单身福利|获奖名单公布~

InfoQ写作社区官方

520单身福利 热门活动

2、kafka 2.8.0 源码环境搭建

杨四正

大数据 kafka 消息队列 kafka2.8

iOS开发底层原理技术~RAC深度解析

ios cocoa 程序员 移动开发

Serverless:这真的是未来吗?(二)

Serverless Devs

Serverless 运维 云原生 后端 无服务器

阿里分布式大神亲码“redis核心技术笔记”,没有废话,全是干货!

Java架构追梦

Java redis 阿里巴巴 架构 架构分布式

膜拜!Github访问量破百万,阿里内部首次公布的Java10W字面经有多强?

Java 程序员 架构 面试

iOS 面试策略之系统框架-并发编程

iOSer

ios 并发编程 系统框架

极客说|Azure AI Agent Service 结合 AutoGen/Semantic Kernel 构建多智能体解决⽅案_微软_微软中国MSDN_InfoQ精选文章