

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Configurer un Job de traitement SageMaker Clarify
<a name="clarify-processing-job-configure-parameters"></a>

Pour analyser vos données et modèles afin de détecter les biais et l'explicabilité à l'aide de SageMaker Clarify, vous devez configurer une tâche de traitement SageMaker Clarify. Ce guide vous montre comment spécifier le nom du jeu de données en entrée, le nom du fichier de configuration d'analyse et l'emplacement de sortie pour une tâche de traitement. Pour configurer le conteneur de traitement, les entrées de tâches, les sorties, les ressources et les autres paramètres, vous avez deux options. Vous pouvez soit utiliser l'`CreateProcessingJob`API SageMaker AI, soit utiliser l'API SageMaker `SageMaker ClarifyProcessor` AI Python SDK,

Pour plus d'informations sur les paramètres communs à toutes les tâches de traitement, consultez [Amazon SageMaker API Reference](https://docs.aws.amazon.com/sagemaker/latest/APIReference/Welcome.html?icmpid=docs_sagemaker_lp).

## Configurer une tâche de traitement SageMaker Clarify à l'aide de l' SageMaker API
<a name="clarify-processing-job-configure-parameters-API"></a>

Les instructions suivantes montrent comment fournir chaque partie de la configuration spécifique de SageMaker Clarify à l'aide de l'`CreateProcessingJob`API.

1. Entrez l'identifiant de recherche uniforme (URI) d'une image de conteneur SageMaker Clarify dans le `AppSpecification` paramètre, comme indiqué dans l'exemple de code suivant.

   ```
   {
       "ImageUri": "{{the-clarify-container-image-uri}}"
   }
   ```
**Note**  
L'URI doit identifier une image de conteneur SageMaker Clarify prédéfinie. `ContainerEntrypoint`et ne `ContainerArguments` sont pas pris en charge. Pour plus d'informations sur les images de conteneurs SageMaker Clarify, consultez[Conteneurs SageMaker Clarify préfabriqués](clarify-processing-job-configure-container.md).

1. Spécifiez à la fois la configuration de votre analyse et les paramètres de votre jeu de données en entrée dans le paramètre `ProcessingInputs`.

   1. Spécifiez l'emplacement du fichier de configuration d'analyse JSON, qui inclut les paramètres d'analyse des biais et d'analyse d'explicabilité. Le paramètre `InputName` de l’objet `ProcessingInput` doit être **analysis\_config** tel qu’illustré dans l’exemple de code suivant.

      ```
      {
          "InputName": "analysis_config",
          "S3Input": {
              "S3Uri": "{{s3://your-bucket/analysis_config.json}}",
              "S3DataType": "S3Prefix",
              "S3InputMode": "File",
              "LocalPath": "/opt/ml/processing/{{input/config}}"
          }
      }
      ```

      Pour plus d’informations sur le schéma du fichier de configuration d’analyse, consultez [Fichiers de configuration d’analyse](clarify-processing-job-configure-analysis.md).

   1. Spécifiez l’emplacement du jeu de données d’entrée. Le paramètre `InputName` de l'objet `ProcessingInput` doit être `dataset`. Ce paramètre est facultatif si vous avez fourni le "dataset\_uri" dans le fichier de configuration d'analyse. Les valeurs suivantes sont requises dans la configuration `S3Input`.

      1. `S3Uri` peut être un objet Amazon S3 ou un préfixe S3.

      1. `S3InputMode` doit être de type **File**.

      1. `S3CompressionType` doit être de type `None` (valeur par défaut).

      1. `S3DataDistributionType` doit être de type `FullyReplicated` (valeur par défaut).

      1. `S3DataType` peut avoir la valeur `S3Prefix` ou `ManifestFile`. Pour être utilisé`ManifestFile`, le `S3Uri` paramètre doit spécifier l'emplacement d'un fichier manifeste qui suit le schéma de la section de référence de l' SageMaker API [S3Uri](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_S3DataSource.html#sagemaker-Type-S3DataSource-S3Uri). Ce fichier manifeste doit répertorier les objets S3 contenant les données d'entrée pour la tâche.

      Le code suivant montre un exemple de configuration d'entrée.

      ```
      {
          "InputName": "dataset",
          "S3Input": {
              "S3Uri": "{{s3://your-bucket/your-dataset.csv}}",
              "S3DataType": "S3Prefix",
              "S3InputMode": "File",
              "LocalPath": "/opt/ml/processing/{{input/data}}"
          }
      }
      ```

