Implementación de modelos sin comprimir - 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.

Implementación de modelos sin comprimir

Al implementar modelos de ML, una opción es archivar y comprimir los artefactos del modelo en un formato tar.gz. Si bien este método funciona con modelos pequeños, comprimir un artefacto de modelo grande con cientos de miles de millones de parámetros y, a continuación, descomprimirlo en un punto de conexión puede llevar un tiempo considerable. Para la inferencia de modelos grandes, se recomienda implementar un modelo de ML sin comprimir. Esta guía muestra cómo implementar un modelo de ML sin comprimir.

Para implementar modelos de ML sin comprimir, cargue todos los artefactos del modelo en Amazon S3 y organícelos con un prefijo común de Amazon S3. Un prefijo de Amazon S3 es una cadena de caracteres al principio del nombre de clave de un objeto de Amazon S3, separados del resto del nombre por un delimitador. Para obtener más información acerca de los prefijos de Amazon S3, consulte Organizar objetos con prefijos.

Para realizar la implementación con SageMaker, debe usar una barra inclinada (/) como delimitador. Debe asegurarse de que solo los artefactos asociados a su modelo de ML estén organizados con el prefijo. En los modelos de ML con un único artefacto sin comprimir, el prefijo será idéntico al nombre de la clave. Puede comprobar qué objetos están asociados a su prefijo con el AWS CLI:

aws s3 ls --recursive s3://bucket/prefix

Tras cargar los artefactos del modelo en Amazon S3 y organizarlos con un prefijo común, puede especificar su ubicación como parte del ModelDataSourcecampo al invocar la solicitud. CreateModel SageMaker descargará automáticamente los artefactos del modelo sin comprimir para su inferencia. /opt/ml/model Para obtener más información sobre las reglas que se SageMaker utilizan al descargar los artefactos, consulte S3. ModelDataSource

El siguiente fragmento de código muestra cómo se puede invocar CreateModel API al implementar un modelo sin comprimir. Sustituya el italicized user text con su propia información.

model_name = "model-name" sagemaker_role = "arn:aws:iam::123456789012:role/SageMakerExecutionRole" container = "123456789012.dkr.ecr.us-west-2.amazonaws.com/inference-image:latest" create_model_response = sagemaker_client.create_model( ModelName = model_name, ExecutionRoleArn = sagemaker_role, PrimaryContainer = { "Image": container, "ModelDataSource": { "S3DataSource": { "S3Uri": "s3://amzn-s3-demo-bucket/prefix/to/model/data/", "S3DataType": "S3Prefix", "CompressionType": "None", }, }, }, )

En el ejemplo mencionado anteriormente se supone que los artefactos del modelo están organizados bajo un prefijo común. Si, por el contrario, el artefacto del modelo es un único objeto de Amazon S3 sin comprimir, cambie "S3Uri" para apuntar al objeto de Amazon S3 y cambie "S3DataType" a "S3Object".

nota

Actualmente no se puede utilizar ModelDataSource con AWS Marketplace, la transformación SageMaker por lotes, los puntos finales de inferencia SageMaker sin servidor y SageMaker los puntos finales multimodelo.