

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Envio de trabalhos para um compartilhamento de cota
<a name="submit-job-quota-share"></a>

As filas de trabalhos de gerenciamento de cotas exigem que todos os trabalhos especifiquem um compartilhamento de cota no envio do trabalho. Para enviar trabalhos para um compartilhamento de cota, especifique a entrada`quotaShareName`. [SubmitServiceJob](https://docs.aws.amazon.com/batch/latest/APIReference/API_SubmitServiceJob.html) Opcionalmente, um A `preemptionConfiguration` pode ser fornecido para limitar o número de tentativas de preempção antes que uma tentativa de emprego entre. `FAILED` Para limitar o número de preempções que um trabalho experimenta, defina `preemptionRetriesBeforeTermination` dentro do envio do [ServiceJobPreemptionConfiguration](https://docs.aws.amazon.com/batch/latest/APIReference/API_ServiceJobPreemptionConfiguration.html)trabalho.

## Pré-requisitos
<a name="submit-job-quota-share-prerequisites"></a>

Antes de enviar trabalhos para uma cota compartilhada, certifique-se de ter:
+ **Recursos de gerenciamento de cotas** — uma política de agendamento, um ambiente de serviço e uma fila de trabalhos configurados para o gerenciamento de cotas. Para obter mais informações, consulte [Crie recursos de gerenciamento de cotas](create-quota-management-resources.md).
+ **Compartilhamento de cota** — Pelo menos um compartilhamento de cota criado na fila de trabalhos. Para obter mais informações, consulte [Criação de compartilhamentos de cotas](create-quota-shares.md).
+ **Permissões do IAM** — Permissões para as quais enviar trabalhos AWS Batch. Para obter mais informações, consulte [AWS Batch Políticas, funções e permissões do IAM](IAM_policies.md).

## Enviar um trabalho de serviço para um compartilhamento de cota
<a name="submit-job-quota-share-example"></a>

A tabela abaixo mostra como enviar um trabalho de serviço para um compartilhamento de cota usando o SDK do SageMaker Python ou a CLI: AWS 

------
#### [ Submit using the SageMaker Python SDK ]

O [SDK do SageMaker Python](https://sagemaker.readthedocs.io/en/stable/v3-examples/training-examples/aws_batch/sm-training-queues_quota-management.html) tem suporte integrado para enviar trabalhos para uma fila de trabalhos habilitada para gerenciamento de cotas. Os exemplos a seguir mostram como criar um instrutor modelo, criar uma fila de treinamento e enviar trabalhos para um compartilhamento de cotas. Para ver um exemplo completo, consulte o [caderno de amostra completo](https://github.com/aws/sagemaker-python-sdk/blob/master/v3-examples/training-examples/aws_batch/sm-training-queues_quota-management.ipynb) em GitHub.

Crie um `ModelTrainer` que defina a configuração do trabalho de treinamento.

```
from sagemaker.train.model_trainer import ModelTrainer
from sagemaker.train.configs import SourceCode, Compute, StoppingCondition

source_code = SourceCode(command="echo 'Hello World'")

model_trainer = ModelTrainer(
    training_image={{"123456789012.dkr.ecr.us-east-1.amazonaws.com/pytorch-training:2.5-gpu-py311"}},
    source_code=source_code,
    base_job_name={{"my-training-job"}},
    compute=Compute(instance_type={{"ml.g5.xlarge"}}, instance_count={{1}}),
    stopping_condition=StoppingCondition(max_runtime_in_seconds={{300}}),
)
```

Crie um `TrainingQueue` objeto que faça referência à sua fila de trabalhos habilitada para gerenciamento de cotas por nome.

```
from sagemaker.train.aws_batch.training_queue import TrainingQueue

queue = TrainingQueue({{"my-sagemaker-job-queue"}})
```

Envie trabalhos para um compartilhamento de cotas ligando `queue.submit` e especificando o. `quota_share_name` Você deve definir um `priority` para influenciar a ordem de trabalho dentro da cota. Um mundo real `ModelTrainer` `inputs` exigirá dados para treinar.

```
job = queue.submit(
    job_name={{"my-training-job"}},
    training_job=model_trainer,
    quota_share_name={{"my_quota_share"}},
    priority={{3}},
    inputs=None,
)
```

------
#### [ Submit using the AWS CLI ]

O exemplo a seguir usa o **submit-service-job** comando para enviar um trabalho para um compartilhamento de cota.

```
aws batch submit-service-job \
    --job-name {{"my-sagemaker-training-job"}} \
    --job-queue {{"my-sagemaker-job-queue"}} \
    --service-job-type "SAGEMAKER_TRAINING" \
    --quota-share-name {{"my_quota_share"}} \
    --timeout-config '{"attemptDurationSeconds":{{3600}}}' \
    --scheduling-priority {{5}} \
    --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}}'}}"
```

------