谁说.NET没有智能体?使用 Microsoft Agent Framework 构建 AI 智能体

进入 2026 年,微软终于发力了,.NET 开发者终于等来了一个真正统一的 AI 智能体开发框架——Microsoft Agent Framework。它整合了此前 Semantic Kernel 与 AutoGen 的核心能力,在一个一致的模型下,提供对话记忆、工具调用、多智能体协作等关键特性。

更重要的是,该框架基于Microsoft.Extensions.AI抽象层构建,可以灵活切换底层大模型。不仅支持 OpenAI、Azure OpenAI,也能无缝接入国产模型,例如通义千问(Qwen)DeepSeek,在中文理解力与数据合规性方面更具优势。

目前 Agent Framework 仍处于Public Preview阶段,预计将在 2026 年初正式 GA。虽然 API 仍可能存在小幅调整,但核心设计已经非常稳定,完全具备新项目落地的可行性。


为什么选择 Agent Framework?

在 Agent Framework 出现之前,如果你想构建一个具备“记忆”“工具调用”甚至“多角色协作”的智能体,通常需要在 Semantic Kernel 中自行拼装大量基础设施代码。

例如,对话上下文需要手动管理,工具调用逻辑需要自行路由,多智能体协作更是需要大量胶水代码,整体复杂且容易出错。

Agent Framework 的目标正是把这些复杂度收敛到框架内部,为开发者提供更接近“生产级”的能力,包括:

线程级的对话状态管理,自动维护多轮上下文; C# 方法原生注册为 AI 可调用工具,无需额外封装; 内置多智能体协作模型,天然支持角色分工; 集成日志、遥测、异常处理等工程化能力。

如果你的需求已经超出了“单次问答”,例如智能客服、代码审查、文档生成、业务助手等场景,那么 Agent Framework 会明显降低实现成本。


快速上手:创建你的第一个智能体

首先安装必要的 NuGet 包,使用.NET 8 last版本和.NET 10(截至 2026 年 1 月,仍为预览版):

dotnet add package Microsoft.Extensions.AI.OpenAI --version 10.1.1-preview.1.25612.2 dotnet add package Microsoft.Agents.AI.OpenAI --version 1.0.0-preview.251219.1

提示:后续若切换到通义千问或 DeepSeek,仅需替换底层IChatClient实现,其余代码无需调整。

下面是一个最小可用示例,用于创建并运行一个智能体:

using Microsoft.Agents.AI; using Microsoft.Extensions.AI; // 创建基于 OpenAI 的客户端(后续可替换为国产模型) var chatClient = new OpenAIClient("your-api-key") .GetChatClient("gpt-4o-mini") .AsIChatClient(); // 定义智能体行为 var agent = chatClient.CreateAIAgent( instructions: "你是一个专业的 .NET 技术顾问,回答需准确、简洁。" ); // 执行查询 var response = await agent.RunAsync("C# 中 async/await 的原理是什么?"); Console.WriteLine(response);

这个示例已经包含了一个完整智能体的最小生命周期:模型初始化、指令定义、执行推理。


对话记忆:用线程管理上下文

默认情况下,每次调用RunAsync都是一次独立对话。若希望智能体“记住之前说过的话”,可以通过AgentThread来维护上下文。

var thread = agent.GetNewThread(); // 第一轮 var r1 = await agent.RunAsync("async/await 和 Task.Run 有什么区别?", thread); // 第二轮(保留上下文) var r2 = await agent.RunAsync("那在 Web API 中应该如何使用?", thread);

在多轮技术讨论中,智能体可以准确引用前文内容,而开发者无需手动拼接历史消息,这一点在真实业务中非常重要。


赋予智能体“工具调用”能力

智能体真正的价值,在于它不仅能“回答问题”,还能调用外部能力完成任务

在 Agent Framework 中,只需将普通 C# 方法注册为工具即可:

[Description("获取指定城市的实时天气")] async Task<string> GetWeather([Description("城市名称")] string city) { await Task.Delay(300); return $"晴,22°C,{city}"; } var weatherAgent = chatClient.CreateAIAgent( name: "WeatherHelper", instructions: "根据用户需求提供天气信息。", tools: [AIFunctionFactory.Create(GetWeather)] ); var response = await weatherAgent.RunAsync("杭州今天天气如何?");

框架会自动判断是否需要调用工具,并将执行结果融合进最终回复,开发者无需关心调度细节。


多智能体协作:让复杂任务自然拆解

对于复杂任务,单个智能体往往难以兼顾准确性与表达质量。Agent Framework 原生支持多智能体协作:

var researcher = chatClient.CreateAIAgent("你负责查找并验证 .NET 技术细节。"); var writer = chatClient.CreateAIAgent("你根据研究结果撰写清晰的技术文档。"); var research = await researcher.RunAsync("解释 C# 的 Span<T> 在高性能场景中的应用"); var doc = await writer.RunAsync($"基于以下研究,写一段简介:\n{research}");

在实际项目中,这种模式非常适合用于代码审查、方案评估、文档生成等场景,效果明显优于“一个智能体包打天下”。


接入国产大模型:通义千问与 DeepSeek

