第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定

使用微軟Azure AI Agent服務和Semantic Kernel輕松構建多代理系統(tǒng),三步搞定!

在我的上一篇博客中,我介绍了 Microsoft 的 Azure AI Agent 服务,这是一个完全管理的平台,简化了构建、部署和扩大 AI 代理的过程。与 OpenAI Assistant 不同,Azure AI Agent 服务更加灵活,支持多种大型语言模型(LLM,例如 OpenAI、Mistral、DeepSeek 等),同时确保企业级的安全保障并实现与 Azure 生态系统的无缝集成。

Azure AI 代理服务:它是啥,如何用 Azure AI 工作坊和 .NET 建一个 AI 代理blog.cubed.run

该博客提供了一份一步一步的指南,使用Azure AI Foundry Hub(Azure AI Foundry Hub) 创建一个AI代理,涵盖了从项目搭建代理配置与外部数据(例如10-K报告)进行关联,以及将其集成到.NET应用程序中以用于实际操作的全过程。

通过结合无需代码的代理创建自定义的.NET集成,这种方法让开发人员能够以最小的努力构建可扩展且智能的AI驱动助手,利用结构化数据强大的安全措施

在本博文中,我将进一步更深入地探讨如何构建一个多代理系统,利用Microsoft的AI框架Semantic Kernel。

之前,我们创建了StockExpertAgent,这是一个基于公司10-K报告的AI代理。现在,我们来介绍一下InvestorAgent,它将根据股票代理提供的组合数据为我提供个性化的投资建议。我们将利用Semantic Kernel来协调这些代理,以实现智能互动与决策多代理系统

这是一张图,展示了这个博客中的主要话题。

开始吧!

首先:在Azure AI代理服务中创建InvestorAgent:

要详细了解如何在 Azure AI Agent 服务中创建智能代理,请参阅我之前的博客博客。创建并设置 AI 工坊项目和中心后,这个过程非常简单。访问 Azure AI Studio 并点击 代理 选项卡开始操作,在这里你可以点击 代理 选项卡开始操作。

我要把它和样本投资组合一起磨碎。

Azure AI工作室中Agents选项卡的截图

步骤二:在第一步中定义的Azure AI服务中的智能体获取

现在在 .NET 应用程序中,安装以下 NuGet:

以下为安装包的引用示例:

#r "nuget: Azure.AI.Projects, 1.0.0-beta.4"  
#r "nuget: Azure.Identity"  
#r "nuget: Microsoft.SemanticKernel.Agents.Core, 1.40.0-preview"  
#r "nuget: Microsoft.SemanticKernel.Agents.AzureAI, 1.40.0-preview"
            // 构建核心  
            var builder = Kernel.CreateBuilder();  
            builder.AddAzureOpenAIChatCompletion("GPT4ov1", "https://testmediumazureopenai.openai.azure.com", "<api-key>");  
            Kernel kernel = builder.Build();  

            // 定义连接字符串以连接 Azure AI 代理  
            string connectionString = "eastus2.api.azureml.ms;<project>;aifoundary-hub;aiproject";  

            // 初始化 Azure 代理客户端对象  
            AgentsClient client = new AgentsClient(connectionString, credential);  

            // 初始化股票专家代理实例  
            string stockExpertAgentId = "asst_8Ev5OpD3bMUll20xJFu36Pah";  
            Response<Agent> agentResponse = await client.GetAgentAsync(stockExpertAgentId);  
            Agent stockExpertAgentDefinition = agentResponse.Value;  
            AzureAI代理 stockExpertAgent = new(stockExpertAgentDefinition, client)  
            {  
                Kernel = kernel // 将核心用于执行  
            };

我们现在定义一个叫做投资者顾问代理的,它已基于样本投资组合建立。

                // 初始化投资者顾问代理  
                string 投资顾问代理Id = "asst_txX6WR6caXzpVhEksCupcySS";  
                Response<Agent> 投资顾问代理响应 = await client.GetAgentAsync(投资顾问代理Id);  
                Agent 投资顾问代理定义 = 投资顾问代理响应.Value;  
                AzureAIAgent 投资顾问代理 = new(投资顾问代理定义, client)  
                {  
                    // 设置内核  
                    Kernel = kernel,  
                };
步骤3:定义代理小组聊天并看看它的实际应用

使用Semantic Kernel的“群聊”功能,创建一个多代理系统。

            // 创建由两个代理组成的语义内核代理群聊
            AgentGroupChat agentGroupChat = new AgentGroupChat(stockExpertAgent, investorProxyAgent)
            {
                ExecutionSettings = new()
                {
                    SelectionStrategy = selectionStrategy,
                    TerminationStrategy = terminationStrategy,
                }
            };

            // 开始聊天
            agentGroupChat.AddChatMessage(new ChatMessageContent(AuthorRole.User, "<Starting prompt here>"));

            // 异步处理并显示聊天消息
            await foreach (var content in agentGroupChat.InvokeAsync())
            {
                string interaction = $"<b>#{content.Role}</b> - <i>{content.AuthorName ?? "*"} </i>: \"{content.Content}\"";
                控制台输出(interaction);
            }

股票专家提供了公司投资的见解。

接着那位投资顾问代理人就给出了投资建议

关于定义终止和选择策略,可以看看我之前写的博客

一步一步构建投资组合经理:一个基于微软语义的多代理系统,如何通过SelectionFunction实现高效的团队协作

你可以找到所有的代码

在 GitHub 上查看 StockAnalyzer-Azure-AI-Agent-Service 项目中的 MultiAgentSystemWithSKExample.cs 文件(位于 main 分支)。

github.com/akshaykokane/StockAnalyzer-Azure-AI-Agent-Service/blob/main/MultiAgentSystemWithSKExample.cs?source=post_page-----a6c68b123e54---------------------------------------

最后:

在上述说明中,我们展示了如何使用Semantic Kernel来调度在Azure AI Agent Service中创建的AI代理。首先,该过程利用了在Azure AI Foundry中构建的知识库,然后根据需要执行了检索增强生成(RAG)。

然而,当你运行应用程序后,你可能会注意到正确的代理并不总能被正确选择。为此,我们需要为代理群聊设定一个结束和选择规则。

总的来说,我更倾向于使用托管服务,但我注意到在Semantic Kernel中的ChatCompletionAgent相比Azure Agent响应更快。这一点也在预料之中,因为我们使用的是托管服务,这可能会带来一些额外的开销。

关注我的 LinkedInMedium,了解更多的AI更新!

點擊查看更多內容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優(yōu)質文章

正在加載中
  • 推薦
  • 評論
  • 收藏
  • 共同學習,寫下你的評論
感謝您的支持,我會繼續(xù)努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優(yōu)惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號

舉報

0/150
提交
取消