Читать книгу Google Assistant. Desarrollo de aplicaciones IoT para Arduino y ESP8266 - Tomás Domínguez Mínguez - Страница 13

3.4 MODIFICACIÓN DE LA INTENCIÓN DE BIENVENIDA EN DIALOGFLOW

Оглавление

Para acceder a la consola de Dialogflow, pulse sobre «Sign-in with Google».


Se le pedirá que acepte los permisos necesarios para seguir adelante. Pulse «Permitir» en una de las ventanas y «ACCEPT» en la otra.


Entrará automáticamente en la consola de esta nueva herramienta, con el mismo usuario de Actions on Google.


Si usa el navegador Chrome, como yo, y ha iniciado sesión en varias cuentas, asegúrese de estar utilizando siempre el mismo usuario en ambas consolas.

¿Por qué es necesaria utilizar esta otra herramienta? Porque es la que le proporcionará los medios para realizar el análisis semántico que le permita al asistente entender lo que le diga el usuario. ¿Cómo se realiza dicho análisis semántico? Aplicando complejas técnicas de análisis y comprensión del lenguaje natural o NLU (Natural Language Understanting). Por eso es necesario el uso de Dialogflow, ya que le ocultará la complejidad de todas estas técnicas, creando un agente específico para su proyecto, capaz de entender determinadas expresiones dichas por el usuario, de las que extraerá la información (parámetros) necesaria para realizar la acción solicitada y elaborar la respuesta más adecuada. Por ejemplo, para encender un dispositivo domótico, un usuario puede decir «enciende la luz» o «pon la lavadora». Estas expresiones son totalmente diferentes, pero ambas activarían la misma intención, que ejecutaría la acción de encendido. Además, en ambas frases, se extraería el parámetro que contiene el dispositivo que se pretende encender: la luz, en el primer caso, y la lavadora, en el segundo.

En DialogFlow se establecerá la forma en la que se va a llevar la conversación, marcando los turnos de palabra (cada uno asociado a una intención concreta) que se irán sucediendo, hasta llegar a dar la respuesta adecuada al usuario.

La consola de Dialogflow tendrá el aspecto de la siguiente imagen. Asegúrese de que aparece el lenguaje y el área geográfica en la que se encuentra. Para crear el agente de dicho proyecto, que será el que lleve a cabo toda la lógica de la interacción con el usuario, pulse sobre el botón «CREATE».



Si en la parte superior izquierda de la consola apareciera «Dialogflow Essentials» en vez de «Dialogflow», puede que no disponga de todas las opciones utilizadas en las prácticas. En ese caso, antes de crear el agente tendría que desplegar el menú que hay a su derecha y seleccionar la opción «US» (localización de los servidores de Google que va a utilizar). En el momento de escribir este libro, Dialogflow está en proceso de evolución y su interfaz de usuario no es la misma en todas las regiones.

Transcurridos unos segundos, podrá ver seleccionada la opción «Intents» (‘intenciones’) del menú lateral izquierdo. Esta muestra las intenciones que se han creado automáticamente con su agente: la intención de bienvenida («Default Welcome Intent») y la intención alternativa («Default Fallback Intent»). Estudiará en detalle este tipo de intenciones más adelante.

Ha llegado el momento de enseñar al asistente cómo quiere que responda a las solicitudes del usuario. De momento solo desea que, cuando lo invoque, únicamente salude como usted le haya indicado.

Tal como se explicó anteriormente, para iniciar la conversación con un asistente se debe invocar su acción principal, diciendo, por ejemplo: «Hablar con mi primer asistente». En ese momento, se cumplirá la intención de bienvenida (Welcome Intent), creada de forma automática por Dialogflow, que responderá con alguna frase de saludo inicial. Para ver cuáles son tales frases, pulse en dicha acción («Default Welcome Intent»).


