Mit Flow-Ausführungen Amazon-Bedrock-Flows asynchron ausführen - Amazon Bedrock

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.

Mit Flow-Ausführungen Amazon-Bedrock-Flows asynchron ausführen

Mit Flow-Ausführungen können Sie Amazon-Bedrock-Flows asynchron ausführen. Auf diese Weise können Ihre Flows länger ausgeführt werden und Sie haben außerdem die Kontrolle darüber, so dass Ihre Anwendung andere Aufgaben ausführen kann.

Wenn Sie einen Flow mithilfe der Amazon-Bedrock-Konsole oder mit dem InvokeFlow-Vorgang ausführen, wird der Flow ausgeführt, bis er abgeschlossen ist oder nach einer Stunde eine Zeitüberschreitung erfolgt (je nachdem, was zuerst eintritt). Wenn Sie eine Flow-Ausführung veranlassen, kann Ihr Flow viel länger laufen: Einzelne Knoten können bis zu fünf Minuten laufen. Ihr gesamter Flow kann bis zu 24 Stunden lang laufen.

Anmerkung

Flow-Ausführungen für Amazon Bedrock befinden sich in der Vorversion und unterliegen Änderungen.

Erforderliche Berechtigungen für Flow-Ausführungen

Eine Flow-Ausführung erstellen und verwalten

Sie können eine Flow-Ausführung in der Konsole oder mithilfe des Vorgangs StartFlowExecution erstellen.

Console
  1. Erstellen Sie einen Flow, indem Sie die Anleitungen unter Einen Flow in Amazon Bedrock erstellen und gestalten befolgen.

  2. Erstellen Sie einen Alias für den Flow, indem Sie die Anleitungen unter Einen Alias eines Flows in Amazon Bedrock erstellen befolgen.

  3. Falls Sie sich noch nicht im Flow-Builder befinden, gehen Sie wie folgt vor:

    1. Melden Sie sich bei der AWS-Managementkonsole mit einer IAM-Identität an, die zur Verwendung der Amazon-Bedrock-Konsole berechtigt ist. Öffnen Sie dann die Amazon-Bedrock-Konsole unter https://console.aws.amazon.com/bedrock.

    2. Wählen Sie Amazon Bedrock Flows im linken Navigationsbereich und anschließend Ihren Flow aus.

  4. Wählen Sie die Registerkarte Ausführungen und dann Ausführung erstellen aus.

  5. Geben Sie im Dialogfeld Ausführung erstellen Folgendes ein:

    1. Geben Sie unter Name einen Namen für die Flow-Ausführung ein.

    2. Wählen Sie unter Alias auswählen den Alias des Flows aus, den Sie verwenden möchten.

    3. Geben Sie unter Prompt-Eingabe den Prompt ein, mit dem Sie den Flow starten möchten.

    4. Wählen Sie Erstellen aus, um die Flow-Ausführung zu erstellen und zu starten.

  6. Wählen Sie auf der Seite mit den Flow-Details die Registerkarte Ausführungen aus und notieren Sie sich den Status der Flow-Ausführung unter Ausführungsstatus.

  7. (Optional) Wählen Sie eine Ausführung aus, um den Flow zu öffnen und die Zusammenfassung der Ausführung anzuzeigen.

    Unter Ausführungsausgabe sehen Sie die Ausgabe des Flows.

  8. (Optional) Um eine Flow-Ausführung zu stoppen, wählen Sie die Ausführung aus und klicken Sie auf Stoppen.

API
Eine Flow-Ausführung starten

Um eine Flow-Ausführung zu starten, senden Sie eine StartFlowExecution-Anfrage mit einem Runtime-Endpunkt von Agenten für Amazon Bedrock. Geben Sie in der Anfrage die Flow-ID und die Flow-Alias-ID des Flows an, den Sie ausführen möchten. Sie können auch Folgendes angeben:

  • inputs: Ein Array, das den Eingabe-Knoten enthält, von dem aus der Flow ausgeführt werden soll. Sie geben im Feld content die Eingabe an, die an den Eingabeknoten des Prompt-Flows gesendet werden soll.

  • name: Ein Name für die Flow-Ausführung.

