Amazon ya permite hacer un chatbot utilizando Amazon Lex, la tecnología de NLP de Alexa, abriendo así su tecnología de procesamiento natural del lenguaje (Natural Language Processing en inglés) para que cualquier desarrollador cree su chatbot inteligente.
Sorprendentemente, o no tanto, Amazon ha abierto al público la tecnología de Inteligencia Artificial que utiliza en Alexa, su dispositivo para controlar la futura casa inteligente… Pero, después de todo, esto era algo más o menos esperado, después de que Amazon nos tenga acostumbrados a licenciar sus productos en modelo SaaS.
¿Que aún no te has leído nuestro artículo de conceptos básicos sobre Inteligencia Artificial? ¡Échale un vistazo antes de leer sobre la estructura de Amazon Lex!
Tabla de contenidos
¿Cuál es la estructura lógica del sistema de NLP de Amazon Lex?
Sin duda, la mejor manera de verlo es con un ejemplo. Como cualquier sistema de Inteligencia Artificial, en Amazon Lex, también define intenciones, entidades y diálogos. Aquí vemos un ejemplo extraído de la propia web de Amazon Lex:
- El usuario indica en una frase lo que quiere, es decir, una “locución” (en inglés “Utterances”) que es el input para el motor de NLP.
- Con esa locución, es decir, lo que ha escrito o hablado el usuario, Lex identifica cuál es la intención del usuario (#ReservarHotel).
- En el diálogo que hayamos definido, habremos configurado que en caso de que el usuario tenga la intención de Reservar un hotel, necesitaremos cierta información para poder ejecutar dicha acción. Además de que, en caso de no tener toda la información a nuestro alcance, deberá solicitársela al usuario. Hablamos de las entidades, o en el caso del sistema de Amazon, de las “ranuras” (o “slots” en inglés).
- ¿Qué entidades necesitaremos para realizar una reserva de un hotel? A la hora de la verdad, desde un punto de vista de negocio, podemos complicar el número de entidades, sin embargo, en este ejemplo definiremos tan solo dos entidades (o slots), la ciudad y el día (@Ciudad_Reserva_Hotel y @Día_Reserva_Hotel). Pero, ¿y si hubiéramos preferido realizar una reserva para el 30 de noviembre del 2016 en Nueva York, cerca del Empire State y cuyo precio no supere los 300 dólares la noche? Hubiésemos necesitado más entidades (o ranuras).
- En el ejemplo, vemos como el propio sistema, le pregunta primero por la ciudad donde quiere realizar la reserva, y en segundo lugar por el día, para a continuación confirmar que ya ha realizado la petición.
- ¿Y es el propio chatbot el que hace la reserva? ¿cómo se ejecuta esta acción? ¡WAIT! Los sistemas de NLP procesan e interpretan las conversaciones como si fuesen un humano, pero solo sirven para entender qué es lo que quiere exactamente el usuario. ¿Más o menos claro? Sabemos que quizás no 😉, así que vayamos al ejemplo: imagina que después de una conversación entre el humano y el chatbot, sabemos que el usuario quiere reservar un hotel en Nueva York para el 30 de noviembre, ¿cuál sería el siguiente paso? Pues en este caso, sería realizar la reserva. Para ello, nuestro sistema deberá ser capaz de conectarse con otros sistemas que permitan hacer la reserva. En este caso, Amazon Lex nos habrá ayudado a saber qué es lo que tenemos que hacer, pero no a hacerlo.
¿Cómo podemos probar Amazon Lex? ¿Tiene algún problema?
Como todo en la vida, Amazon Lex tiene una serie de pros y contras, dependiendo de cuáles sean tus objetivos:
- Amazon Lex permite entradas tanto de texto como de voz, de hasta 15 segundos.
- Además, permite que configures que el output sea también vía voz. Aunque no te permite que utilices la misma voz que utilizan ellos en Alexa.
- Para probarlo, puedes procesar todos los meses del primer año las primeras 10.000 peticiones de reconocimiento de texto y 5.000 llamadas de voz de forma gratuita.
- ¿El problema (o problemón) para los que nos estáis leyendo? De momento, Amazon Lex está sólo disponible en inglés americano.
¡¡Nos vemos en los chats!! 😉