Cada libro de jugadas debe tener uno o más ejemplos. Estos ejemplos son conversaciones de muestra entre un usuario final y la guía de respuestas, incluido el diálogo y las acciones que realiza el agente. Estos son, en efecto, ejemplos de instrucciones con varios ejemplos para el LLM.
La consola proporciona una interfaz para que ingreses acciones.
Agentes multilingües
Si quieres que tu agente maneje 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 playbooks admiten recibir un resumen de entrada y emitir un resumen de salida para intercambiar información con otros playbooks. Los resúmenes son útiles para pasar información contextual abstracta entre los libros de jugadas, mientras que los parámetros son más útiles para pasar campos estructurados y bien definidos entre los libros de jugadas. Los parámetros son la única manera de intercambiar datos entre flujos y libros de jugadas.
Agrega resúmenes de entradas relevantes a los ejemplos para condicionar la guía de instrucciones para que ajuste sus acciones según los resúmenes de entradas durante el tiempo de ejecución. Agrega resúmenes de resultados que incluyan detalles relevantes y precisos sobre la conversación de ejemplo para mostrar en la guía de jugadas qué detalles son importantes para resumir.
Ejemplo de estado
En un momento determinado de la conversación, una guía de respuestas estará en uno de los siguientes estados:
OK
: La guía de acción logró su objetivo de forma correcta y el control ahora se transferirá a la guía de acción superior.CANCELLED
: El usuario decidió no continuar con el objetivo asignado a la guía. El control ahora se transferirá a la guía principal. Si la guía principal es un flujo de CX, se detectará la intención de la entrada del usuario antes de que se ejecute el flujo.FAILED
: La guía de referencia 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 de error. Se agregará un mensaje EndInteraction a la respuesta.ESCALATED
: La guía decidió que no puede alcanzar el objetivo y que debe derivar la situación a una persona. La sesión finalizará con el estado derivado. Se agregará un mensaje EndInteraction a la respuesta.PENDING
: La conversación aún continúa dentro de la guía.
El ejemplo de nivel superior y sus invocaciones de libro de jugadas deben indicarse con un estado que corresponda al libro de jugadas al que hacen referencia.
Estrategia de selección
La configuración de la estrategia de selección controla si se incluye un ejemplo en la instrucción de la guía de respuestas que se envía al LLM. Las siguientes opciones están disponibles:
- Selección dinámica: El ejemplo se incluye de forma condicional, según su relevancia para el contexto de la conversación actual. Se puede omitir el ejemplo si la instrucción se acerca al límite de tokens. De forma opcional, puedes proporcionar coincidencias de palabras.
- Siempre seleccionar: El ejemplo siempre se incluye, independientemente del contexto de la conversación. Se puede omitir el ejemplo si la instrucción se acerca al límite de tokens.
- Nunca seleccionar: El ejemplo nunca se incluye en la instrucción. El ejemplo no tendrá ningún efecto en el rendimiento de la guía. Este parámetro de configuración es útil para excluir temporalmente un ejemplo para pruebas.
Coincidencias de palabras
De forma opcional, puedes proporcionar concordancias de palabras para los ejemplos con una estrategia de selección dinámica. Esto te permite tener un mejor control sobre si el ejemplo se incluye en la instrucción. Esto se recomienda para los libros de jugadas que tienen más de 100 ejemplos.
Puedes proporcionar varias expresiones de concordancia como palabras simples o expresiones regulares, y cada una de ellas puede ser de uno de los siguientes tipos:
- user: Las coincidencias se verifican en función de los mensajes de los usuarios finales.
- agent: Las coincidencias se verifican en función de los mensajes del agente.
- cualquiera: Las coincidencias se verifican en función de los mensajes del usuario final y del agente, así como de las acciones.
Cuando se verifica una coincidencia, las expresiones se comparan con, como máximo, los 5 turnos de conversación más recientes y el primer mensaje del usuario final.
Si se encuentra una coincidencia para el ejemplo, este se prioriza sobre otros ejemplos seleccionados de forma dinámica sin coincidencias de palabras.
El formato de las coincidencias de palabras es una lista separada por comas, en la que cada expresión comienza con el tipo de expresión y dos puntos. Por ejemplo:
user:red,agent:blue,any:placeOrder
Estos coincidirían si se cumple alguna de las siguientes condiciones:
- Un mensaje de usuario final contiene
red
. - Un mensaje de agente contiene
blue
. - Cualquier mensaje contiene o acción coincide con
placeOrder
.
Agregar acción
Un ejemplo proporcionado en una guía consta de una serie de acciones. Estas acciones pueden variar en sus combinaciones, pero representan principalmente la interacción entre el usuario y la guía de procedimientos, junto con las acciones que se realizan en el medio para cumplir con la consulta o los requisitos del usuario.
Existen 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 usar estas opciones cuando crees un ejemplo nuevo haciendo clic en la opción + Ejemplo o cuando edites un ejemplo existente.
Para generar acciones automáticamente según las instrucciones existentes del libro de jugadas, 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 guía en el tiempo de ejecución en el panel Preview playbook que se encuentra a la derecha. Para guardar acciones en un ejemplo del panel Preview playbook, haz clic en Save example después de seleccionar la invocación de la guía de instrucciones de la lista de invocaciones que se encuentra a la izquierda del panel Preview playbook.
Asegúrate de verificar la exactitud de las acciones generadas automáticamente y edítalas si es necesario. Esto es especialmente importante para los libros de jugadas con pocos ejemplos o sin ellos.
El libro de jugadas admite los siguientes tipos de acciones:
Respuesta de la guía
La respuesta del libro de jugadas 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:
- Tool: Es el nombre de la herramienta que se debe invocar.
- Action: Es el nombre de la operación de la herramienta OpenAPI 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 nombre de la herramienta.
Entrada de la herramienta: Son las entradas que se incluirán en la llamada a la herramienta. Por lo general, se derivan de los turnos de conversación anteriores con el usuario.
Para las herramientas de la API abierta, se requiere JSON
requestBody
para los tipos de métodosPOST
,PUT
yPATCH
.Entrada
requestBody
de muestra de la herramienta de Open API para la acción createPet:{ "id": 1, "name": "Luna" }
Para la herramienta de almacén de datos, el ejemplo
requestBody
en el que se requiere la consulta 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 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 libro de jugadas 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 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 almacenamiento de datos, la entrada fallback
se puede usar 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 de la guía de instrucciones, agrega ejemplos que contengan el URI con el que deseas que la guía de instrucciones responda. Si este URI proviene de la herramienta de almacenamiento de datos, el resultado de la herramienta de almacenamiento de datos debe contener un URI que coincida con el URI de la respuesta de la guía de instrucciones. Ten en cuenta que no se puede usar fallback
en esta situación porque inhabilitará la capacidad de la guía de LLM para reformular la respuesta de la herramienta de almacenamiento de datos para incluir URIs en la respuesta de la guía.
Los ejemplos que contienen acciones de uso de herramientas pueden ser bastante detallados y contribuir a aumentar el 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 de la guía. En el caso de las herramientas de almacenamiento de datos, considera quitar los fragmentos de los ejemplos, ya que pueden contribuir a un alto consumo de tokens de entrada.
Invocación de la guía
Esta acción se usa cuando la guía debe invocar otra para completar la consulta del usuario. Esta acción debe especificar los siguientes detalles:
- Guía: Es el nombre de la guía que se invocará.
- Resumen de entradas de invocación de la guía: Es un resumen de las partes relevantes de la conversación anterior que son útiles para la guía que se invoca.
- Parámetros de entrada: Parámetros de entrada para pasar al libro de jugadas
- Resumen de la salida de la invocación de la guía: Es un resumen de lo que la guía debe generar cuando se completa su objetivo.
- Parámetros de salida: Parámetros de salida que genera la guía de planificación cuando se completa su objetivo.