Déployer des modèles en tant que déploiements d'API sans serveur (classique)

S’applique uniquement au :Portail Foundry (classique). Cet article n’est pas disponible pour le nouveau portail Foundry. En savoir plus sur le nouveau portail.

Note

Les liens de cet article peuvent ouvrir du contenu dans la nouvelle documentation Microsoft Foundry au lieu de la documentation Foundry (classique) que vous affichez maintenant.

Important

Les éléments indiqués comme (aperçu) dans cet article sont en aperçu public. Cette préversion est fournie sans contrat de niveau de service et nous ne la recommandons pas pour les environnements de production. Certaines fonctionnalités peuvent ne pas être prises en charge ou avoir des fonctionnalités contraintes. Pour plus d’informations, consultez Conditions d'utilisation supplémentaires pour les versions préliminaires de Microsoft Azure.

Dans cet article, vous allez apprendre à déployer un modèle Microsoft Foundry en tant que déploiement d’API serverless. Certains modèles du catalogue de modèles peuvent être déployés en tant que déploiement d’API serverless. Ce type de déploiement permet de consommer des modèles en tant qu’API sans les héberger sur votre abonnement, tout en conservant la sécurité et la conformité de l’entreprise dont les organisations ont besoin. Cette option de déploiement ne nécessite pas de quota à partir de votre abonnement.

Bien que le déploiement d’API serverless soit une option pour déployer des modèles Foundry, nous vous recommandons de déployer des modèles Foundry sur des ressources Foundry.

Note

Nous vous recommandons de déployer les Modèles Microsoft Foundry sur des ressources Foundry afin de pouvoir utiliser vos déploiements sur les ressources via un seul point de terminaison avec la même authentification et le même schéma pour obtenir des inférences. Le point de terminaison suit l'API d’inférence de modèle Azure AI, prise en charge par tous les modèles Foundry. Pour savoir comment déployer un modèle Foundry sur les ressources Foundry, consultez Ajouter et configurer des modèles aux modèles Foundry.

Conditions préalables

  • Un abonnement Azure avec un mode de paiement valide. Les abonnements gratuits ou d'essai Azure ne fonctionnent pas. Si vous n'avez pas d'abonnement Azure, créez un compte payé Azure à commencer.

  • Si vous n’en avez pas, créez un projet hub.

  • Vérifiez que la fonctionnalité Déployer des modèles sur des ressources Foundry (préversion) est désactivée dans le portail Foundry. Lorsque cette fonctionnalité est activée, les déploiements d’API serverless ne sont pas disponibles à partir du portail.

    Capture d’écran du portail Foundry montrant où désactiver le déploiement sur les ressources Foundry.

  • Foundry Models des partenaires et de la communauté nécessitent l'accès à Place de marché Azure, tandis que Foundry Models vendus directement par Azure n'ont pas cette exigence. Vérifiez que vous disposez des autorisations nécessaires pour vous abonner aux offres de modèle dans Place de marché Azure.

  • Les contrôles d'accès basés sur les rôles Azure (Azure RBAC) sont utilisés pour permettre l'accès aux opérations dans le portail Foundry. Pour effectuer les étapes décrites dans cet article, votre compte d’utilisateur doit être affecté au rôle Azure développeur IA sur le groupe de ressources. Pour plus d’informations sur les autorisations, consultez contrôle d’accès en fonction du rôle dans le portail Foundry.

  • Vous pouvez utiliser n’importe quel navigateur web compatible pour naviguer dans Foundry.

Rechercher votre modèle dans le catalogue de modèles

  1. Connectez-vous à Microsoft Foundry. Assurez-vous que l'interrupteur New Foundry est désactivé. Ces étapes font référence à Foundry (classique).
  2. Si vous n’êtes pas déjà dans votre projet, sélectionnez-le.
  3. Sélectionnez Catalogue de modèles dans le volet gauche.
  1. Sélectionnez la carte de modèle du modèle que vous souhaitez déployer. Dans cet article, vous sélectionnez un modèle DeepSeek-R1 .

  2. Sélectionnez Utiliser ce modèle pour ouvrir la fenêtre de déploiement de l’API serverless dans laquelle vous pouvez afficher l’onglet Tarification et termes .

  3. Dans l’Assistant Déploiement, nommez le déploiement. L’option Filtre de contenu (préversion) est activée par défaut. Conservez le paramètre par défaut pour le service afin de détecter des contenus dangereux tels que la haine, l’auto-préjudice, le contenu sexuel et violent. Pour plus d’informations sur le filtrage de contenu, consultez Filtrage de contenu dans le portail Foundry.

    Screenshot montrant l’Assistant déploiement d’un modèle vendu directement par Azure.

