你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

什么是 Microsoft Foundry 代理服务?

Foundry 代理服务是用于生成、部署和缩放 AI 代理的托管平台。 使用任何框架、Foundry 模型目录中支持的任何模型 ,并将响应 API 用作单个入口点。

选择所需的平台数量:

  • 提示代理 - 在 Foundry 门户中创作 提示代理 ,或使用 SDK 和 REST 对其进行定义,并且 Foundry 会为你运行它。 无需维护任何应用程序代码、无需支付任何计算费用,也没有用于优化、缩放或修补的容器或包。
  • Hosted agents — 使用 Agent FrameworkLangGraphOpenAI Agents SDKAnthropic Agent SDKGitHub Copilot SDK 或你自己的代码来编写代理代码,将其打包为容器,并让 Foundry 通过托管端点、扩缩容、身份和可观测性来运行它。

已经在 Foundry 外运行代理代码了吗? 从现有流程调用 响应 API ,以获取 Foundry 模型和平台工具,而无需移动代码。

什么是代理?

代理是一个 AI 应用程序,它使用 Foundry 模型目录中的模型来推理用户请求并采取自治操作来实现这些请求。 与仅生成文本的简单聊天机器人不同,代理可以调用工具、访问外部数据,并跨多个步骤做出决策以完成任务。 在某些情况下,代理根本不使用聊天界面(在后台工作,由系统事件触发)以代表用户或组织完成任务。

每个代理都结合了三个核心组件:

  • 模型:来自 Foundry 模型目录的模型,提供推理和语言功能。
  • 说明:定义目标、约束和行为。 在 Foundry 中,指令可以是基于提示的,也可以是托管代理中的代码。
  • 工具:提供对数据或操作(例如搜索、文件操作或 API 调用)的访问权限。

显示 AI 代理组件的图示。

代理服务概览

组件 它的作用
响应 API 适用于所有代理类型的统一入口。 提供对 Foundry 模型和平台工具(文件搜索、代码解释器、内存、Web 搜索、MCP 服务器)的任何框架、进程或运行时访问权限。
代理运行时 主机和缩放提示代理和托管代理。 管理对话、工具调用和代理生命周期。
工具 内置工具,包括 Web 搜索、文件搜索、内存、代码解释器、MCP 服务器和自定义函数。 托管身份验证包括由服务管理的凭据和代表用户执行 (OBO)。
模型 适用于 Foundry 模型目录中的许多模型,例如 GPT-4o、Llama 和 DeepSeek。 在不更改代理代码的情况下交换模型。
可观察性 端到端跟踪、指标和 Application Insights 集成。 查看代理做出的每个决策。
标识和安全性 Microsoft Entra标识、RBAC、内容筛选器和虚拟网络隔离。 内置的企业级信任保障。
出版 版本代理人,创建稳定的终结点,并通过 Microsoft Teams、智能 Microsoft 365 Copilot 副驾驶® 和 Entra Agent Registry 共享。

代理 入门

根据尝试执行的操作选择路径:

  • 代理的新增功能?从提示代理开始 — 在 Foundry 门户中创建代理、选择模型、附加工具,然后从代码调用它。 没有要编写或维护的运行时代码 — Foundry 会为你运行代理。
  • 想要在 Foundry 中生成基于代码的代理?部署托管代理 — 使用 Agent Framework、LangGraph、OpenAI 代理 SDK 或你自己的代码编写代理,将其打包为容器,并允许 Foundry 使用托管终结点、缩放和标识运行它。
  • 想要从已在其他位置运行的代理代码中使用 Foundry 模型和工具?从现有流程调用响应 API,以获取 Foundry 模型和平台工具,而无需移动代码。

代理类型

代理服务中有两种主要代理类型:

提示智能体

提示代理完全通过配置(说明、模型选择和工具)定义。 可以在 Foundry 门户中编写它们以快速启动,或者使用 SDK 或 REST API 以编程方式定义它们,以便与 CI/CD 工作流集成。 无论哪种方式,Foundry 都为你运行代理 — 没有要维护的应用程序代码、无需支付任何计算费用,也没有容器或包来优化、缩放或监视安全性。

开始使用的两种方式:

  • 门户优先 - 在 Foundry 门户中以交互方式创建代理,在操场中测试代理,然后从应用程序代码调用它。
  • 代码优先 — 在部署管道中使用 SDK 或 REST API 定义代理,启用版本控制、代码评审和自动推出。

最适合:快速上手、内部工具、不需要自定义编排逻辑的生产环境代理,以及希望获得托管运行时而无需承担基础设施开销的团队。

托管代理(预览版)

托管代理是使用 Agent Framework 构建的基于代码的代理LangGraphOpenAI Agents SDKAnthropic Agent SDKGitHub Copilot SDK, 或你自己的代码。 你可以将代理部署为容器映像,或将源代码打包为 ZIP 压缩包进行部署;如果你提供的是 ZIP 压缩包,Foundry 会为你构建映像;并且 Foundry 会通过托管终结点、自动扩缩、专用的 Microsoft Entra 标识、会话级状态持久化以及端到端可观测性来运行你的代理。

在底层,你的代理代码会在 Foundry 项目终结点上调用 Responses API,用于模型推理和工具编排。这使你能够访问目录中的 Foundry 模型,以及一组统一的平台工具——包括标准的 OpenAI 工具(如文件搜索、代码解释器和网络搜索),以及 Foundry 独有的工具(如 SharePoint、WorkIQ 和 Fabric IQ)。

注意

托管代理目前正处于公共预览阶段。

最适合:调用您自定义代码的代理;其次也适用于自定义编排逻辑、多代理系统以及自定义协议(Webhook、语音、AG-UI)等场景,在这些场景中,您希望完全控制代理逻辑,同时让 Foundry 处理托管、扩缩容和身份管理。

如果你宁愿继续在 Foundry 外部运行代理代码(例如嵌入在现有应用程序中),仍可以通过直接从进程调用 Responses API 来获取 Foundry 的模型和平台工具。 请参阅 在您自己的代码中使用 Responses API

比较代理类型

提示智能体 托管代理(预览版)
创作界面 门户、SDK 或 REST Agent Framework, LangGraph, OpenAI Agents SDK, Anthropic Agent SDK, GitHub Copilot SDK, 自定义代码
Foundry 模型 + 平台工具 是的 是(通过 Foundry 项目终结点上的响应 API)
技能支持 是的 是的
要维护的运行时代码 没有 是 — 你的代理逻辑
用于管理的计算资源 无 — 完全托管 容器计算,由 Foundry 托管
托管终结点 是的 是的
自动缩放 自动,由 Foundry 托管;随请求量扩缩 自动,由 Foundry 托管;根据会话数和请求量扩缩容容器实例
代理标识 (Entra) 是的 自动,每个代理专属
成本模型 每次调用的推理 + 工具使用 按调用推理 + 工具使用情况 + 容器计算
最适合 快速上手,无需自定义编排即可部署生产级代理 调用自定义代码的代理;其次,自定义编排逻辑

在您自己的代码中使用 Responses API

响应 API 是每个代理类型背后的单个模型和工具终结点。 可以直接从自己的代码调用它来获取 Foundry 模型和平台工具,而无需在 Foundry 中创建代理资源。 这种模式是对托管代理的补充,而不是替代方案——同一套 Agent Framework 代码现在就可以在你自己的进程中调用 Responses API,并且在你日后需要由 Foundry 管理的端点时,再将其打包为容器化托管代理。

请参阅 快速入门:使用 Responses API,了解端点选项和端到端示例。

模型支持

代理服务适用于 Foundry 模型目录中可用的许多模型。 有关完整列表,请参阅 配额、限制和区域支持

工具

代理服务提供内置工具并支持自定义工具,以便代理可以执行操作和访问数据。 如需完整列表,请参阅 Foundry 工具目录。 有关高级工具选择模式,请参阅 工具最佳做法

Foundry 支持可从 Foundry 门户中的 “添加工具” 目录添加的远程 MCP 服务器。 例如,可以直接从目录中添加Azure DevOps MCP 服务器(公共预览版)。 连接Azure DevOps组织以启用代理访问,并配置一部分可用工具来控制代理可以执行的操作。 还可以使用 Functions MCP Webhook 终结点(/runtime/webhooks/mcp)连接托管在Azure Functions上的自定义 MCP 服务器,以向代理公开自定义工具。

MCP 服务器和其他工具连接支持的身份验证选项包括:

  • 基于密钥的访问
  • Microsoft Entra(使用代理的托管标识或项目的托管标识)
  • OAuth 标识传递(代理)
  • 未经身份验证的访问(如果适用)

