Agent Framework Azure Ai Py

☁️ Azure 原生智能体开发框架

微软官方 Azure AI Agent Framework Python SDK,支持构建持久化智能体,集成代码解释器、文件搜索、网页搜索等托管工具与 MCP 服务,实现多轮对话、流式响应和结构化输出。

收藏
13.1k
安装
2.8k
版本
0.1.0
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心用法

agent-framework-azure-ai 是微软官方推出的 Python SDK,专为在 Azure AI Foundry 上构建持久化智能体而设计。核心架构基于 AzureAIAgentsProvider 连接 Azure AI Agent Service,通过 Agent.run()Agent.run_stream() 执行对话,支持函数工具、托管工具(代码解释器、文件搜索、网页搜索)及 MCP 服务器的灵活组合。

关键特性

  • 持久化智能体:创建后可在 Azure 服务中长期存储,支持通过 agent_id 复用
  • 多工具编排:原生支持函数工具自动转换(AIFunction)、托管工具(HostedCodeInterpreterToolHostedWebSearchTool 等)及 MCP 集成(HostedMCPToolMCPStreamableHTTPTool
  • 对话线程管理:通过 AgentThread 实现多轮对话上下文持久化,支持会话断点续传
  • 流式响应run_stream() 方法提供实时令牌流输出
  • 结构化输出:基于 Pydantic 模型的 response_format 强制类型安全输出

显著优点

  • 企业级可靠性:Azure 托管基础设施提供 SLA 保障,支持生产级部署
  • 身份集成无缝:原生支持 AzureCliCredentialDefaultAzureCredential 等 Azure 身份验证链,与 Azure AD 深度整合
  • 开发体验一致:异步上下文管理器模式(async with)确保资源自动清理,符合 Python 现代异步编程范式
  • 工具生态丰富:内置代码解释器沙箱、Bing 搜索、矢量存储检索,降低自研成本

潜在局限

  • Azure 生态锁定:深度依赖 Azure AI Foundry 和 Azure 身份体系,多云迁移成本高
  • 预览版稳定性:当前为 --pre 预览版本,API 可能存在破坏性变更
  • 冷启动延迟:托管智能体首次调用存在服务端初始化开销
  • 成本结构复杂:按 token、工具调用次数、存储等多维度计费,预估难度大

适合人群

  • 已采用 Azure AI 服务的企业开发团队
  • 需要持久化智能体状态的生产场景(客服、研究助手等)
  • 追求托管运维、降低基础设施负担的中小团队

常规风险

  • 预览版 API 变更:建议锁定版本并关注官方迁移指南
  • 工具权限边界:代码解释器虽为沙箱环境,但仍需审查执行策略防止提示注入
  • 数据驻留合规:Azure AI 服务的数据处理地域需符合 GDPR、等保等合规要求
  • MCP 服务端信任:接入第三方 MCP 服务器时需验证端点 TLS 证书和鉴权机制

安全解读

核心用法

Agent Framework Azure AI Py 是微软官方推出的 Python SDK 封装,用于在 Azure AI Foundry 上构建持久化 Agent。核心工作流为:通过 AzureAIAgentsProvider 创建 Agent → 配置工具(函数/托管工具/MCP)→ 调用 agent.run()agent.run_stream() 执行对话。支持 AgentThread 实现多轮对话状态持久化。

主要功能模块

  • Agent 生命周期管理create_agent()get_agent()as_agent() 三种创建方式
  • 工具生态:本地函数自动转换(带 Pydantic 注解)、托管工具(代码解释器、文件搜索、Bing 搜索)、MCP 服务器集成(HostedMCPTool/MCPStreamableHTTPTool)
  • 输出模式:文本回复、流式输出(run_stream)、结构化输出(Pydantic BaseModel)
  • 对话管理get_new_thread() 创建线程,通过 conversation_id 恢复会话

显著优点

1. 企业级可靠性:Azure AI 官方托管服务,SLA 保障,无需自行部署推理基础设施
2. 持久化架构:Agent 配置云端持久存储,支持长时间运行任务和会话恢复

3. 类型安全:原生支持 Pydantic 模型定义工具参数和结构化输出,开发体验流畅

4. 多工具编排:单一 Agent 可同时挂载本地函数、代码解释器、文件搜索、Web 搜索、MCP 服务,实现复杂工作流

5. 安全合规:Azure AD 身份认证(AzureCliCredential/DefaultAzureCredential),无硬编码密钥风险

潜在局限

1. 平台锁定:深度绑定 Azure AI Foundry 生态,迁移至其他云服务商成本较高
2. 异步强制:SDK 全面采用 asyncio 模式,对同步代码库改造有侵入性

3. 预览阶段:包版本带 --pre 标记,API 可能变动,生产环境需谨慎评估

4. 成本考量:代码解释器等托管工具按执行时间计费,高频调用场景成本需监控

5. 网络依赖:所有 Agent 操作需实时连接 Azure 服务,离线/边缘场景不适用

适合人群

  • 已采用 Azure 云基础设施的企业开发团队
  • 需要持久化 Agent 状态、支持多轮复杂对话的客服/助理类应用
  • 希望快速集成代码执行、文件检索、网络搜索等托管能力而无需自建工具链的开发者
  • 重视企业级安全合规(Azure AD、RBAC、审计日志)的 B2B 场景

常规风险

  • 认证配置风险:误用长期有效的 Service Principal 凭证或未最小化权限配置可能导致安全暴露,应遵循文档建议使用 DefaultAzureCredential 并配置 Managed Identity
  • 工具权限边界:托管代码解释器虽沙箱化运行,但仍需确保输入数据经过脱敏处理,避免敏感信息通过代码执行泄露
  • MCP 服务端安全:接入第三方 MCP 服务器时,需验证服务端 TLS 证书和身份,防范中间人攻击或恶意工具注入
  • 结构化输出幻觉:即使指定 Pydantic 模型,仍需对返回结果做校验,大模型可能生成不符合 schema 的伪 JSON
  • 成本失控:流式响应 + 多工具调用场景下,Token 消耗和托管工具计费可能快速增长,建议设置预算告警

Agent Framework Azure Ai Py 内容

references文件夹
手动下载zip · 17.6 kB
acceptance-criteria.mdtext/markdown
请选择文件