Attacher EI à une instance de bloc-notes - Amazon SageMaker

Attacher EI à une instance de bloc-notes

Pour tester et évaluer les performances d'inférence avec EI, vous pouvez attacher EI à une instance de bloc-notes lorsque vous créez ou mettez à jour une instance de bloc-notes. Vous pouvez ensuite utiliser EI en mode local pour héberger un modèle à un point de terminaison hébergé sur l'instance de bloc-notes. Vous devez tester plusieurs tailles d'instances de blocs-notes et accélérateurs EI pour évaluer la configuration qui convient le mieux à votre usage.

Configuration pour utiliser EI

Pour utiliser EI localement dans une instance de bloc-notes, créez une instance de bloc-notes avec une instance EI.

Pour créer une instance de bloc-notes avec une instance EI

  1. Ouvrez la console Amazon SageMaker à l'adresse https://console.aws.amazon.com/sagemaker/.https://console.aws.amazon.com/sagemaker/

  2. Dans le panneau de navigation, choisissez Instances de bloc-notes.

  3. Choisissez Créer une instance de bloc-notes.

  4. Pour Nom de l'instance de bloc-notes, indiquez un nom unique pour votre instance de bloc-notes.

  5. Pour type d'instance de bloc-notes, choisissez une instance d'UC telle que ml.t2.medium.

  6. Pour Elastic Inference (EI), choisissez une instance dans la liste, par exemple ml.eia2.medium.

  7. Pour Rôle IAM, choisissez un rôle IAM qui dispose des autorisations requises pour utiliser SageMaker et EI.

  8. (Facultatif) Pour VPC - Facultatif, si vous voulez que l'instance de bloc-notes utilise un VPC, choisissez-en un dans la liste. Sinon, conservez la valeur Pas de VPC. Si vous utilisez un VPC, suivez les instructions décrites dans Utilisation d'un VPC personnalisé pour se connecter à EI.

  9. (Facultatif) Pour Configuration du cycle de vie - facultatif, conservez Pas de configuration ou choisissez une configuration de cycle de vie. Pour plus d'informations, consultez Personnalisation d'une instance de bloc-notes à l'aide d'un script de configuration du cycle de vie.

  10. (Facultatif) Pour Clé de chiffrement - facultatif, Facultatif) Si vous voulez que SageMaker utilise une clé AWS Key Management Service (AWS KMS) pour chiffrer les données dans le volume de stockage ML attaché à l'instance de bloc-notes, vous devez spécifier la clé.

  11. (Facultatif) Pour Taille du volume en Go - facultatif, laissez la valeur par défaut de 5.

  12. (Facultatif) Pour Balises, ajoutez des balises à l'instance de bloc-notes. Une balise est une étiquette que vous affectez pour vous aider à gérer vos instances de bloc-notes. Une balise est constituée d'une clé et d'une valeur que vous définissez.

  13. Choisissez Créer une instance de bloc-notes.

Une fois que vous avez créé votre instance de bloc-notes avec EI attaché, vous pouvez créer un bloc-notes Jupyter et configurer un point de terminaison EI hébergé localement sur l'instance de bloc-notes.

Utilisation d'EI en mode Local dans SageMaker

Pour utiliser EI localement dans un point de terminaison hébergé sur une instance de bloc-notes, utilisez le mode Local avec les versions de kit SDK Amazon SageMaker Python des modèles ou estimateurs TensorFlow, MXNet ou PyTorch. Pour de plus amples informations sur la prise en charge du mode local dans le kit SDK SageMaker Python, veuillez consulter https://github.com/aws/sagemaker-python-sdk#sagemaker-python-sdk-overview.

Utilisation d'EI en mode local avec des modèles et estimateurs SageMaker TensorFlow

Pour utiliser EI avec TensorFlow en mode local, spécifiez local pour instance_type et local_sagemaker_notebook pour accelerator_type lorsque vous appelez la méthode deploy d'un modèle évaluateur ou objet. Pour de plus amples informations sur les modèles et estimateurs TensorFlow du kit SDK Amazon SageMaker Python, veuillez consulter https://sagemaker.readthedocs.io/en/stable/frameworks/tensorflow/index.html.

Le code suivant montre comment utiliser le mode local avec un objet évaluateur. Pour appeler la méthode deploy, vous devez avoir précédemment :

  • soit entraîné le modèle en appelant la méthode fit d'un évaluateur ;

  • soit transmis un artefact de modèle lors de l'initialisation de l'objet modèle.

# Deploys the model to a local endpoint tf_predictor = tf_model.deploy(initial_instance_count=1, instance_type='local', accelerator_type='local_sagemaker_notebook')

Utilisation d'EI en mode local avec des modèles et estimateurs SageMaker Apache MXNet

Pour utiliser EI avec MXNet en mode local, spécifiez local pour instance_type et local_sagemaker_notebook pour accelerator_type lorsque vous appelez la méthode deploy d'un objet modèle ou évaluateur. Pour de plus amples informations sur les modèles et estimateurs MXNet du kit SDK Amazon SageMaker Python, veuillez consulter https://sagemaker.readthedocs.io/en/stable/frameworks/mxnet/index.html.

Le code suivant montre comment utiliser le mode local avec un objet évaluateur. Vous devez avoir précédemment appelé la méthode fit de l'évaluateur pour entraîner le modèle.

# Deploys the model to a local endpoint mxnet_predictor = mxnet_estimator.deploy(initial_instance_count=1, instance_type='local', accelerator_type='local_sagemaker_notebook')

Pour obtenir un exemple complet de l'utilisation d'EI en mode local avec MXNet, consultez l'exemple de bloc-notes à la page https://sagemaker-examples.readthedocs.io/en/latest/sagemaker-python-sdk/mxnet_mnist/mxnet_mnist_elastic_inference_local.html .

Utilisation d'EI en mode Local avec les modèles et estimateurs SageMaker PyTorch

Pour utiliser EI avec PyTorch en mode Local, lorsque vous appelez la méthode deploy d'un objet modèle ou évaluateur, spécifiez local pour instance_type et local_sagemaker_notebook pour accelerator_type. Pour de plus amples informations sur les modèles et estimateurs PyTorch du kit SDK Amazon SageMaker Python, veuillez consulter SageMaker PyTorch Estimators and Models (Estimateurs et modèles SageMaker PyTorch).

Le code suivant montre comment utiliser le mode local avec un objet évaluateur. Vous devez avoir précédemment appelé la méthode fit de l'évaluateur pour entraîner le modèle.

# Deploys the model to a local endpoint pytorch_predictor = pytorch_estimator.deploy(initial_instance_count=1, instance_type='local', accelerator_type='local_sagemaker_notebook')