Kirim pekerjaan layanan di AWS Batch - AWS Batch

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Kirim pekerjaan layanan di AWS Batch

Untuk mengirimkan pekerjaan layanan AWS Batch, Anda menggunakan SubmitServiceJobAPI. Anda dapat mengirimkan pekerjaan menggunakan AWS CLI atau SDK.

Jika Anda belum memiliki peran eksekusi maka Anda harus membuatnya sebelum Anda dapat mengirimkan pekerjaan layanan Anda. Untuk membuat peran eksekusi SageMaker AI, lihat Cara menggunakan peran eksekusi SageMaker AI dalam panduan Pengembang SageMaker AI.

Alur kerja pengiriman pekerjaan layanan

Saat Anda mengirimkan pekerjaan layanan, AWS Batch ikuti alur kerja ini:

  1. AWS Batch menerima SubmitServiceJob permintaan Anda dan memvalidasi parameter AWS Batch-spesifik. serviceRequestPayloadItu dilewatkan tanpa validasi.

  2. Pekerjaan memasuki SUBMITTED negara bagian dan ditempatkan dalam antrian pekerjaan yang ditentukan

  3. AWS Batch mengevaluasi apakah ada kapasitas yang tersedia di lingkungan layanan untuk RUNNABLE pekerjaan di depan antrian

  4. Jika kapasitas tersedia, pekerjaan pindah ke SCHEDULED dan pekerjaan telah diteruskan ke SageMaker AI

  5. Ketika kapasitas telah diperoleh dan SageMaker AI telah mengunduh data pekerjaan layanan, pekerjaan layanan akan memulai inisialisasi dan pekerjaan diubah menjadiSTARTING.

  6. Ketika SageMaker AI mulai menjalankan pekerjaan, statusnya diubah menjadiRUNNING.

  7. Sementara SageMaker AI menjalankan pekerjaan, AWS Batch memantau kemajuannya dan memetakan status layanan ke status AWS Batch pekerjaan. Untuk detail tentang bagaimana status pekerjaan layanan dipetakan, lihat Memetakan status pekerjaan AWS Batch layanan ke status SageMaker AI

  8. Ketika pekerjaan layanan selesai, ia pindah ke SUCCEEDED dan output apa pun siap untuk diunduh.

Prasyarat

Sebelum mengirimkan pekerjaan servicde, pastikan Anda memiliki:

Kirim pekerjaan layanan dengan AWS CLI

Berikut ini menunjukkan cara mengirimkan pekerjaan layanan menggunakan 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"

Untuk informasi selengkapnya tentang serviceRequestPayload parameter, lihatMuatan pekerjaan layanan di AWS Batch.