0 / 0
Retourner à la version anglaise de la documentation
Configurer les déploiements d'actifs à l'aide des fichiers de configuration JSON
Dernière mise à jour : 03 oct. 2024
Configurer les déploiements d'actifs à l'aide des fichiers de configuration JSON

Importez un fichier JSON pour créer et configurer tous les déploiements de votre ressource pour les évaluations de modèles. Exportez le fichier de configuration pour configurer d'autres actifs et leurs déploiements.

Remarque :

Vous pouvez également importer et exporter des configurations pour les évaluations de modèles en utilisant les méthodes API import subscription et export subscription.

Charger le contenu du fichier JSON comme dictionnaire Python

Pour cet exemple, le fichier sagemaker_native_multiclass_breast-cancer_all_monitors_sub_configuration.json définit des données de configuration pour un modèle qui prédit un type de cancer.

Pour charger le fichier dans Python, exécutez la commande suivante :

configuration_file_path = 'sagemaker_native_multiclass_breast-cancer_all_monitors_sub_configuration.json'

  with open(configuration_file_path, 'r') as fp:
subscription_configuration = json.load(fp)

Ce fichier contient des données de configuration. Voir l'exemple suivant. Pour un exemple complet du contenu de la configuration, consultez le bloc-notes.

{'asset': {'asset_id': '0530ab0cd4f4dd5486b19c08df8b6914',
'asset_type': 'model',
'created_at': '2018-10-10T14:31:44.348Z',
'name': 'DEMO-multi-classification-2018-10-10-14-26-26',
'url': 's3://sagemaker-us-east-1-014862798213/sagemaker/DEMO-breast-cancer-prediction/DEMO-multi-classification-2018-10-10-14-26-26/output/model.tar.gz'},
'asset_properties': {'categorical_fields': [],
'feature_fields': ['radius_mean',
  'texture_mean',
  . . .

'input_data_schema': {'fields': [{'metadata': {'modeling_role': 'feature'},
    'name': 'radius_mean',
    'nullable': True,
    'type': 'double'},
  {'metadata': {'modeling_role': 'feature'},
    'name': 'texture_mean',
    'nullable': True,
    'type': 'double'},
  . . .

'input_data_type': 'structured',
'label_column': 'diagnosis',
'output_data_schema': {'fields': [{'metadata': {'modeling_role': 'feature'},
    'name': 'radius_mean',
    'nullable': True,
    'type': 'double'},
  {'metadata': {'modeling_role': 'feature'},
    'name': 'texture_mean',
    'nullable': True,
    'type': 'double'},
  . . .

'prediction_field': 'predicted_label',
'prediction_probability_field': 'score',
'problem_type': 'multiclass',
'training_data_schema': {'fields': [{'metadata': {'modeling_role': 'feature'},
    'name': 'radius_mean',
    'nullable': True,
    'type': 'double'},
  {'metadata': {'modeling_role': 'feature'},
    'name': 'texture_mean',
    'nullable': True,
    'type': 'double'},
  . . .

'configurations': {'explainability': {'training_statistics': {'base_values': {'0': 13.37,
    '1': 18.84,
    '10': 0.3242,
  . . .

'fairness_monitoring': {'class_label': 'predicted_label',
  'distributions': [{'attribute': 'radius_mean',
    'class_labels': [{'counts': [{'class_value': 'B', 'count': 1}],
      'label': '[6.8, 7.2]'},
    {'counts': [{'class_value': 'B', 'count': 3}], 'label': '[7.6, 8.0]'},
    {'counts': [{'class_value': 'B', 'count': 2}], 'label': '[8.0, 8.4]'},
  . . .

  'favourable_class': ['M'],
  'features': [{'feature': 'radius_mean',
    'majority': [[0.0, 10.0], [19.0, 20.0]],
    'minority': [[15.0, 16.0]],
    'threshold': 0.8,
    'type': 'float'}],
  'min_records': 5,
  'perform_debias': True,
  'run_status': 'INITIATED',
  'training_data_class_label': None,
  'unfavourable_class': ['B']},
'payload_logging': {'dynamic_schema_update': True,
  'output_data_schema': {'fields': [{'metadata': {'modeling_role': 'feature'},
    'name': 'radius_mean',
    'nullable': True,
    'type': 'double'},
    {'metadata': {'modeling_role': 'feature'},
    'name': 'texture_mean',
    'nullable': True,
    'type': 'double'},
  . . .

'performance_monitoring': {},
'quality_monitoring': {'evaluation_definition': {'method': 'multiclass',
  'threshold': 0.8},
  'min_feedback_data_size': 5,
  'scheduleId': '63c7f400-aa29-4539-91ad-8a4b9d2b9a51'}},
'deployments': [{'created_at': '2018-10-10T14:39:21.421Z',
  'deployment_id': '37a83f399e6dc3b9d08d7d01fe690665',
  'deployment_rn': 'arn:aws:sagemaker:us-east-1:014862798213:endpoint/demo-multi-classification-endpoint-201810101439',
  'deployment_type': 'online',
  'name': 'DEMO-multi-classification-endpoint-201810101439',
  'scoring_endpoint': {'request_headers': {'Content-Type': 'application/json'},
  'url': 'DEMO-multi-classification-endpoint-201810101439'},
  'url': 'DEMO-multi-classification-endpoint-201810101439'}],
'export_info': {'api_version': 'v1',
'origin': '/v1/data_marts/b73545e6-0a6e-466c-8cd0-c47c044c5702/service_bindings/bf44cc7f-990d-4942-bfc6-cbcf71a1b78c/subscriptions/0530ab0cd4f4dd5486b19c08df8b6914',
'timestamp': '2019-02-11T11:41:01.613Z'}}

Importer à partir du fichier de configuration

Exécutez maintenant l'appel pour ajouter et configurer le déploiement d'actif pour l'exemple de déploiement de modèle de prédiction du cancer du sein.

subscription = client.data_mart.subscriptions.import_configuration(binding_uid=binding_uid, configuration_data=subscription_configuration)

Le paramètre binding_uid est optionnel si vous ne liez qu'un seul moteur ML.

Exporter vers le fichier de configuration

Vous pouvez également exporter le fichier de configuration en JSON :

exported_configuration = client.data_mart.subscriptions.export_configuration(binding_uid=binding_uid, subscription_uid=subscription.uid)

Résultats

Le déploiement des actifs est créé et prêt à être utilisé pour l'évaluation des modèles.

Rubrique parent: Préparation de l'évaluation d'un modèle

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