Manual Para Dialog Flow

User Manual:

Open the PDF directly: View PDF PDF.
Page Count: 23

DownloadManual Para Dialog Flow
Open PDF In BrowserView PDF
INSTITUTO TECNOLÓGICO DE MÉRIDA
DEPARTAMENTO DE SISTEMAS COMPUTACIONALES

Proyecto:

“Manual para aprender Dialogflow”
Presentan:
Alonzo Mex Fátima Guadalupe.
Belmonte May Christopher Alexander.
Castro Ynurreta Iván Antonio.
Gómez Alcocer Isaías Armando.
Tuyub Huchin Misael Eduardo.

Mérida, Yucatán a 26 de Mayo de 2018.

En esta guía se mostrarán los pasos a seguir para entender de una manera efectiva
los términos que corresponder al dialogflow. Primero que nada, en la interfaz se
tendrá que hacer un agente(es la entidad capaz de poder percibir su entorno,
procesar las percepciones y responder o actuar en su entorno de una manera
racional.), donde en dicho agente se le configurara el idioma que tendrá por defecto
el cual en esta ocasión será español, pero con la posibilidad de ampliar el lenguaje
que se desee utilizar, continuando con la configuración del agente se seleccionara
la zona horaria y el proyecto de Google con el cual está relacionado.

Una vez creado se va a la pantalla del agente donde muestra lo siguiente:

Como se muestra en la pantalla lo primero que se puede observar son los intents o
intenciones que mas adelante se hablara a fondo del tema, lo relevante es que
contiene dos intenciones por defecto las cuales son:


Fallback Intent: Son las respuestas que tendrá el bot, cuando no entienda
que se le está diciendo, puedes configurar varias respuestas.



Welcome Intent: Es la respuesta que obtiene el usuario cuando desea
comunicarse con el bot, es un saludo de bienvenida y entraremos en esta
intención para entender un poco más su estructura.

En el caso de dialogflow es importante recalcar que es necesario tener casos de
uso específicos para evitar inconvenientes a largo plazo. Una vez seleccionado la
opción de default welcome se mostrará algo como lo siguiente:

Como se puede observar estas frases de saludo, son frases que viene por defecto,
y lo que se hará es agregar todas las frases con la cual suponemos el usuario
utilizara para saludarnos. Una vez configurado los posibles saludos, toca ir a la parte
de las respuestas.

De igual manera que en los posibles saludos, se agregara todas las posibles
respuestas que se ocurran, y una vez hecho esto se probara en la consola.

A continuación, se muestra el uso y el comportamiento de las entidades, para esto
se necesitará el ejemplo de la creación de un bot para una clínica con la
configuración de cita con un paciente. Como primer paso se crea el bot en este caso
con el nombre de Intent_Cita

En la parte inferior le saldra botones para agregar las frases, parametros, etc. Solo
ponemos “Add…” y listo.
El caso es el siguiente:
Un paciente se conectará con nuestro agente Nicolas y le dirá que desea una
cita para el día 10 de noviembre, el agente le preguntará la hora de la cita y
luego para culminar le preguntará si desea pagar en efectivo o con tarjeta de
crédito, luego se registrará la cita y agradecerá al paciente por la llamada.
Para empezar, se colocan las frases con las cuales el usuario indique una cita.

Al momento de colocar la frase y presionar Enter, se da con la sorpresa que
Dialogflow entendió lo que deseabas poner, y eso es lo impresionante de esta
tecnología.

Se puede observar que agregó dos entidades de manera automática como una
ayuda para nosotros, estas entidades son del mismo sistema, el cual asume que
una parte de la frase hace referencia a una fecha y la otra parte hace referencia a
una hora especifica. En este caso una servirá y la otra no, así que eliminamos la
que está sombreando la palabra “una” por qué dentro de nuestro contexto la palabra
“una” la hacemos referencia a cantidad, mas no a la hora.
Para eliminar basta con seleccionar en la palabra “una” y darle en el boton de “x”.

Para que pueda quedar de la siguiente manera:

A todo esto se le pueden seguir agregando mas frases como se ha mostrado
previamente. Ahora bien el sistema le tiene que preguntar al paciente la hora que
quiere dicha cita, para esto vamos a colocar nuevamente frases en la herramienta,
simulando una respuesta a la pregunta del agente, por ejemplo:

Ahora, lo que se tiene que hacer es poder insertar las preguntas que el robot dará
a cada tipo de entidad que se ingresa. En este caso sabemos que el paciente
indicará que desea una cita en cierta fecha, luego el bot le preguntará la hora de la
cita, para hacer esto lo insertamos en la sección de parámetros.

