Implemente el Model Package directamente con la API de implementación de SageMaker Edge Manager - Amazon SageMaker AI

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Implemente el Model Package directamente con la API de implementación de SageMaker Edge Manager

SageMaker Edge Manager proporciona una API de implementación que puede usar para implementar modelos en dispositivos de destino sin ella AWS IoT Greengrass. Resulta útil en situaciones en las que desee actualizar los modelos independientemente de las actualizaciones del firmware o de los mecanismos de implementación de las aplicaciones. Puede usar la API para integrar sus implementaciones periféricas en un flujo de trabajo de CI/CD para implementar automáticamente modelos una vez que haya validado la precisión del modelo. La API también cuenta con cómodas opciones de reversión y despliegue gradual para garantizar que los modelos funcionen bien en un entorno concreto antes de una implementación más amplia.

Para usar la API de implementación de Edge Manager, primero compile y empaquete su modelo. Para obtener información sobre cómo compilar y empaquetar el modelo, consulte Preparación del modelo para la implementación. En las siguientes secciones de esta guía, se muestra cómo crear despliegues perimetrales mediante la SageMaker API, después de haber compilado y empaquetado los modelos.

Crear un plan de implementación periférica

Puede crear un plan de implementación periférica con la API CreateEdgeDeploymentPlan. El plan de implementación puede tener varias etapas. Puede configurar cada etapa para desarrollar la implementación en un subconjunto de dispositivos periféricos (por porcentaje o por nombre de dispositivo). También puede configurar cómo se gestionan los errores de implementación en cada etapa.

El siguiente fragmento de código muestra cómo se puede crear un plan de implementación periférica con una etapa para implementar un modelo compilado y empaquetado en 2 dispositivos periféricos específicos:

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" } } ] )

En lugar de dispositivos específicos, si desea implementar el modelo en un porcentaje de dispositivos de su flota, defina el valor de DeviceSubsetType en "PERCENTAGE" y sustituya "DeviceNames": ["device-name-1", "device-name-2"] por "Percentage": desired-percentage en el ejemplo anterior.

Las etapas se pueden añadir una vez creado el plan de despliegue con la CreateEdgeDeploymentStageAPI, por si quieres empezar a implementar nuevas etapas tras validar el éxito de la implementación de las pruebas. Para obtener más información sobre las etapas de despliegue, consulte. DeploymentStage

Reinicie la implementación periférica

Tras crear el plan y las etapas de implementación, puede iniciar la implementación con la API StartEdgeDeploymentStage.

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

Comprobar el estado de la implementación

Puede comprobar el estado de la implementación perimetral con la DescribeEdgeDeploymentPlanAPI.

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