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.
Aloje varios modelos que utilizan diferentes contenedores detrás de un punto de conexión
SageMaker los puntos finales de varios contenedores permiten a los clientes implementar varios contenedores, que utilizan diferentes modelos o marcos, en un único SageMaker punto final. Los contenedores se pueden ejecutar en secuencia como una canalización de inferencia, o se puede acceder a cada contenedor de forma individual mediante la invocación directa para mejorar la utilización de los puntos de conexión y optimizar los costes.
Para obtener información sobre cómo invocar los contenedores de un punto de conexión multicontenedor de forma secuencial, consulte Alojamiento de modelos junto con la lógica de preprocesamiento como una canalización de inferencia en serie detrás de un punto de conexión.
Para obtener información sobre cómo invocar un contenedor específico de un punto de conexión multicontenedor, consulte Utilice un punto de conexión multicontenedor con invocación directa
Temas
Para crear un punto de conexión multicontenedor (Boto 3)
Cree un punto final de varios contenedores mediante llamadas CreateModely CreateEndpointAPI como lo haría para crear cualquier otro punto de enlace. CreateEndpointConfig Puede ejecutar estos contenedores secuencialmente como una canalización de inferencia o ejecutar cada contenedor individual mediante la invocación directa. Los puntos de conexión multicontenedor tienen los siguientes requisitos cuando llama: create_model
-
Utilice el parámetro
Containers
en lugar dePrimaryContainer
e incluya más de un contenedor en el parámetroContainers
. -
El
ContainerHostname
parámetro es obligatorio para cada contenedor en un punto de conexión multicontenedor con invocación directa. -
Defina el parámetro
Mode
del campoInferenceExecutionConfig
enDirect
para la invocación directa de cada contenedor oSerial
para utilizarlos como una canalización de inferencia. El modo predeterminado esSerial
.
nota
Actualmente, hay un límite de hasta 15 contenedores admitidos en un punto de conexión multicontenedor.
En el siguiente ejemplo, se crea un modelo multicontenedor para la invocación directa.
-
Cree elementos contenedores y
InferenceExecutionConfig
con invocación directa.container1 = { 'Image': '123456789012.dkr.ecr.us-east-1.amazonaws.com/myimage1:mytag', 'ContainerHostname': 'firstContainer' } container2 = { 'Image': '123456789012.dkr.ecr.us-east-1.amazonaws.com/myimage2:mytag', 'ContainerHostname': 'secondContainer' } inferenceExecutionConfig = {'Mode': 'Direct'}
-
Cree el modelo con los elementos contenedores y establece el campo
InferenceExecutionConfig
.import boto3 sm_client = boto3.Session().client('sagemaker') response = sm_client.create_model( ModelName = 'my-direct-mode-model-name', InferenceExecutionConfig = inferenceExecutionConfig, ExecutionRoleArn = role, Containers = [container1, container2] )
Para crear un punto de conexión, debe llamar a create_endpoint_config
Actualice un punto de conexión multicontenedor
Para actualizar un punto de conexión multicontenedor, siga estos pasos.
-
Llame a create_model
para crear un nuevo modelo con un nuevo valor para el parámetro Mode
del campoInferenceExecutionConfig
. -
Llame a create_endpoint_config
para crear una nueva configuración de punto de conexión con un nombre diferente utilizando el nuevo modelo que creó en el paso anterior. -
Llame a update_endpoint
para actualizar el punto de conexión con la nueva configuración de punto final que creó en el paso anterior.
Eliminar un punto de conexión multicontenedor
Para eliminar un punto de conexión, llame a delete_endpointEndpointName
.