A ChatGPT-like chatbot built with Flask, supporting rule-based responses, machine learning conversation models, and transformer-based dialogue systems. Persistent chat history, sentiment analysis, and FAQ analytics are included. Easily deployable with Docker or on traditional platforms like Render.
- 🐩 Three Chatbot Modes:
- Rule-Based Chatbot (simple if-else logic)
- Machine Learning Chatbot (using scikit-learn models)
- Transformer-Based Chatbot (using HuggingFace Transformers)
- 💬 Room-specific conversations
- 🧠 Persistent chat history with MongoDB
- 📊 Sentiment analysis for each message (TextBlob)
- 🚀 Analytics for most frequently asked questions
- 🚨 Real-time communication with Flask-SocketIO
- 🚧 Dockerized for seamless deployment
- Backend: Flask, Flask-SocketIO
- Database: MongoDB
- NLP: TextBlob, scikit-learn, Transformers (HuggingFace)
- Deployment: Render / Docker
git clone https://github.com/JPdev6/chatbot.git
cd chatbotpython -m venv venv
source venv/bin/activate # or venv\Scripts\activate on Windows
pip install -r requirements.txtpython app.pyVisit http://localhost:5000 in your browser.
You can run the entire chatbot inside a Docker container:
docker build -t chatbot .
docker run -p 5000:5000 chatbotOr use docker-compose to spin up with MongoDB:
docker-compose up --buildEasily deployable on Render:
- Configure
gunicornas the start command:gunicorn app:app - Use the provided
Procfileandrequirements.txt.
Contributions, issues, and feature requests are welcome!
This project is licensed under the MIT License.