Agent Framework 通过IChatClient抽象层彻底解耦模型提供商,使得接入国产模型变得非常简单。

以通义千问为例,其 DashScope 已提供 OpenAI 兼容接口:

var qwenClient = new OpenAIClient( apiKey: "your-dashscope-key", endpoint: new Uri("https://dashscope.aliyuncs.com/compatible-mode/v1") ) .GetChatClient("qwen-max") .AsIChatClient(); var agent = qwenClient.CreateAIAgent("你是一个中文技术专家...");

DeepSeek 同样支持 OpenAI 协议,仅需更换 endpoint 即可。这意味着同一套智能体代码可以自由切换国内外模型


注意事项与最佳实践

在实际使用中,有几点经验值得注意。

当前仍是预览版,建议锁定 NuGet 版本并关注官方 Release Notes。 长对话会快速累积 Token,应考虑摘要或截断策略。 工具方法应做好异常捕获,避免因抛异常导致对话中断。 多轮对话存在非确定性,测试时建议结合快照与人工验证。


与现有框架的关系说明

Microsoft.Extensions.AI是稳定的底层抽象,已经 GA,可放心使用。 Agent Framework 构建于其上,提供智能体与协作能力,目前为 Preview。 Semantic Kernel 与 AutoGen 不再新增功能,但官方提供迁移路径。


是否适合用于生产?

如果项目允许一定的技术迭代风险,Agent Framework 已具备生产可用的基础条件。核心抽象稳定,国产模型支持成熟,非常适合对数据合规有要求的场景。

建议新项目优先尝试,关键系统需提前设计回滚方案。


结语

Microsoft Agent Framework 标志着 .NET 在 AI 智能体领域真正迈入工程化阶段。开发者不再需要拼凑零散组件,而是可以基于一套统一、可扩展的框架,快速构建具备实际价值的智能应用。期待正式版的到来。

在国产大模型能力持续提升的背景下,.NET 开发者完全有条件构建安全、可控、真正落地的 AI 智能体系统。不妨从一个简单的技术问答助手开始,迈出这一步。

参考:dev.to/mashrulhaque/build-ai-agents-with-microsoft-agent-framework-in-c-46h0

注:上面API调用仅供参考,开发应用请查看各个智能体的API说明。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1202174.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

jsp ssm汽车销售推荐平台

目录具体实现截图摘要系统所用技术介绍写作提纲源码文档获取/同行可拿货,招校园代理 &#xff1a;文章底部获取博主联系方式&#xff01;具体实现截图 摘要 JSP SSM汽车销售推荐平台是一个基于Java Web技术的智能化汽车销售系统&#xff0c;整合了JSP&#xff08;Java Server…

抗辐照MCU在核电站交换机中的可靠性验证方法研究

摘要&#xff1a;随着核电站数字化仪控系统&#xff08;DCS&#xff09;向着智能化、网络化方向的深度演进&#xff0c;抗辐照微控制器单元&#xff08;MCU&#xff09;已成为核岛内安全级交换机设备的核心处理元件。本文基于国科安芯AS32S601型商业航天级MCU的完整辐照效应试验…

PETRV2-BEV功能全测评:nuScenes数据集真实表现

PETRV2-BEV功能全测评&#xff1a;nuScenes数据集真实表现 1. 引言&#xff1a;为什么PETRv2值得被关注&#xff1f; 在自动驾驶感知系统中&#xff0c;如何从多摄像头图像中准确地理解三维世界&#xff0c;是当前研究的核心挑战。近年来&#xff0c;基于Transformer的端到端…

使用agentscope自动注册agent应用到nacos以及对a2a协议的思考

参考资料https://java.agentscope.io/zh/task/a2a.html#a2a-server https://mp.weixin.qq.com/s/-pp43gOTkTtkuxAt_szFIw本文主要记录了在测试agent自动注册nacos过程中对a2a的一些思考,可能存在一些理解的偏差,请审…

解决:all predefined address pools have been fully subnetted

错误原因:Docker 给容器分配内网 IP 的「地址库」已经用完了&#xff0c;没法给新创建的容器 / 网络分配新的 IP 了。Docker 的「地址池」是什么&#xff1f;Docker 启动时会预设几个「私有 IP 网段」&#xff08;比如 172.17.0.0/16、172.18.0.0/16、172.19.0.0/16 等&#xf…

学Simulink--风电电机控制场景实例:基于Simulink的DFIG转子电流限幅保护策略仿真

目录 手把手教你学Simulink 一、引言&#xff1a;为什么双馈风机必须设置“转子电流限幅”&#xff1f; 二、系统整体架构 保护层级&#xff1a; 三、理论基础&#xff1a;转子电流限幅策略 1. 转子电流约束 2. 限幅方法对比 3. 指令重构逻辑 四、Simulink 建模全流程…

学Simulink——风电电机控制场景实例:基于Simulink的风电变流器死区补偿与非线性校正仿真

目录 手把手教你学Simulink 一、引言:为什么风电变流器需要“死区补偿”? 二、死区效应机理分析 1. 死区导致的电压误差 2. 误差电压表达式(近似) 三、系统整体架构 四、Simulink 建模全流程 步骤1:主电路建模(含真实死区) 步骤2:电流采样与极性判断 步骤3:…

