Devuelva el control al desarrollador del agente enviando la información obtenida en una respuesta InvokeAgent - Amazon Bedrock

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Devuelva el control al desarrollador del agente enviando la información obtenida en una respuesta InvokeAgent

En lugar de enviar la información que su agente ha obtenido del usuario a una función de Lambda para su procesamiento, puede optar por devolver el control al desarrollador del agente enviando la información en InvokeAgentla respuesta. Puede configurar la devolución del control al agente desarrollador al crear o actualizar un grupo de acciones. A través de la API, se especifica RETURN_CONTROL como customControl valor en el actionGroupExecutor objeto de una UpdateAgentActionGroupsolicitud CreateAgentActionGroupo. Para obtener más información, consulte Añada un grupo de acción a su agente en Amazon Bedrock.

Si configuras la devolución del control para un grupo de acciones y si el agente determina que debe realizar una acción en ese grupo de acciones, los detalles de la API o de la función obtenidos del usuario se devolverán en el invocationInputs campo de la InvokeAgentrespuesta, junto con un identificador únicoinvocationId. A continuación puede hacer lo siguiente:

  • Configura tu aplicación para que invoque la API o la función que has definido, siempre que la información devuelva. invocationInputs

  • Envía los resultados de la invocación de tu aplicación en otra InvokeAgentsolicitud, en el sessionState campo, para proporcionar contexto al agente. Debe usar los mismos invocationId y los actionGroup que se devolvieron en la InvokeAgentrespuesta. Esta información puede usarse como contexto para una mayor organización, enviarse al posprocesamiento para que el agente formatee una respuesta o usarse directamente en la respuesta del agente al usuario.

    nota

    Si lo incluye returnControlInvocationResults en el sessionState campo, el inputText campo se ignorará.

Para obtener información sobre cómo configurar la devolución del control al desarrollador del agente al crear el grupo de acciones, consulteAñada un grupo de acción a su agente en Amazon Bedrock.

Ejemplo de devolución del control al desarrollador del agente

Por ejemplo, puede tener los siguientes grupos de acciones:

  • Un grupo de PlanTrip acciones con una suggestActivities acción que ayuda a los usuarios a encontrar actividades para realizar durante un viaje. El description de esta acción diceThis action suggests activities based on retrieved weather information.

  • Un grupo de WeatherAPIs acción con una getWeather acción que ayuda al usuario a conocer el clima de una ubicación específica. Los parámetros obligatorios de la acción son location ydate. El grupo de acciones está configurado para devolver el control al desarrollador del agente.

La siguiente es una secuencia hipotética que podría producirse:

  1. El usuario hace la siguiente consulta a su agente: What should I do today? Esta consulta se envía en el inputText campo de una InvokeAgentsolicitud.

  2. Su agente reconoce que la suggestActivities acción debe invocarse, pero según la descripción, predice que primero debe invocar la getWeather acción como contexto para ayudar a llevarla a cabo. suggestActivities

  3. El agente sabe que la corriente date es2024-09-15, pero necesita la location del usuario como parámetro obligatorio para obtener información sobre el clima. Vuelve a preguntar al usuario con la pregunta «¿Dónde se encuentra?»

  4. El usuario responde. Seattle

  5. El agente devuelve los parámetros de getWeather la siguiente InvokeAgentrespuesta (seleccione una pestaña para ver ejemplos de un grupo de acciones definido con ese método):

    Function details
    HTTP/1.1 200 x-amzn-bedrock-agent-content-type: application/json x-amz-bedrock-agent-session-id: session0 Content-type: application/json { "returnControl": { "invocationInputs": [{ "functionInvocationInput": { "actionGroup": "WeatherAPIs", "function": "getWeather", "parameters": [ { "name": "location", "type": "string", "value": "seattle" }, { "name": "date", "type": "string", "value": "2024-09-15" } ] } }], "invocationId": "79e0feaa-c6f7-49bf-814d-b7c498505172" } }
    OpenAPI schema
    HTTP/1.1 200 x-amzn-bedrock-agent-content-type: application/json x-amz-bedrock-agent-session-id: session0 Content-type: application/json { "invocationInputs": [{ "apiInvocationInput": { "actionGroup": "WeatherAPIs", "apiPath": "/get-weather", "httpMethod": "get", "parameters": [ { "name": "location", "type": "string", "value": "seattle" }, { "name": "date", "type": "string", "value": "2024-09-15" } ] } }], "invocationId": "337cb2f6-ec74-4b49-8141-00b8091498ad" }
  6. La aplicación está configurada para usar estos parámetros a fin de obtener el clima seattle de la fecha2024-09-15. Se determina que el clima es lluvioso.

  7. Los resultados se envían en el sessionState campo de otra InvokeAgentsolicitud, utilizando la misma invocationId respuesta y function como respuesta anterior. actionGroup Seleccione una pestaña para ver ejemplos de un grupo de acciones definido con ese método:

    Function details
    POST https://bedrock-agent-runtime.us-east-1.amazonaws.com/agents/AGENT12345/agentAliases/TSTALIASID/sessions/abb/text { "enableTrace": true, "sessionState": { "invocationId": "79e0feaa-c6f7-49bf-814d-b7c498505172", "returnControlInvocationResults": [{ "functionResult": { "actionGroup": "WeatherAPIs", "function": "getWeather", "responseBody": { "TEXT": { "body": "It's rainy in Seattle today." } } } }] } }
    OpenAPI schema
    POST https: //bedrock-agent-runtime.us-east-1.amazonaws.com/agents/AGENT12345/agentAliases/TSTALIASID/sessions/abb/text { "enableTrace": true, "sessionState": { "invocationId": "337cb2f6-ec74-4b49-8141-00b8091498ad", "returnControlInvocationResults": [{ "apiResult": { "actionGroup": "WeatherAPIs", "httpMethod": "get", "apiPath": "/get-weather", "responseBody": { "application/json": { "body": "It's rainy in Seattle today." } } } }] } }
  8. El agente predice que debe convocar la suggestActivities acción. Como respuesta, utiliza el contexto de que ese día está lloviendo y, en respuesta, sugiere al usuario actividades en interiores, en lugar de exteriores.