Caching-Pipeline-Schritte - 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.

Caching-Pipeline-Schritte

Wenn Sie das Step-Signatur-Caching verwenden, SageMaker Pipelinesführt einen Schritt aus, versucht er, eine vorherige Ausführung eines Schritts zu finden, der mit denselben Argumenten aufgerufen wurde. SageMakerPipelines überprüft, ob die Rufsignaturen identisch sind. Pipelines überprüft nicht, ob sich die Daten oder der Code, auf den die Argumente verweisen, geändert haben. Wenn Pipelines eine vorherige Ausführung findet, erzeugt es einen Cache-Treffer. Pipelines propagiert dann die Werte aus dem während der Ausführung getroffenen Cache, anstatt den Schritt neu zu berechnen.

Beim Step-Caching werden nur erfolgreiche Ausführungen berücksichtigt, sodass fehlgeschlagene Ausführungen niemals wiederverwendet werden. Wenn innerhalb des Timeout-Zeitraums mehrere erfolgreiche Ausführungen vorhanden sind, verwendet Pipelines das Ergebnis für die letzte erfolgreiche Ausführung. Wenn im Timeout-Zeitraum keine erfolgreichen Ausführungen übereinstimmen, verwendet Pipelines keine Schritte wieder. Wenn der Executor einen Cache-Treffer für eine vorherige Schrittausführung findet, die noch ausgeführt wird, werden beide Schritte fortgesetzt und der Cache aktualisiert, falls sie erfolgreich sind.

Sie müssen sich für das Step-Caching anmelden, andernfalls ist es standardmäßig deaktiviert. Wenn Sie Step Caching aktivieren, müssen Sie auch ein Timeout definieren. Dieses Timeout definiert, wie alt eine vorherige Ausführung für die Wiederverwendung in Betracht gezogen werden kann.

Das Zwischenspeichern von Schritten ist nur für einzelne Pipelines vorgesehen, sodass Sie einen Schritt aus einer anderen Pipeline nicht wiederverwenden können. Selbst wenn in der anderen Pipeline eine Schrittsignaturübereinstimmung vorliegt, wird der Schritt nicht wiederverwendet.

Step Caching ist für die folgenden Schritttypen verfügbar:

Step Caching aktivieren

Um das Step-Caching zu aktivieren, müssen Sie eineCacheConfigEigenschaft der Schrittdefinition.

CacheConfig-Eigenschaften verwenden in der Pipeline-Definitionsdatei das folgende Format.

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

DieEnabledfield kann true oder false sein.ExpireAfterist ein String, der den Timeout-Zeitraum definiert. Jede Zeichenfolge für die Dauer von ISO 8601 ist gültigExpireAfterWert. DieExpireAfterDie Dauer kann einen Jahres-, Monats-, Woche-, Tages-, Stunden- und Minutenwert enthalten. Jeder Wert besteht aus einer Zahl gefolgt von einem Buchstaben, der die Dauereinheit angibt, für die er bestimmt ist. Zum Beispiel:

  • „30d“ = Dreißig Tage

  • „5y“ = Fünf Jahre

  • „T16m“ = 16 Minuten

  • „30dT5h“ = 30 Tage und fünf Stunden.

Das folgende Beispiel zeigt die Aktivierung des Caching für einen Trainingsschritt mithilfe von Amazon. SageMaker Python SDK.

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 )