

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á.

# Crie um trabalho de treinamento usando a API, AWS CLI, SageMaker SDK
<a name="use-training-plan-for-training-jobs-using-api-cli-sdk"></a>

Para usar planos de SageMaker treinamento para seu trabalho de SageMaker treinamento, especifique o `TrainingPlanArn` parâmetro do plano desejado em `ResourceConfig` ao chamar a operação da [`CreateTrainingJob`](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTrainingJob.html) API. Você pode usar exatamente um plano por tarefa.

**Importante**  
O campo `InstanceType` definido na seção `ResourceConfig` da solicitação `CreateTrainingJob` deve corresponder ao `InstanceType` do seu plano de treinamento.

## Executar uma tarefa de treinamento em um plano usando a CLI
<a name="training-job-cli"></a>

O exemplo a seguir demonstra como criar um trabalho de SageMaker treinamento e associá-lo a um plano de treinamento fornecido usando o `TrainingPlanArn` atributo no `create-training-job` AWS CLI comando. 

Para obter mais informações sobre como criar um trabalho de treinamento usando o AWS CLI [ CreateTrainingJob ](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateTrainingJob.html) comando, consulte [`create-training-job`](https://docs.aws.amazon.com/cli/latest/reference/sagemaker/create-training-job.html).

```
# Create a training job
aws sagemaker create-training-job \
  --training-job-name {{training-job-name}} \
  ...
    
  --resource-config '{
        "InstanceType": "{{ml.p5.48xlarge}}",
        "InstanceCount": {{8}},
        "VolumeSizeInGB": {{10}},
        "TrainingPlanArn": "{{training-plan-arn}}"
        }
    }' \
    ...
```

Este AWS CLI exemplo de comando cria um novo trabalho de treinamento em SageMaker IA, aprovando um plano de treinamento na `--resource-config` discussão.

```
aws sagemaker create-training-job \
  --training-job-name {{job-name}} \
  --role-arn {{arn:aws:iam::111122223333:role/DataAndAPIAccessRole}} \
  --algorithm-specification '{"TrainingInputMode": "{{File}}","TrainingImage": "{{111122223333.dkr.ecr.us-east-1.amazonaws.com/algo-image:tag}}", "ContainerArguments": [" "]}' \
  --input-data-config '[{"ChannelName":"{{training}}","DataSource":{"S3DataSource":{"S3DataType":"{{S3Prefix}}","S3Uri":"{{s3://bucketname/input}}","S3DataDistributionType":"{{ShardedByS3Key}}"}}}]' \
  --output-data-config '{"S3OutputPath": "{{s3://bucketname/output}}"}' \
  --resource-config '{"VolumeSizeInGB":{{10}},"InstanceCount":{{4}},"InstanceType":"{{ml.p5.48xlarge}}", "TrainingPlanArn" : "{{arn:aws:sagemaker:us-east-1:111122223333:training-plan/plan-name}}"}' \
  --stopping-condition '{"MaxRuntimeInSeconds": {{1800}}}' \
  --region {{us-east-1}}
```

Depois de criar a tarefa de treinamento, você pode chamar a API `DescribeTrainingJob` para verificar se ela foi atribuída corretamente ao plano de treinamento.

```
aws sagemaker describe-training-job --training-job-name {{training-job-name}}
```

## Execute um trabalho de treinamento em um plano usando o SDK do SageMaker AI Python
<a name="training-job-sdk"></a>

Como alternativa, você pode criar um trabalho de treinamento associado a um plano de treinamento usando o SDK do [ SageMaker Python. ](https://sagemaker.readthedocs.io/en/stable/)

Se você estiver usando o SDK do SageMaker Python JupyterLab no Studio para criar um trabalho de treinamento, certifique-se de que a função de execução usada pelo espaço que executa seu JupyterLab aplicativo tenha as permissões necessárias para usar os planos de SageMaker treinamento. Para saber mais sobre as permissões necessárias para usar os planos de SageMaker treinamento, consulte[IAM para planos SageMaker de treinamento](training-plan-iam-permissions.md).

O exemplo a seguir demonstra como criar um trabalho de SageMaker treinamento e associá-lo a um plano de treinamento fornecido usando o `training_plan` atributo no `ModelTrainer` objeto ao usar o SDK do SageMaker Python.

Para obter mais informações sobre o SageMaker ModelTrainer, consulte [ Usar um SageMaker ModelTrainer para executar um trabalho de treinamento](https://docs.aws.amazon.com/sagemaker/latest/dg/docker-containers-adapt-your-own-private-registry-estimator.html).

```
import boto3
from sagemaker.core.helper.session_helper import get_execution_role
from sagemaker.train import ModelTrainer
from sagemaker.train.configs import InputData
from sagemaker.train.configs import Compute, SourceCode
from sagemaker.core.shapes import OutputDataConfig

# Set up the session and SageMaker client
session = boto3.Session()
region = session.region_name
sagemaker_session = session.client('sagemaker')

# Get the execution role for the training job
role = get_execution_role()

# Define the input data configuration
trainingInput = InputData(
    channel_name='{{training}}',
    data_source='{{s3://input-path}}'
)

model_trainer = ModelTrainer(
    training_image="{{123456789123.dkr.ecr.{}.amazonaws.com/image:tag}}",
    source_code=SourceCode(entry_script='train.py'),
    role=role,
    compute=Compute(
        instance_type='{{ml.p5.48xlarge}}',
        instance_count={{4}},
        volume_size_in_gb={{20}},
        training_plan_arn="{{training-plan-arn}}"
    ),
    output_data_config=OutputDataConfig(s3_output_path="{{s3://output-path}}")
)

# Create the training job
model_trainer.train(input_data_config=[trainingInput])
```

Depois de criar a tarefa de treinamento, você pode chamar a API `DescribeTrainingJob` para verificar se ela foi atribuída corretamente ao plano de treinamento.

```
# Check job details
sagemaker_session.describe_training_job(TrainingJobName=job_name)
```