La configuración de las intenciones se estructura en una serie de secciones que estudiará en detalle más adelante. Ahora, únicamente le interesa saber que las frases de bienvenida están en la sección de respuestas («Responses»). Para ver cuáles son, en la parte superior derecha, tiene un símbolo en forma de punta de flecha que tendrá que pulsar para desplegar la información que contiene. Allí podrá ver todas las expresiones de saludo. Como puede observar, hay tres: «¡Hola!», «¡Hey!» y «¡Buenos días!».


Dichos saludos de bienvenida le serán ofrecidos de forma aleatoria, cada vez que invoque la acción. ¿Quiere comprobarlo? En el menú lateral izquierdo de la consola, seleccione «Integrations». Luego, en el panel principal, donde se muestra el contenido de dicha opción, pulse el enlace «INTEGRATION SETTINGS» de Google Assistant.



Si no le apareciera la opción «Integrations», compruebe que a la derecha de «Dialogflow Essentials» esté seleccionada la opción «US». En caso contrario, tendría que borrar el agente (en el capítulo que describe la consola de Dialogflow se indica dónde hacerlo) y volver a crearlo desde Actions on Google (pestaña «Overview» → «Build your Action» → «Add Action(s)»), seleccionado previamente dicha región en el menú desplegable que hay a la derecha de «Dialogflow Essentials».

Surgirá una ventana emergente, en la que conviene activar la opción que permite propagar automáticamente los cambios que realice en Dialogflow hacia Actions on Google. De esta forma, ambos servicios se sincronizarán y el simulador tendrá en cuenta los cambios que vaya realizando durante el proceso de desarrollo de las intenciones. Finalmente, pulse sobre el botón «TEST».


Se habrá creado una nueva pestaña en el navegador, que lo habrá llevado, de nuevo, a la plataforma Actions on Google; en concreto, a su sección de pruebas (pestaña «Test»). En el panel derecho de la ventana, se mostrará el diálogo que mantenga con el asistente. En la parte superior del panel izquierdo, está situado el campo de entrada en el que tendrá que escribir las expresiones que quiera decir al asistente. Selecciónelo y pulse retorno de carro (Enter) ya que, de forma predeterminada, contiene el texto «Hablar con mi primer asistente», que invoca la acción principal de su asistente (o pulse el botón del mismo nombre, que aparece como sugerencia).


Enseguida oirá (si tiene activado el altavoz del ordenador) y verá escrita la respuesta dada por el simulador: «De acuerdo. Aquí tienes la última versión de asistente» y, luego, «¡Hola!» (podría haber sido también «¡Hey!» o «¡Buenos días!»).



El procesamiento de lenguaje natural realizado por el agente de Dialogflow le permitirá invocar su acción principal de distintas formas; por ejemplo, diciendo «quiero hablar con mi primer asistente» o «abre mi primer asistente». No valen todas las expresiones, por lo que tendrá que probar y quedarse con la que más le guste.

Aunque todavía no lo sepa, a partir de este momento, el asistente habrá iniciado una conversación, en la que le irá contestando según le haya enseñado a responder (de momento nada, ya que el comportamiento de bienvenida lo tiene por defecto). Compruébelo escribiendo cualquier frase (excepto expresiones de saludo del tipo «hola», «saludos», etc.). Siempre le contestará diciendo que no lo entiende utilizando, eso sí, diversas expresiones. Dichas expresiones están asociadas a otra de las intenciones que se crea por defecto con el agente Dialogflow, llamada «Default Fallback Intent» (‘intención alternativa’). Esta se activará cuando lo que diga el usuario no coincida con ninguna otra intención; es decir, cuando no se ha reconocido lo que ha dicho.

Dicha intención, al igual que sucedía con la de bienvenida, dispondrá de una variedad de respuestas; en este caso, para indicar al usuario que no le ha entendido. Para verlas, vaya a la pestaña de su navegador donde está la consola de Dialogflow. Allí, seleccione la opción «Intents» del menú lateral izquierdo y, en el panel principal, seleccione la intención «Default Fallback Intent».


