Configuration de votre pipeline - Amazon SageMaker AI

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Configuration de votre pipeline

Il est conseillé d'utiliser le fichier de configuration SageMaker AI pour définir les valeurs par défaut du pipeline. Pour plus d'informations sur le fichier de configuration SageMaker AI, consultez Configuration et utilisation des valeurs par défaut avec le SDK SageMaker Python. Toute configuration ajoutée au fichier de configuration s’applique à toutes les étapes du pipeline. Si vous souhaitez remplacer les options de l’une des étapes, fournissez de nouvelles valeurs dans les arguments du décorateur @step. La rubrique suivante explique comment configurer un fichier de configuration.

La configuration du décorateur @step dans le fichier de configuration est identique à celle du décorateur @remote. Pour configurer l’ARN du rôle de pipeline et les balises de pipeline dans le fichier de configuration, utilisez la section Pipeline illustrée dans l’extrait de code suivant :

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

Vous pouvez également remplacer la plupart des valeurs par défaut que vous pouvez définir dans le fichier de configuration, en transmettant de nouvelles valeurs au décorateur @step. Par exemple, vous pouvez remplacer le type d’instance défini dans le fichier de configuration pour votre étape de prétraitement, comme illustré dans l’exemple suivant :

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

Quelques arguments ne figurent pas dans la liste des paramètres du @step décorateur. Ils peuvent être configurés pour l'ensemble du pipeline uniquement via le fichier de configuration SageMaker AI. Ils sont répertoriés comme suit :

  • sagemaker_session(sagemaker.session.Session) : session d' SageMaker IA sous-jacente à laquelle l' SageMaker IA délègue les appels de service. Si elle n’est pas spécifiée, une session est créée à l’aide d’une configuration par défaut, comme suit :

    SageMaker: PythonSDK: Modules: Session: DefaultS3Bucket: 'default_s3_bucket' DefaultS3ObjectKeyPrefix: 'key_prefix'
  • custom_file_filter (CustomFileFilter) : objet CustomFileFilter qui spécifie les répertoires et fichiers locaux à inclure dans l’étape du pipeline. S’il n’est pas spécifié, la valeur utilisée par défaut est None. Pour que custom_file_filter prenne effet, vous devez définir IncludeLocalWorkdir sur True. L’exemple suivant montre une configuration qui ignore tous les fichiers de bloc-notes, ainsi que les fichiers et répertoires nommés 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"

    Pour plus de détails sur la façon d’utiliser IncludeLocalWorkdir avec CustomFileFilter, consultez Utilisation d’un code modulaire avec le décorateur @remote.

  • s3_root_uri (str): le dossier racine Amazon S3 dans lequel SageMaker AI télécharge les archives de code et les données. S'il n'est pas spécifié, le bucket SageMaker AI par défaut est utilisé.

  • s3_kms_key (str) : clé utilisée pour chiffrer les données d’entrée et de sortie. Vous ne pouvez configurer cet argument que dans le fichier de configuration SageMaker AI et l'argument s'applique à toutes les étapes définies dans le pipeline. S’il n’est pas spécifié, la valeur utilisée par défaut est None. Consultez l’extrait de code suivant pour un exemple de configuration de clé KMS S3 :

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