Points de terminaison pour les modèles Microsoft Foundry

Microsoft Foundry Models permet d’accéder à un large éventail de modèles de nombreux fournisseurs via un point de terminaison unique et un ensemble d’informations d’identification. Cette fonctionnalité vous permet de basculer entre les modèles et de les utiliser dans votre application sans apporter de modifications de code.

Cet article explique comment les services Foundry organisent les modèles et comment utiliser le point de terminaison d’inférence pour y accéder.

Prerequisites

Déploiements

Foundry utilise les déploiements comme alias pour accéder au modèle. Un déploiement donne un nom et un ensemble de configurations à un modèle. Vous accédez à un modèle à l’aide de son nom de déploiement dans vos demandes.

Un déploiement définit :

  • Nom d’un modèle
  • Version d’un modèle
  • Un provisionnement ou un type de capacité1
  • Configuration du filtrage de contenu1
  • Configuration de limitation de débit1

1 Ces configurations peuvent changer en fonction du modèle sélectionné.

Une ressource Foundry peut avoir de nombreux déploiements de modèles. Vous payez uniquement pour l’inférence effectuée sur les déploiements de modèles. Les déploiements sont des ressources Azure, donc soumis à des stratégies Azure.

Pour plus d’informations sur la création de déploiements, consultez Ajouter et configurer des déploiements de modèles.

Point de terminaison d’inférence Azure OpenAI

Le Azure API OpenAI expose les fonctionnalités complètes des modèles OpenAI et prend en charge d’autres fonctionnalités telles que les assistants, les threads, les fichiers et l’inférence par lots. Vous pouvez également l’utiliser pour accéder aux modèles non OpenAI.

Les points de terminaison Azure OpenAI se présentent sous la forme de https://<resource-name>.openai.azure.com. Les points de terminaison correspondent aux déploiements, et chaque déploiement possède sa propre URL. Toutefois, vous pouvez utiliser le même mécanisme d’authentification pour consommer plusieurs déploiements. Pour plus d’informations, consultez la page de référence de Azure API OpenAI.

Une illustration montrant comment les déploiements Azure OpenAI contiennent une URL unique pour chaque déploiement.

Les URL de déploiement sont formées en concaténant l’URL de base Azure OpenAI et l’itinéraire/deployments/<model-deployment-name>. Lorsque vous utilisez l’API OpenAI v1, appelez la route /openai/v1/ sur l’URL de base, https://<resource-name>.openai.azure.com/openai/v1/, et transmettez le nom du déploiement dans le champ model de votre requête. La route /openai/v1/ utilise le versionnement implicite, vous n’avez donc pas à passer de api-version.

Les exemples suivants utilisent l’API Réponses, qui prend en charge les dernières fonctionnalités d’inférence.

Note

L’API Responses fonctionne avec les modèles Azure OpenAI ainsi qu’avec les modèles Foundry vendus par Azure compatibles avec celle-ci, tels que les modèles DeepSeek, Llama et Grok. Si un déploiement ne prend pas en charge l’API Réponses, la requête retourne 400 Model not supported. Dans ce cas, utilisez plutôt l’API Chat Completions en appelant client.chat.completions.create.

Utiliser l’authentification par clé API

Vous pouvez authentifier les demandes d’inférence avec une clé API à partir de votre ressource Foundry. Les clés API sont rapides à configurer, mais elles accordent un accès complet à la ressource, sont difficiles à étendre à des utilisateurs ou actions spécifiques et nécessitent une rotation manuelle pour rester sécurisée. Pour les charges de travail de production, utilisez plutôt l’authentification sans clé avec Microsoft Entra ID.

Dans l’exemple suivant, deepseek-v3-0324 il s’agit du nom d’un déploiement de modèle dans la ressource Microsoft Foundry. Remplacez-le par votre propre nom de déploiement et stockez votre clé API dans la variable d’environnement AZURE_INFERENCE_CREDENTIAL .

Installez le paquet openai à l’aide de pip :

pip install openai --upgrade

Créez un client qui pointe vers le point de terminaison Azure OpenAI v1, puis générez une réponse. La route /openai/v1/ utilise le versionnement implicite, vous n’avez donc pas à passer de api-version. Transmettez votre nom de déploiement dans le model champ :

import os
from openai import OpenAI

client = OpenAI(
    base_url="https://<resource>.openai.azure.com/openai/v1/",
    api_key=os.environ["AZURE_INFERENCE_CREDENTIAL"],
)

response = client.responses.create(
    model="deepseek-v3-0324",  # Replace with your model deployment name.
    input="Explain the Riemann hypothesis in one paragraph.",
)

print(response.output_text)

Pour plus d’informations sur l’utilisation du point de terminaison Azure OpenAI, consultez prise en charge des langages du SDK Azure OpenAI.

Utiliser l’authentification sans clé

Les modèles Foundry déployés prennent en charge l’autorisation sans clé avec Microsoft Entra ID. L’autorisation sans clé améliore la sécurité, simplifie l’expérience utilisateur, réduit la complexité opérationnelle et fournit une prise en charge robuste de la conformité. Utilisez l’autorisation sans clé si votre organisation utilise des solutions de gestion des identités sécurisées et évolutives.

Pour utiliser l’authentification sans clé, configurez votre ressource et accordez l’accès aux utilisateurs pour effectuer l’inférence. Après avoir configuré la ressource et accordé l’accès, authentifiez-vous comme suit :

Installez le Kit de développement logiciel (SDK) OpenAI à l’aide d’un gestionnaire de package tel que pip :

pip install openai

Pour l’authentification Microsoft Entra ID, installez également :

pip install azure-identity

Utilisez le package logiciel pour exploiter le modèle. L’exemple suivant montre comment créer un client et effectuer un appel de test à l’API Réponses à l’aide de Microsoft Entra ID et de votre déploiement de modèle.

Remplacez par <resource> le nom de votre ressource Foundry. Recherchez-le dans le portail Azure ou en exécutant az cognitiveservices account list. Remplacez par deepseek-v3-0324 votre nom de déploiement réel.

from openai import OpenAI
from azure.identity import DefaultAzureCredential, get_bearer_token_provider

token_provider = get_bearer_token_provider(
    DefaultAzureCredential(), 
    "https://ai.azure.com/.default"
)

client = OpenAI(
    base_url="https://<resource>.openai.azure.com/openai/v1/",
    api_key=token_provider,
)

response = client.responses.create(
    model="deepseek-v3-0324",  # Replace with your model deployment name.
    input="What is Azure AI?",
)

print(response.output_text)

Sortie attendue

Azure AI is a comprehensive suite of artificial intelligence services and tools from Microsoft that enables developers to build intelligent applications. It includes services for natural language processing, computer vision, speech recognition, and machine learning capabilities.

Référence : OpenAI Python SDK et DefaultAzureCredential class.