Skip to content

ramanuj-droid/Python-Chatbot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 

Repository files navigation

Indra AI Python Chatbot

NLTK
Deployed on Streamlit
License: MIT


Table of Contents


About The Project

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


Built With

  • Python — core programming language
  • NLTK — for tokenization, lemmatization, and simple NLP tasks
  • Streamlit — for the web interface
  • Streamlit Cloud — for hosting the bot

Features

  • 🗣️ 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)

How It Works

  1. User Input
    • User types a message in the Streamlit chat box.
  2. Preprocessing
    • The input is tokenized and normalized using NLTK (e.g., nltk.word_tokenize, lemmatizer).
  3. 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).
  4. Response Display
    • The bot's answer is displayed back to the user in the chat UI.
  5. (Optional) Logging
    • Conversation history can be saved in a file / database for analysis / improvement.

Getting Started

Prerequisites

  • Python 3.8+
  • pip (or another package manager)

Installation

  1. Clone the repository
    git clone https://github.com/ramanuj-droid/Python-Chatbot.git

About

A simple request response bot that can be integrated with any application

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages