Seleccione sus preferencias de cookies

Usamos cookies esenciales y herramientas similares que son necesarias para proporcionar nuestro sitio y nuestros servicios. Usamos cookies de rendimiento para recopilar estadísticas anónimas para que podamos entender cómo los clientes usan nuestro sitio y hacer mejoras. Las cookies esenciales no se pueden desactivar, pero puede hacer clic en “Personalizar” o “Rechazar” para rechazar las cookies de rendimiento.

Si está de acuerdo, AWS y los terceros aprobados también utilizarán cookies para proporcionar características útiles del sitio, recordar sus preferencias y mostrar contenido relevante, incluida publicidad relevante. Para aceptar o rechazar todas las cookies no esenciales, haga clic en “Aceptar” o “Rechazar”. Para elegir opciones más detalladas, haga clic en “Personalizar”.

Utilice piscinas calientes gestionadas por SageMaker IA

Modo de enfoque
Utilice piscinas calientes gestionadas por SageMaker IA - Amazon SageMaker AI

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.

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.

Puedes usar piscinas calientes gestionadas por SageMaker IA a través del SDK de SageMaker Python, la consola Amazon SageMaker AI o a través del nivel inferior APIs. De forma opcional, los administradores pueden utilizar la clave de condición sagemaker:KeepAlivePeriod para restringir aún más los límites de KeepAlivePeriodInSeconds para determinados usuarios o grupos.

Uso del SDK de Python para SageMaker IA

Cree, actualice o termine las piscinas calientes mediante el SDK de SageMaker Python.

nota

Esta función está disponible en el SDK de Python para SageMaker IA v2.110.0 y versiones posteriores.

Creación de un grupo de calentamiento

Para crear una piscina caliente, utilice el SDK de SageMaker Python para crear un estimador con un keep_alive_period_in_seconds valor superior a 0 y llame. fit() Cuando se completa el trabajo de entrenamiento, se conserva un grupo de calentamiento. Para obtener más información sobre el entrenamiento de scripts y estimadores, consulte Entrenar un modelo con el SDK de SageMaker Python. Si su script no crea un grupo de calentamiento, consulte Creación de un grupo de calentamiento para posibles explicaciones.

import sagemaker from sagemaker import get_execution_role from sagemaker.tensorflow import TensorFlow # Creates a SageMaker AI session and gets execution role session = sagemaker.Session() role = get_execution_role() # Creates an example estimator estimator = TensorFlow( ... entry_point='my-training-script.py', source_dir='code', role=role, model_dir='model_dir', framework_version='2.2', py_version='py37', job_name='my-training-job-1', instance_type='ml.g4dn.xlarge', instance_count=1, volume_size=250, hyperparameters={ "batch-size": 512, "epochs": 1, "learning-rate": 1e-3, "beta_1": 0.9, "beta_2": 0.999, }, keep_alive_period_in_seconds=1800, ) # Starts a SageMaker training job and waits until completion estimator.fit('s3://my_bucket/my_training_data/')

A continuación, cree un segundo trabajo de entrenamiento coincidente. En este ejemplo, creamos my-training-job-2, que tiene todos los atributos necesarios para coincidir con my-training-job-1, pero tiene un hiperparámetro diferente para la experimentación. El segundo trabajo de entrenamiento reutiliza el grupo de calentamiento y se inicia más rápido que el primer trabajo de entrenamiento. En el siguiente ejemplo de código se utiliza un estimador de Tensorflow. La función de piscina caliente se puede utilizar con cualquier algoritmo de entrenamiento que se ejecute en Amazon SageMaker AI. Para obtener más información sobre los atributos que deben coincidir, consulte Emparejar trabajos de entrenamiento.

# Creates an example estimator estimator = TensorFlow( ... entry_point='my-training-script.py', source_dir='code', role=role, model_dir='model_dir', framework_version='py37', py_version='pyxy', job_name='my-training-job-2', instance_type='ml.g4dn.xlarge', instance_count=1, volume_size=250, hyperparameters={ "batch-size": 512, "epochs": 2, "learning-rate": 1e-3, "beta_1": 0.9, "beta_2": 0.999, }, keep_alive_period_in_seconds=1800, ) # Starts a SageMaker training job and waits until completion estimator.fit('s3://my_bucket/my_training_data/')

Compruebe el estado del grupo de calentamiento en ambos trabajos de entrenamiento para confirmar que el grupo de calentamiento es Reused para my-training-job-1 y InUse para my-training-job-2.

nota

Los nombres de los trabajos de entrenamiento tienen sufijos de fecha y hora. Los nombres de los trabajos de entrenamiento del ejemplo my-training-job-1 y my-training-job-2 deberían sustituirse por los nombres reales de los trabajos de entrenamiento. Puede utilizar el comando estimator.latest_training_job.job_name para obtener el nombre real del trabajo de entrenamiento.

