Construyendo un bot con SAP Conversational AI – continuación

Confío en que hayáis podido superar lo de los (no) chistes de ayer, así que vamos a recuperar dónde nos quedamos y vamos a ver cómo terminamos de construir nuestro bot.

Ahora voy a añadir un par de intents nuevos, con la reacciones que pueden provocar nuestros chistes y en función de eso, el bot me contestará de una manera o de otra.

Antes de eso, voy a modificar algo de lo que hice ayer, que no me suelte los 2 (no) chistes seguidos, sino que me cuente uno u otro, para poder resistir y no morir de la risa… 😉

Una vez hecho eso, voy a crear las intents, con las expresiones correspondientes y después configuraré las acciones a realizar.

Y ahora que tenemos construido nuestro bot lo que tendríamos que hacer es conectarlo con la plataforma de mensajería que queramos: Slack, Telegram, Facebook Messenger, SAP CoPilot, para lo que habrá que seguir una serie de pasos, en función de la plataforma elegida.

connect

Pero esto voy a dejar que lo hagáis vosotros, con la ayuda del documento original del que he sacado toda esta información: How To Build Your First Chatbot With SAP Conversational AI

Como veis, también tenemos la posibilidad de monitorizar todas las acciones que hemos realizado con nuestro bot.

monitor

Ni que decir tiene que esto no ha sido nada más que un simple ejemplo.

Ahora toca echarle imaginación y hacer monerías… 😉

 

Construyendo un bot con SAP Conversational AI

Como comenté hace unos meses, SAP Conversational AI es el nuevo nombre de Recast.AI, tras su compra por SAP.

Hoy vamos a ver cómo nos podemos dar de alta en el servicio y crear un bot de una manera muy sencilla.

Lo primero que tendréis que hacer es daros de alta en SAP Conversational AI, algo que seguro que sabéis hacer solos, a pesar del captcha y siempre que no (o sí) seáis un robot… 😉

Una vez que tenemos nuestra cuenta creada, estamos en disposición de crear nuestro primer bot.

Para ello, rellenaremos la información necesaria, como vemos en el siguiente vídeo:

Una vez creado el bit toca entrenarle, es decir, enseñarle a entender nuestras necesidades y esto se hace mediante el uso de intenciones y entidades.

Lo de las intenciones es algo parecido a lo que hacía Gila con Jack El Destripador, no es necesario decir las cosas textuales, sino que el sistema es capaz de detectar la intención de algo… 😉

Y las entidades son elementos que enriquecen nuestras intenciones.

Por ejemplo, en la frase «quiero comprar entradas de cine para mañana», «ComprarEntradas» sería la intención y «cine» y «mañana» serían entidades.

Como hemos elegido un bot predefinido de greetings, hay ciertas intents que ya están predefinidas, cada una de ellas con sus expresiones asociadas en el idioma elegido.

Evidentemente, se pueden añadir nuevas expresiones y es recomendable que sean un mínimo de 30 y más de 50 si es posible, aunque esto no dejan de ser recomendaciones.

En este caso concreto, aparte de las intenciones @goodbye y @greetings, vamos a añadir una nueva (@chiste), reutilizando una existente y la probamos:

Nuestras intenciones pueden tener asociadas entidades, vamos a ver en este ejemplo, como al teclear «Adiós Antonio, hasta mañana», el sistema es capaz de detectar 2 entidades (#datetime y #person) asociadas a la intención @goodbye.

Podemos crear también nuestras propias entidades, aunque hay cierta entidades que ya proporciona automáticamente el sistema, que son las denominadas gold entities. Aquí podéis ver un listado sobre las actuales: Gold Entities List

Una vez que hemos entrenado el bot, ahora toca construir nuestras skills.

¿Qué es una skill? Básicamente, un bloque de conversación (más o menos complejo), que tiene un propósito claro y nos lleva a conseguir un objetivo. Por ejemplo, que yo salude a mi bot y él me responda. Para ello, nos podemos valer de «disparadores» (triggers), requerimientos y acciones, como vemos en el siguiente vídeo:

Por supuesto, también te puedes crear tu propia skill, como veremos en el siguiente video. Las skills pueden ser de 3 tipos: business, floating y fallback.

Las 2 primeras son muy similares, una más centrada en el objeto concreto del bot (business) y la otra más genérica (floating) y por último tendré siempre una (y sólo una) fallback que se activará, si no se activa ninguna de las otras.

Y llegados a este punto y vista la «calidad» de los (no) chistes, ha llegado el momento de parar… mañana sigo 😉

¡Que la fuerza os acompañe!