- About The Project
- Live Demo
- Built With
- Features
- How It Works
- Getting Started
- Usage
- Project Structure
- Screenshots / Demo
- Architecture
- Future Enhancements
- Contributing
- Contact
- License
This is a chatbot application built using Python and NLTK (Natural Language Toolkit) for basic natural language understanding.
It’s deployed on Streamlit Cloud, giving a simple web UI for users to chat with the bot.
Live Demo: Streamlit Chatbot
- Python — core programming language
- NLTK — for tokenization, lemmatization, and simple NLP tasks
- Streamlit — for the web interface
- Streamlit Cloud — for hosting the bot
- 🗣️ Accepts user input in natural language
- 🔄 Tokenizes and lemmatizes input using NLTK
- 💬 Rule-based / pattern-based response generation (or simple intent matching)
- ✅ Simple UI with Streamlit for chat interface
- ⚙️ Easily extensible — new intents / patterns can be added
- 📥 Logs conversation (optional — if implemented)
- User Input
- User types a message in the Streamlit chat box.
- Preprocessing
- The input is tokenized and normalized using NLTK (e.g.,
nltk.word_tokenize, lemmatizer).
- The input is tokenized and normalized using NLTK (e.g.,
- Intent Matching / Response Selection
- The bot checks the processed input against predefined patterns/intents.
- It selects a response based on the matched intent (or fallback).
- Response Display
- The bot's answer is displayed back to the user in the chat UI.
- (Optional) Logging
- Conversation history can be saved in a file / database for analysis / improvement.
- Python 3.8+
pip(or another package manager)
- Clone the repository
git clone https://github.com/ramanuj-droid/Python-Chatbot.git