0 / 0
Retourner à la version anglaise de la documentation
Infrastructures Microsoft Azure ML Studio
Dernière mise à jour : 21 nov. 2024
Infrastructures Microsoft Azure ML Studio

Vous pouvez utiliser Microsoft Azure ML Studio pour enregistrer les données de charge utile ou de retour d'information, et pour mesurer la précision des performances, la détection des biais d'exécution, l'explicabilité et les résultats de l'autodébit pour les modèles déployés lorsque vous évaluez les modèles.

Les frameworks Microsoft Azure Machine Learning Studio suivants sont entièrement pris en charge pour l'évaluation des modèles :

Tableau 1. Détails des infrastructures prises en charge

Détails des infrastructures prises en charge
Infrastructure Type de problème Type de données
Natif Classification Structuré
Natif Régression Structuré
Attention: Microsoft Azure Machine Learning Studio (classic) sera déprécié le 31 août 2024. Azure La liste de déploiement classique de Studio et la notation ne fonctionneront plus après le 31 août 2024.

Azure Les points d'extrémité des instances de conteneurs de concepteurs sont pris en charge pour les évaluations de modèles.

Ajout de Microsoft Azure ML Studio

Vous pouvez configurer les évaluations de modèles pour qu'elles fonctionnent avec Microsoft Azure ML Studio en utilisant l'une des méthodes suivantes :

Exemples de blocs-notes

Le bloc-notes suivant montre comment utiliser Microsoft Azure ML Studio :

Explorer plus avant

Consume an Azure Machine Learning model that is deployed as a web service

Spécification d'une instance de Microsoft Azure ML Studio

Votre première étape dans l'outil Watson OpenScale consiste à spécifier une instance Microsoft Azure ML Studio. Votre instance Azure ML Studio est l'endroit où vous stockez vos modèles et déploiements d'IA.

Vous pouvez également ajouter votre fournisseur d'apprentissage automatique avec le SDK Python. Pour plus d'informations, voir Ajoutez votre moteur d'apprentissage automatique Microsoft Azure.

Connecter votre instance Azure ML Studio

Vous pouvez vous connecter aux modèles et aux déploiements d'IA dans une instance Azure ML Studio pour évaluer les modèles. Pour connecter votre service, allez dans l'onglet Configurer " Icône de l'onglet de configuration, ajoutez un fournisseur d'apprentissage automatique et cliquez sur l'icône Modifier " Icône de l'onglet de configuration. En plus d'un nom et d'une description et si l'environnement est en préproduction ou en production, vous devez fournir les informations suivantes :

  • ID client : chaîne de votre ID client, qui vérifie qui vous êtes et authentifie et autorise les appels que vous faites à Azure Studio.
  • Secret client : chaîne du secret, qui vérifie qui vous êtes et authentifie et autorise les appels que vous faites à Azure Studio.
  • Locataire : votre ID de locataire correspond à votre organisation et est une instance dédiée d'Azure AD. Pour trouver l'ID locataire, survolez votre nom de compte pour obtenir le répertoire et l'ID locataire, ou sélectionnez Azure Active Directory > Propriétés > Directory ID dans le portail Azure.
  • ID d'abonnement : données d'identification d'abonnement qui identifient de manière unique votre abonnement à Microsoft Azure. L'ID d'abonnement constitue une partie de l'URI à chaque appel de service. Pour savoir comment obtenir vos données d'identification Microsoft Azure, consultez la page How to: Use the portal to create an Azure AD application and service principal that can access resources.

Consignation de la charge utile avec le moteur Microsoft Azure Machine Learning Studio

Ajouter votre moteur d'apprentissage automatique Microsoft Azure

Un moteur watsonx.ai Runtime non IBM est lié en tant que Custom, ce qui signifie qu'il s'agit uniquement de métadonnées ; il n'y a pas d'intégration directe avec le service watsonx.ai Runtime IBM IBM.

AZURE_ENGINE_CREDENTIALS = {
    "client_id": "",
    "client_secret": "",
    "subscription_id": "",
    "tenant": ""
}
 
wos_client.service_providers.add(
        name=SERVICE_PROVIDER_NAME,
        description=SERVICE_PROVIDER_DESCRIPTION,
        service_type=ServiceTypes.AZURE_MACHINE_LEARNING,
        #deployment_space_id = WML_SPACE_ID,
        #operational_space_id = "production",
        credentials=AzureCredentials(
            subscription_id= AZURE_ENGINE_CREDENTIALS['subscription_id'],
            client_id = AZURE_ENGINE_CREDENTIALS['client_id'],
            client_secret= AZURE_ENGINE_CREDENTIALS['client_secret'],
            tenant = AZURE_ENGINE_CREDENTIALS['tenant']
        ),
        background_mode=False
    ).result

