GOLDFISH_AI_ASSISTANT

Smart AI Chatbot

A sophisticated chatbot system built with Python, leveraging modern NLP techniques and deep learning for intelligent conversation handling. The system processes user inputs, generates contextually relevant responses, and maintains conversation history.

Table of Contents

  1. Overview
  2. Features
  3. Technical Architecture
  4. Dataset Analysis
  5. Installation
  6. Usage
  7. Development
  8. Data Visualization

Overview

This project implements an AI-powered chatbot with a modern web interface. The system uses advanced natural language processing techniques to understand user queries and generate appropriate responses. The implementation includes a Flask-based web server, a deep learning model for response generation, and a clean, responsive user interface.

Features

Technical Architecture

Backend Components

Frontend Components

Dataset Analysis

The chatbot is trained on a comprehensive dataset containing prompt-response pairs. Here are key statistics from our dataset:

Data Distribution

The dataset has been analyzed for various metrics including length distribution and word counts. Below are the visualization results:

Prompt and Response Length Analysis

Word Count Analysis

Correlation Analysis

Installation

  1. Clone the repository:
    git clone https://github.com/Ahmadjamil888/GOLDFISH_AI_ASSISTANT.git
    cd my-smart-ai-chatbot
    
  2. Create and activate a virtual environment:
    python -m venv venv
    source venv/bin/activate  # On Windows: venv\Scripts\activate
    
  3. Install dependencies:
    pip install -r requirements.txt
    

Usage

  1. Start the Flask server:
    python app/app.py
    
  2. Open a web browser and navigate to:
    http://localhost:5000
    
  3. Begin chatting with the AI assistant through the web interface.

Development

Project Structure

my-smart-ai-chatbot/
├── app/
│   ├── app.py
│   └── templates/
│       └── chat.html
├── data/
│   ├── cleaned_dataset.csv
│   ├── tokenized_prompts.pkl
│   ├── tokenized_responses.pkl
│   └── plots/
├── model/
│   ├── infer.py
│   └── model_weights.pth
├── utils/
│   ├── tokenizer.py
│   └── visualize_data.py
├── requirements.txt
└── README.md

Key Components

Data Visualization

The project includes comprehensive data visualization tools:

To generate visualizations:

python utils/visualize_data.py

This will create plots in the data/plots/ directory and display summary statistics.