

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.

# Rufen Sie Amazon Bedrock-Modelle mit Step Functions auf und passen Sie sie an
<a name="connect-bedrock"></a>

Sie können Step Functions in Amazon Bedrock integrieren, um ein bestimmtes Amazon Bedrock-Modell aufzurufen und einen Feinabstimmungsauftrag zur Anpassung eines Modells zu erstellen. Diese Seite listet das optimierte Amazon Bedrock auf APIs und bietet einen `Task` Beispielstatus zum Extrahieren des Ergebnisses eines Modellaufrufs.

Informationen zur Integration mit AWS Diensten in Step Functions finden Sie unter [Integrieren von -Services](integrate-services.md) und[Übergeben von Parametern an eine Service-API in Step Functions](connect-parameters.md).

**Tipp**  
Einen Beispiel-Workflow zur Integration mit Amazon Bedrock finden Sie unter[Führen Sie KI-Prompt-Chaining mit Amazon Bedrock durch](sample-bedrock-prompt-chaining.md).

## Amazon BedrockServiceintegration APIs
<a name="connect-bedrock-custom-apis"></a>

Für die Integration AWS Step Functions mit Amazon Bedrock können Sie Folgendes verwenden APIs. Diese APIs ähneln den entsprechenden Amazon Bedrock APIs, enthalten jedoch *InvokeModel*zusätzliche Anforderungsfelder.

**Amazon Bedrock API - [CreateModelCustomizationJob](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_CreateModelCustomizationJob.html)**  
Erstellt einen Feinabstimmungsauftrag zur Anpassung eines Basismodells. Sie können die Step Functions Functions-Integrations-API mit den **CreateModelCustomizationJob**Integrationsmustern für *Request Response* oder mit den Integrationsmustern **CreateModelCustomizationJob.sync** für *Run a Job (.sync)* aufrufen. Es gibt keine Unterschiede in den Feldern für die API-Aufrufe.

**Amazon Bedrock API - [InvokeModel](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_InvokeModel.html)**  
Ruft das angegebene Amazon Bedrock Modell auf, um anhand der Eingabe, die Sie im Hauptteil der Anfrage angeben, eine Inferenz auszuführen. Sie verwenden `InvokeModel` es, um Inferenzen für Textmodelle, Bildmodelle und Einbettungsmodelle auszuführen.

Der Anfragetext der Amazon Bedrock Service-Integrations-API für *InvokeModel*umfasst die folgenden zusätzlichen Parameter.
+ `Body`— Spezifiziert Eingabedaten in dem Format, das im Inhaltstyp-Anforderungsheader angegeben ist. `Body`enthält spezifische Parameter für das Zielmodell.

  Wenn Sie die `InvokeModel` API verwenden, müssen Sie den `Body` Parameter angeben. Step Functionsvalidiert die von Ihnen eingegebene Eingabe nicht`Body`.

  Wenn Sie die `Body` Verwendung der Amazon Bedrock optimierten Integration angeben, können Sie eine Nutzlast von bis zu 256 KiB angeben. Wenn Ihre Nutzlast 256 KiB überschreitet, empfehlen wir Ihnen die Verwendung`Input`.
+ `Input`— Gibt die Quelle an, aus der die Eingabedaten abgerufen werden sollen. Dieses optionale Feld ist spezifisch für die Amazon Bedrock optimierte Integration mitStep Functions. In diesem Feld können Sie eine angeben`S3Uri`.

  Sie können entweder `Body` in den Parametern oder`Input`, aber nicht beide angeben.

  Wenn Sie `Input` ohne Angabe angeben`ContentType`, wird der Inhaltstyp der Eingabedatenquelle zum Wert für`ContentType`.
+ `Output`— Gibt das Ziel an, in das die API-Antwort geschrieben wird. Dieses optionale Feld ist spezifisch für die Amazon Bedrock optimierte Integration mitStep Functions. In diesem Feld können Sie eine angeben`S3Uri`.

  Wenn Sie dieses Feld angeben, wird der API-Antworttext durch einen Verweis auf den Amazon S3 Speicherort der ursprünglichen Ausgabe ersetzt.

Das folgende Beispiel zeigt die Syntax für die InvokeModel API zur Amazon Bedrock Integration.

```
{
    "ModelId": String,  // required
    "Accept": String,  // default: application/json
    "ContentType": String,  // default: application/json
    "Input": {  // not from Bedrock API
        "S3Uri": String
    },  
    "Output": {  // not from Bedrock API
        "S3Uri": String
    } 
}
```

## Definition des Aufgabenstatus für die Amazon Bedrock Integration
<a name="connect-bedrock-task-definition"></a>

Die folgende Aufgabenstatusdefinition zeigt, wie Sie sie Amazon Bedrock in Ihre Zustandsmaschinen integrieren können. Dieses Beispiel zeigt einen Task-Status, der das vollständige Ergebnis eines durch den Pfad, `result_one` angegebenen Modellaufrufs extrahiert. Dies basiert auf [Inferenzparametern für Fundamentmodelle](https://docs.aws.amazon.com/bedrock/latest/userguide/model-parameters.html). In diesem Beispiel wird das Large Language Model (LLM) von Cohere Command verwendet.

```
{
  "Type": "Task",
  "Resource": "arn:aws:states:::bedrock:invokeModel",
  "Arguments": {
    "ModelId": "cohere.command-text-v14",
    "Body": {
      "prompt": "{% states.input.prompt_one %}",
      "max_tokens": 20
    },
    "ContentType": "application/json",
    "Accept": "*/*"
  },
  "End": true
}
```

## IAM policies for calling Amazon Bedrock
<a name="bedrock-iam"></a>

Wenn Sie eine Zustandsmaschine mithilfe der Konsole erstellen, Step Functions wird automatisch eine Ausführungsrolle für Ihre Zustandsmaschine mit den geringsten erforderlichen Rechten erstellt. Diese automatisch generierten IAM Rollen gelten für den, AWS-Region in dem Sie den Zustandsmaschine erstellen.

Wir empfehlen, bei der Erstellung von IAM Richtlinien keine Platzhalter in die Richtlinien aufzunehmen. Aus Sicherheitsgründen sollten Sie Ihre Richtlinien so weit wie möglich einschränken. Sie sollten dynamische Richtlinien nur verwenden, wenn bestimmte Eingabeparameter während der Laufzeit nicht bekannt sind.

Die folgenden Beispielvorlagen zeigen, wie IAM-Richtlinien auf der Grundlage der Ressourcen in Ihrer State-Machine-Definition AWS Step Functions generiert werden. Weitere Informationen erhalten Sie unter [So generiert Step Functions IAM-Richtlinien für integrierte Dienste](service-integration-iam-templates.md) und [Entdecken Sie Serviceintegrationsmuster in Step Functions](connect-to-resource.md).

### IAMRichtlinienbeispiele für die Integration Amazon Bedrock
<a name="bedrock-iam-policy-eg"></a>

Im folgenden Abschnitt werden die IAM Berechtigungen beschrieben, die Sie auf der Grundlage der Amazon Bedrock API benötigen, die Sie für ein bestimmtes Foundation- oder Bereitstellungsmodell verwenden. Dieser Abschnitt enthält auch Beispiele für Richtlinien, die vollen Zugriff gewähren.

Denken Sie daran, den {{italicized}} Text durch Ihre ressourcenspezifischen Informationen zu ersetzen.
+ [IAMRichtlinienbeispiel für den Zugriff auf ein bestimmtes Foundation-Modell mit InvokeModel](#bedrock-policy-invoke-foundation-model)
+ [IAMRichtlinienbeispiel für den Zugriff auf ein bestimmtes bereitgestelltes Modell mit InvokeModel](#bedrock-policy-invoke-provisioned-model)
+ [Zu verwendendes Beispiel IAM für eine Richtlinie mit vollständigem Zugriff InvokeModel](#bedrock-policy-invokemodel-full-access)
+ [IAMRichtlinienbeispiel für den Zugriff auf ein bestimmtes Foundation-Modell als Basismodell](#bedrock-policy-foundation-model)
+ [IAMRichtlinienbeispiel für den Zugriff auf ein bestimmtes benutzerdefiniertes Modell als Basismodell](#bedrock-policy-custom-model)
+ [Beispiel IAM für eine Richtlinie mit vollständigem Zugriff zur Verwendung von CreateModelCustomizationJob .sync](#bedrock-policy-createmodel-full-access)
+ [IAMRichtlinienbeispiel für den Zugriff auf ein bestimmtes Foundation-Modell mithilfe von CreateModelCustomizationJob .sync](#bedrock-policy-createmodel-sync-foundation-model)
+ [IAMRichtlinienbeispiel für den Zugriff auf ein benutzerdefiniertes Modell mithilfe von .sync CreateModelCustomizationJob](#bedrock-policy-createmodel-sync-custom-model)
+ [Beispiel IAM für eine vollständige Zugriffsrichtlinie zur Verwendung von .sync CreateModelCustomizationJob](#bedrock-policy-createmodel-sync-full-access)

#### IAMRichtlinienbeispiel für den Zugriff auf ein bestimmtes Foundation-Modell mit InvokeModel
<a name="bedrock-policy-invoke-foundation-model"></a>

Im Folgenden finden Sie ein IAM Richtlinienbeispiel für eine Zustandsmaschine, die auf ein bestimmtes Foundation-Modell zugreift, das `amazon.titan-text-express-v1` mithilfe der [InvokeModel](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_InvokeModel.html)API-Aktion benannt wurde.

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Sid": "InvokeModel1",
            "Action": [
                "bedrock:InvokeModel"
            ],
            "Resource": [
                "arn:aws:bedrock:{{us-east-1}}::foundation-model/{{amazon.titan-text-express-v1}}"
            ]
        }
    ]
}
```

#### IAMRichtlinienbeispiel für den Zugriff auf ein bestimmtes bereitgestelltes Modell mit InvokeModel
<a name="bedrock-policy-invoke-provisioned-model"></a>

Im Folgenden finden Sie ein IAM Richtlinienbeispiel für eine Zustandsmaschine, die auf ein bestimmtes bereitgestelltes Modell zugreift, das `c2oi931ulksx` mithilfe der [InvokeModel](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_InvokeModel.html)API-Aktion benannt wurde.

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Sid": "InvokeModel1",
      "Action": [
        "bedrock:InvokeModel"
      ],
      "Resource": [
        "arn:aws:bedrock:{{us-east-1}}:{{123456789012}}:provisioned-model/{{c2oi931ulksx}}"
      ]
    }
  ]
}
```

#### Zu verwendendes Beispiel IAM für eine Richtlinie mit vollständigem Zugriff InvokeModel
<a name="bedrock-policy-invokemodel-full-access"></a>

Im Folgenden finden Sie ein IAM Richtlinienbeispiel für eine Zustandsmaschine, die vollen Zugriff gewährt, wenn Sie die [InvokeModel](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_InvokeModel.html)API-Aktion verwenden.

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Sid": "InvokeModel1",
            "Action": [
                "bedrock:InvokeModel"
            ],
            "Resource": [
                "arn:aws:bedrock:{{us-east-1}}::foundation-model/*",
                "arn:aws:bedrock:{{us-east-1}}:{{123456789012}}:provisioned-model/*"
            ]
        }
    ]
}
```

#### IAMRichtlinienbeispiel für den Zugriff auf ein bestimmtes Foundation-Modell als Basismodell
<a name="bedrock-policy-foundation-model"></a>

Im Folgenden finden Sie ein IAM Richtlinienbeispiel für eine Zustandsmaschine, um mithilfe der [CreateModelCustomizationJob](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_CreateModelCustomizationJob.html)API-Aktion auf ein bestimmtes Foundation-Modell zuzugreifen, das `amazon.titan-text-express-v1` als Basismodell bezeichnet wird.

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Sid": "CreateModelCustomizationJob1",
            "Action": [
                "bedrock:CreateModelCustomizationJob"
            ],
            "Resource": [
                "arn:aws:bedrock:{{us-east-1}}::foundation-model/{{amazon.titan-text-express-v1}}",
                "arn:aws:bedrock:{{us-east-1}}:{{123456789012}}:custom-model/*",
                "arn:aws:bedrock:{{us-east-1}}:{{123456789012}}:model-customization-job/*"
            ]
        },
        {
            "Effect": "Allow",
            "Sid": "CreateModelCustomizationJob2",
            "Action": [
                "iam:PassRole"
            ],
            "Resource": [
                "arn:aws:iam::{{123456789012}}:role/{{myRole}}"            
            ]
        }
    ] 
}
```

#### IAMRichtlinienbeispiel für den Zugriff auf ein bestimmtes benutzerdefiniertes Modell als Basismodell
<a name="bedrock-policy-custom-model"></a>

Im Folgenden finden Sie ein IAM Richtlinienbeispiel für eine Zustandsmaschine, um mithilfe der [CreateModelCustomizationJob](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_CreateModelCustomizationJob.html)API-Aktion auf ein bestimmtes benutzerdefiniertes Modell als Basismodell zuzugreifen.

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Sid": "CreateModelCustomizationJob1",
            "Action": [
                "bedrock:CreateModelCustomizationJob"
            ],
            "Resource": [
                "arn:aws:bedrock:{{us-east-1}}:{{123456789012}}:custom-model/*",
                "arn:aws:bedrock:{{us-east-1}}:{{123456789012}}:model-customization-job/*"
            ]
        },
        {
            "Effect": "Allow",
            "Sid": "CreateModelCustomizationJob2",
            "Action": [
                "iam:PassRole"
            ],
            "Resource": [
                "arn:aws:iam::{{123456789012}}:role/myRoleName"            
            ]
        }
    ] 
}
```

#### Beispiel IAM für eine Richtlinie mit vollständigem Zugriff zur Verwendung von CreateModelCustomizationJob .sync
<a name="bedrock-policy-createmodel-full-access"></a>

Im Folgenden finden Sie ein IAM Richtlinienbeispiel für eine Zustandsmaschine, die vollen Zugriff gewährt, wenn Sie die [CreateModelCustomizationJob](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_CreateModelCustomizationJob.html)API-Aktion verwenden.

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Sid": "CreateModelCustomizationJob1",
            "Action": [
                "bedrock:CreateModelCustomizationJob"
            ],
            "Resource": [
                "arn:aws:bedrock:{{us-east-1}}::foundation-model/*",
                "arn:aws:bedrock:{{us-east-1}}:{{123456789012}}:custom-model/*",
                "arn:aws:bedrock:{{us-east-1}}:{{123456789012}}:model-customization-job/*"
            ]
        },
        {
            "Effect": "Allow",
            "Sid": "CreateModelCustomizationJob2",
            "Action": [
                "iam:PassRole"
            ],
            "Resource": [
                "arn:aws:iam::{{123456789012}}:role/{{myRole}}"            
            ]
        }
    ] 
}
```

#### IAMRichtlinienbeispiel für den Zugriff auf ein bestimmtes Foundation-Modell mithilfe von CreateModelCustomizationJob .sync
<a name="bedrock-policy-createmodel-sync-foundation-model"></a>

Im Folgenden finden Sie ein IAM Richtlinienbeispiel für einen Zustandsmaschine für den Zugriff auf ein bestimmtes Foundation-Modell, das `amazon.titan-text-express-v1` mithilfe der API-Aktion [CreateModelCustomizationJob.sync](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_CreateModelCustomizationJob.html) benannt wurde.

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Sid": "CreateModelCustomizationJob1",
            "Action": [
                "bedrock:CreateModelCustomizationJob"
            ],
            "Resource": [
                "arn:aws:bedrock:{{us-east-1}}::foundation-model/amazon.titan-text-express-v1",
                "arn:aws:bedrock:{{us-east-1}}:{{123456789012}}:custom-model/*",
                "arn:aws:bedrock:{{us-east-1}}:{{123456789012}}:model-customization-job/*"
            ]
        },
        {
            "Effect": "Allow",
            "Sid": "CreateModelCustomizationJob2",
            "Action": [
                "bedrock:GetModelCustomizationJob",
                "bedrock:StopModelCustomizationJob"
            ],
            "Resource": [
                "arn:aws:bedrock:{{us-east-1}}:{{123456789012}}:model-customization-job/*"
            ]
        },
        {
            "Effect": "Allow",
            "Sid": "CreateModelCustomizationJob3",
            "Action": [
                "iam:PassRole"
            ],
            "Resource": [
                "arn:aws:iam::{{123456789012}}:role/{{myRole}}"            
            ]
        }
    ]
}
```

#### IAMRichtlinienbeispiel für den Zugriff auf ein benutzerdefiniertes Modell mithilfe von .sync CreateModelCustomizationJob
<a name="bedrock-policy-createmodel-sync-custom-model"></a>

Im Folgenden finden Sie ein IAM Richtlinienbeispiel für einen Zustandsmaschine für den Zugriff auf ein benutzerdefiniertes Modell mithilfe der [CreateModelCustomizationJobAPI-Aktion .sync.](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_CreateModelCustomizationJob.html)

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Sid": "CreateModelCustomizationJob1",
            "Action": [
                "bedrock:CreateModelCustomizationJob"
            ],
            "Resource": [
                "arn:aws:bedrock:{{us-east-1}}:{{123456789012}}:custom-model/*",
                "arn:aws:bedrock:{{us-east-1}}:{{123456789012}}:model-customization-job/*"
            ]
        },
        {
            "Effect": "Allow",
            "Sid": "CreateModelCustomizationJob2",
            "Action": [
                "bedrock:GetModelCustomizationJob",
                "bedrock:StopModelCustomizationJob"
            ],
            "Resource": [
                "arn:aws:bedrock:{{us-east-1}}:{{123456789012}}:model-customization-job/*"
            ]
        },
        {
            "Effect": "Allow",
            "Sid": "CreateModelCustomizationJob3",
            "Action": [
                "iam:PassRole"
            ],
            "Resource": [
                "arn:aws:iam::{{123456789012}}:role/{{myRole}}"            
            ]
        }
    ]
}
```

#### Beispiel IAM für eine vollständige Zugriffsrichtlinie zur Verwendung von .sync CreateModelCustomizationJob
<a name="bedrock-policy-createmodel-sync-full-access"></a>

Im Folgenden finden Sie ein IAM Richtlinienbeispiel für eine Zustandsmaschine, die vollen Zugriff gewährt, wenn Sie die API-Aktion [CreateModelCustomizationJob.sync](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_CreateModelCustomizationJob.html) verwenden.

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Sid": "CreateModelCustomizationJob1",
            "Action": [
                "bedrock:CreateModelCustomizationJob"
            ],
            "Resource": [
                "arn:aws:bedrock:{{us-east-1}}::foundation-model/*",
                "arn:aws:bedrock:{{us-east-1}}:{{123456789012}}:custom-model/*",
                "arn:aws:bedrock:{{us-east-1}}:{{123456789012}}:model-customization-job/*"
            ]
        },
        {
            "Effect": "Allow",
            "Sid": "CreateModelCustomizationJob2",
            "Action": [
                "bedrock:GetModelCustomizationJob",
                "bedrock:StopModelCustomizationJob"
            ],
            "Resource": [
                "arn:aws:bedrock:{{us-east-1}}:{{123456789012}}:model-customization-job/*"
            ]
        },
        {
            "Effect": "Allow",
            "Sid": "CreateModelCustomizationJob3",
            "Action": [
                "iam:PassRole"
            ],
            "Resource": [
                "arn:aws:iam::{{123456789012}}:role/{{myRole}}"            
            ]
        }
    ]
}
```