1. Spécifiez la configuration pour la sortie de la tâche de traitement dans le paramètre `ProcessingOutputConfig`. Un seul objet `ProcessingOutput` est requis dans la configuration `Outputs`. Les conditions suivantes sont requises dans la configuration de sortie :

   1. `OutputName` doit avoir pour valeur **analysis\_result**.

   1. `S3Uri` doit être un préfixe S3 de l'emplacement de sortie.

   1. `S3UploadMode` doit être défini sur **EndOfJob**.

   Le code suivant montre un exemple de configuration de sortie.

   ```
   {
       "Outputs": [{ 
           "OutputName": "analysis_result",
           "S3Output": { 
               "S3Uri": "{{s3://your-bucket/result/}}",
               "S3UploadMode": "EndOfJob",
               "LocalPath": "/opt/ml/processing/{{output}}"
            }
        }]
   }
   ```

1. Spécifiez la configuration `ClusterConfig` pour les ressources que vous utilisez dans votre tâche de traitement dans le paramètre `ProcessingResources`. Les paramètres suivants sont nécessaires à l'intérieur de l'objet `ClusterConfig`.

   1. `InstanceCount` indique le nombre d'instances de calcul dans le cluster qui exécute la tâche de traitement. Spécifiez une valeur supérieure à `1` pour activer le traitement distribué.

   1. `InstanceType` fait référence aux ressources qui exécutent votre tâche de traitement. L'analyse SageMaker AI SHAP étant gourmande en ressources informatiques, l'utilisation d'un type d'instance optimisé pour le calcul devrait améliorer le temps d'exécution de l'analyse. La tâche de traitement SageMaker Clarify n'utilise pas de GPU.

   Le code suivant montre un exemple de configuration de ressource.

   ```
   {
       "ClusterConfig": {
            "InstanceCount": {{1}},
            "InstanceType": "{{ml.m5.xlarge}}",
            "VolumeSizeInGB": {{20}}
        }
   }
   ```