Déployer le modèle sur une API serverless

Dans cette section, vous allez créer un point de terminaison pour votre modèle.

  1. Dans l’Assistant Déploiement, sélectionnez Déployer. Attendez que le déploiement soit prêt et que vous êtes redirigé vers la page Déploiements.

  2. Pour afficher les points de terminaison déployés sur votre projet, dans la section Mes ressources du volet gauche, sélectionnez Modèles + points de terminaison.

  3. Le point de terminaison créé utilise l’authentification par clé pour l’autorisation. Pour obtenir les clés associées à un point de terminaison donné, procédez comme suit :

    1. Sélectionnez le déploiement, puis notez l’URI cible et la clé du point de terminaison.

    2. Utilisez ces informations d’identification pour appeler le déploiement et générer des prédictions.

  4. Si vous devez utiliser ce déploiement à partir d’un autre projet ou hub, ou si vous prévoyez d’utiliser Prompt flow pour créer des applications intelligentes, vous devez créer une connexion au déploiement d’API serverless. Pour savoir comment configurer un déploiement d’API serverless existant dans le cadre d'un nouveau projet ou hub, consultez Utiliser le déploiement d’API serverless à partir d’un autre projet ou de Prompt flow.

    Conseil

    Si vous utilisez le flux de commande dans le même projet ou hub où a eu lieu le déploiement, vous devez toujours créer la connexion.

Utiliser le déploiement d’API serverless

Les modèles déployés dans Azure Machine Learning et Foundry dans les déploiements d’API serverless prennent en charge les Azure API d’inférence de modèle IA qui expose un ensemble commun de fonctionnalités pour les modèles fondamentaux et qui peuvent être utilisés par les développeurs pour consommer des prédictions à partir d’un ensemble diversifié de modèles de manière uniforme et cohérente.

En savoir plus sur les fonctionnalités de cette API et sur la façon dont vous pouvez l’utiliser lors de la création d’applications.

Supprimer des points de terminaison et des abonnements

Conseil

Comme vous pouvez customiser le volet gauche dans le portail Microsoft Foundry, vous pouvez voir des éléments différents de ceux indiqués dans ces étapes. Si vous ne voyez pas ce que vous recherchez, sélectionnez ... Plus en bas du volet gauche.

Vous pouvez supprimer des abonnements de modèle et des points de terminaison. La suppression d’un abonnement de modèle rend tout point de terminaison associé non sain et inutilisable.

Pour supprimer un déploiement d’API serverless :

  1. Accédez à la Fonderie.
  2. Accédez à votre projet.
  3. Dans la section Mes ressources , sélectionnez Modèles + points de terminaison.
  4. Ouvrez le déploiement à supprimer.
  5. Sélectionnez Supprimer.

Pour supprimer l’abonnement de modèle associé :

  1. Accédez au portail Azure
  2. Accédez au groupe de ressources auquel appartient le projet.
  3. Dans le filtre Type , sélectionnez SaaS.
  4. Sélectionnez l’abonnement à supprimer.
  5. Sélectionnez Supprimer.
  • Pour utiliser Foundry, installez la Azure CLI et l’extension ml pour Azure Machine Learning.

    az extension add -n ml
    

    Si l’extension est déjà installée, vérifiez que la dernière version est installée.

    az extension update -n ml
    

    Une fois l’extension installée, configurez-la :

    az account set --subscription <subscription>
    az configure --defaults workspace=<project-name> group=<resource-group> location=<location>
    

