

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.

# Configuraciones específicas del clúster
<a name="cluster-specific-configurations"></a>

SageMaker HyperPod ofrece flexibilidad a la hora de ejecutar tareas de formación en distintos entornos de clústeres. Cada entorno tiene sus propios requisitos de configuración y proceso de configuración. En esta sección se describen los pasos y las configuraciones necesarios para ejecutar los trabajos de formación en SageMaker HyperPod Slurm, SageMaker HyperPod k8s y los trabajos de formación. SageMaker Comprender estas configuraciones es crucial para aprovechar de manera eficaz el poder del entrenamiento distribuido en el entorno que elija.

Puede utilizar una fórmula en los siguientes entornos de clúster:
+ SageMaker HyperPod Orquestación de Slurm
+ SageMaker HyperPod Orquestación del servicio Amazon Elastic Kubernetes Service
+ SageMaker trabajos de formación

Para iniciar un trabajo de entrenamiento en un clúster, configure e instale la configuración y el entorno del clúster correspondientes.

**Topics**
+ [¿Estás realizando un trabajo de formación en HyperPod Slurm](cluster-specific-configurations-run-training-job-hyperpod-slurm.md)
+ [¿Estás realizando un trabajo de entrenamiento en k8s HyperPod](cluster-specific-configurations-run-training-job-hyperpod-k8s.md)
+ [SageMaker Ejecutar un trabajo de formación](cluster-specific-configurations-run-sagemaker-training-job.md)

# ¿Estás realizando un trabajo de formación en HyperPod Slurm
<a name="cluster-specific-configurations-run-training-job-hyperpod-slurm"></a>

SageMaker HyperPod Recipes permite enviar un trabajo de formación a un clúster de GPU/Trainium Slurm. Antes de enviar el trabajo de entrenamiento, actualice la configuración del clúster. Use uno de los siguientes métodos para actualizar la configuración del clúster:
+ Modificar `slurm.yaml`.
+ Anularlo mediante la línea de comandos.

Después de actualizar la configuración del clúster, instale el entorno.

## Configuración del clúster
<a name="cluster-specific-configurations-configure-cluster-slurm-yaml"></a>

Para enviar un trabajo de entrenamiento a un clúster de Slurm, especifique la configuración específica de Slurm. Modifique `slurm.yaml` para configurar el clúster de Slurm. A continuación, se muestra un ejemplo de configuración de un clúster de Slurm. Puede modificar este archivo según sus propias necesidades de entrenamiento:

```
job_name_prefix: 'sagemaker-'
slurm_create_submission_file_only: False 
stderr_to_stdout: True
srun_args:
  # - "--no-container-mount-home"
slurm_docker_cfg:
  docker_args:
    # - "--runtime=nvidia" 
  post_launch_commands: 
container_mounts: 
  - "/fsx:/fsx"
```

1. `job_name_prefix`: especifique un prefijo de nombre de trabajo para identificar fácilmente sus envíos al clúster de Slurm.

1. `slurm_create_submission_file_only`: defina esta configuración en True para una ejecución en seco que le ayude a depurar.

1. `stderr_to_stdout`: especifique si está redirigiendo el error estándar (stderr) a la salida estándar (stdout).

1. `srun_args`: personalice las configuraciones de srun adicionales, como la exclusión de nodos de computación específicos. Para obtener más información, consulte la documentación de srun.

1. `slurm_docker_cfg`: El lanzador de SageMaker HyperPod recetas lanza un contenedor Docker para ejecutar tu trabajo de formación. Puede especificar argumentos de Docker adicionales dentro de este parámetro.

1. `container_mounts`: especifique los volúmenes que va a montar en el contenedor del lanzador de fórmulas para que sus trabajos de entrenamiento accedan a los archivos de esos volúmenes.

# ¿Estás realizando un trabajo de entrenamiento en k8s HyperPod
<a name="cluster-specific-configurations-run-training-job-hyperpod-k8s"></a>

SageMaker HyperPod Recipes permite enviar un trabajo de formación a un clúster de GPU/Trainium Kubernetes. Antes de enviar el trabajo de entrenamiento, realice una de las acciones siguientes:
+ Modifique el archivo de configuración del clúster `k8s.yaml`.
+ Anule la configuración del clúster mediante la línea de comandos.

Tras realizar cualquiera de los pasos anteriores, instale el entorno correspondiente.

## Configuración del clúster con `k8s.yaml`
<a name="cluster-specific-configurations-configure-cluster-k8s-yaml"></a>

Para enviar un trabajo de entrenamiento a un clúster de Kubernetes, debe especificar las configuraciones específicas de Kubernetes. Las configuraciones incluyen el espacio de nombres del clúster o la ubicación del volumen persistente.

```
pullPolicy: Always
restartPolicy: Never
namespace: default
persistent_volume_claims:
  - null
```

1. `pullPolicy`: puede especificar la política de extracción al enviar un trabajo de entrenamiento. Si especifica “Always”, el clúster de Kubernetes siempre extraerá su imagen del repositorio. Para obtener más información, consulte [Política de extracción de imágenes](https://kubernetes.io/docs/concepts/containers/images/#image-pull-policy).

1. `restartPolicy`: especifique si desea reiniciar el trabajo de entrenamiento en caso de que no funcione.

1. `namespace`: puede especificar el espacio de nombres de Kubernetes al que va a enviar el trabajo de entrenamiento.

1. `persistent_volume_claims`: puede especificar un volumen compartido para su trabajo de entrenamiento para que todos los procesos de formación accedan a los archivos del volumen.

# SageMaker Ejecutar un trabajo de formación
<a name="cluster-specific-configurations-run-sagemaker-training-job"></a>

SageMaker HyperPod Recipes admite la presentación de un trabajo de SageMaker formación. Antes de enviar el trabajo de entrenamiento, debe actualizar la configuración del clúster, `sm_job.yaml`, e instalar el entorno correspondiente.

## Usa tu receta como un trabajo SageMaker de entrenamiento
<a name="cluster-specific-configurations-cluster-config-sm-job-yaml"></a>

Puedes usar tu receta como un trabajo de SageMaker formación si no estás alojando un clúster. Debe modificar el archivo de configuración del trabajo de SageMaker formación`sm_job.yaml`, para ejecutar la receta.

```
sm_jobs_config:
  output_path: null 
  tensorboard_config:
    output_path: null 
    container_logs_path: null
  wait: True 
  inputs: 
    s3: 
      train: null
      val: null
    file_system:  
      directory_path: null
  additional_estimator_kwargs: 
    max_run: 1800
```

1. `output_path`: puede especificar dónde va a guardar el modelo en una URL de Amazon S3.

1. `tensorboard_config`: Puede especificar una configuración TensorBoard relacionada, como la ruta de salida o la ruta de TensorBoard registros.

1. `wait`: puede especificar si está esperando a que se complete el trabajo cuando envíe su trabajo de entrenamiento.

1. `inputs`: puede especificar las rutas para sus datos de entrenamiento y validación. La fuente de datos puede provenir de un sistema de archivos compartido, como Amazon FSx o una URL de Amazon S3.

1. `additional_estimator_kwargs`: Argumentos estimadores adicionales para enviar un trabajo de formación a la plataforma de empleos de SageMaker formación. Para obtener más información, consulte [Algorithm Estimator](https://sagemaker.readthedocs.io/en/stable/api/training/algorithm.html).