Acciones conversacionales (Dialogflow)

Las acciones de conversación extienden la funcionalidad de Asistente de Google, ya que permiten a los desarrolladores crear experiencias o conversaciones personalizadas para los usuarios de Asistente. En una conversación, tu acción de conversación controla las solicitudes del Asistente y muestra respuestas con componentes visuales y de audio. Las acciones de conversación también pueden conectarse a servicios externos para agregar una lógica conversacional o empresarial adicional antes de mostrar una respuesta.

Por ejemplo, los usuarios pueden invocar tu acción de conversación para obtener una respuesta de tu servicio de entrega externo cuando deseen buscar información, obtener una recomendación personalizada o realizar transacciones que involucren pagos digitales.

En una conversación de ida y vuelta con Asistente de Google, un usuario pregunta acerca de una sesión en conferencia y recibe una respuesta.
Figura 1. Ejemplo de una acción conversacional

Casos de uso

Las acciones de conversación funcionan mejor para casos de uso simples que complementan otra experiencia. Las buenas acciones de conversación suelen entrar en las siguientes categorías generales:

  • Cosas que las personas pueden responder fácilmente Acciones que se pueden realizar con entradas conocidas, como horarios o fechas, como reservar un vuelo
  • Acciones rápidas y atractivas. Por lo general, estos ofrecen a los usuarios beneficios inmediatos por muy poco tiempo, como saber cuándo juega su equipo deportivo favorito.
  • Acciones que son intrínsecamente más adecuadas para la voz. Por lo general, se trata de tareas que debes realizar con las manos libres, como recibir asesoramiento durante yoga o ejercicios ligeros.

Cómo funcionan las acciones de conversación

A diferencia de las apps tradicionales para dispositivos móviles y computadoras de escritorio, que usan paradigmas centrados en la computadora, los usuarios interactúan con Acciones para Asistente a través de conversaciones que suenan naturales. Las acciones de conversación comienzan cuando un usuario las invoca y continúan hasta que este elige salir (con frases predeterminadas) o tu acción de conversación denota el final de la conversación.

Durante una conversación, Asistente transforma las entradas del usuario de voz a texto y las forma en solicitudes JSON para el procesamiento de lenguaje natural. Estas solicitudes se envían a lo que se conoce como tu entrega de conversación.

La entrega de tu conversación analiza la consulta del usuario en datos estructurados, procesa esos datos y le muestra una respuesta JSON de webhook a Asistente. Luego, Asistente procesa y presenta tu respuesta al usuario.

La entrega de la conversación se puede representar con la entrada de solicitud JSON y la salida de la respuesta JSON de webhook.
Figura 2: La entrega de conversaciones es un sistema JSON de entrada y salida JSON

Compilar tu propio servicio de procesamiento de lenguaje natural puede ser un desafío, por lo que ofrecemos Dialogflow como la forma de administrarlo. Para los desarrolladores que no pueden usar Dialogflow, también proporcionamos el SDK de Actions como una opción de copia de seguridad con una ruta de desarrollo independiente, pero relacionada.

Una vez que configuras un agente en Dialogflow, las funciones de Dialogflow aumentan la entrega de tu conversación, incluida la capacidad de usar la entrega de Dialogflow. Este enfoque te permite aislar la entrega de conversaciones de otros servicios que podrías necesitar para proporcionar a los usuarios el resultado deseado.

Actions on Google analiza la declaración de un usuario y envía una solicitud a Dialogflow. Dialogflow hace coincidir el intent y extrae parámetros para enviarlos a su entrega de Dialogflow correspondiente. Luego, la entrega envía una respuesta a Actions on Google, que la procesa en una plataforma de Asistente.
Figura 3: Entrega de conversaciones cuando se usa Dialogflow

Cómo crear una acción de conversación

La mayor parte de la creación de tu acción de conversación consiste en diseñar la conversación y compilar la entrega. Piensa en la conversación como la interfaz de usuario de tu acción de conversación. Debes pensar en cómo los usuarios invocan tu proyecto de acciones, las respuestas válidas que pueden decir en una conversación y cómo responde tu proyecto de acciones.

