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.
Daten zwischen Schritten weitergeben
Wenn Sie Pipelines mit Amazon SageMaker Pipelines erstellen, müssen Sie möglicherweise Daten von einem Schritt zum nächsten weitergeben. Beispielsweise möchten Sie möglicherweise die durch einen Trainingsschritt generierten Modellartefakte als Eingabe für eine Modellevaluierung oder einen Implementierungsschritt verwenden. Sie können diese Funktionalität verwenden, um voneinander abhängige Pipeline-Schritte zu erstellen und Ihre ML-Workflows zu erstellen.
Wenn Sie Informationen aus der Ausgabe eines Pipeline-Schritts abrufen müssen, können Sie verwendenJsonGet
. JsonGet
hilft Ihnen beim Extrahieren von Informationen aus Amazon S3 oder Eigenschaftendateien. In den folgenden Abschnitten werden Methoden beschrieben, mit denen Sie Schrittausgaben extrahieren könnenJsonGet
.
Übergeben Sie Daten zwischen Schritten mit Amazon S3
Sie können JsonGet
in a verwendenConditionStep
, um die JSON Ausgabe direkt von Amazon S3 abzurufen. Amazon S3 URI kann eine Std:Join
Funktion sein, die primitive Zeichenketten, Pipeline-Ausführungsvariablen oder Pipeline-Parameter enthält. Das folgende Beispiel zeigt, wie Sie Folgendes verwenden JsonGet
könnenConditionStep
:
# Example json file in s3 bucket generated by a processing_step { "Output": [5, 10] } cond_lte = ConditionLessThanOrEqualTo( left=JsonGet( step_name="
<step-name>
", s3_uri="<s3-path-to-json>
", json_path="Output[1]" ), right=6.0 )
Wenn Sie im Bedingungsschritt einen Amazon S3 S3-Pfad verwendenJsonGet
, müssen Sie explizit eine Abhängigkeit zwischen dem Bedingungsschritt und dem Schritt hinzufügen, der die JSON Ausgabe generiert. Im folgenden Beispiel wird der Bedingungsschritt mit einer Abhängigkeit vom Verarbeitungsschritt erstellt:
cond_step = ConditionStep( name="
<step-name>
", conditions=[cond_lte], if_steps=[fail_step], else_steps=[register_model_step], depends_on=[processing_step], )
Übergeben Sie Daten mit Eigenschaftendateien zwischen Schritten
Verwenden Sie Eigenschaftendateien, um Informationen aus der Ausgabe eines Verarbeitungsschritts zu speichern. Dies ist besonders nützlich, wenn die Ergebnisse eines Verarbeitungsschritts analysiert werden, um zu entscheiden, wie ein bedingter Schritt ausgeführt werden soll. Die JsonGet
Funktion verarbeitet eine Eigenschaftendatei und ermöglicht es Ihnen, die JSON Eigenschaftendatei mithilfe der JsonPath Notation abzufragen. Weitere Informationen zur JsonPath Notation finden Sie im JsonPath Repo
Um eine Eigenschaftendatei für die spätere Verwendung zu speichern, müssen Sie zunächst eine PropertyFile
Instance mit dem folgenden Format erstellen. Der path
Parameter ist der Name der JSON Datei, in der die Eigenschaftendatei gespeichert wird. Jedes output_name
muss mit dem output_name
des ProcessingOutput
übereinstimmen, das Sie in Ihrem Verarbeitungsschritt definieren. Dadurch kann die Eigenschaftendatei die ProcessingOutput
in dem Schritt erfassen.
from sagemaker.workflow.properties import PropertyFile
<property_file_instance>
= PropertyFile( name="<property_file_name>
", output_name="<processingoutput_output_name>
", path="<path_to_json_file>
" )
Wenn Sie Ihre ProcessingStep
Instance erstellen, fügen Sie den property_files
Parameter hinzu, um alle Parameterdateien aufzulisten, die der Amazon SageMaker Pipelines-Service indizieren muss. Dadurch wird die Eigenschaftendatei für die spätere Verwendung gespeichert.
property_files=[
<property_file_instance>
]
Um Ihre Eigenschaftendatei in einem Bedingungsschritt property_file
zu verwenden, fügen Sie der Bedingung, die Sie an Ihren Bedingungsschritt übergeben, wie im folgenden Beispiel gezeigt, hinzu, um die JSON Datei für Ihre gewünschte Eigenschaft mithilfe des json_path
Parameters abzufragen.
cond_lte = ConditionLessThanOrEqualTo( left=JsonGet( step_name=step_eval.name, property_file=
<property_file_instance>
, json_path="mse" ), right=6.0 )
Ausführlichere Beispiele finden Sie unter Property File