Partage via


Déployer des modèles en tant que déploiements d’API serverless (classique)

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

Important

Les éléments marqués (aperçu) dans cet article sont actuellement en aperçu public. Cette version préliminaire est fournie sans contrat de niveau de service, et nous la déconseillons pour les charges de travail en production. Certaines fonctionnalités peuvent être limitées ou non prises en charge. Pour plus d’informations, consultez Conditions d'utilisation supplémentaires pour les aperçus 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 des modèles Microsoft Foundry sur des ressources Foundry afin de pouvoir consommer vos déploiements dans la ressource via un point de terminaison unique avec la même authentification et le même schéma pour générer l’inférence. Le point de terminaison suit l'API d'inférence de modèle d'IA Azure 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.

Prerequisites

  • 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 à Azure Marketplace, 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 Azure Marketplace.

  • Les contrôles d'accès basés sur les rôles Azure (Azure RBAC) sont utilisés pour accorder 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’automutilation, le contenu sexuel et la violence. 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. Une fois que le déploiement est prêt, 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 une 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 envisagez d’utiliser Prompt Flow pour développer des applications intelligentes, il est nécessaire d’établir une connexion au déploiement de l’API serverless. Pour savoir comment configurer un déploiement d’API serverless existant sur un nouveau projet ou hub, consultez Utiliser le déploiement d’API serverless à partir d’un autre projet ou de Prompt flow.

    Conseil / Astuce

    Si vous utilisez Prompt flow dans le même projet ou hub où le déploiement a été réalisé, il est néanmoins nécessaire de créer la connexion.

Utiliser le déploiements 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 découvrir comment vous pouvez l’utiliser lors de la création d’applications.

Supprimez les points de terminaison et les abonnements

Conseil / Astuce

Étant donné que vous pouvez personnaliser le volet gauche dans le portail Microsoft Foundry, vous pouvez voir différents éléments que 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 les abonnements et les points de terminaison de modèle. La suppression d’un abonnement à un 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 au 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 version installée est la plus récente.

    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 de modèle azureml://registries/azureml-deepseek/models/DeepSeek-R1/versions/1, 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 associés à votre projet :

    az ml serverless-endpoint list
    
  3. Le point de terminaison créé utilise une 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 envisagez d’utiliser Prompt Flow pour développer des applications intelligentes, il est nécessaire d’établir une connexion au déploiement de l’API serverless. Pour savoir comment configurer un déploiement d’API serverless existant sur un nouveau projet ou hub, consultez Utiliser le déploiement d’API serverless à partir d’un autre projet ou de Prompt flow.

    Conseil / Astuce

    Si vous utilisez Prompt flow dans le même projet ou hub où le déploiement a été réalisé, il est néanmoins nécessaire de créer la connexion.

Utiliser le déploiements 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 découvrir comment vous pouvez l’utiliser lors de la création d’applications.

Supprimez les points de terminaison et les abonnements

Vous pouvez supprimer les abonnements et les points de terminaison de modèle. La suppression d’un abonnement à un 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 au 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
    

    Après installation, 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 de modèle azureml://registries/azureml-deepseek/models/DeepSeek-R1/versions/1, 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 associés à 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 une 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 envisagez d’utiliser Prompt Flow pour développer des applications intelligentes, il est nécessaire d’établir une connexion au déploiement de l’API serverless. Pour savoir comment configurer un déploiement d’API serverless existant sur un nouveau projet ou hub, consultez Utiliser le déploiement d’API serverless à partir d’un autre projet ou de Prompt flow.

    Conseil / Astuce

    Si vous utilisez Prompt flow dans le même projet ou hub où le déploiement a été réalisé, il est néanmoins nécessaire de créer la connexion.

Utiliser le déploiements 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 découvrir comment vous pouvez l’utiliser lors de la création d’applications.

Supprimez les points de terminaison et les abonnements

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

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

Pour supprimer l’abonnement au 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 de modèle azureml://registries/azureml-deepseek/models/DeepSeek-R1/versions/1, 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 associés à 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 une 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 envisagez d’utiliser Prompt Flow pour développer des applications intelligentes, il est nécessaire d’établir une connexion au déploiement de l’API serverless. Pour savoir comment configurer un déploiement d’API serverless existant sur un nouveau projet ou hub, consultez Utiliser le déploiement d’API serverless à partir d’un autre projet ou de Prompt flow.

    Conseil / Astuce

    Si vous utilisez Prompt flow dans le même projet ou hub où le déploiement a été réalisé, il est néanmoins nécessaire de créer la connexion.

Utiliser le déploiements 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 découvrir comment vous pouvez l’utiliser lors de la création d’applications.

Supprimez les points de terminaison et les abonnements

Vous pouvez supprimer les abonnements et les points de terminaison de modèle. La suppression d’un abonnement à un 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 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 via Azure Marketplace et intégrés à Foundry pour une utilisation. Vous trouverez Azure Marketplace 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 Azure Marketplace, 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 à l’optimisation ; plusieurs compteurs sont cependant disponibles pour suivre chaque scénario indépendamment. Pour plus d’informations sur la façon de suivre les coûts, consultez Suivi des coûts pour les modèles proposés via Azure Marketplace.

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

Les contrôles d'accès basés sur les rôles Azure (Azure RBAC) sont utilisés pour accorder 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. Une autre possibilité est que votre compte dispose d’un rôle personnalisé avec les autorisations suivantes :

  • Pour l'abonnement Azure, pour abonner l'espace de travail à l'offre Azure Marketplace, une fois par 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
  • Dans le groupe de ressources: pour créer et utiliser la ressource SaaS :

    • Microsoft.SaaS/resources/read
    • Microsoft.SaaS/resources/write
  • Sur l’espace de travail, pour déployer des endpoints (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.