

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.

# Configuración de la canalización
<a name="pipelines-step-decorator-cfg-pipeline"></a>

Se recomienda utilizar el archivo de configuración de SageMaker AI para establecer los valores predeterminados de la canalización. Para obtener información sobre el archivo de configuración de SageMaker AI, consulte [Configuración y uso de valores predeterminados con el SDK de SageMaker Python](https://sagemaker.readthedocs.io/en/stable/overview.html#configuring-and-using-defaults-with-the-sagemaker-python-sdk). Cualquier configuración que se añada al archivo de configuración se aplica a todos los pasos de la canalización. Si quiere anular las opciones de alguno de los pasos, proporcione nuevos valores en los argumentos del decorador `@step`. En el siguiente tema, se describe cómo configurar un archivo de configuración.

La configuración del decorador `@step` en el archivo de configuración es idéntica a la configuración del decorador `@remote`. Para configurar el ARN del rol de canalización y las etiquetas de canalización en el archivo de configuración, use la sección `Pipeline` que se muestra en el siguiente fragmento:

```
SchemaVersion: '1.0'
SageMaker:
  Pipeline:
    RoleArn: 'arn:aws:iam::555555555555:role/IMRole'
    Tags:
    - Key: 'tag_key'
      Value: 'tag_value'
```

La mayoría de los valores predeterminados que se pueden establecer en el archivo de configuración también se pueden anular pasando nuevos valores al decorador `@step`. Por ejemplo, puede anular el tipo de instancia establecido en el archivo de configuración para el paso de preprocesamiento, tal y como se muestra en el ejemplo siguiente:

```
@step(instance_type="ml.m5.large")
def preprocess(raw_data):
    df = pandas.read_csv(raw_data)
    ...
    return procesed_dataframe
```

Algunos argumentos no forman parte de la lista de parámetros del `@step` decorador; solo se pueden configurar para toda la canalización a través del archivo de configuración de SageMaker AI. Son los siguientes:
+ `sagemaker_session`(`sagemaker.session.Session`): La sesión de SageMaker IA subyacente en la que la SageMaker IA delega las llamadas de servicio. Si no se especifica, se crea una sesión con la siguiente configuración predeterminada:

  ```
  SageMaker:
    PythonSDK:
      Modules:
        Session:
          DefaultS3Bucket: 'default_s3_bucket'
          DefaultS3ObjectKeyPrefix: 'key_prefix'
  ```
+ `custom_file_filter` (`CustomFileFilter)`: un objeto `CustomFileFilter` que especifica los directorios y archivos locales que se van a incluir en el paso de canalización. Si no se especifica, este valor se establece de forma predeterminada en `None`. Para que `custom_file_filter` se aplique, debe establecer `IncludeLocalWorkdir` en `True`. El siguiente ejemplo muestra una configuración que ignora todos los archivos del cuaderno, así como los archivos y directorios denominados `data`.

  ```
  SchemaVersion: '1.0'
  SageMaker:
    PythonSDK:
      Modules:
        RemoteFunction:
          IncludeLocalWorkDir: true
          CustomFileFilter: 
            IgnoreNamePatterns: # files or directories to ignore
            - "*.ipynb" # all notebook files
            - "data" # folder or file named "data"
  ```

  Para obtener más información sobre cómo utilizar `IncludeLocalWorkdir` con `CustomFileFilter`, consulte [Uso de código modular con el decorador @remote](train-remote-decorator-modular.md).
+ `s3_root_uri (str)`: la carpeta raíz de Amazon S3 en la que SageMaker AI carga los archivos de código y los datos. Si no se especifica, se utiliza el depósito de SageMaker IA predeterminado.
+ `s3_kms_key (str)`: clave utilizada para cifrar los datos de entrada y salida. Solo puedes configurar este argumento en el archivo de configuración de SageMaker AI y el argumento se aplica a todos los pasos definidos en la canalización. Si no se especifica, el valor se establece de forma predeterminada en `None`. Consulte el siguiente fragmento para ver un ejemplo de la configuración de claves KMS de S3:

  ```
  SchemaVersion: '1.0'
  SageMaker:
    PythonSDK:
      Modules:
        RemoteFunction:
          S3KmsKeyId: 's3kmskeyid'
          S3RootUri: 's3://amzn-s3-demo-bucket/my-project
  ```