Skip to content

shreya100504/DocsAI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DocsAI – AI-Powered Interactive Document Chatbot

DocsAI is an AI-powered learning assistant that transforms static educational documents into an interactive study tool. Users can upload study materials such as PDFs, Word documents, PowerPoint presentations, Excel sheets, or images, and interact with the content through a conversational chatbot.

The system performs multi-modal document analysis, extracts text and visual information, builds a semantic knowledge base, and enables context-aware question answering and automated study plan generation for efficient learning.

Project Overview

Students often rely on static documents such as lecture notes, textbooks, and slides, which can be time-consuming to review. DocsAI solves this problem by converting these materials into an interactive AI-powered assistant that helps users quickly understand and revise content.

The application automatically:

  • Extracts text from multiple document formats
  • Analyzes images and diagrams
  • Creates embeddings and vector representations
  • Enables intelligent question answering
  • Generates structured study plans

This allows students to quickly find answers and prepare for exams more efficiently.

Key Features

  • Multi-Format Document Support
  • Upload and analyze multiple types of files including:
  • PDF documents
  • Word files (.docx)
  • Excel spreadsheets (.xlsx)
  • PowerPoint presentations (.pptx)
  • Images (.jpg, .png)

The system extracts text and image information from these files for further processing.

AI-Powered Document Chat

Users can ask questions about uploaded documents and receive context-aware answers generated by an AI model using the document content.

The chatbot supports multiple response styles including:

  • Explanatory answers
  • Concise summaries
  • Cheat-sheet style responses
  • Exam-ready answers

Automatic Study Plan Generation

DocsAI analyzes document content and automatically generates a structured study plan checklist based on key topics and sections extracted from the documents.

Users can track their learning progress using the generated checklist.

Semantic Search with Vector Database

The system converts document text into embeddings and stores them in a FAISS vector database for efficient semantic search and retrieval.

This allows the chatbot to retrieve the most relevant information when answering questions.

Real-Time Processing Progress

The system processes uploaded documents asynchronously and displays real-time progress updates during:

  • document parsing
  • text extraction
  • embedding creation
  • study plan generation

System Architecture

User Uploads Documents
        │
        ▼
Text & Image Extraction
(PDF, DOCX, PPTX, XLSX, Images)
        │
        ▼
Text Chunking
        │
        ▼
Embedding Generation
(Google Generative AI)
        │
        ▼
FAISS Vector Database
        │
        ▼
Retrieval-Augmented Generation
        │
        ▼
AI Chatbot + Study Plan Generator

Tech Stack

Backend

  • Python
  • Flask
  • LangChain
  • Google Generative AI (Gemini)
  • FAISS Vector Database

Frontend

  • HTML
  • CSS
  • JavaScript

NLP & Document Processing

  • PyPDF2
  • PyMuPDF
  • python-docx
  • pandas
  • python-pptx
  • Pillow

The required Python libraries are defined in the project dependencies file.

Project Structure

DocsAI
│
├── document-chat-flask-app.py
├── index.html
├── script.js
├── style.css
├── requirements.txt
├── README.md
│
├── uploads/          # Uploaded documents
└── vector_stores/    # FAISS vector database

Installation

1. Clone the Repository

git clone https://github.com/shreya100504/DocsAI.git
cd DocsAI

2. Install Dependencies

pip install -r requirements.txt

3. Add Environment Variables

Create a .env file and add your API key:

GOOGLE_API_KEY=your_api_key_here

The application loads the API key from environment variables for secure access to the AI model.

4. Running the Application

Start the Flask server:

python document-chat-flask-app.py

Open the application in your browser:

http://127.0.0.1:5000

Example Workflow

  1. Upload study materials such as lecture notes or slides.
  2. Click Process Documents.
  3. The system extracts content and builds a vector knowledge base.
  4. A study plan checklist is generated automatically.
  5. Ask questions about the documents through the chatbot.
  6. Export the chat conversation if needed.

About

AI-powered document chatbot that converts PDFs, DOCX, PPT and images into an interactive study assistant using LangChain, FAISS, and Google Gemini.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors