NeuralNexus is an intelligent chatbot powered by TensorFlow and Natural Language Processing (NLP). It uses a neural network to understand and respond to user queries with context awareness and personality.
- 🤖 Natural Language Understanding
- 🧠 Neural Network-based Response Generation
- 🔄 Context-Aware Conversations
- 💬 Modern Web Interface
- 🎨 Beautiful UI with Animations
- 📱 Responsive Design
- ⚡ Real-time Processing
- Python 3.10 or higher
- pip (Python package installer)
- Virtual environment (recommended)
- Clone the repository:
git clone https://github.com/tanishpoddar/NeuralNexus.git
cd NeuralNexus
- Create and activate a virtual environment:
# Windows
python -m venv .venv
.venv\Scripts\activate
# Linux/MacOS
python3 -m venv .venv
source .venv/bin/activate
- Install required packages:
pip install -r requirements.txt
NeuralNexus/
├── main-host.py # Main application file
├── intents.json # Training data and responses
├── model.weights.h5 # Trained model weights
├── data.pickle # Processed training data
├── templates/
│ └── index.html # Web interface
└── requirements.txt # Python dependencies
- tensorflow==2.15.0
- numpy==1.24.3
- nltk==3.8.1
- flask==3.0.0
- python-dotenv==1.0.0
- Ensure you're in the virtual environment
- Run the Flask application:
python main-host.py
- Open your browser and navigate to:
http://localhost:5000
The model is automatically trained when you run the application. It:
- Processes the intents from
intents.json
- Creates a bag-of-words representation
- Trains a neural network with:
- Input layer: Size based on vocabulary
- Hidden layers: Two layers with 16 neurons each
- Dropout layers: To prevent overfitting
- Output layer: Size based on number of intents
Edit intents.json
to add new conversation patterns and responses:
{
"tag": "new_intent",
"patterns": ["pattern1", "pattern2"],
"responses": ["response1", "response2"]
}
-
Import Errors
- Ensure all packages are installed correctly
- Check Python version compatibility
- Verify virtual environment activation
-
Model Training Issues
- Delete
model.weights.h5
anddata.pickle
- Restart the application to retrain
- Delete
-
Web Interface Issues
- Clear browser cache
- Check console for JavaScript errors
- Verify Flask server is running
- "ModuleNotFoundError": Install missing packages
- "TypeError": Check input format in intents.json
- "ValueError": Verify model architecture matches data
- Fork the repository
- Create a feature branch
- Commit your changes
- Push to the branch
- Create a Pull Request
This project is licensed under the GNU General Public License v3.O License - see the LICENSE file for details.