你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
标准代理设置提供企业级安全性、合规性和控制。 此配置使用客户管理的单租户资源来存储代理状态,并确保所有数据都保留在你的控制范围内。
在此设置中:
- 代理状态(文件、线程、矢量存储)存储在你自己的 Azure 资源中。
- 对于公共网络和专用网络(自带虚拟网络)选项都可用。
利用自己的资源存储客户数据
这两种标准设置配置旨在通过要求使用自己的 Azure 资源来完全控制敏感数据。 所需的自带 (BYO) 资源包括:
- BYO 文件存储:开发人员上传的所有文件(在代理配置期间)或最终用户(在交互期间)直接存储在客户的 Azure 存储帐户中。
- BYO 搜索:代理创建的所有矢量存储都利用客户的 Azure AI 搜索资源。
- BYO 线程存储:所有客户消息和聊天历史记录都将存储在客户自己的 Azure Cosmos DB 帐户中。
通过将这些 BYO 功能(文件存储、搜索和线程存储)捆绑在一起,标准设置可确保默认情况下部署安全。 Azure AI Foundry 代理服务处理的所有数据会自动存储在自己的 Azure 资源中,帮助满足内部策略、合规性要求和企业安全标准。
Azure Cosmos DB(用于NoSQL)
标准设置中使用的现有 Azure Cosmos DB for NoSQL 帐户的总吞吐量限制必须至少 为 3000 RU/秒。 同时支持 预配吞吐量 和 无服务器 模式。
使用标准设置时,将在现有 Cosmos DB 帐户中预配三个容器,每个容器都需要 1000 RU/秒。
- 线程消息存储:终端用户对话
- system-thread-message-store:内部系统消息
- agent-entity-store:代理元数据,包括其说明、工具、名称等。
Project-Level 数据隔离
默认情况下,标准设置强制实施项目级数据隔离。 存储帐户中将自动预配两个 Blob 存储容器,一个用于文件和一个用于中间系统数据(区块、嵌入)和三个容器将在 Cosmos DB 中预配,一个用于用户系统,一个用于系统消息,一个用于与创建代理相关的用户输入,例如其说明、工具、名称、 等。选择此默认行为以减少设置复杂性,同时仍在项目之间强制实施严格的数据边界。
功能主机
功能主机 是帐户和项目上的子资源,可实现与 Azure AI Foundry 代理服务的交互。
- 帐户功能主机:该帐户功能主机的请求体是空的,仅包含参数 capabilityHostKind="Agents"。
- 项目功能主机:指定用于存储代理状态的资源,可以是托管的多租户(基本设置)或客户拥有的(标准设置)单租户资源。 将项目功能主机视为项目设置。
局限性
- 不支持更新:无法更新项目或帐户的功能主机。
分步预配过程
- 为标准设置创建项目依赖资源
- 创建新的 Cosmos DB 资源(或传入现有资源 ID)
- 创建新的 Azure 存储资源(或传入现有资源 ID)
- 创建新的 Azure AI 搜索资源(或传入现有资源 ID)
- 创建新的 Key Vault 资源
- [可选]:创建新的 Application Insights 资源
- [可选]:传入现有 AI Foundry 资源的资源 ID
- 创建 Azure AI Foundry 资源(认知服务/帐户类型=AIServices)
- 创建帐户级连接
- 创建到 Application Insights 资源的帐户连接
- 部署 gpt-4o 或其他代理兼容的模型
- 创建项目(认知服务/帐户/项目)
- 创建项目连接
- [如果提供]与 AI Foundry 资源的项目连接
- 创建与 Azure 存储帐户的项目连接
- 创建与 Azure AI 搜索帐户的项目连接
- 创建到 Cosmos DB 帐户的项目连接
- 为项目托管标识(包括用于 SMI 的)分配以下角色:
- Cosmos DB 帐户资源的帐户级别范围内的 Cosmos DB 操作员
- 存储帐户资源的帐户级别范围内的存储帐户参与者
- 为帐户功能主机设置空属性部分。
- 为项目功能主机设置属性:Cosmos DB、Azure 存储和 AI 搜索连接
- 在指定的资源范围上,为项目管理身份(适用于 SMI 和 UMI)分配以下角色:
- Azure AI 搜索(可在 capHost 创建之前或之后分配)
- 分配角色:搜索索引数据参与者、搜索服务参与者
- Azure Blob 存储容器:
<workspaceId>-azureml-blobstore
- 分配角色:存储 Blob 数据参与者
- Azure Blob 存储容器:
<workspaceId>- agents-blobstore
- 分配角色:存储 Blob 数据所有者
- 用于 NoSQL 的 Cosmos DB 容器:
<'${projectWorkspaceId}>-thread-message-store'
- 分配角色:Cosmos DB 内置数据贡献者
- 用于 NoSQL 的 Cosmos DB 容器:
<'${projectWorkspaceId}>-thread-message-store'
- 分配角色:Cosmos DB 内置数据贡献者
- 用于 NoSQL 的 Cosmos DB 容器:
<'${projectWorkspaceId}>-agent-entity-store'
- 分配角色:Cosmos DB 内置数据贡献者
- Azure AI 搜索(可在 capHost 创建之前或之后分配)
- 预配所有资源后,应为想要在项目中创建/编辑代理的所有开发人员分配角色:项目范围内的 Azure AI 用户。