Aufrufen von Amazon Bedrock mit Step Functions - AWS Step Functions

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.

Aufrufen von Amazon Bedrock mit Step Functions

Step Functions kann bestimmte AWS Dienste direkt von Amazon States Language (ASL) aus steuern. Weitere Informationen hierzu finden Sie unter Arbeiten mit anderen -Services und Parameter an eine Service-API übergeben.

Amazon BedrockAPIs zur Serviceintegration

Für die AWS Step Functions Integration Amazon Bedrock können Sie die folgenden APIs verwenden. Diese APIs ähneln den entsprechenden Amazon Bedrock APIs, weisen jedoch einige Unterschiede in den übergebenen Anforderungsfeldern auf.

Die Unterschiede zwischen den einzelnen Service-Integrations-APIs und den entsprechenden Amazon Bedrock-APIs werden in der folgenden Tabelle beschrieben.

Amazon BedrockAPIs für die Serviceintegration und entsprechende Amazon Bedrock APIs
Amazon BedrockAPI zur Serviceintegration Entsprechende Amazon Bedrock API Unterschiede

InvokeModel

Ruft das angegebene Amazon Bedrock Modell auf, um mithilfe 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.

InvokeModel

Der Anfragetext der Amazon Bedrock Service-Integrations-API enthält die folgenden zusätzlichen Parameter.

  • Body— Spezifiziert Eingabedaten in dem Format, das im Inhaltstyp-Anforderungsheader angegeben ist. Bodyenthä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 nichtBody.

    Wenn Sie angeben, dass Sie die Amazon Bedrock optimierte Integration Body verwenden, können Sie eine Nutzlast von bis zu 256 KB angeben. Wenn Ihre Nutzlast 256 KB überschreitet, empfehlen wir 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 angebenS3Uri.

    Sie können entweder Body in den Parametern oderInput, aber nicht beide angeben.

    Wenn Sie Input ohne Angabe angebenContentType, wird der Inhaltstyp der Eingabedatenquelle zum Wert fürContentType.

  • 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 angebenS3Uri.

    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 } }

CreateModelCustomizationJob

Erstellt einen Feinabstimmungsauftrag zur Anpassung eines Basismodells.

CreateModelCustomizationJob None

CreateModelCustomizationJob.sync

Erstellt einen Feinabstimmungsauftrag zur Anpassung eines Basismodells.

CreateModelCustomizationJob None

Informationen zur Konfiguration von IAM Berechtigungen bei der Verwendung Step Functions mit anderen AWS Diensten finden Sie unterIAM-Richtlinien für integrierte Dienste.

Definition des Aufgabenstatus für die Amazon Bedrock Integration

Die folgende Aufgabenstatusdefinition zeigt, wie Sie sich 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. In diesem Beispiel wird das Large Language Model (LLM) von Cohere Command verwendet.

{ "Type": "Task", "Resource": "arn:aws:states:::bedrock:invokeModel", "Parameters": { "ModelId": "cohere.command-text-v14", "Body": { "prompt.$": "$.prompt_one", "max_tokens": 250 }, "ContentType": "application/json", "Accept": "*/*" }, "ResultPath": "$.result_one", "ResultSelector": { "result_one.$": "$.Body.generations[0].text" }, "End": true }
Tipp

Ein Beispiel für eine Zustandsmaschine, die in Ihren Computer integriert werden kann AWS-Konto, Amazon Bedrock finden Sie unter. Führen Sie AI-Prompt-Chaining durch mit Amazon Bedrock