Skip to content

Project Overview: This project develops a multilingual chatbot using deep learning and NLP, capable of conversing in English and Bangla. It features a PyTorch-based model trained on diverse user intents, with a focus on overcoming language barriers.

Notifications You must be signed in to change notification settings

Rakib-Hasan-Rahad/Multilingual-Chatbot-using-Deep-learning-Model

Repository files navigation

Bangla Chat Bot Documentation Introduction This documentation provides detailed guidelines for installing, using, and understanding the Bangla Chat Bot. This chatbot is implemented using PyTorch and provides a basic yet effective approach for natural language understanding and response generation in the Bengali language. Features  Simple chatbot implementation with a feedforward neural network having two hidden layers.  Easy customization for different use cases by modifying intents.json.  Language support for Bangla and English, with capabilities for understanding and generating responses in Bengali and English. Also easily customizable for adding new languages. Project Structure  app.py: Main application file for the chatbot interface.  chat.py: Handles chat functionality and response generation.  model.py: Defines the neural network model.  nltk_utils.py: Contains utility functions for text processing.  train.py: Script for training the neural network model.  intents.json: Contains intents and patterns for training.  data.pth: The trained model file. Installation Guide Prerequisites  Python 3.x  Pip package manager  Virtual environment (optional but recommended)Setting Up the Environment

  1. Create a Project Directory:
  2. Create and Activate a Virtual Environment:
  3. Install Dependencies:  PyTorch: Visit the official PyTorch website for installation instructions.( https://pytorch.org/get-started/locally/)  Install NLTK and other dependencies:  Download NLTK Tokenizer:  Install Language Detection and Translation Libraries: Usage InstructionsTraining the Model
  4. Run the Training Script: This will process the data in intents.json and train the neural network, saving the trained model to data.pth.
  5. Running the Chatbot
  6. To interact with the chatbot using the graphical user interface, simply run the app.py file: This will open the Python GUI interface where you can directly interact with the chatbot. Customization  Customizing Intents:  Modify the intents.json file to include new patterns and responses.  Example intent structure: FAQs Q: How do I add a new language to the chatbot?A: The current implementation primarily supports Bengali. To add support for a new language, you would need to provide data in the desired language in intents.json and possibly adjust the NLP preprocessing in nltk_utils.py. Q: Can this chatbot handle context in conversations? A: The current implementation has basic contextual understanding based on the defined intents and patterns. For advanced context handling, further development and integration of contextaware algorithms would be required. Q: How do I add a new conversation topic? A: Add a new intent in intents.json with patterns and responses, and retrain the model. Q: What languages does this chatbot support? A: Currently, it is designed for Bangla and English, but can be adapted for other languages by modifying the chat.py file. Q: How can I improve the chatbot's accuracy? A: Increase the dataset size, tweak the neural network architecture. Most importantly use language Models.

About

Project Overview: This project develops a multilingual chatbot using deep learning and NLP, capable of conversing in English and Bangla. It features a PyTorch-based model trained on diverse user intents, with a focus on overcoming language barriers.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages