detectAI / README.md
vivek1192's picture
Switch to runserver and remove app_port for debugging
7c19daf
metadata
title: DetectAI
emoji: πŸ•΅οΈ
colorFrom: gray
colorTo: blue
sdk: docker
pinned: false

DetectAI

Deploy to Hugging Face Space

A local, offline AI text detection tool powered by RoBERTa and GPU Acceleration.

πŸš€ Features

  • Offline Analysis: Uses a local Transformer model (roberta-base) to detect AI-generated text.
  • GPU Accelerated: Optimized for NVIDIA GPUs (CUDA 12.1) for <1s inference.
  • Visual Reports: Downloadable PDF reports with AI-highlighted text.
  • Modern UI: Built with React + Vite, featuring a glassmorphism design.

πŸ› οΈ Tech Stack

  • Backend: Python, Django, Django Rest Framework
  • AI Engine: PyTorch, Transformers (Hugging Face)
  • Frontend: React, TailwindCSS, Framer Motion
  • PDF Generation: ReportLab

πŸ“¦ Installation

Prerequisites

  1. Python 3.10+
  2. Node.js & npm
  3. NVIDIA GPU Driver (Version >= 531.x for CUDA 12.1 support)

1. Backend Setup

cd backend
python -m venv venv
# Activate venv:
# Windows: .\venv\Scripts\activate
# Linux/Mac: source venv/bin/activate

# Install Dependencies (includes PyTorch CUDA)
pip install -r requirements.txt
# OR manually:
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121
pip install django djangorestframework transformers reportlab

2. Frontend Setup

cd frontend
npm install

πŸƒβ€β™‚οΈ Running the App

Step 1: Start Backend (Port 8000)

cd backend
python manage.py runserver

Step 2: Start Frontend (Port 5173)

cd frontend
npm run dev

Step 3: Open App

Go to http://localhost:5173 in your browser.

⚑ Performance Tuning

The backend is pre-optimized for 4GB VRAM cards (like GTX 1650):

  • Batch Size: 8
  • Strided Masking: Analyzes 33% of tokens for 3x speedup. To change these, edit backend/detector/views.py.

πŸš€ Deployment (Hugging Face Spaces)

This project relies on Docker and GitHub Actions for deployment.

1. Prerequisites

  • A Hugging Face Account.
  • A Private Space created on Hugging Face (Select "Docker" as the SDK).

2. Configure GitHub Secrets

Go to your GitHub Repository -> Settings -> Secrets and variables -> Actions -> New repository secret.

Add the following secrets:

Secret Name Value
HF_TOKEN Your Hugging Face Access Token (Write permissions).
HF_USERNAME Your Hugging Face Username (e.g., vivek1192).

3. Trigger Deployment

  1. Commit your changes:
    git add .
    git commit -m "Setup CI/CD for Hugging Face"
    
  2. Push to develop branch: (The workflow is configured to trigger on develop)
    git checkout develop
    # Merge your changes if needed
    git push origin develop
    

The GitHub Action will:

  1. Build the Docker image (React Frontend + Django Backend).
  2. Push it to your Hugging Face Space.