Archivo de configuración - 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.

Archivo de configuración

Amazon SageMaker Python SDK admite la configuración de valores predeterminados para los tipos primitivos de AWS infraestructura. Una vez que los administradores configuran estos valores predeterminados, se transfieren automáticamente cuando se admiten SDK APIs las llamadas de SageMaker Python. Los argumentos de la función de decorador se pueden colocar dentro de los archivos de configuración. Esto es para que pueda separar las configuraciones relacionadas con la infraestructura del código base. Para obtener más información sobre los parámetros y argumentos para la función remote y los métodos, consulte Especificación de métodos y clases de funciones remotas.

Puede establecer los ajustes de infraestructura para la configuración de red, las IAM funciones, la carpeta Amazon S3 para los datos de entrada y salida y las etiquetas dentro del archivo de configuración. El archivo de configuración se puede utilizar al invocar una función mediante el decorador @remote o el. RemoteExecutor API

A continuación, se muestra un ejemplo de archivo de configuración que define las dependencias, los recursos y otros argumentos. Este archivo de configuración de ejemplo se utiliza para invocar una función que se inicia mediante el decorador @remote o el. RemoteExecutor API

SchemaVersion: '1.0' SageMaker: PythonSDK: Modules: RemoteFunction: Dependencies: 'path/to/requirements.txt' EnableInterContainerTrafficEncryption: true EnvironmentVariables: {'EnvVarKey': 'EnvVarValue'} ImageUri: '366666666666.dkr.ecr.us-west-2.amazonaws.com/my-image:latest' IncludeLocalWorkDir: true CustomFileFilter: IgnoreNamePatterns: - "*.ipynb" - "data" InstanceType: 'ml.m5.large' JobCondaEnvironment: 'your_conda_env' PreExecutionCommands: - 'command_1' - 'command_2' PreExecutionScript: 'path/to/script.sh' RoleArn: 'arn:aws:iam::366666666666:role/MyRole' S3KmsKeyId: 'yourkmskeyid' S3RootUri: 's3://amzn-s3-demo-bucket/my-project' VpcConfig: SecurityGroupIds: - 'sg123' Subnets: - 'subnet-1234' Tags: [{'Key': 'yourTagKey', 'Value':'yourTagValue'}] VolumeKmsKeyId: 'yourkmskeyid'

El decorador @remote y RemoteExecutor buscarán Dependencies en los siguientes archivos de configuración:

  • Un archivo de configuración definido por el administrador.

  • Un archivo de configuración definido por el usuario.

Las ubicaciones predeterminadas de estos archivos de configuración dependen del entorno y son relativas a él. El siguiente ejemplo de código devuelve la ubicación predeterminada de los archivos de configuración de administrador y usuario. Estos comandos se deben ejecutar en el mismo entorno en el que se utiliza SageMaker PythonSDK.

import os from platformdirs import site_config_dir, user_config_dir #Prints the location of the admin config file print(os.path.join(site_config_dir("sagemaker"), "config.yaml")) #Prints the location of the user config file print(os.path.join(user_config_dir("sagemaker"), "config.yaml"))

Puede anular las ubicaciones predeterminadas de estos archivos configurando las variables de entorno SAGEMAKER_ADMIN_CONFIG_OVERRIDE y SAGEMAKER_USER_CONFIG_OVERRIDE para las rutas de los archivos de configuración definidas por el administrador y definidas por el usuario, respectivamente.

Si existe una clave en los archivos de configuración definidos por el administrador y definidos por el usuario, se utilizará el valor del archivo definido por el usuario.