Iniciar una ejecución de flujo
Para ejecutar una ejecución de flujo, envíe una StartFlowExecutionsolicitud con un punto de ejecución de Agents for Amazon Bedrock. En la solicitud, especifique el ID de flujo y el ID de alias del flujo que desea ejecutar. También puede especificar lo siguiente:
-
inputs: matriz que contiene el nodo input desde el que desea que comience a ejecutarse el flujo. La entrada que se va a enviar al nodo de entrada del flujo de peticiones se especifica en el campo content.
-
name: un nombre para la ejecución del flujo.
{
"inputs": [{
"nodeName": "FlowInputNode",
"nodeOutputName": "document",
"content": {
"document": "Test"
}
}],
"name": "MyExecution"
}
La respuesta es el Nombre de recurso de Amazon (ARN) de la ejecución del flujo. Puede usar el executionArn para sondear el estado actual del flujo, por ejemplo, cuando finaliza la ejecución del flujo o cuando un nodo de condición evalúa sus condiciones.
{
"executionArn": "arn:aws:bedrock:us-west-2:111122223333:flow/FLOWID/alias/TSTALIASID/execution/MyExecution"
}
Seguimiento del progreso de una ejecución de flujo
Utilice la GetFlowExecutionoperación para obtener el estado actual de un flujo que identifique por su ARN de ejecución. El estado de un flujo es Running, Succeeded, Failed, TimedOut o 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"
}
Los errores (como un nodo de Lambda cuyo tiempo de espera se ha agotado) se devuelven en la matriz errors como en el siguiente ejemplo:
"errors": [{
"nodeName": "LambdaNode1",
"errorType": "ExecutionTimedOut",
"message": "Call to lambda function timed out"
}],
Obtención de los resultados de una ejecución de flujo
Amazon Bedrock escribe las salidas de un flujo en los nodos output del flujo. Puede obtener las salidas una vez que se complete el flujo o mientras el flujo está en funcionamiento (según su caso de uso).
Si desea que el flujo se complete primero, llame a GetFlowExecution y asegúrese de que el valor del campo status en la respuesta sea Succeeded.
Para obtener una lista de los eventos de salida de la ejecución del flujo, realice una llamada a ListFlowExecutionEvents. En la respuesta, compruebe si hay objetos flowOutputEvent en flowExecutionEvents. Por ejemplo, puede obtener la salida de un flujo en el campo content:
{
"flowOutputEvent": {
"content": {
"document": "The model response."
},
"nodeName": "FlowOutputNode"
}
}
Puede limitar la salida de ListFlowExecutions a solo los nodos de entrada y salida estableciendo el parámetro de consulta eventType en Flow.
Ver eventos
Para ayudar a depurar la ejecución del flujo, puede utilizar la ListFlowExecutionEventsoperación para ver los eventos que generan los nodos mientras se ejecuta el flujo. Establezca el parámetro de consulta eventType en Node para ver las entradas y salidas de todos los nodos (incluidos los nodos intermedios) de la respuesta, de forma similar a la del siguiente ejemplo:
{
"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"
}
}
]
}
Obtención de una instantánea de la ejecución de un flujo
Amazon Bedrock realiza automáticamente una instantánea de la definición y los metadatos de un flujo cuando se inicia la ejecución de un flujo. Esto resulta útil, ya que un flujo se puede actualizar mientras se ejecuta de forma asíncrona. Para recuperar esta instantánea, llama a la GetExecutionFlowSnapshotoperación. La respuesta incluye los siguientes campos del flujo:
-
customerEncryptionKeyArn: el ARN de la clave que cifra AWS KMS el flujo.
-
definition: la definición del flujo.
-
executionRoleArn— El ARN de la función de servicio de IAM que utiliza la ejecución del flujo.
-
flowAliasIdentifier— El seudónimo del flujo.
-
flowIdentifier: el ID del flujo.
-
flowVersion: la versión del flujo.
{
"customerEncryptionKeyArn": null,
"definition": "{flow-definition}",
"executionRoleArn": "arn:aws:iam::111122223333:role/name",
"flowAliasIdentifier": "TSTALIASID",
"flowIdentifier": "FLOWID",
"flowVersion": "DRAFT"
}
Enumeración de las ejecuciones de un flujo
Puede obtener una lista de las ejecuciones de su flujo llamando a la ListFlowExecutionsoperación. La respuesta incluye una flowExecutionSummaries matriz con información sobre cada una de las ejecuciones del flujo en curso Región de AWS para un flujo o un alias de flujo. Cada elemento incluye información como el ARN de ejecución, la hora de inicio y el estado actual del flujo.
{
"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"
}]
}
Detención de la ejecución en curso de un flujo
Si necesita detener la ejecución de un flujo en ejecución, llame a la StopFlowExecutionoperación y pase el ID del flujo, el ID de alias del flujo y el ID de ejecución del flujo correspondientes a la ejecución que desee detener.