session.describe_training_job('my-training-job-1') session.describe_training_job('my-training-job-2')

El resultado de describe_training_job proporciona todos los detalles sobre un trabajo de entrenamiento determinado. Busque el atributo WarmPoolStatus para comprobar la información sobre el grupo de calentamiento de un trabajo de entrenamiento. El resultado debería tener un aspecto similar al siguiente ejemplo:

# Warm pool status for training-job-1 ... 'WarmPoolStatus': {'Status': 'Reused', 'ResourceRetainedBillableTimeInSeconds': 1000, 'ReusedByName': my-training-job-2} ... # Warm pool status for training-job-2 ... 'WarmPoolStatus': {'Status': 'InUse'} ...

Actualización de un grupo de calentamiento

Cuando se complete el trabajo de entrenamiento y se encuentre el estado del grupo de calentamiento sea Available, podrá actualizar el valor KeepAlivePeriodInSeconds.

session.update_training_job(job_name, resource_config={"KeepAlivePeriodInSeconds":3600})

Terminar un grupo de calentamiento

Para terminar manualmente un grupo de calentamiento, establezca el valor KeepAlivePeriodInSeconds en 0.

session.update_training_job(job_name, resource_config={"KeepAlivePeriodInSeconds":0})

El grupo de calentamiento termina automáticamente cuando supera el valor KeepAlivePeriodInSeconds designado o si hay una actualización de parche para el clúster.

Uso de la consola Amazon SageMaker AI

A través de la consola, puede crear un grupo de calentamiento, liberar un grupo de calentamiento o comprobar el estado del grupo de calentamiento y el tiempo facturable de trabajos de entrenamiento específicos. También puede ver qué trabajo de entrenamiento coincidente reutilizó un grupo de calentamiento.

  1. Abre la consola Amazon SageMaker AI y selecciona Training jobs en el panel de navegación. Si corresponde, el estado del grupo de calentamiento de cada trabajo de entrenamiento aparece en la columna Warm pool status (Estado del grupo de calentamiento) y el tiempo que queda para un grupo de calentamiento activa aparece en la columna Time left (Tiempo restante).

  2. Para crear un trabajo de entrenamiento que utilice un grupo de calentamiento desde la consola, seleccione Create training job (Crear trabajo de entrenamiento). A continuación, asegúrese de especificar un valor para el campo Keep alive period (Período de mantenimiento de vida) al configurar los recursos del trabajo de entrenamiento. Este valor debe ser un número entero entre 1 y 3600, que representa la duración del tiempo en segundos.

  3. Para liberar un grupo de calentamiento de la consola, seleccione un trabajo de entrenamiento específico y elija Release cluster (Liberar clúster) en el menú desplegable Actions (Acciones).

  4. Para ver más información sobre un grupo de calentamiento, selecciónelo de un trabajo de entrenamiento. En la página de detalles del trabajo, desplácese hacia abajo hasta la sección Warm pool status (Estadode grupo de calentamiento) para ver el estado del grupo de calentamiento, el tiempo restante si el estado del grupo de calentamiento es Available, los segundos facturables del mismo y el nombre del trabajo de entrenamiento que los reutilizó si su estado es Reused.

Usando el nivel bajo SageMaker APIs

Utilice piscinas calientes gestionadas por SageMaker IA con la SageMaker API o la AWS CLI.

SageMaker API DE IA

Configure piscinas calientes gestionadas por SageMaker IA mediante la SageMaker API con los siguientes comandos:

AWS CLI

Configure piscinas calientes gestionadas por SageMaker IA mediante la AWS CLI con los siguientes comandos:

Clave de condición de IAM

Los administradores pueden utilizar, de forma opcional, la clave de sagemaker:KeepAlivePeriod condición para restringir aún más los KeepAlivePeriodInSeconds límites para determinados usuarios o grupos. SageMaker Las piscinas calientes gestionadas por IA están limitadas a un KeepAlivePeriodInSeconds valor de 3600 segundos (60 minutos), pero los administradores pueden reducir este límite si es necesario.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "EnforceKeepAlivePeriodLimit", "Effect": "Allow", "Action": [ "sagemaker:CreateTrainingJob" ], "Resource": "*", "Condition": { "NumericLessThanIfExists": { "sagemaker:KeepAlivePeriod": 1800 } } } ] }

Para obtener más información, consulte Claves de condición de Amazon SageMaker AI en la Referencia de autorización de servicio.

PrivacidadTérminos del sitioPreferencias de cookies
© 2025, Amazon Web Services, Inc o sus afiliados. Todos los derechos reservados.