Appel du point de terminaison - Amazon SageMaker

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.

Appel du point de terminaison

Une fois le point de terminaison en cours SageMaker d'exécution, utilisez l'InvokeEndpointAPI SageMaker Runtime du service Runtime pour envoyer des demandes au point de terminaison ou l'invoquer. En réponse, les demandes sont traitées comme des demandes d'explicabilité par l'explicateur SageMaker Clarify.

Note

Pour appeler un point de terminaison, choisissez l'une des options suivantes :

Demande

L'API InvokeEndpoint possède un paramètre EnableExplanations facultatif, qui est mappé à l'en-tête HTTP X-Amzn-SageMaker-Enable-Explanations. Si ce paramètre est fourni, il remplace le paramètre EnableExplanations de ClarifyExplainerConfig.

Note

Les paramètres requis de l'API InvokeEndpoint sont ContentType et Accept. Les formats pris en charge incluent le type MIME text/csv et application/jsonlines.

Utilisez sagemaker_runtime_client pour envoyer une demande au point de terminaison, de la manière suivante :

response = sagemaker_runtime_client.invoke_endpoint( EndpointName='name-of-your-endpoint', EnableExplanations='`true`', ContentType='text/csv', Accept='text/csv', Body='1,2,3,4', # single record (of four numerical features) )

Pour les points de terminaison multimodèles, transmettez un TargetModel paramètre supplémentaire dans l'exemple de demande précédent pour spécifier le modèle à cibler au niveau du point de terminaison. Le point de terminaison multimodèle charge dynamiquement les modèles cibles selon les besoins. Pour de plus amples informations à propos de l'utilisation des points de terminaison multimodèles, consultez Hébergez plusieurs modèles dans un conteneur derrière un point de terminaison. Consultez le carnet d'exemples SageMaker Clarify Online Explainability on Multi-Model Endpoint Sample Notebook pour un exemple de configuration et d'appel de plusieurs modèles cibles à partir d'un seul point de terminaison.

Réponse

Si le point de terminaison est créé avec ExplainerConfig, alors un nouveau schéma de réponse est utilisé. Ce nouveau schéma est différent d'un point de terminaison qui ne possède pas le paramètre ExplainerConfig fourni, et n'est pas compatible avec ce type de point de terminaison.

Le type MIME de la réponse est application/json, et la charge utile de la réponse peut être décodée à partir d'octets UTF-8 vers un objet JSON. Voici les membres de cet objet JSON :

  • version : version du schéma de réponse au format chaîne. Par exemple, 1.0.

  • predictions : les prédictions émises par la demande sont les suivantes :

    • content_type : type MIME des prédictions, faisant référence au ContentType de la réponse du conteneur de modèle.

    • data : chaîne des données de prédictions fournie en tant que charge utile de la réponse du conteneur de modèle pour la demande.

  • label_headers : en-têtes d'étiquette du paramètre LabelHeaders. Ces en-têtes sont fournis dans la configuration de l'outil d'explication ou dans la sortie du conteneur de modèle.

  • explanations : explications fournies dans la charge utile de la demande. Si aucun enregistrement n'est expliqué, ce membre renvoie l'objet vide {}.

    • kernel_shap : clé faisant référence à un tableau d'explications Kernel SHAP pour chaque enregistrement de la demande. Si un enregistrement n'est pas expliqué, l'explication correspondante est null.

L'élément kernel_shap contient les membres suivants :

  • feature_header : nom d'en-tête des fonctionnalités fournies par le paramètre FeatureHeaders dans la configuration de l'outil d'explication ExplainerConfig.

  • feature_type : type de fonctionnalité déduit par l'outil d'explication ou fourni dans le paramètre FeatureTypes de ExplainerConfig. Cet élément n'est disponible que pour les problèmes d'explicabilité du NLP.

  • attributions : tableau d'objets d'attribution. Les fonctionnalités de texte peuvent avoir plusieurs objets d'attribution, chacun pour une unité. L'objet d'attribution contient les membres suivants :

    • attribution : liste de valeurs de probabilité, données pour chaque classe.

    • description : description des unités de texte, disponible uniquement pour les problèmes d'explicabilité du NLP.

      • partial_text : partie du texte expliquée par l'outil d'explication.

      • start_idx : index de base zéro permettant d'identifier l'emplacement dans le tableau du début du fragment de texte partiel.