Resguardo generativo

La función de resguardo generativo usa los modelos generativos de lenguaje grandes (LLM) más recientes de Google para generar respuestas de agente virtual cuando la entrada del usuario final no coincide con un intent o parámetro para completar formularios.

La función se puede configurar con una instrucción de texto que le indique al LLM cómo responder. Puedes usar una instrucción de texto predefinida o agregar tus propias instrucciones. Con la instrucción predefinida, el agente virtual puede controlar situaciones conversacionales básicas. Por ejemplo:

  • Saludar y despedir al usuario.
  • Repite lo que dijo el agente en caso de que el usuario no haya entendido.
  • Mantén la línea cuando el usuario la solicite.
  • Resume la conversación.

Puedes habilitar el resguardo generativo en controladores de eventos sin coincidencias que se usan en flujos, páginas o durante el relleno de parámetros. Cuando el resguardo generativo está habilitado para un evento sin coincidencias, cada vez que se activa ese evento, Dialogflow intenta producir una respuesta generada que se responderá al usuario. Si la generación de respuesta no se realiza de forma correcta, se emitirá la respuesta normal del agente prescrito.

Limitaciones

La función está disponible en los lenguajes compatibles con la API de PaLM de Vertex AI.

Habilita el resguardo generativo

Puedes habilitar el resguardo generativo en tu agente en controladores de eventos sin coincidencias, que se pueden usar en la entrega de flujos, páginas o parámetros.

Habilita el resguardo generativo para los eventos sin coincidencias de todo un flujo:

  1. Ir a la consola de Dialogflow CX
  2. Selecciona un proyecto
  3. Selecciona un agente y, luego, un flujo.
  4. Haz clic en la Página de inicio del flujo para expandirla.
  5. Haz clic en sys.no-match-default, en Controladores de eventos.
  6. Marca Habilitar resguardo generativo en Respuestas del agente.
  7. Haz clic en Guardar.

Habilita el resguardo generativo en eventos específicos sin coincidencias:

  1. Navega al controlador del evento No-match de destino (cualquier evento que comience con No-match, como No-match default, No-match 1, etcétera).
  2. Marca Habilitar resguardo generativo en Respuestas del agente.
  3. Haz clic en Guardar.

Configura el resguardo generativo

Como se mencionó antes, la función de resguardo generativo pasa una solicitud a un modelo de lenguaje grande para producir la respuesta generada. La solicitud toma la forma de una instrucción de texto que es una combinación de lenguaje natural e información sobre el estado actual del agente y de la conversación. La instrucción y la respuesta generada se comparan con una lista de frases prohibidas. Si contienen alguna frase prohibida o se consideran no seguras, la generación no se realizará correctamente y se emitirá la respuesta prescrita habitual (en El agente dice en la misma entrega) en su lugar.

La función se puede configurar de varias maneras:

  1. Selecciona una instrucción predefinida.
  2. Definir una instrucción personalizada
  3. Agregar o quitar frases de la lista de frases prohibidas.

Cuando creas una instrucción, además de una descripción en lenguaje natural del tipo de contexto que se debe generar, también puedes usar los siguientes placeholders:

Término Definición
$conversación La conversación entre el agente y el usuario, sin incluir la última declaración del usuario.
${conversation USER:"<userprefix>" AI:"<prefijo del agente>" TURNS:<turn count>} Una versión parametrizada del marcador de posición $conversation. Puedes personalizar el prefijo del usuario final (USER), el prefijo del agente (AI) y la cantidad de turnos anteriores que se deben incluir (TURNS). Se deben especificar todos los valores de parámetros de marcador de posición. Por ejemplo, ${conversation USER:"Human says:" AI:"Agent says:" TURNS:4}:
$last-user-declaración La última declaración del usuario.
$flow-description Es la descripción del flujo del flujo activo.
$route-descriptions Las descripciones de intents de los intents activos

Asegúrate de tener buenas descripciones de intents y flujo.

Elige una instrucción predefinida

  1. En Agent Settings, navega a la pestaña Generative AI y, luego, a la pestaña secundaria Generative Fallback.
  2. Selecciona una de las opciones del menú desplegable Plantilla.
  3. Haz clic en Guardar.

La función proporciona dos mensajes de plantilla, la plantilla predeterminada (que no está visible) y la plantilla ejemplo, que puede servir como guía para escribir tus propios mensajes.

Define tu propia instrucción

  1. En Agent Settings, navega a la pestaña Generative AI y, luego, a la pestaña secundaria Generative Fallback.
  2. Selecciona + plantilla nueva en el menú desplegable Plantilla.
  3. Agrega un nombre de plantilla en Template name.
  4. Agrega una Instrucción de texto.
  5. Haz clic en Guardar.

También puedes comenzar por editar la plantilla Example y guardarla como una plantilla nueva:

  1. Selecciona Example en el menú desplegable Template.
  2. Haz clic en Editar.
  3. Edita el campo Nombre de la plantilla.
  4. Edita la instrucción de texto.
  5. Haz clic en Guardar.

Modificar la lista de frases prohibidas

  1. En Configuración del agente, navega a la pestaña IA generativa y, luego, a la pestaña secundaria General.
  2. En la sección Frases bloqueadas, inspecciona, agrega o quita frases de la lista.
  3. Haz clic en Guardar.

Prueba el resguardo generativo

Puedes probar la función de resguardo generativo en el simulador. Cada vez que la declaración de un usuario conduce a una falta de coincidencia en un flujo o página en los que el evento de no coincidencia se configuró para producir una respuesta generativa (y la generación se realiza con éxito), el agente mostrará la respuesta generada.

Codelab

Consulta también el Codelab de resguardo generativo.

Soluciona problemas

Si deseas depurar la función, puedes inspeccionar el mensaje de entrada del modelo de lenguaje grande (LLM) resuelto en el simulador de la consola de Dialogflow:

  1. Haz clic en el botón Respuesta original:

    Respuesta original

  2. Busca el campo "Generative Fallback Prompt". Lee estos campos como texto sin formato y verifica si la entrada de LLM tiene sentido. Si una frase contiene $, examina la entrada del simulador y aclara si las $ de las instrucciones son intencionales (por ejemplo, $ en price is $10 probablemente sea intencional, mientras que visit $city probablemente no lo haga y podría implicar un uso inadecuado o un error). Si no estás seguro, comunícate con el equipo de asistencia.

  3. Si usas una plantilla de instrucción no predeterminada, pero no puedes ver el campo “Mensaje de resguardo generativo”, comunícate con el equipo de asistencia.