En estos momentos deberían de tener algo así:

Entonces nos vamos a la entidad donde debemos de colocar la pregunta. Si
seguimos los colores de la frase con la del parámetro veremos que es el segundo
parámetro llamado “Time”.

Luego, en este parámetro le vamos a decir que es requerido, y presionamos en el
botón “Define prompts” y colocamos las preguntas que deseamos, algo así:

Ahora se realiza la prueba la cual termina con éxito, pero la duda es saber donde
se almacenan los datos de la cita, hasta este momento lo unico que va a hacer el
sistema es guardar esos datos en el tiempo que dura la intención. Podemos ver
estos valores en la consola de la derecha.

Mas adelante se tocará el tema del como guardar mis datos en una base de datos
o conectarse a un api del propio sistema de citas.

Para poder terminar el caso de uso, faltaría agregar como desea pagar el paciente
la cita. Como dialogflow no tiene este tipo de entidad, se tiene que crear una entidad
personalizada, para esto vamos al panel izquierdo y vamos a la opción de entidades
(Entities).

Se presionará el botón de Crear Entidad.

Se creará una entidad que se llama TipoPago y se colocará dos entradas que son
las que posiblemente el paciente mencione. Efectivo y Tarjeta de Crédito y al
costado, las posibles frases que una persona puede decir para dar entender el tipo
de pago que va a realizar.

Presionamos grabar y con esto regresamos a nuestra Intención cita para terminar
de configurar.

Ya en nuestra intención, se colocará una frase de como el cliente podria responder
a la pregunta de cómo pagará la cita. colocando “Pagaré con efectivo.”

Dialogflow ya entendio que existe una nueva entidad y ya la encontró. Entonces de
aca ya es facil por que ya sabemos que debemos colocar que el parametro de la
entidad es obligatorio y colocar una pregunta.

Por último, solo queda hacer las pruebas para ver cómo funciona.

Eso sería todo se tienen todos los datos de la cita para poder registrarla en la base
de datos. Cabe mencionar que en la documentación de Dialogflow, se recomienda
usar las frases que contengan el “”, ya que de esta manera se puede ayudar a que
robot pueda entender mucho más las intenciones del usuario y pueda aprender.

Ahora bien, se pasará a la parte de lo que son los contextos de conversación. En
una comunicación entre dos personas, el Contexto es el conjunto de
circunstancias en las cuales se produce la Comunicación (lugar y tiempo,
cultura del Emisor y el Receptor, etc.), para no perder el contexto en una
conversación siempre es importante tener información de la frase anterior para
seguir teniendo una comprensión en el mensaje. Para poder dejar en claro el tema
es necesario poner el siguiente ejemplo:


Persona: Hola Nicolás, ¿sabes cuál es el clima en Lima, Perú?



Nicolás: Claro que sí, el clima es de 25 grados centígrados.



Persona: ¿Y en New York?



Nicolás: Es de 12 grados centígrados.

Como se puede observar en esta conversación existe un contexto que Nicolás tuvo
que tener para poder contestar la segunda pregunta sobre el clima en New York. Si
esta primera pregunta no hubiese existido, no se sabría que deseaba saber la
persona. Por ejemplo, si se hace la pregunta a Nicolás sin un contexto antes no se
sabría que responder.


Persona: ¿Ah y en New York?.



Nicolás: ¿Disculpa?

No existe contexto es por eso que no se puede saber la intención de la persona.

Ya con este preámbulo, se ira a configurar esto en Dialogflow, iniciemos creando
una intención que se llame: Intent_contexto_1

Ahora, en la parte de contexto se puede observar dos campos, que dicen “Add input
Context” y “Add output Context”.


Add input context: En este campo se va a colocar el contexto de donde se
está recibiendo la primera parte de la conversación o los contextos
anteriores.



Add output context: En este campo se va a colocar el contexto a donde se
enviará las respuestas siguientes.

De esta forma es como se enlaza la conversación y no se pierda el contexto. En
dialogflow existen dos maneras de hacerlo, una que te ayuda la misma herramienta
y la otra que sería de forma manual. Ahora se centrará en la primera.

Crear contexto con Follow intent

Dialogflow te ayuda a crear los contextos en las conversaciones mediante los
“Follow Intent”. En este caso ya se tiene creado una intención, ahora coloquemos el
cursor del mouse encima de la intención, y saldrá la opción para poder crear una
intención de seguimiento:

Ahora se creará un caso de uso que tenga un mejor entendimiento.

