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á.
Ao usar o Amazon SageMaker Pipelines, você pode ter problemas por vários motivos. Este tópico fornece informações sobre erros comuns e como resolvê-los.
Problemas de definição de pipeline
Sua definição de pipeline pode não estar formatada corretamente. Isso pode resultar na falha de execução ou na imprecisão do trabalho. Esses erros podem ser detectados quando o pipeline é criado ou quando ocorre uma execução. Se sua definição não for validada, o Pipelines retornará uma mensagem de erro identificando o caractere em que o arquivo JSON está malformado. Para corrigir esse problema, revise as etapas criadas usando o SDK do SageMaker AI Python para verificar a precisão.
Você só pode incluir etapas em uma definição de pipeline uma vez. Por esse motivo, as etapas não podem existir como parte de uma etapa de condição e de um pipeline no mesmo pipeline.
Examinar logs de pipeline
Você pode visualizar o status das suas etapas usando o seguinte comando:
execution.list_steps()
Cada etapa inclui as seguintes informações:
-
O ARN da entidade lançada pelo pipeline, como o ARN do trabalho de SageMaker IA, o ARN do modelo ou o ARN do pacote de modelos.
-
O motivo da falha inclui uma breve explicação da falha na etapa.
-
Se a etapa for uma etapa de condição, ela indicará se a condição foi avaliada como verdadeira ou falsa.
-
Se a execução reutilizar uma execução de trabalho anterior, o
CacheHit
listará a execução de origem.
Você também pode visualizar as mensagens de erro e os registros na interface do Amazon SageMaker Studio. Para obter informações sobre como ver os logs no Studio, consulte Visualizar os detalhes de uma execução de pipeline.
Permissões ausentes
As permissões corretas são necessárias para o perfil que cria a execução do pipeline e as etapas que criam cada um dos trabalhos na execução do pipeline. Sem essas permissões, talvez você não consiga enviar a execução do pipeline ou executar seus trabalhos de SageMaker IA conforme o esperado. Para garantir que suas permissões sejam configuradas corretamente, consulte Gerenciamento de acesso do IAM.
Erros de execução do trabalho
Você pode ter problemas ao executar suas etapas devido a problemas nos scripts que definem a funcionalidade de suas tarefas de SageMaker IA. Cada trabalho tem um conjunto de CloudWatch registros. Para ver esses registros do Studio, consulteVisualizar os detalhes de uma execução de pipeline. Para obter informações sobre o uso de CloudWatch registros com SageMaker IA, consulteGrupos de registros e streams que o Amazon SageMaker AI envia para o Amazon CloudWatch Logs.
Erros do arquivo de propriedade
Você pode ter problemas ao implantar incorretamente os arquivos de propriedades com seu pipeline. Para garantir que sua implantação de arquivos de propriedades funcione conforme o esperado, consulte Passe dados entre etapas.
Problemas ao copiar o script para o contêiner no Dockerfile
Você pode copiar o script para o contêiner ou passá-lo por meio do argumento entry_point
(da entidade estimadora) ou do argumento code
(da entidade processadora), conforme demonstrado no exemplo de código a seguir.
step_process = ProcessingStep(
name="PreprocessAbaloneData",
processor=sklearn_processor,
inputs = [
ProcessingInput(
input_name='dataset',
source=...,
destination="/opt/ml/processing/code",
)
],
outputs=[
ProcessingOutput(output_name="train", source="/opt/ml/processing/train", destination = processed_data_path),
ProcessingOutput(output_name="validation", source="/opt/ml/processing/validation", destination = processed_data_path),
ProcessingOutput(output_name="test", source="/opt/ml/processing/test", destination = processed_data_path),
],
code=os.path.join(BASE_DIR, "process.py"), ## Code is passed through an argument
cache_config = cache_config,
job_arguments = ['--input', 'arg1']
)
sklearn_estimator = SKLearn(
entry_point=os.path.join(BASE_DIR, "train.py"), ## Code is passed through the entry_point
framework_version="0.23-1",
instance_type=training_instance_type,
role=role,
output_path=model_path, # New
sagemaker_session=sagemaker_session, # New
instance_count=1, # New
base_job_name=f"{base_job_prefix}/pilot-train",
metric_definitions=[
{'Name': 'train:accuracy', 'Regex': 'accuracy_train=(.*?);'},
{'Name': 'validation:accuracy', 'Regex': 'accuracy_validation=(.*?);'}
],
)