Rechercher votre modèle dans le catalogue de modèles

  1. Connectez-vous à Microsoft Foundry. Assurez-vous que l'interrupteur New Foundry est désactivé. Ces étapes font référence à Foundry (classique).
  2. Si vous n’êtes pas déjà dans votre projet, sélectionnez-le.
  3. Sélectionnez Catalogue de modèles dans le volet gauche.
  1. Sélectionnez la carte de modèle du modèle que vous souhaitez déployer. Dans cet article, vous sélectionnez un modèle DeepSeek-R1 .

  2. Copiez l’ID de modèle sans inclure la version du modèle, car les déploiements d’API serverless déploient toujours la dernière version du modèle disponible. Par exemple, pour l’ID azureml://registries/azureml-deepseek/models/DeepSeek-R1/versions/1de modèle, copiez azureml://registries/azureml-deepseek/models/DeepSeek-R1.

    capture d'écran A montrant la page de détails d'un modèle vendu directement par Azure.

Les étapes décrites dans cette section de l’article utilisent le modèle DeepSeek-R1 pour l’illustration. Les étapes sont les mêmes, que vous utilisiez des modèles Foundry vendus directement par Azure ou des modèles Foundry de partenaires et de la communauté. Par exemple, si vous choisissez de déployer le modèle Cohere-command-r-08-2024 à la place, vous pouvez remplacer les informations d’identification du modèle dans les extraits de code par les informations d’identification de Cohere.

Déployer le modèle sur une API serverless

Dans cette section, vous allez créer un point de terminaison pour votre modèle. Nommez le point de terminaison DeepSeek-R1-qwerty.

  1. Créez le point de terminaison serverless.

    endpoint.yml

    name: DeepSeek-R1-qwerty
    model_id: azureml://registries/azureml-deepseek/models/DeepSeek-R1
    

    Utilisez le fichier endpoint.yml pour créer le point de terminaison :

    az ml serverless-endpoint create -f endpoint.yml
    
  2. À tout moment, vous pouvez voir les points de terminaison déployés sur votre projet :

    az ml serverless-endpoint list
    
  3. Le point de terminaison créé utilise l’authentification par clé pour l’autorisation. Procédez comme suit pour obtenir les clés associées à un point de terminaison donné.

    az ml serverless-endpoint get-credentials -n DeepSeek-R1-qwerty
    
  4. Si vous devez utiliser ce déploiement à partir d’un autre projet ou hub, ou si vous prévoyez d’utiliser Prompt flow pour créer des applications intelligentes, vous devez créer une connexion au déploiement d’API serverless. Pour savoir comment configurer un déploiement d’API serverless existant dans le cadre d'un nouveau projet ou hub, consultez Utiliser le déploiement d’API serverless à partir d’un autre projet ou de Prompt flow.

    Conseil

    Si vous utilisez le flux de commande dans le même projet ou hub où a eu lieu le déploiement, vous devez toujours créer la connexion.

Utiliser le déploiement d’API serverless

Les modèles déployés dans Azure Machine Learning et Foundry dans les déploiements d’API serverless prennent en charge les Azure API d’inférence de modèle IA qui expose un ensemble commun de fonctionnalités pour les modèles fondamentaux et qui peuvent être utilisés par les développeurs pour consommer des prédictions à partir d’un ensemble diversifié de modèles de manière uniforme et cohérente.

En savoir plus sur les fonctionnalités de cette API et sur la façon dont vous pouvez l’utiliser lors de la création d’applications.

Supprimer des points de terminaison et des abonnements

Vous pouvez supprimer des abonnements de modèle et des points de terminaison. La suppression d’un abonnement de modèle rend tout point de terminaison associé non sain et inutilisable.

Pour supprimer un déploiement d’API serverless :

az ml serverless-endpoint delete \
    --name "DeepSeek-R1-qwerty"

Pour supprimer l’abonnement de modèle associé :

az ml marketplace-subscription delete \
    --name "DeepSeek-R1"
  • Pour utiliser Foundry, installez le Kit de développement logiciel (SDK) Azure Machine Learning pour Python.

    pip install -U azure-ai-ml
    

    Une fois installé, importez les espaces de noms nécessaires et créez un client connecté à votre projet :

    from azure.ai.ml import MLClient
    from azure.identity import InteractiveBrowserCredential
    from azure.ai.ml.entities import MarketplaceSubscription, ServerlessEndpoint
    
    client = MLClient(
        credential=InteractiveBrowserCredential(tenant_id="<tenant-id>"),
        subscription_id="<subscription-id>",
        resource_group_name="<resource-group>",
        workspace_name="<project-name>",
    )
    

