Prácticas recomendadas de la guía

Las siguientes prácticas recomendadas pueden ayudarte a compilar agentes sólidos.

Nombre de la guía en lenguaje natural

Usa lenguaje natural con significados claros para los nombres de los libros de jugadas. Por ejemplo, "Customer Help Center Playbook" es más descriptivo que "company_specialist", lo que ayuda al rendimiento de los generadores de IA durante el tiempo de ejecución.

Objetivos concisos

Los objetivos deben ser una descripción concisa del propósito de la guía.

Proporciona instrucciones de calidad

Las instrucciones deben cumplir con los siguientes requisitos:

  • reflejar el enfoque paso a paso para resolver un problema del usuario final
  • deben ser oraciones concisas en lenguaje natural de instrucciones de alto nivel
  • ser directo y especificar las situaciones en las que se usa la herramienta

Al menos un ejemplo para cada libro de jugadas

Debes tener al menos un ejemplo para cada libro de jugadas, pero se recomienda tener al menos cuatro. Los ejemplos deben incluir situaciones de éxito.

Sin suficientes ejemplos, es probable que un libro de jugadas genere un comportamiento impredecible. Si tu libro de jugadas no responde o no se comporta de la manera que esperas, es probable que la causa sean ejemplos faltantes o mal definidos. Intenta mejorar tus ejemplos o agregar otros nuevos.

Precisión de las instrucciones y los ejemplos

Si bien es útil escribir instrucciones claras y descriptivas, la calidad y la cantidad de tus ejemplos son lo que determina la precisión del comportamiento del libro de jugadas. En otras palabras, dedica más tiempo a escribir ejemplos detallados que a escribir instrucciones perfectamente precisas.

Herramientas de referencia en los ejemplos

Si la guía está diseñada para proporcionar respuestas con herramientas, haz referencia a las herramientas en los ejemplos correspondientes a este tipo de solicitud.

Campo operationId del esquema de la herramienta

Cuando definas esquemas para tus herramientas, el valor de operationId es importante. Las instrucciones de tu libro de jugadas harán referencia a este valor. Las siguientes son recomendaciones de nombres para este campo:

  • Solo letras, números y guiones bajos.
  • Debe ser único entre todos los operationId descritos en el esquema.
  • Debe ser un nombre significativo que refleje la capability proporcionada.

Validación del esquema de la herramienta

Debes validar el esquema de tu herramienta. Puedes usar el editor de Swagger para verificar la sintaxis del esquema de OpenAPI 3.0.

Cómo controlar los resultados vacíos de la herramienta

Cuando tu guía se basa en una herramienta para informar su respuesta, un resultado de herramienta vacío puede generar un comportamiento impredecible de la guía. A veces, el generador de IA de la guía de jugadas alucinará información en una respuesta en lugar de un resultado de la herramienta. Para evitar esto, puedes agregar instrucciones específicas para asegurarte de que el generador de IA de la guía no intente responder por sí solo.

Algunos casos de uso requieren que las respuestas de los manuales estén bien fundamentadas en los resultados de las herramientas o los datos proporcionados, y deben mitigar las respuestas basadas solo en el conocimiento del generador de IA de los manuales.

Ejemplos de instrucciones para mitigar las alucinaciones:

  • "Debes usar la herramienta para responder todas las preguntas del usuario"
  • "Si no recibes datos de la herramienta, responde que no conoces la respuesta a la consulta del usuario"
  • “No inventes una respuesta si no obtienes datos de la herramienta”.

Genera un esquema con Gemini

Gemini puede generar un esquema por ti. Por ejemplo, intenta con "¿Puedes crear un esquema de ejemplo de OpenAPI 3.0 para el Calendario de Google?".

Guías enfocadas

Evita crear playbooks muy grandes y complejos. Cada libro de jugadas debe realizar una tarea específica y clara. Si tienes una estrategia compleja, considera dividirla en subestrategias más pequeñas.

Evita los bucles y la recursividad

No crees bucles ni recursividad cuando vincules agentes en tus instrucciones.

Proporciona información de enrutamiento a los ejemplos

Cuando un libro de jugadas debe enrutar a otro, debes proporcionar esta información a los ejemplos. Esto se proporciona a un ejemplo del campo Ejemplo final con información de salida de la sección de ejemplo Entrada y salida.

Por ejemplo, la oración final de este campo podría ser "Redireccionar a la estrategia predeterminada para obtener más consultas".

Usa las funciones de JavaScript de Messenger de los agentes conversacionales (Dialogflow CX) para la personalización

Cuando usas el agente de conversación (Dialogflow CX) de Messenger, las siguientes funciones son útiles para enviar información de personalización del usuario desde la interfaz web a la guía:

Planifica el rendimiento

Por lo general, las funciones generativas requieren varios segundos o incluso decenas de segundos para generar una respuesta. Si bien los guiones mejoran la naturalidad de la conversación, es fundamental administrar los tiempos de respuesta para mantener una experiencia positiva del usuario final. Estas son algunas estrategias para optimizar el rendimiento:

  • Cómo equilibrar el uso de funciones generativas

    Considera cuidadosamente la compensación entre el tiempo necesario para ejecutar varias funciones generativas y el valor que aportan a la conversación. Evita el uso excesivo de estas funciones si no contribuyen de manera significativa al objetivo del usuario.

  • Minimiza la entrada de funciones generativas

    Intenta recopilar y procesar la cantidad mínima de información necesaria para que un generador de IA genere una respuesta útil. Esto puede reducir significativamente el tiempo de procesamiento.

  • Cómo usar el almacenamiento en caché de contexto

    Si usas Gemini a través de una herramienta y tienes un contexto inicial grande, explora la información de almacenamiento en caché con el almacenamiento en caché de contexto de Vertex AI para evitar solicitudes repetitivas de los mismos datos. Implementa respuestas fijas para aumentar la velocidad:

    Si tu aplicación no requiere contenido dinámico y único, considera almacenar respuestas que se usen con frecuencia en una base de datos tradicional, como Firebase. Debido a que están predefinidas y están disponibles de inmediato, estas respuestas fijas proporcionan tiempos de respuesta mucho más rápidos que una función generativa que necesita calcular una respuesta sobre la marcha.

  • Indica al generador de IA que produzca respuestas concisas de la guía

    En el caso de la entrada y salida de texto, el tiempo de respuesta del generador de IA depende en gran medida del modelo que se usa y de la longitud de la salida. Las respuestas breves pueden mejorar significativamente el rendimiento. Si bien la longitud de entrada también es un factor, la longitud de salida tiene un impacto más grande.

  • Respuestas a transmisión:

    Transmite las respuestas de la guía de respuestas al cliente de Dialogflow, que, a su vez, transmite las respuestas al usuario final. Esto contrasta con esperar a que se genere la respuesta completa antes de enviar cualquier parte de ella. La transmisión de respuestas proporciona una experiencia del usuario mejorada, ya que entrega respuestas parciales a medida que están disponibles. Este enfoque minimiza la demora percibida y reduce el tiempo de espera del usuario.