Configurer le modèle préformé AWS SageMaker

Connectez-vous à la console AWS et accédez à Amazon SageMaker.

Accédez à Amazon SageMaker Studio.

Choisissez Quick start > Execution role> Create an IAM role (Démarrage rapide > Rôle d'exécution > Créer un rôle IAM).

Cliquez sur Create role (Créer un rôle), puis sur Submit (Envoyer).

La configuration de SageMaker prendra un certain temps. Une fois l'opération terminée, cliquez sur Open Studio (Ouvrir le studio).

Cliquez sur Go to SageMaker JumpStart (Accéder SageMaker JumpStart).

Recherchez l'option Inception V3 et cliquez dessus.

Définissez le champ Machine Type (Type de machine) sur ml.m5.large, remplacez la valeur du champ Endpoint Name (Nom du point de terminaison) par un nom plus lisible, comme « image-labeller-endpoint », puis cliquez sur Deploy (Déployer).

AWS SageMaker commencera à déployer le modèle.

Cliquez sur Open Notebook (Ouvrir le bloc-notes) une fois le déploiement terminé.

Exécutez les trois blocs de code du bloc-notes afin de vérifier que tout fonctionne. Indiquez la valeur endpoint_name dans query_endpoint.Vous devez l'ajouter, ainsi que la région dans laquelle se trouve votre bloc-notes AWS SageMaker dans InvokeLabeller AWS Lambda.
Pour en savoir plus sur l'utilisation des blocs-notes Jupyter, veuillez lire la documentation.

Ouvrez le fichier src/application.py d'InvokeLabeller et recherchez query_endpoint. Changez le nom du point de terminaison (endpoint_name) et le nom de la région (region_name) du client pour qu'ils correspondent à votre bloc-notes AWS SageMaker.
def query_endpoint(img):
endpoint_name = 'jumpstart-dft-image-labeller-endpoint'
client = boto3.client(service_name='runtime.sagemaker', region_name='us-west-1')
response = client.invoke_endpoint(EndpointName=endpoint_name, ContentType='application/x-image', Body=img)
model_predictions = json.loads(response['Body'].read())['predictions'][0]
return model_predictions