2026毕业季必备:6款免费降AI率工具实测推荐

2026毕业季必备&#xff1a;6款免费降AI率工具实测推荐 TL;DR&#xff1a;2026年知网AIGC检测升级后&#xff0c;传统的同义词替换已经不管用了。实测20多款工具后&#xff0c;推荐3款靠谱的&#xff1a;嘎嘎降AI&#xff08;达标率99.26%&#xff0c;性价比最高&#xff09;、…

SCI论文降AI率工具推荐:留学生和科研党必看的5款利器

SCI论文降AI率工具推荐&#xff1a;留学生和科研党必看的5款利器 TL;DR&#xff1a;SCI论文和英文论文降AI&#xff0c;首选AIGCleaner&#xff0c;专门针对英文学术写作优化&#xff0c;支持Turnitin、GPTZero等主流检测平台。实测Turnitin AI率从83%降到0%&#xff0c;处理后…

降AI不伤文:保留专业术语的6个实用技巧

降AI不伤文&#xff1a;保留专业术语的6个实用技巧 TL;DR 太长不看&#xff1a;降AI最怕把专业术语改乱&#xff0c;导致论文失去学术味。本文分享6个保护专业术语的技巧&#xff1a;提前标注不可改动的术语、分段处理术语密集段落、选用领域自适应的专业工具&#xff08;如嘎嘎…

2026降AI工具红黑榜:亲测10款后只推荐这3个

2026降AI工具红黑榜&#xff1a;亲测10款后只推荐这3个 TL;DR 太长不看&#xff1a;测了10款降AI工具&#xff0c;踩了不少坑&#xff0c;最后只有3款真正靠谱。红榜&#xff1a;嘎嘎降AI&#xff08;达标率99.26%&#xff0c;性价比高&#xff09;、比话降AI&#xff08;知网专…

论文降AI工具TOP5横评:哪款效果最好、性价比最高

论文降AI工具TOP5横评&#xff1a;哪款效果最好、性价比最高 TL;DR 太长不看&#xff1a;实测市面上主流降AI率工具后&#xff0c;整理出TOP5排名。嘎嘎降AI综合实力最强&#xff08;达标率99.26%&#xff09;&#xff0c;比话降AI自研Pallas引擎改写最自然&#xff0c;AIGClea…

知网AIGC检测不通过?这份避坑指南请收好

知网AIGC检测不通过&#xff1f;这份避坑指南请收好 TL;DR&#xff08;太长不看版&#xff09;&#xff1a;知网AIGC检测不通过&#xff0c;先分析报告定位高风险段落&#xff0c;再用嘎嘎降AI或比话降AI专业处理。别用AI改AI&#xff0c;别只换同义词&#xff0c;别用免费工具…

工业显示器在智能办公用品申领柜中的应用

智能办公用品申领柜是企业行政数字化管理的核心设备&#xff0c;可实现文具、耗材、劳保用品的 24 小时自助申领、库存监控、数据溯源&#xff0c;而工业显示器是其人机交互与信息展示的核心部件&#xff0c;相比民用显示器&#xff0c;能更好地适配办公场景的复杂使用需求。 一…

Rust入门一:从内存安全到高性能编程

为什么Rust能同时做到安全与高性能 2026年的今天&#xff0c;当我们谈论系统级编程语言时&#xff0c;Rust已经成为不可忽视的存在。从操作系统内核到WebAssembly应用&#xff0c;从嵌入式设备到大型分布式系统&#xff0c;Rust正在各个领域展现其独特的魅力。这一切的背后&am…

从源码视角来看Pinia!

一、Pinia 概览 Pinia 本质是:「基于 Vue3 响应式系统 + effectScope 的“全局可控副作用容器”」 Pinia 核心代码集中在: packages/pinia/src/ ├── createPinia.ts ├── rootStore.ts ├── store.ts ├── …

2026年国产持妆粉底液厂家专业深度测评(排名前五)

2026年国产持妆粉底液十大排名权威发布 一、开篇(定调 + 公示 + 声明) 随着国内美妆行业研发实力与消费者需求的同步升级,市场对兼具长效持妆与卓越妆效的国产持妆粉底液需求持续攀升。为帮助消费者在众多产品中做出…

2026年国产持妆粉底液专业深度测评:排名前五品牌权威发布

2026年国产持妆粉底液专业深度测评:排名前五品牌权威发布 随着国内美妆市场研发实力与消费者认知的同步升级,国产持妆粉底液在配方技术、妆效表现及持妆时长上已实现显著突破。为帮助消费者在纷繁的产品中做出精准决…

2026年国产持妆粉底液专业深度测评:排名前五供应商权威榜单

2026年国产持妆粉底液专业深度测评:排名前五供应商权威榜单 一、开篇(定调 + 公示 + 声明) 随着国货美妆研发实力与消费者认知的持续攀升,市场对兼具长效持妆与卓越妆效的国产持妆粉底液需求日益精细化。为帮助消费…