Transfiera datos entre pasos - Amazon SageMaker

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Transfiera datos entre pasos

Cuando necesites recuperar información del resultado de un paso de la canalización, puedes utilizarJsonGet. JsonGetle ayuda a extraer información de Amazon S3 o de archivos de propiedades. En las siguientes secciones se explican los métodos que puede utilizar para extraer los resultados de los pasosJsonGet.

Transfiera datos entre pasos con Amazon S3

Puede usarlo JsonGet ConditionStep para obtener la salida JSON directamente de Amazon S3. El URI de Amazon S3 puede ser una Std:Join función que contenga cadenas primitivas, variables de ejecución de canalización o parámetros de canalización. En el siguiente ejemplo, se muestra cómo se puede utilizar JsonGet en unConditionStep:

# 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 )

Si utiliza JsonGet una ruta de Amazon S3 en el paso de condición, debe añadir explícitamente una dependencia entre el paso de condición y el paso que genera la salida de JSON. En el siguiente ejemplo, el paso de condición se crea con una dependencia del paso de procesamiento:

cond_step = ConditionStep( name="<step-name>", conditions=[cond_lte], if_steps=[fail_step], else_steps=[register_model_step], depends_on=[processing_step], )

Transfiera datos entre pasos con archivos de propiedades

Use los archivos de propiedades para almacenar la información de la salida de un paso de procesamiento. Resulta particularmente útil cuando se analizan los resultados de un paso de procesamiento para decidir cómo se debe ejecutar un paso condicional. La JsonGet función procesa un archivo de propiedades y permite utilizar la JsonPath notación para consultar el archivo JSON de propiedades. Para obtener más información sobre la JsonPath notación, consulta el JsonPath repositorio.

Para almacenar un archivo de propiedades para utilizarlo más adelante, primero debe crear una instancia PropertyFile con el siguiente formato. El parámetro path es el nombre del archivo JSON en el que se guarda el archivo de propiedades. Cualquier output_name debe coincidir con el output_name de la ProcessingOutput que defina en el paso de procesamiento. Esto permite que el archivo de propiedades capture la ProcessingOutput en el paso.

from sagemaker.workflow.properties import PropertyFile <property_file_instance> = PropertyFile( name="<property_file_name>", output_name="<processingoutput_output_name>", path="<path_to_json_file>" )

Cuando cree la ProcessingStep instancia, añada el property_files parámetro para enumerar todos los archivos de parámetros que el servicio Amazon SageMaker Model Building Pipelines debe indexar. De este modo, se guarda el archivo de propiedades para utilizarse más adelante.

property_files=[<property_file_instance>]

Para usar el archivo de propiedades en un paso de condición, agregue el property_file a la condición que va a pasar al paso de condición, como se muestra en el siguiente ejemplo, para consultar el archivo JSON de la propiedad deseada mediante el parámetro json_path.

cond_lte = ConditionLessThanOrEqualTo( left=JsonGet( step_name=step_eval.name, property_file=<property_file_instance>, json_path="mse" ), right=6.0 )

Para ver ejemplos más detallados, consulte Property File en el SDK de Amazon SageMaker Python.