/ python

Creando un chatbot en Python en minutos

Utilizaremos una librería llamada ChatterBot para entrenar un bot que responda a distintas preguntas en base a contexto, muy práctico para resolver casos muy sencillos para asitentes virtuales

Cabe aclarar que la precisión y exactitud de los resultados dependen de la cantidad de información que se utilice

Para este ejemplo, utilizaremos Python 3, así que comencemos

# instalar la libreria
sudo pip3 install chatterbot

ChatterBot es una librería de python que ayudará a entrenar al bot y hacerle preguntas relacionadas al contenido ingresado

from chatterbot import ChatBot

# inicializar el chatbot
bot = ChatBot(
    "Asistente",
    trainer="chatterbot.trainers.ListTrainer",
    logic_adapter=[
        "chatterbot.logic.BestMatch"
    ]
)

# entrenar al bot
bot.train('./conversaciones')

# iniciar la conversacion
while True:
    try:
        question = input('Di algo :)')
        response = bot.get_response(question)
        print('Bot', response)
    except:
        # seguramente se termino el proceso por la linea de comando
        break

Ahora vayamos con el archivo conversaciones, este deberá tener un orden como pregunta y en la siguiente línea la respuesta

hola,
Hola, ¿En que puedo ayudarte?
No puedo realizar pagos
Si no puedes pagar con tarjeta, intenta la opcion de pago en efectivo
Tengo problemas
¿Vez algun mensaje en la pantalla? Si el sitio no carga puedes llamar a XXX-YYY
Necesito una cotizacion
Para cotizaciones, llama al telefono XXX-YYY-ZZZ
Como puedo conseguir una cotizacion?
Para cotizaciones, llama al telefono XXX-YYY-ZZZ
Que metodos de envio tienen?
Tenemos envios express, tambien puedes ir por tus productos a tu tienda mas cercana

Como puedes notar, básicamente estamos agregando preguntas frecuentes, con una estructura conversacional, esto te da la ventaja de tener un asistente sencillo en tu aplicación sin mucha complicación

Screenshot-from-2018-02-05-18-21-36-1

Con este pequeño ejemplo, nos damos cuenta de la facilidad y el poder que brinda esta librería para exponer un API que reciba preguntas y pueda asistir a un usuario en tiempo real para los casos más comunes en el negocio

ChatterBot cuenta con distintos adaptadores para procesar las queries de distintas formas, puedes encontrar más información aquí