你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
使用 Azure AI Studio 中的自定义策略控制 AI 模型部署
将 Azure AI 服务和 Azure OpenAI 中的模型与 Azure AI Studio 配合使用时,可能需要使用自定义策略来控制开发人员可部署哪些模型。 自定义 Azure 策略允许创建满足组织独特要求的策略定义。 本文介绍如何创建和分配一个示例自定义策略来控制模型部署。
先决条件
- Azure 订阅。 如果没有 Azure 订阅,请在开始之前创建一个免费帐户。
- 创建和分配策略的权限。 若要创建和分配策略,你必须是 Azure 订阅或资源组级别的所有者或资源策略参与者。
- 熟悉 Azure Policy。 有关详细信息,请参阅什么是 Azure Policy?。
创建自定义策略
在 Azure 门户中,从页面左侧选择“策略”。 也可以在页面顶部的搜索栏中搜索“策略”。
在 Azure Policy 仪表板左侧,选择“创作”、“定义”,然后选择页面顶部的“+ 策略定义”。
在“策略定义”窗体中使用以下值:
定义位置:选择要在其中存储策略定义的订阅或管理组。
名称:为策略定义输入唯一的名称。 例如,
Custom allowed Azure AI services and Azure OpenAI models
。说明:输入策略定义的说明。
类别:可以创建新类别,也可以使用现有类别。 例如“AI 模型治理”。
策略规则:以 JSON 格式输入策略规则。 以下示例显示了允许部署特定 Azure AI 服务和 Azure OpenAI 模型的策略规则:
提示
Azure AI 服务最初名为“Azure 认知服务”。 此名称仍由 Azure 在内部使用,例如此自定义策略中显示了
Microsoft.CognitiveServices
值。 Azure OpenAI 是 Azure AI 服务的一部分,因此此策略也适用于 Azure OpenAI 模型。{ "mode": "All", "policyRule": { "if": { "allOf": [ { "field": "type", "equals": "Microsoft.CognitiveServices/accounts/deployments" }, { "not": { "value": "[concat(field('Microsoft.CognitiveServices/accounts/deployments/model.name'), ',', field('Microsoft.CognitiveServices/accounts/deployments/model.version'))]", "in": "[parameters('allowedModels')]" } } ] }, "then": { "effect": "deny" } }, "parameters": { "allowedModels": { "type": "Array", "metadata": { "displayName": "Allowed AI models", "description": "The list of allowed models to be deployed." } } } }
选择“保存”以保存策略定义。 保存后,你将进入策略定义的概述页面。
在策略定义的概述页面中,选择“分配策略”以分配策略定义。
在“分配策略”页面上,在“基本信息”选项卡中使用以下值:
- 范围:选择策略的分配范围。 范围可以是管理组、订阅或资源组。
- 策略定义:此字段中已预先填充了你先前创建的策略定义的标题。
- 分配名称:为分配输入唯一的名称。
- 策略执行:确保“策略执行”字段设置为“已启用”。 如果未启用,则不会执行该策略。
选择页面底部的“下一步”,或选择页面顶部的“参数”选项卡。
在“参数”选项卡中,将“允许的 AI 模型”设置为你要允许的模型列表。 该列表应为模型名称和已批准版本的逗号分隔列表,并括在方括号中。 例如,
["gpt-4,0613", "gpt-35-turbo,0613"]
。提示
可以在 Azure AI Studio 模型目录中找到模型名称及其版本。 选择要查看详细信息的模型,然后在标题中复制模型名称及其版本。
(可选)选择页面顶部的“不合规消息”选项卡,然后设置不合规的自定义消息。
选择“查看 + 创建”选项卡并验证策略分配是否正确。 准备就绪后,选择“创建”以分配策略。
通知开发人员已实施该策略。 如果他们尝试部署不在允许模型列表中的模型,他们会收到错误消息。
验证策略分配
若要验证策略是否已分配,请导航到 Azure 门户中的“策略”,然后选择“创作”下的“分配”。 你应会看到列出的策略。
监视符合性
若要监视对策略的遵从性,请执行以下步骤:
- 在 Azure 门户中,从页面左侧选择“策略”。 也可以在页面顶部的搜索栏中搜索“策略”。
- 在 Azure Policy 仪表板左侧,选择“合规性”。 每项策略分配均与合规性状态一起列出。 若要查看更多详细信息,请选择该策略分配。
更新策略分配
若要更新新模型的现有策略分配,请执行以下步骤:
- 在 Azure 门户中,从页面左侧选择“策略”。 也可以在页面顶部的搜索栏中搜索“策略”。
- 在 Azure Policy 仪表板左侧,选择“分配”并找到现有的策略分配。 选择该分配旁边的省略号 (...),然后选择“编辑分配”。
- 在“参数”选项卡中,更新新模型的“允许的模型”参数。
- 在“检查 + 保存”选项卡中,选择“保存”以更新策略分配。
最佳做法
- 获取模型名称:使用 Azure AI Studio 模型目录,然后选择模型以查看详细信息。 将标题中的模型名称与策略结合使用。
- 粒度范围:在适当的范围分配策略,以平衡控制度和灵活性。 例如,在订阅级别应用策略可以控制订阅中的所有资源,在资源组级别应用策略可以控制特定组中的资源。
- 策略命名:对策略分配使用一致的命名约定,以便更轻松地识别策略的用途。 在名称中包含用途和范围等信息。
- 文档记录:保留策略分配和配置的记录以用于审核目的。 记录一段时间内对策略所做的任何更改。
- 定期评审:定期评审策略分配,确保其符合组织的要求。
- 测试:在将策略应用于生产资源之前,先在非生产环境中对其进行测试。
- 沟通:确保开发人员知道现行的策略,并了解其对开发人员工作的影响。