Ejemplos

Cada agente debe tener uno o más ejemplos. Estos ejemplos son conversaciones de muestra entre un usuario final y la aplicación del agente, incluidos el diálogo y las acciones que realiza la app del agente. Son eficaces ejemplos de instrucciones con ejemplos 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.

Estado de ejemplo

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 “Falló”. 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: El ejemplo se puede omitir si el mensaje 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 cumplir con 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 Add action cuando mantienes 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 existentes del agente, ingresa una entrada de usuario en el campo Ingresar entrada del usuario ubicado 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 muy importante para los agentes con 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 dada. En el caso de Herramientas de OpenAPI, también puede ser un error de cadena (por ejemplo, "404 No encontrado").

    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. El error de invocación de Open API tool 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, se puede usar la entrada fallback 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 del almacén de datos, el resultado de la herramienta del almacén de datos debe contener un URI que coincida con el URI en 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 de los agentes. 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 del agente

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.