This project is an end-to-end university enquiry chatbot that uses natural language processing (NLP) to understand and respond to user queries related to the university. The chatbot is trained on a set of intents that cover various topics such as admissions, courses, fees, campus facilities, etc. The user can interact with the chatbot via a CLI or GUI interface and get quick and accurate responses to their queries.
You can check out a live demo of the chatbot here.
This project requires the following packages and dependencies:
- Python 3.6 or higher
- TensorFlow 2.x or higher
- NumPy
- NLTK
- Flask
- Flask-SocketIO
- JSON
To install these packages, you can use pip:
pip install tensorflow numpy nltk flask flask-socketio json
To train the model, run the train.py
script:
python train.py
This will train the model on the intents defined in the intents.json
file.
If you want to modify the intents, you can edit the intents.json
file and then retrain the model.
To run the chatbot on the CLI interface, run the chat.py
script:
python chat.py
This will start the chatbot on the command line.
To run the chatbot on the GUI interface, run the app.py
script:
python app.py
This will start the chatbot on the GUI interface and generate a link. Open the link in your browser to interact with the chatbot.
Here are some screenshots of the chatbot in action:
This project is open to improvements. Some areas to improve on include:
- Adding more intents and responses to the
intents.json
file - Adding more features to the GUI interface, such as voice recognition and text-to-speech capabilities
- Improving the accuracy of the model by using more advanced techniques such as BERT or transformers