TRABAJO FINAL DEL CURSO
PIAD - 602
Prototipado y Aplicación de
Inteligencia Artificial
Ingeniería de Software con
Inteligencia Artificial
Semestre VI
TRABAJO FINAL – PROTOTIPADO Y APLICACIÓN DE INTELIGENCIA ARTIFICIAL 1
TEMA:
OBJETIVO DEL TRABAJO
Desarrollar un ChatBot para sitio web, utilizando código libre
PLANTEAMIENTO DEL TRABAJO
FUNDAMENTOS Y DATOS PREVIOS
1. Metodología de Trabajo
Tener una definición es lo primero. Sin metodología no hay disciplina, y menos una
Ingeniería en cuanto al desarrollo de software. Para los paradigmas de Arquitectura y de
Programación que existen, en Cascada, POO, MVC, etc. todo sirve, mientras exista la
Documentación y obviamente el código. Mencionemos la innovación de Sprint de Google,
relacionada con Design Thinking, que permite realizar en 5 días un sketch, Mockup, etc.
de un Prototipo.
2. Inteligencia del Bot
Tomar en consideración si nuestro Bot, aprenderá o no. Esto es muy importante ya que
define la Arquitectura de la Tecnología que ocuparemos para desarrollar nuestro Bot.
3. Público Objetivo
Definir bien claro los perfiles del público que va a conversar con nuestro asistente virtual
es clave. Definir en una matriz perfectamente cuáles son los perfiles de nuestros
visitantes.
4. Los Temas, contextos y conversaciones.
4.1. ¿Cuáles son los Temas Macros que abordaremos?
Con esto definiremos el Ámbito, o sea nuestros límites sobre los cuales
deberemos llegar con nuestro Bot y que es lo que nuestro asistente virtual no
realizará.
TRABAJO FINAL – PROTOTIPADO Y APLICACIÓN DE INTELIGENCIA ARTIFICAL 2
4.2. ¿Qué contextos usaremos?
Definiremos los Contextos de las conversaciones únicas con nuestros usuarios,
deben ser únicas o muy bien agrupadas.
4.3. ¿Sobre qué conversaciones responderemos?
Si se establece una conversación, ¿Cuál será el lenguaje para esta
conversación en particular? Definir las respuestas, bifurcaciones y los flujos de
estas conversaciones.
4.4. ¿Usaremos Servicios en nuestro Bot?
Cuando desarrollamos Chatbots, muy frecuentemente tendremos que consumir
servicios, ya sean servicios Web o Rest. Tener claro desde antes que servicios
usaremos, cual serán los parámetros de entrada, cual serán sus outputs, es
muy relevante saberlos desde antes.
4.5. ¿Usaremos Objetos que verá nuestro Público?
Tendremos que definir si en las conversaciones mostraremos imágenes, videos,
PDF, etc., y obviamente crearlas.
Conceptos creativos y Previsualización
En este punto tenemos mucha información, podemos realizar maquetas, realizar algunas
gráficas, ya sean impresas o en software y mostrarlas a nuestros Clientes Internos o
Externos, más algún prototipo de nuestro Bot.
Si se han dado cuenta no hemos hablado para nada de la Tecnología sobre la cual estará
desarrollado nuestro Bot. Para recién conversar a hablar de la Arquitectura que sostendrá
a nuestro Bot tenemos que tomar en consideración algunas pautas:
a) Volumen de Usuarios.
Tener algún antecedente de la masa crítica que tendrá nuestro Bot es muy
importante, nos ayudará a saber que debe soportar nuestro Bot en cuanto a usuarios,
licencias de software, cantidad de preguntas a realizar, etc.
b) Estadísticas de Visitas + Consumos de Servicios.
TRABAJO FINAL – PROTOTIPADO Y APLICACIÓN DE INTELIGENCIA ARTIFICAL 3
Indicios de cantidad de visitas para también saber que realizarán nuestros usuarios,
es demasiado importante. Ver si los servicios a consumir tienen algun limite, ver que
los flujos de los usuarios estén cerrando los servicios que ocupemos, etc.
c) Seguridad de la Información.
Definir el Comportamiento del Bot para entregar seguridad al usuario y a los clientes
es algo que debe venir por defecto. Definir el comportamiento del Bot, definir duración
de las sesiones, prever comportamientos de hacking, encriptación de la información,
listas negras, listas blancas, etc.
d) Procesamiento y capacidad de Cómputo.
Ya teniendo los requerimientos funcionales, podremos tener los requerimientos
técnicos. Nuestro Bot tiene que estar en una plataforma confiable, con Uptimes muy
Altos 90% al 99%, y debe ser capaz de entregar tiempos de respuestas rápidos en
Peeks de consumo. Para esto una plataforma con arquitectura elástica sería muy
apropiada si se requiere, esto se refiere a capacidad de poder tener más recursos de
CPU y Memoria y Disco cuando nuestra App lo requiera (Si es un Bot pequeño o
Demo no será necesario).
Pre-Visualización.
Ahora un paso antes de la preparación de la Arquitectura y de la programacion del Bot,
podemos diseñar la maqueta de cómo será el Bot. Para esto hay herramientas especiales
de Mock-up para Bots.
Bot society: https://botsociety.io
Bot Mock: https://botmock.com
DESARROLLO Y ENTREGABLES
1. En el desarrollo del trabajo final, puede revisar las diversas tecnologías a
consideración:
2. Chatbots en Node.js con Dialogflow v1 y v2.
2. Chatbots en C# con Luis.ai.
2. Chatbots en Node.js con Luis.ai.
1. Chatbot en Python (consola).
TRABAJO FINAL – PROTOTIPADO Y APLICACIÓN DE INTELIGENCIA ARTIFICAL 4
2. En un trabajo monográfico, resuma los análisis realizados en cada uno de los ítems
mencionados anteriormente y define claramente el tipo de bot que desarrollará, así
como su ámbito de operación. (Utilizar normativa ISO para el documento)
3. Desarrolle el bot, integre programación de acuerdo a la tecnología que a su criterio
sea la mejor opción de implementación.
TRABAJO FINAL – PROTOTIPADO Y APLICACIÓN DE INTELIGENCIA ARTIFICAL 5
PREGUNTAS 1. ¿Cuáles son los Temas Macros que abordaremos?
GUÍA
2. ¿Qué contextos usaremos?
3. ¿Sobre qué conversaciones responderemos?
4. ¿Usaremos Servicios en nuestro Bot?
5. ¿Usaremos Objetos que verá nuestro Público?
TRABAJO FINAL – PROTOTIPADO Y APLICACIÓN DE INTELIGENCIA ARTIFICIAL 6