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.
Envíe un trabajo de servicio en AWS Batch
Para enviar los trabajos de servicio AWS Batch, utilice la SubmitServiceJobAPI. Puede enviar trabajos mediante el SDK AWS CLI o el SDK.
Si aún no tiene un rol de ejecución, debe crear uno antes de poder enviar su trabajo de servicio. Para crear la función de ejecución de SageMaker IA, consulte Cómo utilizar las funciones de ejecución de SageMaker IA en la guía para desarrolladores de SageMaker IA.
Flujo de trabajo para la presentación de trabajos
Al enviar un trabajo de servicio, AWS Batch sigue este flujo de trabajo:
-
AWS Batch recibe su
SubmitServiceJob
solicitud y valida los parámetros AWS Batch específicos.serviceRequestPayload
Se pasa sin validación. -
El trabajo entra en el
SUBMITTED
estado y se coloca en la cola de trabajos especificada -
AWS Batch evalúa si hay capacidad disponible en el entorno de servicio para los
RUNNABLE
trabajos que se encuentran al principio de la cola -
Si hay capacidad disponible, el trabajo se traslada a AI
SCHEDULED
y se ha transferido a AI SageMaker -
Cuando se haya adquirido capacidad y la SageMaker IA haya descargado los datos del trabajo de servicio, el trabajo de servicio comenzará a inicializarse y el trabajo cambiará a
STARTING
. -
Cuando la SageMaker IA comience a ejecutar el trabajo, su estado cambiará a
RUNNING
. -
Mientras la SageMaker IA ejecuta la tarea, AWS Batch supervisa su progreso y asigna los estados del servicio a los estados de las AWS Batch tareas. Para obtener más información sobre cómo se mapean los estados de las tareas de servicio, consulte Asignar el estado del trabajo del AWS Batch servicio al estado de la SageMaker IA
Cuando se completa el trabajo de servicio, pasa a
SUCCEEDED
y cualquier resultado está listo para descargarse.
Requisitos previos
Antes de enviar un trabajo de servicio, asegúrese de tener:
-
Entorno de servicio: entorno de servicio que define los límites de capacidad. Para obtener más información, consulte Cree un entorno de servicios en AWS Batch.
-
SageMaker cola de trabajos: cola de SageMaker trabajos para proporcionar la programación de los trabajos. Para obtener más información, consulte Cree una cola SageMaker de trabajos de formación en AWS Batch.
-
Permisos de IAM: permisos para crear y gestionar colas de AWS Batch trabajos y entornos de servicio. Para obtener más información, consulte AWS Batch Políticas, funciones y permisos de IAM.
Envíe un trabajo de servicio con la AWS CLI
A continuación, se muestra cómo enviar un trabajo de servicio mediante la AWS CLI:
aws batch submit-service-job \ --job-name "my-sagemaker-training-job" \ --job-queue "my-sagemaker-job-queue" \ --service-job-type "SAGEMAKER_TRAINING" \ --service-request-payload '{\"TrainingJobName\": \"sagemaker-training-job-example\", \"AlgorithmSpecification\": {\"TrainingImage\": \"123456789012.dkr.ecr.us-east-1.amazonaws.com/pytorch-inference:1.8.0-cpu-py3\", \"TrainingInputMode\": \"File\", \"ContainerEntrypoint\": [\"sleep\", \"1\"]}, \"RoleArn\":\"arn:aws:iam::123456789012:role/SageMakerExecutionRole\", \"OutputDataConfig\": {\"S3OutputPath\": \"s3://example-bucket/model-output/\"}, \"ResourceConfig\": {\"InstanceType\": \"ml.m5.large\", \"InstanceCount\": 1, \"VolumeSizeInGB\": 1}}' --client-token "unique-token-12345"
Para obtener más información acerca de los parámetros serviceRequestPayload
, consulte Cargas útiles de trabajos de servicio en AWS Batch.