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

使用 Foundry 模型

在 Azure AI Foundry 中部署模型后,可以通过 Azure AI Foundry API 使用其功能。 在 Azure AI Foundry 模型中,有两个不同的端点和 API 用于使用模型。

模型推理终结点

模型推理终结点(通常采用表单 https://<resource-name>.services.ai.azure.com/models)允许客户使用相同的身份验证和架构的单个终结点来为资源中已部署的模型生成推理。 此终结点遵循 Azure AI 模型推理 API,Foundry 模型中的所有模型都支持该 API。 它支持以下形式:

  • 文本嵌入
  • 图像嵌入
  • 聊天完成

路线规划

推理终结点通过将请求内的参数 name 与部署名称进行匹配,将请求路由到给定部署。 这意味着,部署在某些配置下充当给定模型的别名。 这种灵活性允许你在服务中多次部署给定的模型,但如果需要,可以在不同的配置下部署。

一个图示,通过在有效负载请求内的参数“model”中指示 Meta-llama-3.2-8b-instruct 模型的名称,展示了路由的工作原理。

例如,如果你创建一个名为 Mistral-large 的部署,则可以如下所示调用此类部署:

使用包管理器(例如 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"]),
)

浏览我们的示例,并阅读 API 参考文档以开始使用。

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)

小窍门

部署路由不区分大小写。

Azure OpenAI 推理终结点

Azure AI Foundry 还支持 Azure OpenAI API。 此 API 公开 OpenAI 模型的完整功能,并支持助手、线程、文件和批推理等其他功能。 非 OpenAI 模型也可用于兼容的功能。

Azure OpenAI 终结点(通常采用 https://<resource-name>.openai.azure.com 形式)在部署级别工作,并且它们有自己的 URL,与其中每个终结点相关联。 但是,相同的身份验证机制可以用来消耗它们。 在 Azure OpenAI API 参考页中了解详细信息

一个图示,显示了 Azure OpenAI 部署如何为每个部署包含一个 URL。

每个部署都有一个 URL,该 URL 是 Azure OpenAI 基 URL 和路由 /deployments/<model-deployment-name> 的串联。

使用包管理器(例如 pip)安装包 openai

pip install openai --upgrade

然后,可以使用包来使用模型。 以下示例演示如何创建客户端来使用聊天补全:

import os
from openai import AzureOpenAI
    
client = AzureOpenAI(
    azure_endpoint = "https://<resource>.services.ai.azure.com"
    api_key=os.getenv("AZURE_INFERENCE_CREDENTIAL"),  
    api_version="2024-10-21",
)
response = client.chat.completions.create(
    model="deepseek-v3-0324", # Replace with your model dpeloyment name.
    messages=[
        {"role": "system", "content": "You are a helpful assistant."},
        {"role": "user", "content": "Explain Riemann's conjecture in 1 paragraph"}
    ]
)

print(response.model_dump_json(indent=2)

后续步骤