工具箱(预览版)

使用工具箱 可以定义一次特选的工具集,在 Foundry 中集中管理它们,并通过与 MCP 兼容的单个终结点公开它们。 无论使用的框架如何,任何与 MCP 兼容的代理运行时或客户端都可以使用工具箱。 工具箱版本控制使你能够显式控制更改何时生效 — 创建一个新版本、对其进行测试,并在准备就绪时将其提升为默认值。

注意

某些工具(包括内存和 Web 搜索)处于预览状态。 有关按区域和预览状态列出的可用性,请参阅按区域和模型提供的工具支持

开发生命周期

代理服务支持完整的 build-test-deploy-monitor 工作流:

  1. 创建 — 在门户中或使用 SDK 定义提示代理,或者编写调用响应 API 的托管代理。
  2. 测试 - 在 代理操场 中与代理聊天或在本地运行。 MCP 服务器集成(包括托管在 Azure Functions 上的自定义 MCP 服务器)可直接在演练场中进行测试,以便在发布前验证工具连接性、权限和行为。
  3. 跟踪 - 使用 代理跟踪检查每个模型调用、工具调用和决策。
  4. 评估:运行评估以度量质量和捕获回归问题。
  5. 优化 - 使用 代理优化器自动改进托管代理的说明。
  6. 发布将你的智能体提升为具有稳定终结点的托管资源。
  7. 监视 - 使用 服务指标 和仪表板跟踪性能和可靠性。

如需详细指南,请参阅 代理开发生命周期

企业功能

代理服务为部署的每个代理提供企业级基础结构:

  • Agent 标识 - 每个代理都可以具有专用的Microsoft Entra标识,从而在不共享凭据的情况下实现对资源和 API 的安全范围访问。 代理身份可以对外部 MCP 服务器(包括托管在 Azure Functions 上的服务器)进行身份验证,并且在配置时支持 OAuth 代理 (OBO) 传递。
  • 私有网络——在Azure的虚拟网络中运行代理程序,实现完全的网络隔离,并符合数据驻留要求。 专用网络可供提示词代理使用。 托管智能体支持自带 Azure 虚拟网络 (BYO VNet),其中每个会话在 VM 隔离沙盒中运行并连接到你的 VNet。
  • 基于角色的访问控制 - 通过 Microsoft Entra 和 Azure RBAC 实现细化的权限。 控制谁可以创建、调用和管理代理。
  • 内容安全性 - 集成内容筛选器有助于缓解提示注入风险(包括交叉提示注入)并防止不安全的输出。

有关环境设置说明,请参阅 设置环境

发布和共享

代理服务提供内置的版本控制和发布功能,以便代理可以放心地从开发迁移到生产环境。

  • 版本 — 当对智能体进行迭代时,版本将自动创建快照。 回滚到任何以前的版本或比较版本之间的更改。
  • 发布 — 将智能体提升为具有稳定终结点的托管资源。 已发布的代理继承为项目配置的 企业标识和访问控制 ,并且可以以编程方式调用。
  • Distribution — 通过 智能 Microsoft 365 Copilot 副驾驶® 和 Teams 以及 Entra 代理注册表共享已发布的代理,将代理放在用户已经在使用的地方。 Foundry 智能体服务支持用于 Microsoft 365 发布的 OpenResponses 和 Activity Protocols,一种用于灵活终结点与自定义应用和服务集成的调用协议,以及用于智能体之间通信的 A2A 协议(预览版)

安全性、隐私和合规性

代理服务专为需要对标识、网络、数据处理和安全进行强控制的企业工作负荷而设计。

  • 安全控制:使用集成的 护栏 来帮助减少不安全的输出并缓解提示注入风险,包括交叉提示注入攻击(XPIA)。
  • 网络隔离和数据驻留控制:使用 虚拟网络 和自带资源来满足要求。
  • 携带您自己的资源:使用您自己的Azure资源(例如存储、Azure AI 搜索和用于聊天状态的Azure Cosmos DB),以满足合规性和运营需求。 请参阅 “使用自己的资源”。
  • Responsible AI 指南:有关一组更广泛的建议和治理资源,请参阅 适用于 Microsoft Foundry 的Responsible AI。