Schalten Sie das Step-Caching ein - Amazon SageMaker

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Schalten Sie das Step-Caching ein

Um das Zwischenspeichern von Schritten zu aktivieren, müssen Sie der CacheConfig Schrittdefinition eine Eigenschaft hinzufügen. CacheConfigEigenschaften verwenden das folgende Format in der Pipeline-Definitionsdatei:

{     "CacheConfig": {         "Enabled": false,         "ExpireAfter": "<time>"     } }

Das Enabled Feld gibt an, ob das Caching für den jeweiligen Schritt aktiviert ist. Sie können das Feld auf setzentrue, was angibt, dass SageMaker versucht werden soll, eine vorherige Ausführung des Schritts mit denselben Attributen zu finden. Oder Sie können das Feld auf setzenfalse, wodurch angegeben wird, dass der Schritt bei jeder Ausführung der Pipeline ausgeführt werden SageMaker soll. ExpireAfterist eine Zeichenfolge im Format ISO8601, die den Timeout-Zeitraum definiert. Bei der ExpireAfter Dauer kann es sich um einen Wert für ein Jahr, einen Monat, eine Woche, einen Tag, eine Stunde oder eine Minute handeln. Jeder Wert besteht aus einer Zahl, gefolgt von einem Buchstaben, der die Einheit der Dauer angibt. Beispielsweise:

  • „30d“ = 30 Tage

  • „5y“ = 5 Jahre

  • „T16m“ = 16 Minuten

  • „30DT5h“ = 30 Tage und 5 Stunden.

In der folgenden Diskussion wird das Verfahren zum Aktivieren des Caches für neue oder bereits bestehende Pipelines mithilfe von Amazon Python beschrieben. SageMaker SDK

Schalten Sie das Caching für neue Pipelines ein

Initialisieren Sie bei neuen Pipelines eine CacheConfig Instance mit enable_caching=True und geben Sie sie als Eingabe für Ihren Pipeline-Schritt an. Im folgenden Beispiel wird das Caching mit einem Timeout von 1 Stunde für einen Trainingsschritt aktiviert:

from sagemaker.workflow.pipeline_context import PipelineSession from sagemaker.workflow.steps import CacheConfig cache_config = CacheConfig(enable_caching=True, expire_after="PT1H") estimator = Estimator(..., sagemaker_session=PipelineSession()) step_train = TrainingStep( name="TrainAbaloneModel", step_args=estimator.fit(inputs=inputs), cache_config=cache_config )

Schalten Sie das Caching für bereits bestehende Pipelines ein

Um die Zwischenspeicherung für bereits vorhandene, bereits definierte Pipelines zu aktivieren, aktivieren Sie die Eigenschaft enable_caching für den Schritt und setzen Sie expire_after auf einen Timeout-Wert. Zuletzt aktualisieren Sie die Pipeline mit pipeline.upsert() oder pipeline.update(). Sobald Sie es erneut ausführen, aktiviert das folgende Codebeispiel das Caching mit einem Timeout von 1 Stunde für einen Trainingsschritt:

from sagemaker.workflow.pipeline_context import PipelineSession from sagemaker.workflow.steps import CacheConfig from sagemaker.workflow.pipeline import Pipeline cache_config = CacheConfig(enable_caching=True, expire_after="PT1H") estimator = Estimator(..., sagemaker_session=PipelineSession()) step_train = TrainingStep( name="TrainAbaloneModel", step_args=estimator.fit(inputs=inputs), cache_config=cache_config ) # define pipeline pipeline = Pipeline( steps=[step_train] ) # additional step for existing pipelines pipeline.update() # or, call upsert() to update the pipeline # pipeline.upsert()

Alternativ können Sie die Cache-Konfiguration aktualisieren, nachdem Sie die (bereits vorhandene) Pipeline definiert haben, sodass ein kontinuierlicher Codelauf möglich ist. Das folgende Codebeispiel demonstriert diese Methode:

# turn on caching with timeout period of one hour pipeline.steps[0].cache_config.enable_caching = True pipeline.steps[0].cache_config.expire_after = "PT1H" # additional step for existing pipelines pipeline.update() # or, call upsert() to update the pipeline # pipeline.upsert()

Ausführlichere Codebeispiele und eine Diskussion darüber, wie sich SDK Python-Parameter auf das Caching auswirken, finden Sie unter Caching-Konfiguration in der Amazon SageMaker SDK Python-Dokumentation.