Aparecerá la información de configuración de dicha intención, en cuya sección «Responses» podrá ver todas las respuestas posibles. Al igual que en la intención de bienvenida, se podrán añadir y/o quitar las que quiera.


Como todavía no sabe cómo finalizar la conversación, estará en ella hasta que diga alguna de las palabras que Google Assistant tenga programadas por defecto para tal fin. Diga, por ejemplo, «cancelar» (o pulse sobre el botón «Cancel», que se ofrece como sugerencia). Observará un mensaje en el que se indica que su primer asistente ha abandonado la conversación. Para reanudarla, tendría que volver a decir de nuevo: «hablar con mi primer asistente».


Para no tener que salir de la conversación cada vez que quiera volver a invocar su acción conversacional, va a establecer que la intención de bienvenida sea también la que finalice dicha conversación. Además, aprovechará para hacer que se presente amablemente, en vez de utilizar las típicas palabras de cortesía que tiene por defecto.

Vaya de nuevo a la pestaña de su navegador donde está la consola de Dialogflow y acceda a la intención de bienvenida. Para borrar todas las frases de saludo que tiene, presione en el icono con forma de papelera que aparece en la parte superior, a la derecha de «Text Response», tal como se muestra en la siguiente figura, o vaya pulsando el mismo icono que aparece a la derecha de cada una de las frases de bienvenida cuando sitúa el cursor del ratón encima de ellas. De esta forma, las iría borrando de una en una.


A continuación, pulse sobre el botón «ADD RESPONSES» y, en el menú que se despliega, seleccione «Text Response».


Introduzca las frases con las que quiera que el asistente lo salude. Yo he elegido «Bienvenido a su primer asistente» y «Hola, soy su primer asistente». Usted puede poner otras diferentes.

Aproveche también para habilitar la opción «Set this intent as end of conversation»; es decir, que, una vez que lo haya saludado, finalice la conversación. Para guardar los cambios realizados en la intención, no se olvide de pulsar sobre el botón «SAVE».


Espere hasta ver aparecer una serie de mensajes emergentes en la parte inferior derecha de la ventana, indicando no solo que dichos cambios se han guardado correctamente, sino que el algoritmo de aprendizaje del agente ha sido convenientemente entrenado para tenerlos en cuenta.


Para probar que el asistente lo saluda de la forma prevista, vaya de nuevo a la pestaña en la que se encuentra el simulador. Allí, invoque la acción principal de su primer asistente pulsando sobre el botón «Hablar con mi primer asistente», que se ofrece como sugerencia. Observará que, ahora, contesta con una de las nuevas frases de respuesta introducidas, saliendo automáticamente de la conversación. Lo puede saber por el mensaje final «mi primer asistente ha abandonado la conversación».


Vuelva a invocar la acción principal. Verá cómo, efectivamente, su primer asistente le vuelve a responder con otra de las frases de saludo introducidas por usted en la intención de bienvenida. Esta vez, no ha tenido que decir previamente «cancelar», como sucedía anteriormente.

Otra forma de probar el comportamiento de su asistente sin necesidad de salir de Dialogflow es mediante la utilidad situada en la parte superior derecha de la ventana principal de la consola.


Desde allí, podrá escribir una frase y comprobar cuál es la respuesta del asistente. En este caso, no será necesario invocar la acción conversacional, porque se parte del hecho de que ya se encuentra dentro de su asistente. Sin embargo, diciendo una de las frases de entrenamiento de la intención de bienvenida (por ejemplo, «hola»), tendrá el mismo efecto.


Esta utilidad tiene diversas limitaciones, entre la que destaca que solo muestra el último turno de palabra o que no informa del contenido de los mensajes HTTP de petición y respuesta intercambiados en la comunicación. Como ventaja, presenta el nombre de la última intención cumplida, la acción que lo ha provocado y los contextos activos (estos dos últimos conceptos se estudiarán más adelante), así como información útil de depuración.

Google Assistant. Desarrollo de aplicaciones IoT para Arduino y ESP8266

Подняться наверх