Microsoft Agent Framework 是微软于 2025 年 10 月 Ignite 大会发布的统一 AI 智能体开发框架,将此前分头发展的 Semantic Kernel 与 AutoGen 合并为同一套代码库,原 microsoft/autogen 仓库随之更名为 microsoft/agent-framework,并于 2025 年 11 月发布 1.0 正式版(GA)。它要解决的核心问题是 2023-2025 年间智能体框架的碎片化:AutoGen 擅长多智能体对话但生产级能力薄弱,Semantic Kernel 擅长企业集成但多智能体编排繁琐,团队往往要在两套 API 之间来回切换,可观测性、人机审批、内容安全等能力全靠自己拼装。Agent Framework 的解法是把生产级能力直接内置到核心:每条消息都经过中间件管道,OpenTelemetry(一套开源的可观测性标准,统一输出日志、追踪与指标)开箱即用,Chats 与 Workflow 覆盖从自由协作到固定流程的编排需求,并可通过 Agent Catalog(智能体配置注册中心)把智能体平滑发布到 Azure AI Foundry Agent Service 云端托管。框架提供 C# 与 Python 两套对齐的 API,采用 MIT 开源协议,可商用、可自托管。本篇按「速览卡 → 安装配置 → 快速上手 → 核心能力 → 生产部署 → 同类对比 → 应用场景 → 常见误区 → 面试题」的顺序展开,读完即可上手实际项目。

岗位关联

掌握 Microsoft Agent Framework 是微软技术栈工程师进入智能体工程领域的直接路径:它同时覆盖框架选型、生产级可观测性与云上托管,学会后可直接复用到企业级 Agent 项目。

目录
  1. 为什么需要 Microsoft Agent Framework:智能体框架碎片化的解法
  2. 安装与环境配置:4 步就绪
  3. 快速上手:10 分钟跑通 HelloAgent
  4. 核心能力详解:5 大支柱
  5. 生产部署与监控:从上线到运维
  6. 版本迭代
  7. AI 应用场景
  8. 常见误区
  9. 面试题
  10. 参考来源
工具类型
AI 智能体开发框架(开源)
开发商
Microsoft(微软)
开源协议
MIT(可商用)
GitHub Stars
无
主要语言
C#(.NET)/ Python
当前版本
1.0(2025-11 正式发布)
安装方式
NuGet(dotnet add package)/ pip
下载地址
NuGet:Microsoft.Agent.Core · PyPI:agent-framework
上手难度
★★★☆☆(中等)
适合人群
用 .NET 或 Python 构建企业级智能体的工程师、RAG/Agent 平台团队
同类工具
LangGraph · CrewAI · Semantic Kernel · AutoGen

速览卡是工具类内容的固定首屏模块:30 秒判断「这工具是什么、能不能商用、适不适合我」。

为什么需要 Microsoft Agent Framework:智能体框架碎片化的解法

2023 至 2025 年间,智能体开发框架迅速碎片化:AutoGen 以双智能体对话流见长,适合快速原型,但可观测性、权限控制、人机审批等生产级能力几乎要全部外包给周边工具;Semantic Kernel 企业集成能力强(插件、规划器、云服务对接成熟),但多智能体协作要手动编排,复杂度高。社区还有 LangGraph 的状态图、CrewAI 的角色化 Crew 等方案,API 互不兼容。实际团队落地时往往同时维护两套框架代码:一套跑对话原型,一套做企业集成,选型争论和迁移成本长期消耗工程资源。

Agent Framework 的解法是「统一」而不是再添一个框架:把 Semantic Kernel 与 AutoGen 两套代码合并进一个仓库,1.0 版把生产级能力变成一等公民内置——中间件管道统一处理每条消息的进出,OpenTelemetry 遥测默认开启,Chats 与 Workflow 提供两种互补的编排原语,Agent Catalog + Agent Factory 支持「配置即部署」。C# 与 Python 两套 API 对齐,既有 AutoGen 与 Semantic Kernel 的代码可以平滑迁移,而不是推倒重来。

与同类工具相比,Agent Framework 的气质更像「带治理能力的智能体平台」而非单一编排器:LangGraph 是「图即一切」,CrewAI 是「角色即一切」,而 Agent Framework 把横切能力(中间件)、协作能力(Chats)、流程能力(Workflow)分层提供,再叠加运行时与云托管。它最适合已有微软技术投入(.NET、Visual Studio、Azure)的团队;若你是纯 Python 且深度绑定 LangChain 生态,LangGraph 仍是更顺的选择。

安装与环境配置:4 步就绪

前置条件:.NET 8 SDK(C#)或 Python 3.10+(推荐 3.11+),两者选其一即可。跑通示例还需一个 GitHub Token(GitHub 个人访问令牌,供 GitHub Models 调用默认模型)。

步骤一·安装 .NET 包(C# 项目):核心安装 Microsoft.Agent.Core(智能体核心抽象)、Microsoft.Agent.Runtime(运行时)与 Microsoft.Agent.Configuration(配置与目录)三个包;需要语义内核或 AutoGen 兼容层时再追加对应运行时包。

步骤二·安装 Python 包:执行 pip install agent-framework。注意包名与旧版 AutoGen 的 autogen/pyautogen 完全不同,不要装混。

步骤三·配置模型凭据:快速开始默认使用 GitHub Models 上的 gpt-4o-mini,只需设置 GITHUB_TOKEN 环境变量;改走 Azure OpenAI 时设置 AZURE_OPENAI_API_KEY 等四个变量;本地模型则配置 Ollama 或 ONNX 路径。

步骤四·验证安装:运行下方「快速上手」的 hello_agent.py,看到模型回复即安装成功。python -c "import agent_framework" 不报错只说明包装上了,不代表模型链路通。

bash20 行
# 1) .NET 项目(.NET 8+)dotnet new console -o HelloAgentcd HelloAgentdotnet add package Microsoft.Agent.Coredotnet add package Microsoft.Agent.Runtimedotnet add package Microsoft.Agent.Configuration # 2) Python(Python 3.10+)pip install agent-framework # 3) 模型凭据:默认走 GitHub Models 调用 gpt-4o-miniexport GITHUB_TOKEN=ghp_xxxxxxxx# 或改用 Azure OpenAI:# export AZURE_OPENAI_API_KEY=xxx# export AZURE_OPENAI_ENDPOINT=https://xxx.openai.azure.com/# export AZURE_OPENAI_DEPLOYMENT=xxx# export AZURE_OPENAI_MODEL=gpt-4o-mini # 4) 验证:运行下面的 hello_agent.py,看到模型输出即成功python hello_agent.py

快速上手:10 分钟跑通 HelloAgent

最小编码路径:创建一个智能体 → 发一条消息 → 打印完整对话历史。这个示例不写工具、不画工作流、不接云服务,只验证「安装 + 模型链路 + 基础 API」三件事,是排查后续一切问题的最小基线。

操作步骤:

1. 建项目:Python 用户新建 hello_agent.py;.NET 用户执行 dotnet new console 生成 Program.cs。

2. 获取 Token:登录 GitHub → Settings → Developer settings → Personal access tokens → Tokens (classic) → Generate new token 创建一个令牌,无需授予任何仓库权限,仅用于访问 GitHub Models。

3. 设置环境变量:把上面生成的令牌写入 GITHUB_TOKEN(或写入 .env 后加载)。

4. 粘贴代码并运行:Python 用户运行 python hello_agent.py;观察输出:先是 user: 你好…,随后出现 assistant: … 即成功。

5. 进阶改动:修改 description 改变智能体人设;在 create_agent 结果上调用 set_model 切换模型;本地有 Ollama 时可直接指向本地模型,不依赖任何云凭据。

运行结果中 chat_history 是完整消息列表,包含每一轮的角色与内容——这是 Agent 框架返回的统一数据结构,后续所有智能体的输出都遵循同一形态。C# 侧 API 与 Python 对齐:在 Microsoft.Agent 命名空间下使用 AgentFactory.CreateAgent(...) 创建智能体,调用 SendMessageAsync 发送消息,返回对象同样携带完整对话历史。

python14 行
# hello_agent.py:Agent Framework 最小示例(Python)from agent_framework.agent import AgentBuilder # 创建智能体,默认模型 gpt-4o-mini(经 GitHub Models)agent = AgentBuilder.create_agent(    name="helloagent",    description="一个会打招呼并简要自我介绍的智能体",) # 发送消息,返回带完整对话历史的响应response = agent.send_message("你好,请介绍一下你自己。") for message in response.chat_history:    print(f"{message.role}: {message.content}")

核心能力详解:5 大支柱

支柱一·Middleware(中间件管道)。每条消息进出智能体时都会经过一条中间件链,用于承载日志、缓存、限流、权限校验、敏感词过滤等横切关注点(泛指与业务无关、横跨所有请求的通用逻辑)。中间件按注册顺序包裹执行,异常处理中间件必须调用 next 才会放行链路。这一设计取代了旧 Semantic Kernel 的 Filters 与 AutoGen 分散的 Hook,让「消息前后处理」有了统一模型。

支柱二·Chats(对话编排)。当多个智能体需要自由协作、任务边界模糊时,用声明式定义描述参与者与对话规则,框架自动调度发言顺序,支持在任意节点插入人类消息。典型场景是「研究员 + 写手 + 审校」三智能体协作:不需要手画流程图,通过 Chat.from_definition(...) 传入定义即可运行,框架负责多轮对话的推进行为。

支柱三·Workflow(工作流)。面向确定性子任务的图式编排:节点可以是智能体或工具,边表达条件与数据流,支持并行分支。它取代了 AutoGen 0.4 的 StateGraph 显式状态机——旧写法需手动声明节点与边,新写法更接近「定义步骤 + 依赖关系」的声明式风格。适合订单处理、质检流水线、工单路由等步骤固定的流程。

支柱四·Agent Runtime(运行时与迁移兼容)。框架核心内置两套运行时:Semantic Kernel 运行时与 AutoGen 运行时,既有代码可复用底层能力(插件、工具、规划器),不必彻底重写。Agent Catalog 负责集中注册智能体及其配置,Agent Factory 按目录项实例化——这是「配置即部署」的基础,也是后续推送到云端托管的前提。

支柱五·可观测性与治理。使用 OpenTelemetry 输出消息级追踪与指标:每次智能体调用的延迟、token 消耗、工具调用次数均可在标准遥测后端查看。人机协同是核心抽象而非插件——审批节点、人类反馈可插入任意流程位置。这些能力在 1.0 中是内建的,而非靠外部拼装。

生产部署与监控:从上线到运维

部署方式一:容器自托管。把智能体服务打包为 Docker 镜像,通过标准环境变量接入可观测性后端。设 OTEL_EXPORTER_OTLP_ENDPOINT 指向你的 OpenTelemetry Collector(如 Grafana Tempo/Prometheus 组合),框架会自动导出追踪与指标,无需改业务代码。中间件里可把业务上下文(订单号、租户 ID)注入 trace 的 span(追踪中的一次操作片段),便于按业务维度检索日志。

部署方式二:Azure AI Foundry Agent Service 云端托管。将本地 Agent Catalog 的配置同步上云,获得托管执行环境、配额管理、审计日志与版本管理。本地 Workflow 与 Chat 定义可平滑迁移,适合需要统一治理(密钥托管、审批策略、模型配额)的企业。托管环境下可启用 Bing 搜索 grounding(把搜索检索结果作为事实依据拼接给模型,降低幻觉),这是自托管需要自行实现的环节。

可观测性。上线后重点盯三类指标:消息级延迟(中间件是否引入额外开销)、token 消耗(按智能体与流程维度拆分)、工具调用成功率。人机协同节点要单独埋点统计「转人工率」——这是衡量智能体覆盖率的核心业务指标。

<p class="para-label">避坑清单:</p>

<ul class="dash-list"><li>包名与仓库更名:Python 新包是 agent-framework,旧 autogen/pyautogen 教程的代码无法直接运行;GitHub 上 microsoft/autogen 已重定向到 microsoft/agent-framework,收藏旧链接会失效。</li><li>默认模型依赖 GitHub Token:HelloAgent 默认经 GitHub Models 调用 gpt-4o-mini,未设 GITHUB_TOKEN 会报认证类错误,容易被误判为安装失败。</li><li>旧 API 不可照搬:AutoGen 0.4 的 StateGraph/Graph 写法在 1.0 中不存在,需改写为 Workflow 或 Chat,直接复制旧代码会编译或运行失败。</li><li>中间件顺序与性能:中间件按注册顺序包裹执行,不调用 next 会截断链路;数量越多单次消息延迟越高,只放真正的横切关注点。</li><li>双语言包名不同:C# 用 Microsoft.Agent.* 命名空间,Python 用 agent_framework 模块,混用会 import 失败;API 虽对齐但包名不互通。</li></ul>

维度Microsoft Agent FrameworkLangGraphCrewAISemantic Kernel
定位统一智能体框架(.NET+Python),SK 与 AutoGen 合并图状态机编排框架(Python)角色化多智能体协作框架(Python)跨语言 AI 编排 SDK(C#/Java/Python)
编排范式Middleware + Chat + Workflow 三类原语显式 StateGraph 状态机角色/任务声明式 CrewKernel + Planner + Filters
类型约束C# 强类型 / Python 轻量类型类型约束较松散动态类型C# 强类型泛型
学习曲线中-高:概念多但有统一文档中:需理解状态图模型低:角色模板友好中:Kernel/Plugin 概念
生态集成Azure、.NET、VS、SK/AutoGen 运行时、Bing groundingLangChain 生态、LangSmith社区插件与工具市场Azure OpenAI、.NET 企业生态
生产部署可观测性与人机协同内置,可推送 Azure Foundry需自行搭建,依赖 LangSmith需自行补充监控与治理需自行搭建可观测性
LicenseMITMITMITMIT
适合谁微软技术栈、企业级 Agent 平台团队深度使用 LangChain 的 Python 团队快速原型与业务团队已有 .NET 基础的企业开发者

选型建议:在微软生态(.NET/Azure/Visual Studio)内直接选 Agent Framework,获得从本地到云托管的一体化路径;若深度依赖 LangChain 生态与图式状态流,LangGraph 更顺手;快速验证业务假设可用 CrewAI;已有 Semantic Kernel 投资的团队应升级到 Agent Framework 而非另起炉灶。

版本迭代

该框架经历了「AutoGen 对话框架 → v0.4 事件驱动重构 → 与 Semantic Kernel 合并 → Agent Framework 1.0 正式版」四个阶段。2025 年 10 月 Ignite 大会发布预览版,仓库从 microsoft/autogen 更名为 microsoft/agent-framework;2025 年 11 月发布 1.0 GA,截至本稿整理时最新正式版为 1.0(补丁版本以 NuGet/PyPI 发布记录为准)。

版本时间变化提升
AutoGen v0.22023 年对话式多智能体框架基于 ConversableAgent 的两两对话模型,快速原型但生产能力弱
AutoGen v0.42024-03核心全面重构引入事件驱动 Core 与 AgentChat 高层 API,支持分布式运行时
Agent Framework 1.0 Preview2025-10与语义内核统一、仓库更名新增 Middleware/Chats/Workflow 抽象,内置 OpenTelemetry 与人机协同
Agent Framework 1.0 GA2025-11正式发布(GA)SK/AutoGen 运行时开箱即用,C#/Python API 对齐,生产能力默认开启
结论

微软未公布公开基准测试分数,版本间的差异主要体现在编程模型与运维能力而非单一指标。演进主线是从「原型快」走向「生产可用」:v0.4 解决了分布式执行,1.0 把可观测性、中间件、治理与云托管变成内建能力。新项目直接用 1.0;存量 AutoGen 代码按 Workflow/Chat 新模型迁移,存量 SK 项目升级成本更低。

AI 应用场景

企业客服与工单智能体(RAG + 工具调用)

阶段:RAG 管道构建 / 文档智能

解决的问题:传统关键词检索客服系统对长尾问题召回差,人工逐条回复成本高。Agent Framework 将企业内网知识库封装为检索工具,订单、退换货等内部 API 封装为函数工具挂载到智能体,通过中间件注入租户 ID 与权限过滤,实现「查知识库 + 调业务系统」一条对话完成。

具体案例:某 SaaS 企业把订单查询、退换货规则、知识库检索 3 个内部服务封装为 3 个工具挂到客服智能体,客户一句话即可完成「查订单 → 判断是否可退 → 生成退换货单」全流程;每次会话的 token 消耗与工具调用均有 trace 留存,高风险会话自动转人工审批节点。

多智能体研究报告生成(Chat 协作)

阶段:Agent 编排

解决的问题:单智能体直接生成报告常出现事实性错误、结构不稳定。用 Chat 编排「研究员 + 写手 + 审校」三个智能体自由协作:研究员负责检索与事实筛选,写手生成初稿,审校抽查引用与结论一致性,各司其职。

具体案例:研究团队用三智能体 Chat 自动产出行业简报,研究员接检索工具(托管环境可启用 Bing grounding 降低幻觉),审校在对话中途插入修正意见;完整协作过程的每一轮发言、工具调用与 token 成本都可在 OpenTelemetry 面板逐一核对,方便按流程调优提示词。

固定流程运营自动化(Workflow + 人机协同)

阶段:Agent 编排 / 工作流编排

解决的问题:订单处理、工单分派等流程步骤固定、合规要求明确,不适合让模型自由发挥。Workflow 把流程固化为「校验 → 风控 → 审批 → 执行」的节点图,风控与库存检查并行执行,超过阈值自动停在人类审批节点。

具体案例:某电商订单处理流程中,风控与库存两个检查节点并行执行,把原本串行的 4 个步骤压缩为 2 个并行阶段;审批节点收到生成好的摘要与风险标记,人类只需确认或驳回,操作路径从「跨 2 个系统手动核对」变为「一个审批界面完成」。

常见误区

误区我搜到 microsoft/agent-framework 这个新仓库,以为微软推倒 AutoGen 另起炉灶,旧的 AutoGen 技术栈全部作废了。

正解这是同一社区与代码库的延续:原 microsoft/autogen 仓库正式更名为 microsoft/agent-framework,旧 Issue、PR、Star 均迁移;AutoGen 0.4 的核心能力(事件驱动、AgentChat)被整合进新框架,Semantic Kernel 作为内置运行时直接可用。存量代码不是作废,而是按新 API 迁移。

为何常见:仓库更名与大版本号跳变(0.4 → 1.0)容易让人误判为「两个项目」,且旧 AutoGen 资料仍大量排在搜索结果前列。

误区名字带 Microsoft 又是云厂商出品,本地肯定跑不起来,或者必须要买 Azure 额度才能用。

正解框架本体是 MIT 开源,安装在本地即可运行;默认模型走 GitHub Models(免费额度 + Token),也可用 OpenAI、Azure OpenAI、Ollama 或 ONNX 本地模型。Azure AI Foundry Agent Service 只是托管选项之一,不是运行前提。

为何常见:微软官方宣传聚焦 Azure 集成,快速开始的示例又常用 GitHub Models,容易让人误以为云服务是必要条件。

误区我看 LangGraph 教程都是画状态图,以为用 Agent Framework 也必须先定义节点、边和转移条件。

正解Workflow 只用于「步骤固定」的确定性流程;自由协作场景应该用 Chats 的声明式定义——列出参与者与对话规则即可,框架自动调度发言顺序。过度使用 Workflow 反而增加维护成本,先判断任务是「流程」还是「协作」再选原语。

为何常见:社区被 LangGraph 的「图即一切」心智主导,忽略了 Agent Framework 提供的是两类互补原语。

误区我把 pip install autogen 换成 pip install agent-framework,直接把旧教程代码拷过来,结果 import 直接报错。

正解新 Python 包是 agent-framework,模块名是 agent_framework;旧包是 autogen/pyautogen,模块名 autogen。API 也变了:StateGraph 类在 1.0 已不存在,GroundedAgent、AssistantAgent 等旧写法需改写为新的 Agent + Workflow/Chat 模型。

为何常见:包名相似、教程年代混杂,ChatGPT 等工具生成的内容也常混用新旧 API。

误区反正中间件是官方推荐的横切能力,我把日志、鉴权、限流、脱敏、审计全注册上,多多益善。

正解中间件包裹每条消息的完整进出链路,注册数量与内部复杂度会直接拉高每次调用的延迟;且顺序决定语义——异常处理中间件必须包裹并调用 next,放错位置会截断链路或被绕过。只放真正的横切关注点,业务逻辑放智能体内部。

为何常见:把中间件类比为「插件集合」随手添加,忽略了它是每次请求热路径上的洋葱模型。

面试题

Q1. Microsoft Agent Framework 是统一合并了哪两个微软智能体框架?

单选题 · easy

  • A.LangChain 与 LlamaIndex
  • B.Semantic Kernel 与 AutoGen← 正确答案
  • C.Semantic Kernel 与 LangGraph
  • D.AutoGen 与 CrewAI 框架

答案:B。2025 年 Ignite 大会宣布将 Microsoft 内部两套智能体框架 Semantic Kernel 与 AutoGen 合并为 Agent Framework,原 autogen 仓库更名。A 与 D 中的 LangChain、LlamaIndex、CrewAI 均为社区框架,不属于微软官方统一对象。

Q2. 在 Python 中安装 Agent Framework 的正确命令是?

单选题 · easy

  • A.pip install autogen
  • B.pip install agent-framework← 正确答案
  • C.pip install semantic-kernel
  • D.pip install microsoft-agent

答案:B。官方安装命令为 pip install agent-framework,模块名是 agent_framework。A 是旧 AutoGen 包,C 是 Semantic Kernel 的 Python 包,D 不存在。装错包是最常见的上手失败原因。

Q3. Agent Framework 中用于「多个智能体自由对话协作」的内置抽象是?

单选题 · mid

  • A.Workflow
  • B.Chat← 正确答案
  • C.Middleware
  • D.AgentCatalog

答案:B。Chats 提供声明式多智能体对话编排,适合任务边界模糊的自由协作;Workflow 面向步骤固定的确定性子任务;Middleware 是消息进出的横切处理管道;AgentCatalog 负责智能体配置注册。选 B。

Q4. 快速开始示例 HelloAgent 中,默认模型服务来自哪里?

单选题 · mid

  • A.Azure OpenAI,必须预先配置密钥
  • B.GitHub Models,需设置 GITHUB_TOKEN← 正确答案
  • C.本地 Ollama,需自建模型服务
  • D.OpenAI 官方 API,需申请付费额度

答案:B。官方快速开始文档明确 HelloAgent 默认使用 GitHub Models 提供的 gpt-4o-mini,仅需 GitHub 个人访问令牌(GITHUB_TOKEN),无需云额度。Azure OpenAI、Ollama、OpenAI 官方均为可切换的选项而非默认。

Q5. 框架内置的可观测性能力基于哪一标准实现?

单选题 · mid

  • A.Prometheus 私有上报协议
  • B.OpenTelemetry← 正确答案
  • C.Azure Monitor SDK
  • D.框架自研遥测协议

答案:B。Agent Framework 1.0 内置 OpenTelemetry 支持,输出标准化的 trace 与 metrics。Prometheus 只是可对接的指标后端而非内建标准,Azure Monitor SDK 与自研协议均非框架默认实现。

Q6. 原 microsoft/autogen GitHub 仓库现在的名称是什么?

单选题 · mid

  • A.microsoft/semantic-kernel
  • B.microsoft/agent-framework← 正确答案
  • C.microsoft/ai-agents
  • D.microsoft/autogen-v2

答案:B。2025 年 10 月仓库从 microsoft/autogen 更名为 microsoft/agent-framework,旧链接自动重定向。Semantic Kernel 仍是独立仓库,未并入 autogen 路径;C、D 为不存在的仓库名。

Q7. Agent Framework 中负责「配置即部署」——注册智能体配置并按配置创建实例——的两个组件是?

单选题 · hard

  • A.AgentCatalog 与 AgentFactory← 正确答案
  • B.Kernel 与 Planner
  • C.Crew 与 Task
  • D.Runtime 与 Connector

答案:A。Agent Catalog 集中注册智能体及其配置,Agent Factory 根据目录项实例化,两者共同支撑从本地到云托管的配置化部署。Kernel/Planner 是 Semantic Kernel 概念,Crew/Task 是 CrewAI 概念,Runtime/Connector 为混淆项。

Q8. 以下哪些属于 Microsoft Agent Framework 1.0 的核心能力?

多选题 · mid

  • A.Middleware 中间件管道← 正确答案
  • B.Chats 对话编排← 正确答案
  • C.Workflow 工作流编排← 正确答案
  • D.StateGraph 显式状态机

答案:ABC。Middleware、Chats、Workflow 是 1.0 的三大编排原语;StateGraph 是 AutoGen 0.4 时代的显式状态机 API,在 1.0 中已被 Workflow 取代,不属于当前核心能力,照搬旧代码会失败。

Q9. 以下哪些是 Agent Framework 支持的模型接入方式?

多选题 · hard

  • A.GitHub Models← 正确答案
  • B.Azure OpenAI← 正确答案
  • C.Ollama / ONNX 本地模型← 正确答案
  • D.仅限微软托管模型

答案:ABC。框架不绑定微软模型:默认支持 GitHub Models 与 Azure OpenAI,也支持 OpenAI 直连以及 Ollama、ONNX 本地推理,便于离线与私有化场景。「仅限微软托管模型」与事实不符,选 D 即错。

Q10. 关于中间件(Middleware)的行为,以下说法正确的是?

多选题 · hard

  • A.每条消息进出智能体都会经过中间件链← 正确答案
  • B.注册顺序决定中间件的执行顺序← 正确答案
  • C.中间件不调用 next 会截断链路← 正确答案
  • D.中间件只能用于日志记录

答案:ABC。中间件构成消息进出的洋葱模型管道,A、B 正确;不调用 next 会终止后续中间件与智能体执行,C 正确。中间件还可用于缓存、限流、权限校验、内容过滤等横切关注点,D 错误。

参考来源