El caso de uso dice: Una persona ingresará al bot y le consultará a Nicolás si
puede hacer una reserva en el hotel, Nicolás le preguntará si es socio del hotel
y si ya se había hospedado antes.

En la primera intención se colocará las frases del cliente y en la respuesta se
colocará las preguntas que el bot le hará.

Perfecto, lo que se está haciendo es colocar ciertas preguntas donde lo más
probable es que el cliente responda SI o nos responda NO.

Entonces se ccomenzará a crear el hilo de la conversación, para esto vamos a la
ayuda ya mencionada antes de dialogflow.

Y seleccionará en primera instancia el que dice “YES”.

Y automáticamente se genera una intención debajo de la intención principal.

Como se puede notar en la intención principal, se generó un alias en el contexto de
salida, esto indica que está enviando esta información al siguiente contexto.

Y si se dirige a la intención que se creó, se puede ver que está recibiendo este
mismo alias, pero en el campo de entrada.

De esta manera es como se va armando el contexto de la conversación, si se
observa el nuevo contexto que creó el dialogflow para respuestas “YES”, se
observará que la herramienta te ayuda a armar las frases.

Siguiendo con el caso de uso, al responder SI el usuario, entonces se le enviará a
la siguiente pregunta, para esto se genera una nueva intención debajo de la última
que se creó y quedaría más o menos así:

Al hacer esto, se nota que las tres intenciones ya se encuentran enlazadas por los
alias que genera la misma aplicación.

Intención

de

segundo nivel

Intención de tercer nivel.

Continuando solo se hará las pruebas de como funciona estas intenciones y con
ello ver que de esta manera se pueden ir creando un modelo conversacional de
manera fácil y sencilla con la ayuda de dialogflow. En el ejemplo anterior si no existe
un contexto creado y nosotros le ponemos al bot solamente la palabra SÍ, el bot no
entenderá.

Ahora se creará el contexto de la otra forma mencionada, de la forma manual.

Así como Dialogflow ayuda creando los contextos de manera automática, hay veces
que esta situación no podrá ayudar y se tiene que crear de manera manual, para
este caso se usará el ejemplo del clima.

Primero se crea una intención y se configura de la siguiente manera. En este caso,
usando una entidad de sys.any.

Por el momento no hay ningún inconveniente a la hora de hacer la prueba. Para que
al seguir con las pruebas el bot pueda seguir entendiendo el contexto, es necesario
colocar un alias dentro del campo de “Add output context” y llamándolo como

contexto_clima en este caso por cuestiones del ejemplo. Y se creara otra intención
llamada Intent_seguimiento_clima, para que al llegar a la parte de contexto se reciba
la entrada de contexto_clima.

Dentro del mundo de contextos, también existe un concepto más que se llama
Lifespan. El cual es un número que se encuentra al costado de los alias del
contexto, donde nos va a indicar la cantidad de veces que nosotros podemos
configurar el contexto para que no se pierda. En la documentación de dialogflow la
cantidad de veces que se puede esperar para no perder un contexto es de 5 o en
el intervalo de 20 minutos. Si pasa esto, entonces el contexto desaparecerá y el bot
ya no entenderá si deseas seguir una conversación.

Ahora para terminar de entender el funcionamiento del chatbot es necesario hablar
de los eventos los cuales son los indicadores que podemos darle a nuestro asistente
para que pueda responder un llamado desde fuera de dialogflow. Esta parte que
voy a comentar es un poco más técnica pero importante cuando deseas trabajar
con tu bot desde otras herramientas y dialogflow te contestará sin problemas.

Para empezar, se crea una intención y se le pone de nombre al evento: EventAlerta.

Es importante mencionar que por defecto dialogflow crea un evento de “Welcome”
en la intención Default Welcome Intent. Este evento se crea para todas las
aplicaciones que tiene Dialogflow integrada y que ayuda cuando una persona saluda
al bot desde otra herramienta y este le responde con el saludo correspondiente.

Y esto lo puedes agregar solo colocando un alias en eventos.



Source Exif Data:
File Type                       : PDF
File Type Extension             : pdf
MIME Type                       : application/pdf
PDF Version                     : 1.5
Linearized                      : No
Page Count                      : 23
Language                        : es-MX
Author                          : Isaias Armando gomez alcocer
Creator                         : Microsoft® Word 2013
Create Date                     : 2019:05:26 23:33:27-05:00
Modify Date                     : 2019:05:26 23:33:27-05:00
Producer                        : Microsoft® Word 2013
EXIF Metadata provided by EXIF.tools

Navigation menu