Ejemplos

Cada agente debe tener uno o más ejemplos. Estos ejemplos son conversaciones de muestra entre un usuario final y la app del agente, incluido el diálogo y las acciones que realiza la app del agente. Estos son, en efecto, ejemplos de instrucciones de pocas fotos para el LLM.

La consola proporciona una interfaz para ingresar acciones.

Apps de agentes multilingües

Si quieres que tu app de agente controle varios idiomas, tus ejemplos deben usar cada uno de los lenguajes.

Ejemplo de resumen de entrada y resumen de salida

Además de los parámetros de entrada y salida, los agentes admiten la recepción de un resumen de entrada y emitir un resumen de salida para intercambiar información con otros agentes. Los resúmenes son útiles para pasar textos abstractos información entre agentes, mientras que los parámetros son más útiles para pasar estructurados y bien definidos entre los agentes. Los parámetros son los únicos de intercambio de datos entre flujos y agentes.

Agrega resúmenes de entrada relevantes a los ejemplos para condicionar el agente de modo que ajuste su acciones basadas en los resúmenes de entrada en el tiempo de ejecución. Agrega resúmenes de resultados que incluyan detalles relevantes y precisos sobre el ejemplo. para mostrarle al agente qué detalles es importante resumir.

Ejemplo de estado

En un momento determinado de la conversación, un agente estará en uno de los siguientes estados:

  • OK: El agente alcanzó con éxito su objetivo, y el control ahora se transferirá al agente superior.
  • CANCELLED: el usuario decidió no continuar con el objetivo asignado al agente. El control ahora se transferirá al agente superior. Si el agente superior es un flujo CX, el intent de la entrada del usuario se detectará antes de que se ejecute el flujo.
  • FAILED: El agente no puede continuar con el objetivo debido a algún error (p.ej., la herramienta devuelve el error 500). La sesión finalizará con el estado Error. Los EndInteraction se agregará a la respuesta.
  • ESCALATED: El agente decidió que no puede lograr el objetivo y debe escalar la situación a una persona. La sesión finalizará y el estado será derivado. Una EndInteraction se agregará a la respuesta.
  • PENDING: La conversación todavía continúa dentro del agente.

El ejemplo de nivel superior y sus invocaciones del agente deben indicarse con un estado que corresponda al agente al que se hace referencia.

Estrategia de selección

La estrategia de selección controla si cada ejemplo se incluido en el mensaje del agente.

  • DEFAULT: Se puede omitir el ejemplo si la instrucción se acerca al límite de tokens.
  • STATIC: El ejemplo siempre está incluido.
  • NEVER: El ejemplo nunca se incluye en la instrucción. El ejemplo tendrá no tendrá ningún efecto en el rendimiento del agente.

Agregar acción

Un ejemplo proporcionado dentro de un agente consta de una serie de acciones. Estas acciones pueden variar en sus combinaciones, pero representan principalmente la interacción entre el usuario y el agente, junto con las acciones que se realizan en el medio para completar la consulta o los requisitos del usuario.

Hay dos maneras de agregar acciones a un ejemplo:

  • Para agregar una acción de forma manual, haz clic en el botón + en la parte inferior del panel derecho o en el botón Agregar acción cuando coloques el puntero sobre las acciones existentes. Puedes utilizar estas opciones cuando crees un ejemplo nuevo. Para ello, haz clic en la opción + Ejemplo o cuando edites un ejemplo existente.

  • Para generar acciones automáticamente en función de las instrucciones del agente existentes, ingresa una entrada del usuario en el campo Enter user input que se encuentra en la parte inferior del panel derecho. Puedes utilizar esta opción cuando crees o edites un ejemplo. Como alternativa, puedes usar esta opción cuando pruebes tu agente en el entorno de ejecución en el panel Preview agent a la derecha. Para guardar acciones en un ejemplo desde el panel Preview agent, haz clic en Save example después de seleccionar la invocación del agente de la lista de invocaciones a la izquierda del panel Preview agent.

Asegúrate de verificar que las acciones generadas automáticamente sean correctas y edítalas si es necesario. Esto es especialmente importante para los agentes que tienen pocos ejemplos o ninguno.

El agente admite los siguientes tipos de acciones:

Respuesta del agente