En tu proyecto de acciones, debes proporcionar metadatos para publicar el proyecto y especificar un método de entrega de conversaciones. Los desarrolladores que usan Dialogflow asocian su agente de Dialogflow con el proyecto y, luego, compilan la entrega a través de Dialogflow. Para los desarrolladores que usan el SDK de Actions, la creación de la entrega de conversaciones implica la programación y la implementación en el formato de webhook de conversación.

Cuando diseñes la conversación, te recomendamos que uses nuestros procesos y principios de diseño. Las interfaces de conversación siguen siendo una tecnología relativamente nueva, y aprender sobre las prácticas recomendadas puede ahorrarte tiempo en el futuro.

Entrega mediante Dialogflow

Cuando se integra a un agente de Dialogflow, el agente controla la CLN para las consultas de los usuarios en tu acción de conversación. Tu agente de Dialogflow hace lo siguiente por ti durante este paso:

  1. Analiza cada solicitud entrante del Asistente en función de las frases de entrenamiento que proporcionas y el contexto de la conversación.
  2. Hace coincidir cada solicitud con un intent de Dialogflow (también conocido como evento).
  3. Extrae parámetros en entidades de Dialogflow.

Luego, tu agente de Dialogflow puede llamar a su propia entrega (implementado como webhook) para llevar a cabo alguna lógica, como llamar a una API de REST o a otro servicio de backend que genere una respuesta para mostrar al Asistente. Este webhook también se conoce como tu entrega de Dialogflow y usa el formato de webhook de Dialogflow.

Dialogflow acepta una declaración de usuario para la coincidencia de intents y proporciona
 parámetros extraídos a la entrega de Dialogflow. La entrega muestra una respuesta al usuario.
Figura 4: Un agente de Dialogflow analiza una consulta de usuario en datos estructurados para la entrega de Dialogflow

La creación de la entrega de conversaciones cuando se usa Dialogflow consiste principalmente en el desarrollo de tu webhook de entrega de Dialogflow. En la documentación de Actions on Google, encontrarás recursos que te ayudarán a diseñar, compilar y probar tu webhook de entrega de Dialogflow. En particular, esos recursos incluyen la biblioteca cliente de Node.js y la biblioteca cliente de Java.

A medida que compiles con Dialogflow, usarás la consola de Dialogflow para crear intents, entidades y frases de entrenamiento de Dialogflow.

Para obtener más información general sobre Dialogflow, puedes leer sobre la integración de Actions on Google en la documentación de Dialogflow.

Entrega mediante el SDK de Actions

La compilación de entregas de conversaciones con el SDK de Actions consiste principalmente en crear e implementar tu paquete de acciones. Los paquetes de acciones se crean en el formato ActionPackage y usan el formato de webhook de conversación. Un paquete de acciones contiene todas las acciones de un proyecto de acciones determinado.

El Asistente proporciona consultas de los usuarios a la entrega de tu conversación mediante intents de Actions on Google. Para cada intent, el webhook de entrega debe analizarlo, procesarlo y mostrar una respuesta JSON al Asistente para el usuario.

Respuestas

Cuando creas una acción para Asistente, diseñas tus conversaciones para una variedad de plataformas, como una conversación centrada en la voz para bocinas activadas por voz o una conversación visual en una plataforma compatible con Asistente. Este enfoque permite a los usuarios realizar tareas con rapidez, ya sea mediante recursos visuales o de voz.

A medida que compilas tu entrega, puedes seleccionar entre una variedad de tipos de respuesta atractivos para que Asistente los presente a los usuarios. Estas van desde burbujas de chat que contienen texto simple hasta respuestas multimedia, carruseles y hasta HTML con Interactive Canvas.

Próximos pasos

Sigue el codelab Acciones de compilación para Asistente de Google (nivel 1) a fin de obtener instrucciones detalladas paso a paso para comenzar a compilar tu primera acción de conversación.

Luego, puedes continuar con nuestras guías para compilar tu propia entrega de conversaciones con Dialogflow o con el SDK de Actions. También puedes explorar estos recursos adicionales para crear acciones de conversación: