Transformaciones por lotes con canalizaciones de inferencia - 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.

Transformaciones por lotes con canalizaciones de inferencia

Para obtener inferencias sobre un conjunto de datos completo, ejecute una transformación por lotes en un modelo entrenado. Para ejecutar inferencias en un conjunto de datos completo, puede utilizar el mismo modelo de canalización de inferencias que se creó e implementó en un punto de conexión con el procesamiento en tiempo real de trabajos de transformación por lotes. Para ejecutar un trabajo de transformación por lotes en una canalización, debe descargar los datos de entrada de Amazon S3 y enviarlos en una o más HTTP solicitudes al modelo de canalización de inferencia. Para ver un ejemplo que muestra cómo preparar los datos para una transformación por lotes, consulte la «Sección 2: Preprocesar los datos de alojamiento sin procesar con Scikit Learn» del cuaderno de muestra Amazon SageMaker Multi-Model Endpoints con Linear Learner. Para obtener información sobre las transformaciones SageMaker por lotes de Amazon, consulteTransformación por lotes para inferencias con Amazon SageMaker.

nota

Para usar imágenes de Docker personalizadas en una canalización que incluye los algoritmos SageMaker integrados de Amazon, necesitas una política de Amazon Elastic Container Registry (ECR). Tu ECR repositorio de Amazon debe conceder SageMaker permiso para extraer la imagen. Para obtener más información, consulte Solucionar problemas de ECR permisos de Amazon para canalizaciones de inferencia.

El siguiente ejemplo muestra cómo ejecutar un trabajo de transformación con Amazon SageMaker Python SDK. En este ejemplo, model_name es la canalización de inferencia que combina SparkML XGBoost y modelos (creados en ejemplos anteriores). La ubicación de Amazon S3 especificada por input_data_path contiene los datos de entrada, en CSV formato, que se descargarán y enviarán al modelo Spark ML. Una vez finalizado el trabajo de transformación, la ubicación de Amazon S3 especificada por output_data_path contiene los datos de salida devueltos por el XGBoost modelo en CSV formato.

import sagemaker input_data_path = 's3://{}/{}/{}'.format(default_bucket, 'key', 'file_name') output_data_path = 's3://{}/{}'.format(default_bucket, 'key') transform_job = sagemaker.transformer.Transformer( model_name = model_name, instance_count = 1, instance_type = 'ml.m4.xlarge', strategy = 'SingleRecord', assemble_with = 'Line', output_path = output_data_path, base_transform_job_name='inference-pipelines-batch', sagemaker_session=sagemaker.Session(), accept = CONTENT_TYPE_CSV) transform_job.transform(data = input_data_path, content_type = CONTENT_TYPE_CSV, split_type = 'Line')