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 realidad, ejemplos de instrucciones de pocas fotos para el LLM.
La consola proporciona una interfaz para que ingreses acciones.
Apps de agentes multilingües
Si quieres que tu app de agente controle varios idiomas, tus ejemplos deben usar cada uno de ellos.
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 la única manera de intercambiar datos entre flujos y agentes.
Agrega resúmenes de entrada relevantes a los ejemplos para condicionar al agente para que ajuste sus acciones según los resúmenes de entrada durante el tiempo de ejecución. Agrega resúmenes de salida que incluyan detalles relevantes y precisos sobre la conversación de ejemplo para mostrarle al agente qué detalles son importantes para resumir.
Estado de ejemplo
En un momento determinado de la conversación, un agente estará en uno de los siguientes estados:
OK
: El agente logró su objetivo de forma correcta 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 muestra un error 500). La sesión finalizará con el estado Error. Se agregará un mensaje EndInteraction a la respuesta.ESCALATED
: El agente decidió que no puede lograr el objetivo y debe derivar la situación a un ser humano. La sesión finalizará y el estado será derivado. Se agregará un mensaje EndInteraction 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 incluye o no en la instrucción del agente.
DEFAULT
: El ejemplo se puede omitir si el mensaje se acerca al límite de tokens.STATIC
: El ejemplo siempre se incluye.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 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 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 usar 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 del panel Agente de vista previa, haz clic en Guardar ejemplo después de seleccionar la invocación del agente en la lista de invocaciones que se encuentra a la izquierda del panel Agente de vista previa.
Asegúrate de verificar la exactitud de las acciones generadas automáticamente 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
Es la consulta del usuario.
Uso de herramientas
Esta es una invocación de herramienta para obtener 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 de almacén de datos y la herramienta de función, el nombre de la acción es el mismo que el 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étodosPOST
,PUT
yPATCH
.Entrada
requestBody
de ejemplo 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 se requiere la consulta 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 Herramientas de OpenAPI, también puede ser un error de cadena (por ejemplo, "404 No encontrado").
Ejemplo de salida de la herramienta de Open API para la acción listPets:
{ "pets": [ { "id": 1, "name": "Luna" }, { "id": 2, "name": "Charlie" }] }
Ejemplo de resultado 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, también incluye ejemplos de cómo debería responder cuando falle la invocación de la herramienta. La falla 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 deseas que tu herramienta de almacenamiento 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 un 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 los 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 completar la consulta del usuario. Esta acción debe especificar los siguientes detalles:
- Agente: el nombre del agente que se invocará.
- Resumen de la entrada de invocación del agente: Es 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: Parámetros de salida que genera el agente cuando completa su objetivo.