

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.

# Einschränkungen
<a name="pipelines-step-decorator-limit"></a>

In den folgenden Abschnitten werden die Einschränkungen beschrieben, die Sie beachten sollten, wenn Sie den `@step` Decorator für Ihre Pipeline-Schritte verwenden.

## Einschränkungen von Funktionsargumenten
<a name="pipelines-step-decorator-arg"></a>

Wenn Sie ein Eingabeargument an die `@step` mit -dekorierte Funktion übergeben, gelten die folgenden Einschränkungen:
+ Sie können die Objekte`DelayedReturn`, `Properties` (von Schritten anderer Typen) und `ExecutionVariable` -Objekte als `Parameter` Argumente an `@step` mit -dekorierte Funktionen übergeben. Mit `@step` -dekorierten Funktionen werden `Join` Objekte jedoch nicht als `JsonGet` Argumente unterstützt.
+ Sie können von einer `@step` Funktion aus nicht direkt auf eine Pipeline-Variable zugreifen. Das folgende Beispiel erzeugt einen Fehler:

  ```
  param = ParameterInteger(name="<parameter-name>", default_value=10)
  
  @step
  def func():
      print(param)
  
  func() # this raises a SerializationError
  ```
+ Sie können eine Pipeline-Variable nicht in einem anderen Objekt verschachteln und an eine `@step` Funktion übergeben. Das folgende Beispiel erzeugt einen Fehler:

  ```
  param = ParameterInteger(name="<parameter-name>", default_value=10)
  
  @step
  def func(arg):
      print(arg)
  
  func(arg=(param,)) # this raises a SerializationError because param is nested in a tuple
  ```
+ Da die Ein- und Ausgaben einer Funktion serialisiert sind, gibt es Einschränkungen hinsichtlich der Art der Daten, die als Eingabe oder Ausgabe von einer Funktion übergeben werden können. Weitere Informationen finden Sie im Abschnitt *Datenserialisierung und Deserialisierung* von[Aufrufen einer Remote-Funktion](train-remote-decorator-invocation.md). Die gleichen Einschränkungen gelten für `@step`-dekorierte Funktionen.
+ Objekte, die einen Boto-Client enthalten, können nicht serialisiert werden. Daher können Sie solche Objekte nicht als Eingabe an eine mit `@step`-dekorierte Funktion übergeben oder als Ausgabe von einer solchen Funktion erhalten. Beispielsweise `Processor` können SageMaker Python-SDK-Clientklassen wie `Estimator``Predictor`, und nicht serialisiert werden.

## Funktionsimporte
<a name="pipelines-step-decorator-best-import"></a>

Sie sollten die Bibliotheken importieren, die für den Schritt innerhalb und nicht außerhalb der Funktion erforderlich sind. Wenn Sie sie auf globaler Ebene importieren, riskieren Sie bei der Serialisierung der Funktion eine Importkollision. `sklearn.pipeline.Pipeline` könnte beispielsweise mit `sagemaker.workflow.pipeline.Pipeline` überschrieben werden.

## Verweisen auf untergeordnete Elemente des Funktionsrückgabewerts
<a name="pipelines-step-decorator-best-child"></a>

Wenn Sie auf untergeordnete Elemente des Rückgabewerts einer `@step` mit -dekorierten Funktion verweisen, gelten die folgenden Einschränkungen:
+ Sie können auf die untergeordneten Elemente verweisen, `[]` wenn das `DelayedReturn` Objekt ein Tupel, eine Liste oder ein Diktat darstellt, wie im folgenden Beispiel gezeigt:

  ```
  delayed_return[0]
  delayed_return["a_key"]
  delayed_return[1]["a_key"]
  ```
+ Sie können eine Tupel- oder Listenausgabe nicht entpacken, da die genaue Länge des zugrunde liegenden Tupels oder der zugrunde liegenden Liste nicht bekannt sein kann, wenn Sie die Funktion aufrufen. Das folgende Beispiel erzeugt einen Fehler:

  ```
  a, b, c = func() # this raises ValueError
  ```
+ Sie können nicht über ein `DelayedReturn`-Objekt iterieren. Das folgende Beispiel löst einen Fehler aus:

  ```
  for item in func(): # this raises a NotImplementedError
  ```
+ Sie können nicht mit '`.`' auf beliebige untergeordnete Elemente verweisen. Das folgende Beispiel erzeugt einen Fehler:

  ```
  delayed_return.a_child # raises AttributeError
  ```

## Bestehende Pipeline-Funktionen, die nicht unterstützt werden
<a name="pipelines-step-decorator-best-unsupported"></a>

Sie können den `@step` Decorator nicht mit den folgenden Pipeline-Funktionen verwenden:
+ [Zwischenspeichern eines Pipeline-Schritts](https://docs.aws.amazon.com/sagemaker/latest/dg/pipelines-caching.html)
+ [Eigenschaftendatei](https://docs.aws.amazon.com/sagemaker/latest/dg/build-and-manage-propertyfile.html#build-and-manage-propertyfile-property)