A Smart AI Chatbot named IntelliChat
bandicam.2024-03-11.14-20-46-051.mp4
Try it via Google Colab: click here
IntelliChat is a Python-based chatbot designed to engage in conversations with users, perform arithmetic operations, and provide information sourced from Wikipedia. It utilizes natural language processing (NLP) techniques and a neural network model for intent classification.
- Conversation Handling: IntelliChat engages in conversations with users, responding to various inputs and inquiries.
- Arithmetic Operations: It can perform basic arithmetic operations such as addition, subtraction, multiplication, and division.
- Wikipedia Integration: IntelliChat can search Wikipedia for information based on user queries.
- Typewriter Effect: Responses from IntelliChat are printed with a typewriter effect for a visually appealing display.
- Python: The core language used for development.
- TensorFlow/Keras: Utilized for training and loading the neural network model for intent classification.
- NLTK (Natural Language Toolkit): Used for text processing and lemmatization.
- Wikipedia API: Integrated to retrieve information from Wikipedia.
- Colorama: Employed for colored text output.
- Intent Classification Model: A trained neural network model used to classify user intents based on their input.
- Preprocessing Functions: Functions for cleaning and preprocessing user input before classification.
- Wikipedia Search Function: Utilizes the Wikipedia API to retrieve information based on user queries.
- Typewriter Print Function: Delivers responses with a typewriter effect for visual appeal.
- Main Interaction Loop: Manages the flow of conversation, processing user input and providing appropriate responses.
- Input: Users can interact with IntelliChat by typing messages or inquiries.
- Output: IntelliChat responds with appropriate answers or engages in conversation based on the input received.
- Exit: Users can exit the conversation by typing 'quit', 'exit', or 'close'.
- numpy: For numerical operations and array handling.
- wikipedia: Required for accessing Wikipedia data.
- colorama: Necessary for colored text output.
- TensorFlow/Keras: For loading the neural network model.
- NLTK: Used for natural language processing tasks such as tokenization and lemmatization.