{ "inputs": [{ "nodeName": "FlowInputNode", "nodeOutputName": "document", "content": { "document": "Test" } }], "name": "MyExecution" }

Die Antwort ist der Amazon-Ressourcenname (ARN) der Flow-Ausführung. Sie können den executionArn verwenden, um den aktuellen Status des Flows abzufragen, z. B. wenn die Flow-Ausführung abgeschlossen ist oder ein Bedingungsknoten seine Bedingungen bewertet.

{ "executionArn": "arn:aws:bedrock:us-west-2:111122223333:flow/FLOWID/alias/TSTALIASID/execution/MyExecution" }
Den Fortschritt einer Flow-Ausführung verfolgen

Verwenden Sie den Vorgang GetFlowExecution, um den aktuellen Status eines Flows abzurufen, den Sie anhand seines Ausführungs-ARN identifizieren. Ein Flow-Status lautet entweder Running, Succeeded, Failed, TimedOut oder Aborted.

{ "endedAt": null, "errors": null, "executionArn": "arn:aws:bedrock:us-west-2:111122223333:flow/FLOWID/alias/TSTALIASID/execution/MyExecution", "flowAliasIdentifier": "TSTALIASID", "flowIdentifier": "FLOWID", "flowVersion": "DRAFT", "startedAt": "2025-03-20T23:32:28.899221162Z", "status": "Running" }

Fehler (z. B. ein Lambda-Knoten mit Zeitüberschreitung) werden im Array errors zurückgegeben, wie im folgenden Beispiel gezeigt:

"errors": [{ "nodeName": "LambdaNode1", "errorType": "ExecutionTimedOut", "message": "Call to lambda function timed out" }],
Die Ergebnisse einer Flow-Ausführung abrufen

Amazon Bedrock schreibt die Ausgaben eines Flows in die Ausgabe-Knoten des Flows. Sie können die Ausgaben abrufen, sobald der Flow abgeschlossen ist oder solange der Flow läuft (abhängig von Ihrem Anwendungsfall).

Wenn Sie möchten, dass der Flow zuerst abgeschlossen wird, rufen Sie GetFlowExecution auf und stellen Sie sicher, dass der Wert des Felds status in der Antwort Succeeded lautet.

Rufen Sie ListFlowExecutionEvents auf, um eine Liste der Ausgabeereignisse der Flow-Ausführung abzurufen. Suchen Sie in der Antwort nach flowOutputEvent-Objekten in flowExecutionEvents. Sie können die Ausgabe eines Flows beispielsweise im Feld content abrufen:

{ "flowOutputEvent": { "content": { "document": "The model response." }, "nodeName": "FlowOutputNode" } }

Sie können die Ausgabe von ListFlowExecutions auf Eingabe- und Ausgabeknoten beschränken, indem Sie den Abfrageparameter eventType auf Flow setzen.

Anzeigen von Ereignissen

Um das Debuggen Ihrer Flow-Ausführung zu erleichtern, können Sie den Vorgang ListFlowExecutionEvents verwenden, um Ereignisse anzuzeigen, die Knoten während der Ausführung des Flows generieren. Legen Sie den eventType-Abfrageparameter auf Node fest, um die Eingaben und Ausgaben aller Knoten (einschließlich Zwischenknoten) in der Antwort anzuzeigen, die dem folgenden Beispiel ähnelt:

{ "flowExecutionEvents": [{ "nodeOutputEvent": { "fields": [{ "content": { "document": "History book" }, "name": "document" }], "nodeName": "FlowInputNode", "timestamp": "2025-05-05T18:38:56.637867516Z" } }, { "nodeInputEvent": { "fields": [{ "content": { "document": "History book" }, "name": "book" }], "nodeName": "Prompt_1", "timestamp": "2025-05-05T18:38:57.434600163Z" } }, { "nodeOutputEvent": { "fields": [{ "content": { "document": "Here's a summary of the history book." }, "name": "modelCompletion" }], "nodeName": "Prompt_1", "timestamp": "2025-05-05T18:39:06.034157077Z" } }, { "nodeInputEvent": { "fields": [{ "content": { "document": "Here's a summary of the history book." }, "name": "document" }], "nodeName": "FlowOutputNode", "timestamp": "2025-05-05T18:39:06.453128251Z" } } ] }
Einen Snapshot Ihrer Flow-Ausführung erfassen

