大数跨境
0
0

使用DeepSeek快速体验Microsoft Agent Framework

使用DeepSeek快速体验Microsoft Agent Framework AzureDeveloper
2025-10-08
0

这几天微软新一代的智能体开发工具Microsoft Agent Framework已经开放给了社区使用了,不过目前仍然是在public preview阶段,感兴趣的可以开始试用这个版本。

这个框架是由之前Semantic KernelAutoGen同一个团队开发的,至于为什么又需要一个新的框架以及之前的两个框架后继会怎么办,我建议你仔细的体会官方的说明:https://devblogs.microsoft.com/foundry/introducing-microsoft-agent-framework-the-open-source-engine-for-agentic-ai-apps/, 文档中明确给出了如何从Semantic Kernel以及AutoGen迁移的指导文档。

我个人比较烦恼的是,才搞明白了Semantic Kernel的各个组件,包括Agent以及Process Framework, 又需要重新学习新的框架了,好在理论还是之前的同一套。

我们快速地用deepseek来体验一下新的框架。

注册DeepSeek API

从https://platform.deepseek.com/ 注册之后,拿到apiKey, 注意DeepSeek使用和OpenAI相同的API接口,那么在创建OpenAIClient的时候,需要使用:

  1. Endpoint 指向:https://api.deepseek.com
  2. ModelId 指向: deepseek-chat

创建测试代码

我们这里分别以.Net以及Python分别体验一下。

基于.Net的测试

如果您使用.Net 需要 SDK 8.0及以上

# 创建项目
dotnet new console -o QuickStart

# 添加包
cd QuickStart
dotnet add package Azure.AI.OpenAI
dotnet add package Microsoft.Agents.AI.OpenAI --prerelease

创建之后,打开Program.cs, 输入如下的代码片段:

usingSystem;
usingSystem.ClientModel;
usingSystem.Net;
usingAzure.AI.OpenAI;
usingMicrosoft.Agents.AI;
usingOpenAI;

var options =newOpenAIClientOptions
{
    Endpoint =newUri("https://api.deepseek.com")
};

AIAgent agent =newOpenAIClient(
newApiKeyCredential("Your Deep Seek Key"),
    options
)
.GetChatClient("deepseek-chat")
.CreateAIAgent(instructions:"您是一个单口相声大师。");


Console.WriteLine(await agent.RunAsync("请讲一个简短的关于懒汉的单口相声."));

然后运行如下:

❯ dotnet run
(一拍醒木)您各位瞧见过懒人没有?我给您说个真事儿。我们胡同有个李老二,那懒的,好家伙!早晨赖床能赖到下午三点,饿得前胸贴后背了,愣是不起,伸着舌头舔墙皮——您猜怎么着?他们家墙让他舔薄了三寸!

(学懒汉腔调)“妈,把饭端我被窝里来呗?”
“儿啊,你都二十八啦!”
“那您把被窝端厨房去也行。”

有一回他妈让他扫院子,这位爷拎着扫帚在院里转悠三圈,哎,想出个主意。把家里电扇搬出来对着地上吹,呼啦啦把树叶全吹邻居院儿去了。邻居不乐意了,找上门来:“李老二!你这叫扫地吗?”您猜他说啥?“高科技,这叫空气动力学扫地法!”

最绝的是上周,躺床上想关电视,遥控器离着就二尺远,愣是不伸手。硬是等到半夜电视台停播了,满屏雪花点儿了,这才安心睡觉。第二天跟我们吹呢:“我这叫节能环保,等它自动待机!”

(突然正经)后来您猜怎么着?上个月街道组织大扫除,大家把他从被窝里拽出来,这位爷被迫干了十分钟活儿——好家伙,当天晚上就上医院了!
(疑惑表情)大夫一检查:肌肉拉伤。打从出生头一回使这么大劲儿!

基于Python

我们这里使用了uv来管理项目,并且使用新型的entry point来启动项目,如果您对于uventry point都不熟悉,你可以直接使用pip来管理。

#创建项目
uv init --package quick-start

# 添加必要的依赖包
cd quick-start
uv add agent-framework --prerelease=allow

然后使用编辑器打开该项目目录,项目目录如下所示:

我们在目录src\quick-start下新建一个文件deepseek.py, 然后输入如下的内容:

import asyncio
from agent_framework.openai import OpenAIChatClient


asyncdefdeepseek():
    agent = OpenAIChatClient(
        model_id="deepseek-chat",
        api_key="Your Key",
        base_url="https://api.deepseek.com",
).create_agent(
        instructions="您是一个单口相声大师。",
)

    result =await agent.run("请讲一个简短的关于海盗的单口相声.")
print(result)


defmain():
    asyncio.run(deepseek())

然后更改根目录下的项目文件pyproject.toml, 将project.scripts的值更改为:

[project.scripts]
quick-start = "quick_start.deepseek:main"

保存上述更改后,直接运行:

uv run quick-start

即有如下的结果:

❯ uv run quick-start
(拍桌)各位观众,您知道吗?我前两天去应聘海盗,结果人家不要我!

(疑惑状)为啥?说我不够专业。我说我怎么不专业了?我从小就立志当海盗,我连微信头像都是独眼龙!

(模仿面试官)人家说了:我们这是正经海盗公司,得会专业技能。我说我会啊!我打小就会唱《水手》,还会说“哟嚯嚯嚯”!

(无奈)人家说:那您会看航海图吗?我说:会啊!高德地图我熟!人家说:那您会开船吗?我说:会啊!公园里的碰碰船我开得可溜了!

(叹气)最后人家问我:那您知道怎么找宝藏吗?我寻思这题我会啊!我说:打开手机,搜索“附近的金店”!

(摊手)这不,人家直接把我轰出来了。临走前还跟我说:您这样的,还是去说相声比较合适!

往期文章:


Open Harmony 镜像编译

在Ubuntu下扩充LVM的存储空间

在Windows Server Core下安装Windows Admin Cente

使用命令行初步配置Windows Server core

在Azure Bot中使用User-assigned managed identity完成认证

使用SQL Server Profiler追踪Power BI Desktop刷新问题

尝试缓解Power BI报表数据源为Azure Databricks在代理服务器环境中刷新出错的问题

在Azure Synpase Spark Pool中移动外部分区表数据到新位置后新建分区表发现丢失所有数据

无法删除Windows Server AD中的ou

启动Aspire AppHost无法访问问题排查

Teams Bot App 集成SSO 认证

诡异的Databricks Delta Lake Table History

安装TeX Live发行版

什么是TeX? 什么是LaTex? 为什么要学习它?

如何启用Power BI Desktop的诊断日志

在MVVM项目中使用async/await - 数据绑定
Windows Server 2022 Core迁移记录
async/wait和ConfigureWait(false)在异步编程中有什么关系?



AzureDeveloper(WebSite: https://www.azuredeveloper.cn), 一个分享和学习Azure技术的好去处,欢迎关注




【声明】内容源于网络
0
0
AzureDeveloper
Azure开发者,Azure开发技术分享
内容 377
粉丝 0
AzureDeveloper Azure开发者,Azure开发技术分享
总阅读104
粉丝0
内容377