Déployez le Package du modèle directement avec SageMaker Edge Manager Deployment API - 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.

Déployez le Package du modèle directement avec SageMaker Edge Manager Deployment API

SageMaker Edge Manager fournit un déploiement API que vous pouvez utiliser pour déployer des modèles sur des appareils cibles sans AWS IoT Greengrass. Elle est utile lorsque vous souhaitez mettre à jour des modèles indépendamment des mises à jour du microprogramme ou des mécanismes de déploiement d'applications. Vous pouvez utiliser le API pour intégrer vos déploiements périphériques dans un flux de travail CI/CD afin de déployer automatiquement des modèles une fois que vous avez validé la précision de votre modèle. APIIl propose également des options pratiques de rétrogradation et de déploiement progressif pour vous assurer que les modèles fonctionnent correctement dans un environnement particulier avant un déploiement à grande échelle.

Pour utiliser le déploiement d'Edge Manager, API commencez par compiler et empaqueter votre modèle. Pour obtenir des informations sur la compilation et l'empaquetage de votre modèle, consultez Préparez votre modèle pour le déploiement. Les sections suivantes de ce guide montrent comment créer des déploiements Edge en utilisant SageMaker API, une fois que vous avez compilé et empaqueté vos modèles.

Création d'un plan de déploiement en périphérie

Vous pouvez créer un plan de déploiement Edge à l'aide du CreateEdgeDeploymentPlanAPI. Ce plan de déploiement peut comporter plusieurs phases. Vous pouvez configurer chaque phase pour réaliser le déploiement sur un sous-ensemble d'appareils périphériques (par pourcentage ou par nom d'appareil). Vous pouvez également configurer la manière de gérer les échecs de déploiement dans chaque phase.

L'extrait de code suivant montre comment créer un plan de déploiement en périphérie comportant 1 phase pour déployer un modèle compilé et empaqueté sur 2 appareils périphériques spécifiques :

import boto3 client = boto3.client("sagemaker") client.create_edge_deployment_plan( EdgeDeploymentPlanName="edge-deployment-plan-name", DeviceFleetName="device-fleet-name", ModelConfigs=[ { "EdgePackagingJobName": "edge-packaging-job-name", "ModelHandle": "model-handle" } ], Stages=[ { "StageName": "stage-name", "DeviceSelectionConfig": { "DeviceSubsetType": "SELECTION", "DeviceNames": ["device-name-1", "device-name-2"] }, "DeploymentConfig": { "FailureHandlingPolicy": "ROLLBACK_ON_FAILURE" } } ] )

Au lieu d'appareils spécifiques, si vous souhaitez déployer sur un pourcentage des appareils de votre flotte, définissez la valeur de DeviceSubsetType sur "PERCENTAGE" et remplacez "DeviceNames": ["device-name-1", "device-name-2"] par "Percentage": desired-percentage dans l'exemple ci-dessus.

Les étapes peuvent être ajoutées une fois le plan de déploiement créé avec le CreateEdgeDeploymentStageAPI, au cas où vous souhaiteriez commencer à déployer de nouvelles étapes après avoir validé le succès de votre déploiement de test. Pour plus d'informations sur les étapes de déploiement, consultez DeploymentStage.

Lancement du déploiement en périphérie

Après avoir créé le plan de déploiement et les étapes de déploiement, vous pouvez démarrer le déploiement avec le StartEdgeDeploymentStageAPI.

client.start_edge_deployment_stage( EdgeDeploymentPlanName="edge-deployment-plan-name", StageName="stage-name" )

Vérification du statut du déploiement

Vous pouvez vérifier l'état du déploiement Edge à l'aide du DescribeEdgeDeploymentPlanAPI.

client.describe_edge_deployment_plan( EdgeDeploymentPlanName="edge-deployment-plan-name" )