Beim Starten einer Flow-Ausführung erstellt Amazon Bedrock automatisch einen Snapshot einer Flow-Definition und von Metadaten. Das ist hilfreich, da ein Flow aktualisiert werden kann, während er asynchron ausgeführt wird. Rufen Sie den Vorgang GetExecutionFlowSnapshot auf, um diesen Snapshot abzurufen. Die Antwort enthält die folgenden Felder:

  • customerEncryptionKeyArn: Der ARN des AWS KMS-Schlüssels, der den Flow verschlüsselt.

  • definition: Die Definition des Flows.

  • executionRoleArn: Der ARN der IAM-Servicerolle, die von der Flow-Ausführung verwendet wird.

  • flowAliasIdentifier: Die Alias-ID des Flows.

  • flowIdentifier: Die ID des Flows.

  • flowVersion: Die Version des Flows.

{ "customerEncryptionKeyArn": null, "definition": "{flow-definition}", "executionRoleArn": "arn:aws:iam::111122223333:role/name", "flowAliasIdentifier": "TSTALIASID", "flowIdentifier": "FLOWID", "flowVersion": "DRAFT" }
Ihre Flow-Ausführungen auflisten

Über den Vorgang ListFlowExecutions können Sie eine Liste Ihrer Flow-Ausführungen aufrufen. Die Antwort enthält ein flowExecutionSummaries-Array mit Informationen zu jeder Ihrer Flow-Ausführungen in der aktuellen AWS-Region für einen Flow oder Flow-Alias. Jedes Element enthält Informationen wie den Ausführungs-ARN, die Startzeit und den aktuellen Status des Flows.

{ "flowExecutionSummaries": [{ "createdAt": "2025-03-11T23:21:02.875598966Z", "endedAt": null, "executionArn": "arn:aws:bedrock:us-west-2:111122223333:flow/FLOWID/alias/TSTALIASID/execution/MyExecution", "flowAliasIdentifier": "TSTALIASID", "flowIdentifier": "FLOWID", "flowVersion": "DRAFT", "status": "Running" }] }
Eine laufende Flow-Ausführung stoppen

Wenn Sie eine laufende Flow-Ausführung stoppen müssen, rufen Sie den Vorgang StopFlowExecution auf und übermitteln Sie die Flow-ID, die Flow-Alias-ID und die Flow-Ausführungs-ID für die Ausführung, die Sie stoppen möchten.

Flow-Ausführungsstatus

Eine Flow-Ausführung kann einen der folgenden Status haben:

  • Running: Die Flow-Ausführung ist im Gange.

  • Succeeded: Die Flow-Ausführung wurde erfolgreich abgeschlossen.

  • Failed: Die Flow-Ausführung ist aufgrund eines Fehlers fehlgeschlagen.

  • TimedOut: Die Flow-Ausführung hat die maximale Laufzeit von 24 Stunden überschritten.

  • Aborted: Die Flow-Ausführung wurde mithilfe des Vorgangs StopFlowExecution manuell gestoppt.

Flow-Ausführungen, die nicht mehr laufen, werden nach 90 Tagen automatisch gelöscht.

Best Practices für Flow-Ausführungen

Beachten Sie Folgendes, wenn Sie Flow-Ausführungen verwenden:

  • Fragen Sie den Status Ihrer Flow-Ausführung regelmäßig mit GetFlowExecution ab, bis Ihr Flow einen Terminalstatus erreicht (jeder andere Status als Running).

  • Wenn Ihre Flow-Ausführung einen Terminalstatus erreicht, verwenden Sie ListFlowExecutionEvents, um die Ergebnisse Ihres Flows abzurufen. Sie könnten diese Ergebnisse beispielsweise verwenden, um eine gewisse Logik für Ihren Flow zu schaffen.

  • Erstellen Sie mit GetExecutionFlowSnapshot einen Snapshot Ihrer Flow-Ausführung, der Ihnen beim Debuggen hilft, falls während der Ausführung Probleme auftreten.