Skip to content

Repository files navigation

🤖 NLP AI Chatbot

An NLP-based AI chatbot built using Python, TensorFlow/Keras, and NLTK.
The chatbot uses intent classification with a deep learning model to understand user queries and provide suitable responses. It supports both text-based interaction and a voice-enabled chatbot mode.


📌 Overview

This project implements an AI chatbot that can handle common computer and device-related queries such as:

  • Screen issues
  • Battery problems
  • Wi-Fi connectivity issues
  • Software problems
  • Printer issues
  • Keyboard and mouse issues

The chatbot is trained using a custom JSON dataset containing different intents, patterns, and responses.


✨ Features

  • 🧠 Deep Learning-based intent classification
  • 💬 Text-based chatbot interaction
  • 🎙️ Voice-enabled chatbot interaction
  • 📄 JSON-based training data
  • 🔤 Text preprocessing using NLTK
  • 🗣️ Speech recognition and text-to-speech support
  • 💾 Saved trained model for chatbot execution

🛠️ Technologies Used

  • Python 🐍
  • TensorFlow
  • Keras
  • NLTK
  • NumPy
  • SpeechRecognition
  • gTTS
  • Pyttsx3

📂 Project Structure

NLP-AI-Chatbot
│
├── chatbot_train.py          # Train the chatbot deep learning model
├── chatbot_execution.py      # Text-based chatbot execution
├── voice_chatbot2.py         # Voice-enabled chatbot execution
├── intents.json              # Training dataset containing intents
├── chatbot_model.h5          # Trained chatbot model
├── words.pkl                 # Processed vocabulary data
├── classes.pkl               # Intent class data
├── requirements.txt          # Required Python libraries
└── README.md                 # Project documentation

⚙️ Installation

Clone the repository:

git clone https://github.com/Sathyabyte/NLP-AI-Chatbot.git

Navigate to the project folder:

cd NLP-AI-Chatbot

Install required dependencies:

pip install -r requirements.txt

▶️ How to Run

1. Train the chatbot model

python chatbot_train.py

This creates the trained chatbot model and required files.


2. Run Text Chatbot

python chatbot_execution.py

The chatbot will accept user input through the terminal and generate responses.


3. Run Voice Chatbot

python voice_chatbot2.py

The chatbot can take voice input and respond using text-to-speech.


💬 Example Conversation

You: My Wi-Fi is not working

Chatbot:
Restart your router and device, and try connecting again.
You: My battery is draining quickly

Chatbot:
Check if any apps are consuming too much power.

🚀 Future Improvements

  • Add more intents and responses
  • Improve conversation memory
  • Add a graphical user interface (GUI)
  • Deploy as a web application

👩‍💻 Author

Sathyabyte

BCA (Hons) Student | Data Science + AI/ML

About

An NLP-based AI chatbot using TensorFlow, Keras, and NLTK with text and voice interaction support.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages