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. CacheConfig
Eigenschaften 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. ExpireAfter
ist eine Zeichenfolge im Format ISO8601ExpireAfter
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