Pour afficher votre abonnement de service, exécutez la commande suivante :

client.service_providers.list()

Ajouter un abonnement Microsoft Azure ML Studio

Ajoutez un abonnement en adaptant l'exemple de code suivant :

asset_deployment_details = wos_client.service_providers.list_assets(data_mart_id=data_mart_id, service_provider_id=service_provider_id).result
asset_deployment_details
 
deployment_id=''
for model_asset_details in asset_deployment_details['resources']:
    if model_asset_details['metadata']['guid']==deployment_id:
        break
 
azure_asset = Asset(
            asset_id=model_asset_details["entity"]["asset"]["asset_id"],
            name=model_asset_details["entity"]["asset"]["name"],
            url=model_asset_details["entity"]["asset"]["url"],
            asset_type=model_asset_details['entity']['asset']['asset_type'] if 'asset_type' in model_asset_details['entity']['asset'] else 'model',
            input_data_type=InputDataType.STRUCTURED,
            problem_type=ProblemType.BINARY_CLASSIFICATION
        )
 
deployment_scoring_endpoint = model_asset_details['entity']['scoring_endpoint']
scoring_endpoint = ScoringEndpointRequest(url = model_asset_details['entity']['scoring_endpoint']['url'],request_headers = model_asset_details['entity']['scoring_endpoint']['request_headers'],
                                                 credentials = None)  
 
deployment = AssetDeploymentRequest(
    deployment_id=model_asset_details['metadata']['guid'],
    url=model_asset_details['metadata']['url'],
    name=model_asset_details['entity']['name'],
    description=model_asset_details['entity']['description'],
    deployment_type=model_asset_details['entity']['type'],
    scoring_endpoint = scoring_endpoint
)
 
asset_properties = AssetPropertiesRequest(
        label_column="Risk ",
        prediction_field='Scored Labels',
        probability_fields=['Scored Probabilities'],
        training_data_reference=training_data_reference,
        training_data_schema=None,
        input_data_schema=None,
        output_data_schema=None,
    )
 
subscription_details = wos_client.subscriptions.add(
        data_mart_id=data_mart_id,
        service_provider_id=service_provider_id,
        asset=azure_asset,
        deployment=deployment,
        asset_properties=asset_properties,
        background_mode=False
).result

Pour obtenir la liste des abonnements, exécutez le code suivant :

subscription_id = subscription_details.metadata.id
subscription_id
 
details: wos_client.subscriptions.get(subscription_id).result.to_dict()

Activer la consignation de la charge utile

Pour activer la consignation de la charge utile, exécutez le code suivant :

payload_data_set_id = None
payload_data_set_id = wos_client.data_sets.list(type=DataSetTypes.PAYLOAD_LOGGING, 
                                                target_target_id=subscription_id, 
                                                target_target_type=TargetTypes.SUBSCRIPTION).result.data_sets[0].metadata.id
 
payload store:
 
wos_client.data_sets.store_records(data_set_id=payload_data_set_id, request_body=[PayloadRecord(
           scoring_id=str(uuid.uuid4()),
           request=request_data,
           response=response_data,
           response_time=460
)])

Pour obtenir les détails de la consignation, exécutez la commande suivante :

subscription.payload_logging.get_details()

Evaluation et consignation de la charge utile

Evaluez votre modèle. Pour un exemple complet, consultez le Bloc-notes Working with Azure Machine Learning Studio Engine.

Pour stocker la demande et la réponse dans la table de consignation de la charge utile, utilisez le code suivant :

records_list = [PayloadRecord(request=request_data, response=response_data, response_time=response_time),
                PayloadRecord(request=request_data, response=response_data, response_time=response_time)]

for i in range(1, 10):
records_list.append(PayloadRecord(request=request_data, response=response_data, response_time=response_time))

subscription.payload_logging.store(records=records_list)

Pour les langages autres que Python, vous pouvez également consigner la charge utile, à l'aide d'une API REST.

Rubrique parent : Moteurs d'apprentissage automatiques, infrastructures et modèles pris en charge

Recherche et réponse à l'IA générative
Ces réponses sont générées par un modèle de langue de grande taille dans watsonx.ai en fonction du contenu de la documentation du produit. En savoir plus