La respuesta del agente a la consulta del usuario.

Entrada del usuario

La consulta del usuario.

Uso de herramientas

Esta es una invocación de herramienta que permite obtener la información adicional necesaria para completar la consulta del usuario. Esta acción debe especificar los siguientes detalles:

  • Herramienta: Nombre de la herramienta que se debe invocar.
  • Action: Nombre de la operación para la OpenAPI Tool que se debe invocar. En el caso de las herramientas del almacén de datos y la herramienta de la función, el nombre de la acción es el mismo que el nombre de la herramienta.
  • Entrada de la herramienta: La información que se incluirá en la llamada a la herramienta. Por lo general, estos se derivan de los turnos de conversación anteriores con el usuario.

    En el caso de las herramientas de OpenAPI, se requiere requestBody JSON para los tipos de métodos POST, PUT y PATCH.

    Ejemplo de entrada requestBody de la herramienta de Open API para la acción createPet:

    {
      "id": 1,
      "name": "Luna"
    }
    

    Para la herramienta de almacén de datos, la requestBody de muestra en la que la consulta es obligatoria y otros campos son opcionales.

    {
      "query": "Where is my nearest store?",
      "filter": "country: ANY(\"United States\")",
      "userMetadata": {
        "userCity": "San Fransisco",
      },
      "fallback": "We don't have any stores in your area."
    }
    
  • Resultado de la herramienta: Es la respuesta de la invocación de la herramienta. Esta es una respuesta JSON válida de la herramienta a la entrada determinada. En el caso de las herramientas de la API abierta, también puede ser un error de cadena (por ejemplo, "404 No se encontró").

    Ejemplo de resultado de Open API tool para la acción listPets:

    {
      "pets": [
        {
          "id": 1,
          "name": "Luna"
        },
        {
          "id": 2,
          "name": "Charlie"
        }]
    }
    

    Resultado de muestra de la herramienta de almacén de datos:

    {
      "answer": "Here's the address to your nearest store ...",
      "snippets": [
        {
          "title": "San Fransisco Downtown",
          "uri": "https://www.example.com/San_Fransisco_Downtown",
          "text": "Address for San Fransisco Downtown .."
        }
      ]
    }
    

Para garantizar que el agente sea a prueba de fallas, incluye también ejemplos de cómo debe responder cuando falla la invocación de la herramienta. La falla de invocación de la herramienta de la API abierta se puede representar como una cadena de error ("404 not found") en el resultado de la herramienta. En el caso de las herramientas de almacén de datos, la entrada fallback se puede usar para especificar cómo responder si no hay una respuesta resumida.

Si quieres que tu herramienta de almacén de datos incluya el URI en la respuesta del agente, agrega ejemplos que contengan el URI con el que deseas que el agente responda. Si este URI proviene de la herramienta de almacén de datos, el resultado de la herramienta de almacén de datos debe contener un URI que coincida con el URI de la respuesta del agente. Nota: fallback no se puede usar en esta situación porque inhabilitará la capacidad del agente de LLM de reformular la respuesta de la herramienta de almacén de datos para incluir URIs en la respuesta del agente.

Los ejemplos que incluyen acciones de uso de la herramienta pueden ser bastante detallados y contribuir a un mayor consumo del límite de tokens de entrada. Para garantizar el uso eficiente de los tokens, asegúrate de que los resultados de la herramienta sean concisos y contengan información relevante para los objetivos del agente. En el caso de las herramientas de almacén de datos, considera quitar fragmentos de los ejemplos, ya que pueden contribuir a un alto consumo de tokens de entrada.

Invocación de agentes

Esta acción se usa cuando el agente debe invocar a otro agente para entregar la consulta del usuario. Esta acción debe especificar los siguientes detalles:

  • Agente: el nombre del agente que se invocará.
  • Agent invocation input summary (Resumen de entrada de invocación del agente): Un resumen de las partes relevantes de la conversación anterior que son útiles para el agente que se invoca.
  • Parámetros de entrada: Parámetros de entrada para pasar al agente
  • Resumen de salida de invocación del agente: Un resumen de lo que el agente debe generar cuando complete su objetivo.
  • Parámetros de salida: Son los parámetros de salida que genera el agente cuando cumple su objetivo.