你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
如果已在 Microsoft Foundry 中拥有 AI 项目,则模型目录默认将合作伙伴模型提供程序中的模型部署为项目中的独立终结点。 每个模型部署都有自己的 URI 和凭据集来访问它。 另一方面,Azure OpenAI 模型将部署到 Foundry 资源或 Foundry 模型资源中的 Azure OpenAI。
重要
如果当前将 Azure AI 推理 beta SDK 与 Microsoft Foundry 模型或 Azure OpenAI 服务配合使用,强烈建议过渡到正式版 OpenAI/v1 API,该 API 使用 OpenAI 稳定 SDK。
有关如何使用所选编程语言中的 SDK 迁移到 OpenAI/v1 API 的详细信息,请参阅 从 Azure AI 推理 SDK 迁移到 OpenAI SDK。
可以更改此行为并将这两种类型的模型部署到 Foundry 资源。 配置后,模型即无服务器 API 的部署发生在连接的 Foundry 资源上,而不是发生在项目本身,从而提供一组终结点和凭据来访问 Foundry 中部署的所有模型。 可以用相同的方式管理来自 Azure OpenAI 和合作伙伴模型供应商的模型。
此外,将模型部署到 Foundry 模型带来了额外的好处:
- 路由功能
- 自定义内容筛选器
- 全局容量部署类型
- 使用 Microsoft Entra ID 的无密钥身份验证
本文介绍如何将项目配置为使用 Foundry Models 部署。
先决条件
若要完成本教程,需要:
一份 Azure 订阅。 如果你正在使用 GitHub 模型,则可以升级体验并在此过程中创建 Azure 订阅。 若要了解详细信息,请参阅 从 GitHub 模型升级到 Foundry 模型。
Foundry 资源。 有关详细信息,请参阅 创建第一个 Foundry 资源。
Foundry 项目和中心。 有关详细信息,请参阅 如何创建和管理 Foundry 中心。
小窍门
在预配 AI 中心时,会同时创建一个 Foundry 资源,并将这两个资源连接在一起。 若要查看哪些资源已连接到项目,请转到 Foundry 门户>管理中心>“已连接”资源,并查找 Foundry 工具类型的连接。
将项目配置为使用 Foundry 模型
若要将项目配置为使用 Foundry 中的 Foundry 模型功能,请执行以下步骤:
在项目的登陆页中,选择边栏菜单底部的 管理中心 。 确定连接到您项目的 Foundry 资源。
如果未列出任何资源,则表示 AI 中心没有连接的 Foundry 资源。 创建新的连接。
选择 “+新建连接”,然后从磁贴中选择 Azure AI Foundry 。
在窗口中,查找订阅中的现有资源,然后选择“ 添加连接”。
新连接已添加到集线器。
返回到项目的登陆页面。
在“包含的功能”下,确保选择“Azure AI 推理”。 Foundry 模型终结点 URI 随其访问权限凭据一起显示。
小窍门
每个 Foundry 资源都有一个 Foundry 模型终结点 ,可用于访问其上的任何模型部署。 同一终结点可服务多个模型,具体取决于配置的模型。 若要了解终结点的工作原理,请参阅 Azure OpenAI 推理终结点。
记下终结点 URL 和凭据。
在 Foundry 模型模块中创建模型部署
对于要在 Foundry 模型下部署的每个模型,请执行以下步骤:
滚动到感兴趣的模型,然后选择它。
可以在模型卡中查看模型的详细信息。
选择“ 使用此模型”。
对于需要更多合同条款的模型提供程序,系统会要求你通过选择 “同意”并继续接受这些条款。
此时可以配置部署设置。 默认情况下,部署会接收正在部署的模型的名称。 部署名称用于请求路由到此特定模型部署的
model参数中。 它让你可以在附加特定配置时为模型配置特定名称。 例如,o1-preview-safe对于具有严格内容筛选器的模型。我们根据项目自动选择 Foundry 连接,因为你打开了功能 “将模型部署到 Azure AI 模型推理服务”。 选择“ 自定义 ”以根据需要更改连接。 如果要在 无服务器 API 部署类型下部署,则需要在 Foundry 资源的区域中提供模型。
选择“部署”。
部署完成后,你会看到终结点 URL 和凭据,以获取对模型的访问权限。 请注意,现在提供的 URL 和凭据与 Foundry Models 终结点项目登陆页中显示的 URL 和凭据相同。
可以通过转到 “模型 + 终结点 ”部分并查找与资源连接组来查看资源下可用的所有模型:
使用新终结点升级代码
配置 Foundry 资源后,可以从代码开始使用它。 需要终结点 URL 和密钥,可在“概述”部分找到:
可以使用任何受支持的 SDK 从终结点中获取预测。 正式支持以下 SDK:
- OpenAI SDK
- Azure OpenAI SDK
- Azure AI 推理包
- Azure AI 项目包
有关详细信息和示例,请参阅 Azure AI 推理 SDK 支持的编程语言。 以下示例演示如何将 Azure AI 推理包与新部署的模型配合使用:
使用包管理器(例如 pip)安装包 azure-ai-inference:
pip install azure-ai-inference
然后,可以使用该包来调用模型。 以下示例演示如何创建客户端程序来调用聊天结果:
import os
from azure.ai.inference import ChatCompletionsClient
from azure.core.credentials import AzureKeyCredential
client = ChatCompletionsClient(
endpoint="https://<resource>.services.ai.azure.com/models",
credential=AzureKeyCredential(os.environ["AZURE_INFERENCE_CREDENTIAL"]),
)
生成第一个聊天补全:
from azure.ai.inference.models import SystemMessage, UserMessage
response = client.complete(
messages=[
SystemMessage(content="You are a helpful assistant."),
UserMessage(content="Explain Riemann's conjecture in 1 paragraph"),
],
model="mistral-large"
)
print(response.choices[0].message.content)
使用参数 model="<deployment-name> 将请求路由到此部署。
部署在某些配置下充当给定模型的别名。 若要了解 Foundry 模型如何路由部署,请参阅 路由。
从无服务器 API 部署迁移到 Foundry 模型
尽管已将项目配置为使用 Foundry 模型,但现有模型部署仍作为无服务器 API 部署存在于项目中。 不会为你移动这些部署。 因此,可以逐步升级引用先前模型部署的任何现有代码。 若要开始移动模型部署,建议使用以下工作流:
在 Foundry 模型中重新创建模型部署。 可在 Foundry Models 终结点下访问此模型部署。
升级代码以使用新终结点。
通过删除无服务器 API 部署来清理项目。
使用新终结点升级代码
在 Foundry 下部署模型后,可以升级代码以使用 Foundry 模型终结点。 无服务器 API 部署和 Foundry 模型工作方式的主要区别在于终结点 URL 和模型参数。 虽然无服务器 API 部署在每个模型部署中都有一组 URI 和密钥,但 Foundry 模型对于所有这些部署只有一个。
下表总结了你必须引入的更改:
| 资产 | 无服务器 API 部署 | 铸造模型 |
|---|---|---|
| 端点 | https://<endpoint-name>.<region>.inference.ai.azure.com |
https://<ai-resource>.services.ai.azure.com/models |
| 资格证书 | 每个模型/终结点一个。 | 每个 Foundry 资源各一个。 你也可以使用 Microsoft Entra ID。 |
| 模型参数 | 没有。 | 必填。 使用模型部署的名称。 |
清理项目中的现有无服务器 API 部署
重构代码后,可能需要删除项目中的现有无服务器 API 部署(如果有)。
对于通过无服务器 API 部署的每个模型,请执行以下步骤:
转到 Foundry 门户。
选择 “模型 + 终结点”,然后选择“ 服务终结点 ”选项卡。
标识 无服务器 API 部署 类型的终结点,然后选择要删除的终结点。
选择“删除”选项。
警告
此操作无法还原。 确保终结点当前未由任何其他用户或代码段使用。
选择“删除”以确认操作。
如果从其他项目创建了到此终结点的 无服务器 API 部署连接 ,则不会删除此类连接,并继续指向不存在的终结点。 删除其中任何连接以避免错误。
局限性
将项目配置为使用 Foundry 模型时,请考虑以下限制:
- 只有支持无服务器 API 部署的模型才可用于部署到 Foundry 模型。 需要使用订阅中的计算配额(包括自定义模型)的模型只能作为管理的在线终结点部署在特定项目内,并继续使用其各自的终结点URI和凭据进行访问。
- 默认情况下,同时以无服务器 API 部署和托管计算产品的形式提供的模型将部署到 Foundry 资源中的 Foundry 模型。 Foundry 门户不提供将它们部署到托管联机终结点的方法。 您需要关闭配置项目以使用 Foundry 模型中提到的功能,或者使用 Azure CLI/Azure ML SDK/ARM 模板来执行部署。