1. Spécifiez la configuration du réseau que vous utilisez dans votre tâche de traitement au sein de l'objet `NetworkConfig`. Les valeurs suivantes sont requises dans la configuration.

   1. `EnableNetworkIsolation`doit être défini sur `False` (par défaut) afin que SageMaker Clarify puisse invoquer un point de terminaison, si nécessaire, pour les prédictions.

   1. Si le modèle ou le point de terminaison que vous avez fourni à la tâche SageMaker Clarify se trouve dans un Amazon Virtual Private Cloud (Amazon VPC), la tâche SageMaker Clarify doit également se trouver dans le même VPC. Spécifiez le VPC à l'aide de. [VpcConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_VpcConfig.html) En outre, le VPC doit disposer de points de terminaison vers un compartiment Amazon S3, un service AI et SageMaker un service SageMaker AI Runtime.

      Si le traitement distribué est activé, vous devez également autoriser la communication entre les différentes instances d’une même tâche de traitement. Configurez une règle pour votre groupe de sécurité qui autorise les connexions entrantes entre les membres du même groupe de sécurité. Pour de plus amples informations, veuillez consulter [Donnez à Amazon SageMaker Clarify Jobs l'accès aux ressources de votre Amazon VPC](clarify-vpc.md). 

   Le code suivant montre un exemple de configuration réseau.

   ```
   {
       "EnableNetworkIsolation": False,
       "VpcConfig": {
           ...
       }
   }
   ```

1. Définissez la durée maximale d'exécution de la tâche à l'aide du paramètre `StoppingCondition`. La durée maximale d'exécution d'une tâche SageMaker Clarify est de `7` jours ou de `604800` secondes. Si la tâche ne peut pas être terminée dans ce délai, elle sera arrêtée et aucun résultat d'analyse ne sera fourni. Par exemple, la configuration suivante limite la durée maximale d'exécution de la tâche à 3 600 secondes.

   ```
   {
       "MaxRuntimeInSeconds": 3600
   }
   ```

1. Spécifiez un rôle IAM pour le paramètre `RoleArn`. Le rôle doit entretenir une relation de confiance avec Amazon SageMaker AI. Il peut être utilisé pour effectuer les opérations SageMaker d'API répertoriées dans le tableau suivant. Nous vous recommandons d'utiliser la politique SageMaker AIFullAccess gérée par Amazon, qui accorde un accès complet à l' SageMaker IA. Pour plus d’informations sur cette politique, consultez [AWS politique gérée : AmazonSageMakerFullAccess](security-iam-awsmanpol.md#security-iam-awsmanpol-AmazonSageMakerFullAccess). Si vous avez des préoccupations concernant l’octroi d’un accès complet, les autorisations minimales requises varient selon que vous fournissez un modèle ou un nom de point de terminaison. L'utilisation d'un nom de point de terminaison permet d'accorder moins d'autorisations à l' SageMaker IA.

   Le tableau suivant contient les opérations d'API utilisées par la tâche de traitement SageMaker Clarify. Un **X** sous **Nom du modèle** et **Nom du point de terminaison** indique l'opération d'API qui est requise pour chaque entrée.    
[See the AWS documentation website for more details](http://docs.aws.amazon.com/fr_fr/sagemaker/latest/dg/clarify-processing-job-configure-parameters.html)

   Pour plus d’informations sur les autorisations requises, consultez [Autorisations d'API Amazon SageMaker AI : référence sur les actions, les autorisations et les ressources](api-permissions-reference.md).

   Pour plus d'informations sur le transfert de rôles à SageMaker l'IA, consultez[Transmission de rôles](sagemaker-roles.md#sagemaker-roles-pass-role).

   Une fois que vous avez défini les éléments individuels de la configuration de la tâche de traitement, combinez-les pour configurer la tâche.

## Configurez une tâche de traitement SageMaker Clarify à l'aide du AWS SDK pour Python
<a name="clarify-processing-job-configure-parameters-SDK"></a>

L'exemple de code suivant montre comment lancer une tâche de traitement SageMaker Clarify à l'aide du [AWS SDK pour Python](https://aws.amazon.com/sdk-for-python/).

```
sagemaker_client.create_processing_job(
    ProcessingJobName="{{your-clarify-job-name}}",
    AppSpecification={
        "ImageUri": "t{{he-clarify-container-image-uri}}",
    },
    ProcessingInputs=[{
            "InputName": "analysis_config",
            "S3Input": {
                "S3Uri": "s3://{{your-bucket/analysis_config.json}}",
                "S3DataType": "S3Prefix",
                "S3InputMode": "File",
                "LocalPath": "/opt/ml/processing/{{input/config}}",
            },
        }, {
            "InputName": "dataset",
            "S3Input": {
                "S3Uri": "s3://{{your-bucket/your-dataset.csv}}",
                "S3DataType": "S3Prefix",
                "S3InputMode": "File",
                "LocalPath": "/opt/ml/processing/{{input/data}}",
            },
        },
    ],
    ProcessingOutputConfig={
        "Outputs": [{ 
            "OutputName": "analysis_result",
            "S3Output": { 
               "S3Uri": "s3://{{your-bucket/result/}}",
               "S3UploadMode": "EndOfJob",
               "LocalPath": "/opt/ml/processing/{{output}}",
            },   
        }],
    },
    ProcessingResources={
        "ClusterConfig": {
            "InstanceCount": {{1}},
            "InstanceType": "{{ml.m5.xlarge}}",
            "VolumeSizeInGB": {{20}},
        },
    },
    NetworkConfig={
        "EnableNetworkIsolation": False,
        "VpcConfig": {
            ...
        },
    },
    StoppingCondition={
        "MaxRuntimeInSeconds": {{3600}},
    },
    RoleArn="arn:aws:iam::{{<your-account-id>:role/service-role/AmazonSageMaker-ExecutionRole}}",
)
```

Pour un exemple de bloc-notes contenant des instructions pour exécuter une tâche de traitement SageMaker Clarify à l'aide du AWS SDK pour Python, voir [Équité et explicabilité avec SageMaker Clarify à l'aide du AWS SDK](http://github.com/aws/amazon-sagemaker-examples/blob/main/sagemaker-clarify/fairness_and_explainability/fairness_and_explainability_boto3.ipynb) pour Python. Tout compartiment S3 utilisé dans le bloc-notes doit se trouver dans la même AWS région que l'instance du bloc-notes qui y accède.

## Configuration d'une tâche de traitement SageMaker Clarify à l'aide du SDK SageMaker Python
<a name="clarify-processing-job-configure-parameters-SM-SDK"></a>

Vous pouvez également configurer une tâche de traitement SageMaker Clarify [SageMaker ClarifyProcessor](https://sagemaker.readthedocs.io/en/stable/api/training/processing.html#sagemaker.clarify.SageMakerClarifyProcessor)à l'aide de l'API du SDK SageMaker Python. Pour de plus amples informations, veuillez consulter [Exécutez des tâches de traitement SageMaker Clarify pour l'analyse des biais et l'explicabilité](clarify-processing-job-run.md).

**Topics**
+ [Conteneurs SageMaker Clarify préfabriqués](clarify-processing-job-configure-container.md)
+ [Fichiers de configuration d’analyse](clarify-processing-job-configure-analysis.md)
+ [Guide de compatibilité des formats de données](clarify-processing-job-data-format.md)