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á.
Passe dados entre as etapas
Ao criar pipelines com o Amazon SageMaker Pipelines, talvez seja necessário passar dados de uma etapa para a outra. Por exemplo, talvez você queira usar os artefatos do modelo gerados por uma etapa de treinamento como entrada para uma etapa de avaliação ou implantação do modelo. Você pode usar essa funcionalidade para criar etapas de pipeline interdependentes e criar seus fluxos de trabalho de ML.
Quando precisar recuperar informações da saída de uma etapa do pipeline, você pode usarJsonGet
. JsonGet
ajuda você a extrair informações do Amazon S3 ou de arquivos de propriedades. As seções a seguir explicam os métodos que você pode usar para extrair as saídas JsonGet
das etapas.
Transmita dados entre etapas com o Amazon S3
Você pode usar JsonGet
in a ConditionStep
para obter a JSON saída diretamente do Amazon S3. O Amazon S3 URI pode ser uma Std:Join
função contendo cadeias de caracteres primitivas, variáveis de execução do pipeline ou parâmetros do pipeline. O exemplo a seguir mostra como você pode usar JsonGet
em umConditionStep
:
# Example json file in s3 bucket generated by a processing_step { "Output": [5, 10] } cond_lte = ConditionLessThanOrEqualTo( left=JsonGet( step_name="
<step-name>
", s3_uri="<s3-path-to-json>
", json_path="Output[1]" ), right=6.0 )
Se você estiver usando JsonGet
com um caminho do Amazon S3 na etapa de condição, deverá adicionar explicitamente uma dependência entre a etapa de condição e a etapa que gera a saída. JSON No exemplo a seguir, a etapa de condição é criada com uma dependência da etapa de processamento:
cond_step = ConditionStep( name="
<step-name>
", conditions=[cond_lte], if_steps=[fail_step], else_steps=[register_model_step], depends_on=[processing_step], )
Passe dados entre etapas com arquivos de propriedades
Use arquivos de propriedades para armazenar informações da saída de uma etapa de processamento. Isso é particularmente útil ao analisar os resultados de uma etapa de processamento para decidir como uma etapa condicional deve ser executada. A JsonGet
função processa um arquivo de propriedades e permite que você use a JsonPath notação para consultar o JSON arquivo de propriedades. Para obter mais informações sobre JsonPath notação, consulte o JsonPath repositório
Para armazenar um arquivo de propriedades para uso posterior, primeiro você deve criar uma instância PropertyFile
com o formato a seguir. O path
parâmetro é o nome do JSON arquivo no qual o arquivo de propriedades é salvo. Qualquer um output_name
deve corresponder ao output_name
do ProcessingOutput
que você define em sua etapa de processamento. Isso permite que o arquivo de propriedades capture o ProcessingOutput
na etapa.
from sagemaker.workflow.properties import PropertyFile
<property_file_instance>
= PropertyFile( name="<property_file_name>
", output_name="<processingoutput_output_name>
", path="<path_to_json_file>
" )
Ao criar sua ProcessingStep
instância, adicione o property_files
parâmetro para listar todos os arquivos de parâmetros que o serviço Amazon SageMaker Pipelines deve indexar. Isso salva o arquivo de propriedades para uso posterior.
property_files=[
<property_file_instance>
]
Para usar seu arquivo de propriedades em uma etapa de condição, adicione-a property_file
à condição que você passa para sua etapa de condição, conforme mostrado no exemplo a seguir, para consultar o JSON arquivo da propriedade desejada usando o json_path
parâmetro.
cond_lte = ConditionLessThanOrEqualTo( left=JsonGet( step_name=step_eval.name, property_file=
<property_file_instance>
, json_path="mse" ), right=6.0 )
Para obter exemplos mais detalhados, consulte Arquivo de propriedades