Microsoft Agent Framework(MAF) - 使用MAF和GitHub Models去创建一个AI Agent
微软在2026年4月3号发布了Microsoft Agent Framework(简称MAF) 1.0,这是一个生产就绪的版本。MAF提供了两种能力,一个是智能体创建,另外一个是工作流创建,多智能体的编排。从2023年开始,微软陆续推出了Semantic Kernel,Autogen,Microsoft.Extensions.AI到现在的Microsoft Agent Framework。
1. 简单介绍
微软在2026年4月3号发布了Microsoft Agent Framework(简称MAF) 1.0,这是一个生产就绪的版本。MAF提供了两种能力,一个是智能体创建,另外一个是工作流创建,多智能体的编排。
从2023年开始,微软陆续推出了Semantic Kernel,Autogen,Microsoft.Extensions.AI到现在的Microsoft Agent Framework。近两年来AI生态中出现了很多新的开发标准,MCP(Model Context Protocol), A2A(Agent to Agent),Agent Skills,ACP(Agent Client Protocol)。微软的技术框架也是需要对这些进行实作,并一同演进起来的。
在AI Agent相关方面,使用MFA我们可以进行AI Agent输出结构化;函数工具的调用;多轮对话而不会丢失历史消息;使用ChatReduction配置进行AI Agent聊天裁剪;可以进行AI Agent会话状态持久化;利用中间件进行日志配置,合规审核;与MCP协议工具集成;将AI Agent变成MCP tool;同时MAF也提供API来构建Declarative AI Agent;在MAF中提供了接口进行A2A客户端和服务端的实现;使用MFA可以进行Agent Skill的创建和使用(FileBased Skill,CodeDefined Skill,ClassBased Skill);
在workflow相关方面,使用MFA我们可以创建Sequencial, Concurrent,HandOffs,GroupChat类型workflow;创建布尔条件(EdgeCondition)/互斥条件(SwitchCase) 等条件路由workflow;可以将AI Agent作为Workflow节点;将workflow变成一个AI Agent;将workflow变成一个MCP tool;可以整合Open Telemetry实现可观测性;可以创建声明式YAML工作流;使用RequestPort实现人工确认机制(Human in the loop);使用workflow checkpoint机制进行流状态的保存和恢复;可以导出workflow为Mermaid和DOT (Graphviz)图片;
这边将尝试一下使用MAF去创建一个AI Agent,使用的是GitHub Models中的DeepSeek模型
2.具体说明
2.1 获取GitHub Token
1) 登录到GitHub Token配置界面,点击Generate new token下拉选择框,

2) 这边选择Generate new token(classic)选项,

3) 配置Note, Expiration等信息,

点击页面下方的Generate按钮,

4) 拷贝一下生成的token,

2.2 创建Console项目
1) 添加如下nuget package,
Azure.AI.OpenAI,Azure.Identity,Microsoft.Agents.AI.OpenAI

2) 实例化一个chatClient,
IChatClient chatClient =
new ChatClient(
model,
new AzureKeyCredential(apiKey!),
new OpenAIClientOptions
{
Endpoint = new Uri(endpoint)
}
).AsIChatClient();
这边使用的model和 endpoint信息如下,
model是 deepseek/DeepSeek-V3-0324,
endpoint: https://models.github.ai/inference
apiKey: [步骤2.1获取的GitHub Token]
3) 实例化一个AI Agent
var instruction = @"你是一名种菜很有经验的菜农,会用非常简短的话语来教导大家种菜方面的知识,如果问到别的问题,你就回复'不知道'。总是用非常礼貌的态度回复大家.";
var agent = chatClient
.AsAIAgent(
instructions: instruction,
name: "Assistant"
);
4) 使用AI Agent
Console.Write("请提出问题: ");
var result = await agent.RunAsync(Console.ReadLine()!);
Console.WriteLine(result);
2.3 运行一下
启动程序,输入要提问的问题,得到回复。

3.总结
本文介绍了一下使用Microsoft Agent Framework去创建一个简单AI Agent的过程,其中模型是用的GitHub Model中的DeepSeek。关于MAF的内容非常多,还需继续深入地学习一下。
如果本文哪里有错误,麻烦告之,谢谢谢谢!
更多推荐
所有评论(0)