Creando un chatbot básico usando Python en Jupyter Notebook. Este chatbot interactúa con el usuario utilizando las entradas y salidas codificadas que se introducen en el código de Python.
Requisitos:
debe instalar el NLTK (Natural Language Toolkit), proporciona bibliotecas y programas para el procesamiento de lenguaje natural simbólico y estadístico para inglés escrito en el lenguaje de programación Python. Para instalar este módulo, escriba el siguiente comando en la terminal.
pip install nltk
A continuación se muestra la implementación.
from nltk.chat.util import Chat, reflections pairs =[ ['my name is (.*)', ['Hello ! % 1']], ['(hi|hello|hey|holla|hola)', ['Hey there !', 'Hi there !', 'Hey !']], ['(.*) your name ?', ['My name is Geeky']], ['(.*) do you do ?', ['We provide a platform for tech enthusiasts, a wide range of options !']], ['(.*) created you ?', ['Geeksforgeeks created me using python and NLTK']] ] chat = Chat(pairs, reflections) chat.converse()
Producción:
Explicación del código anterior:
en la primera línea de código, hemos importado la clase Chat y el diccionario Reflections de las utilidades de chatbot de Natural Language Toolkit. Clase de chat que procesará la conversación entre el usuario y tu chatbot. Reflections es un diccionario que cuando un valor en un grupo de expresiones regulares coincide con una clave en el diccionario, generará el valor en la respuesta. Entonces, para el primer elemento de la lista de pares, si ingresamos mi nombre es geek, donde geeky corresponde a la expresión regular “(.*)”, generará “¡Hola! Geeky”, es decir, reemplaza la expresión regular en respuesta a “%1” que se denominó “(.*)” con “Geeky”. Ahora inicializamos el chatbot usando el diccionario de pares y reflejos. Luego, después de la inicialización, llamamos al método inverso de la clase Chat que automatiza el chatbot.