Rechercher votre modèle dans le catalogue de modèles

  1. Connectez-vous à Microsoft Foundry. Assurez-vous que l'interrupteur New Foundry est désactivé. Ces étapes font référence à Foundry (classique).
  2. Si vous n’êtes pas déjà dans votre projet, sélectionnez-le.
  3. Sélectionnez Catalogue de modèles dans le volet gauche.
  1. Sélectionnez la carte de modèle du modèle que vous souhaitez déployer. Dans cet article, vous sélectionnez un modèle DeepSeek-R1 .

  2. Copiez l’ID de modèle sans inclure la version du modèle, car les déploiements d’API serverless déploient toujours la dernière version du modèle disponible. Par exemple, pour l’ID azureml://registries/azureml-deepseek/models/DeepSeek-R1/versions/1de modèle, copiez azureml://registries/azureml-deepseek/models/DeepSeek-R1.

    capture d'écran A montrant la page de détails d'un modèle vendu directement par Azure.

Les étapes décrites dans cette section de l’article utilisent le modèle DeepSeek-R1 pour l’illustration. Les étapes sont les mêmes, que vous utilisiez des modèles Foundry vendus directement par Azure ou des modèles Foundry de partenaires et de la communauté. Par exemple, si vous choisissez de déployer le modèle Cohere-command-r-08-2024 à la place, vous pouvez remplacer les informations d’identification du modèle dans les extraits de code par les informations d’identification de Cohere.

Déployer le modèle sur une API serverless

Dans cette section, vous allez créer un point de terminaison pour votre modèle. Nommez le point de terminaison DeepSeek-R1-qwerty.

  1. Créez le point de terminaison serverless.

    endpoint_name="DeepSeek-R1-qwerty"
    
    serverless_endpoint = ServerlessEndpoint(
        name=endpoint_name,
        model_id=model_id
    )
    
    created_endpoint = client.serverless_endpoints.begin_create_or_update(
        serverless_endpoint
    ).result()
    
  2. À tout moment, vous pouvez voir les points de terminaison déployés sur votre projet :

    endpoint_name="DeepSeek-R1-qwerty"
    
    serverless_endpoint = ServerlessEndpoint(
        name=endpoint_name,
        model_id=model_id
    )
    
    created_endpoint = client.serverless_endpoints.begin_create_or_update(
        serverless_endpoint
    ).result()
    
  3. Le point de terminaison créé utilise l’authentification par clé pour l’autorisation. Procédez comme suit pour obtenir les clés associées à un point de terminaison donné.

    endpoint_keys = client.serverless_endpoints.get_keys(endpoint_name)
    print(endpoint_keys.primary_key)
    print(endpoint_keys.secondary_key)
    
  4. Si vous devez utiliser ce déploiement à partir d’un autre projet ou hub, ou si vous prévoyez d’utiliser Prompt flow pour créer des applications intelligentes, vous devez créer une connexion au déploiement d’API serverless. Pour savoir comment configurer un déploiement d’API serverless existant dans le cadre d'un nouveau projet ou hub, consultez Utiliser le déploiement d’API serverless à partir d’un autre projet ou de Prompt flow.

    Conseil

    Si vous utilisez le flux de commande dans le même projet ou hub où a eu lieu le déploiement, vous devez toujours créer la connexion.

Utiliser le déploiement d’API serverless

Les modèles déployés dans Azure Machine Learning et Foundry dans les déploiements d’API serverless prennent en charge les Azure API d’inférence de modèle IA qui expose un ensemble commun de fonctionnalités pour les modèles fondamentaux et qui peuvent être utilisés par les développeurs pour consommer des prédictions à partir d’un ensemble diversifié de modèles de manière uniforme et cohérente.

En savoir plus sur les fonctionnalités de cette API et sur la façon dont vous pouvez l’utiliser lors de la création d’applications.

Supprimer des points de terminaison et des abonnements

Vous pouvez supprimer des abonnements de modèle et des points de terminaison. La suppression d’un abonnement de modèle rend tout point de terminaison associé non sain et inutilisable.

client.serverless_endpoints.begin_delete(endpoint_name).wait()

Pour supprimer l’abonnement de modèle associé :

client.marketplace_subscriptions.begin_delete(subscription_name).wait()
  • Pour utiliser Foundry, installez le Azure CLI comme décrit dans Azure CLI.

    Configurez les variables d’environnement suivantes en fonction de vos paramètres :

    RESOURCE_GROUP="serverless-models-dev"
    LOCATION="eastus2" 
    

Rechercher votre modèle dans le catalogue de modèles

  1. Connectez-vous à Microsoft Foundry. Assurez-vous que l'interrupteur New Foundry est désactivé. Ces étapes font référence à Foundry (classique).
  2. Si vous n’êtes pas déjà dans votre projet, sélectionnez-le.
  3. Sélectionnez Catalogue de modèles dans le volet gauche.
  1. Sélectionnez la carte de modèle du modèle que vous souhaitez déployer. Dans cet article, vous sélectionnez un modèle DeepSeek-R1 .

  2. Copiez l’ID de modèle sans inclure la version du modèle, car les déploiements d’API serverless déploient toujours la dernière version du modèle disponible. Par exemple, pour l’ID azureml://registries/azureml-deepseek/models/DeepSeek-R1/versions/1de modèle, copiez azureml://registries/azureml-deepseek/models/DeepSeek-R1.

    capture d'écran A montrant la page de détails d'un modèle vendu directement par Azure.

Les étapes décrites dans cette section de l’article utilisent le modèle DeepSeek-R1 pour l’illustration. Les étapes sont les mêmes, que vous utilisiez des modèles Foundry vendus directement par Azure ou des modèles Foundry de partenaires et de la communauté. Par exemple, si vous choisissez de déployer le modèle Cohere-command-r-08-2024 à la place, vous pouvez remplacer les informations d’identification du modèle dans les extraits de code par les informations d’identification de Cohere.

Déployer le modèle sur une API serverless

Dans cette section, vous allez créer un point de terminaison pour votre modèle. Nommez le point de terminaison myserverless-text-1234ss.

  1. Créez le point de terminaison serverless. Utilisez le modèle suivant pour créer un point de terminaison :

    serverless-endpoint.bicep

    param projectName string = 'my-project'
    param endpointName string = 'myserverless-text-1234ss'
    param location string = resourceGroup().location
    param modelId string = 'azureml://registries/azureml-deepseek/models/DeepSeek-R1'
    
    var modelName = substring(modelId, (lastIndexOf(modelId, '/') + 1))
    // Replace period character which is used in some model names (and is not valid in the subscription name)
    var sanitizedModelName = replace(modelName, '.', '')
    var subscriptionName = '${sanitizedModelName}-subscription'
    
    resource projectName_endpoint 'Microsoft.MachineLearningServices/workspaces/serverlessEndpoints@2024-04-01-preview' = {
      name: '${projectName}/${endpointName}'
      location: location
      sku: {
        name: 'Consumption'
      }
      properties: {
        modelSettings: {
          modelId: modelId
        }
      }
      dependsOn: [
        projectName_subscription
      ]
    }
    
    output endpointUri string = projectName_endpoint.properties.inferenceEndpoint.uri
    

    Créez le déploiement comme suit :

    az deployment group create --resource-group $RESOURCE_GROUP --template-file model-subscription.bicep
    
  2. À tout moment, vous pouvez voir les points de terminaison déployés sur votre projet :

    Vous pouvez utiliser les outils de gestion des ressources pour interroger les ressources. Le code suivant utilise Azure CLI :

    az resource list \
        --query "[?type=='Microsoft.MachineLearningServices/workspaces/serverlessEndpoints']"
    
  3. Le point de terminaison créé utilise l’authentification par clé pour l’autorisation. Obtenez les clés associées au point de terminaison donné à l’aide d’API REST pour interroger ces informations.

  4. Si vous devez utiliser ce déploiement à partir d’un autre projet ou hub, ou si vous prévoyez d’utiliser Prompt flow pour créer des applications intelligentes, vous devez créer une connexion au déploiement d’API serverless. Pour savoir comment configurer un déploiement d’API serverless existant dans le cadre d'un nouveau projet ou hub, consultez Utiliser le déploiement d’API serverless à partir d’un autre projet ou de Prompt flow.

    Conseil

    Si vous utilisez le flux de commande dans le même projet ou hub où a eu lieu le déploiement, vous devez toujours créer la connexion.

Utiliser le déploiement d’API serverless

Les modèles déployés dans Azure Machine Learning et Foundry dans les déploiements d’API serverless prennent en charge les Azure API d’inférence de modèle IA qui expose un ensemble commun de fonctionnalités pour les modèles fondamentaux et qui peuvent être utilisés par les développeurs pour consommer des prédictions à partir d’un ensemble diversifié de modèles de manière uniforme et cohérente.

En savoir plus sur les fonctionnalités de cette API et sur la façon dont vous pouvez l’utiliser lors de la création d’applications.

Supprimer des points de terminaison et des abonnements

Vous pouvez supprimer des abonnements de modèle et des points de terminaison. La suppression d’un abonnement de modèle rend tout point de terminaison associé non sain et inutilisable.

Vous pouvez utiliser les outils de gestion des ressources pour gérer les ressources. Le code suivant utilise Azure CLI :

az resource delete --name <resource-name>

Considérations relatives au coût et au quota pour les modèles Foundry déployés en tant que déploiement d’API serverless

Le quota est géré par déploiement. Chaque déploiement a une limite de débit de 200 000 jetons par minute et de 1 000 requêtes d’API par minute. En outre, nous limitons actuellement un déploiement par modèle par projet. Contactez Microsoft Azure support si les limites de débit actuelles ne sont pas suffisantes pour vos scénarios.

  • Vous trouverez des informations de tarification pour Models vendus directement par Azure, sous l’onglet Pricing et conditions de la fenêtre déploiement d’API sans serveur.

  • Modèles des partenaires et de la communauté sont proposés sur Place de marché Azure et intégrés à Foundry pour être utilisés. Vous trouverez Place de marché Azure tarification lors du déploiement ou de l’optimisation de ces modèles. Chaque fois qu’un projet s’abonne à une offre donnée de Place de marché Azure, une nouvelle ressource est créée pour suivre les coûts associés à sa consommation. La même ressource est utilisée pour suivre les coûts associés à l’inférence et au réglage précis ; toutefois, plusieurs compteurs sont disponibles pour suivre chaque scénario indépendamment. Pour plus d’informations sur le suivi des coûts, consultez Surveiller les coûts pour les modèles proposés par Place de marché Azure.

Autorisations requises pour s’abonner aux offres de modèle

Les contrôles d'accès basés sur les rôles Azure (Azure RBAC) sont utilisés pour permettre l'accès aux opérations dans le portail Foundry. Pour effectuer les étapes décrites dans cet article, votre compte d’utilisateur doit être affecté au rôle Owner, Contributor ou Azure AI Developer pour l’abonnement Azure. Vous pouvez également attribuer à votre compte un rôle personnalisé disposant des autorisations suivantes :

  • Sur l’abonnement Azure, pour abonner l’espace de travail à une offre sur Place de marché Azure, une fois pour chaque espace de travail, par offre :

    • Microsoft.MarketplaceOrdering/agreements/offers/plans/read
    • Microsoft.MarketplaceOrdering/agreements/offers/plans/sign/action
    • Microsoft.MarketplaceOrdering/offerTypes/publishers/offers/plans/agreements/read
    • Microsoft.Marketplace/offerTypes/publishers/offers/plans/agreements/read
    • Microsoft.SaaS/register/action
  • Sur le groupe de ressources, pour créer et utiliser la ressource SaaS :

    • Microsoft.SaaS/resources/read
    • Microsoft.SaaS/resources/write
  • À partir de l’espace de travail, pour déployer des points de terminaison (le rôle de scientifique des données d'Azure Machine Learning contient déjà ces autorisations) :

    • Microsoft.MachineLearningServices/workspaces/marketplaceModelSubscriptions/*
    • Microsoft.MachineLearningServices/workspaces/serverlessEndpoints/*

Pour plus d’informations sur les autorisations, consultez contrôle d’accès en fonction du rôle dans le portail Foundry.