Spaces:
Sleeping
Sleeping
| # AI-Contain-Checker | |
| A modular AI content detection system with support for **image classification**, **image edit detection**, **Nepali text classification**, and **general text classification**. Built for performance and extensibility, it is ideal for detecting AI-generated content in both visual and textual forms. | |
| ## π Features | |
| ### πΌοΈ Image Classifier | |
| * **Purpose**: Classifies whether an image is AI-generated or a real-life photo. | |
| * **Model**: Fine-tuned **InceptionV3** CNN. | |
| * **Dataset**: Custom curated dataset with **\~79,950 images** for binary classification. | |
| * **Location**: [`features/image_classifier`](features/image_classifier) | |
| * **Docs**: [`docs/features/image_classifier.md`](docs/features/image_classifier.md) | |
| ### ποΈ Image Edit Detector | |
| * **Purpose**: Detects image tampering or post-processing. | |
| * **Techniques Used**: | |
| * **Error Level Analysis (ELA)**: Visualizes compression artifacts. | |
| * **Fast Fourier Transform (FFT)**: Detects unnatural frequency patterns. | |
| * **Location**: [`features/image_edit_detector`](features/image_edit_detector) | |
| * **Docs**: | |
| * [ELA](docs/detector/ELA.md) | |
| * [FFT](docs/detector/fft.md ) | |
| * [Metadata Analysis](docs/detector/meta.md) | |
| * [Backend Notes](docs/detector/note-for-backend.md) | |
| ### π Nepali Text Classifier | |
| * **Purpose**: Determines if Nepali text content is AI-generated or written by a human. | |
| * **Model**: Based on `XLMRClassifier` fine-tuned on Nepali language data. | |
| * **Dataset**: Scraped dataset of **\~18,000** Nepali texts. | |
| * **Location**: [`features/nepali_text_classifier`](features/nepali_text_classifier) | |
| * **Docs**: [`docs/features/nepali_text_classifier.md`](docs/features/nepali_text_classifier.md) | |
| ### π English Text Classifier | |
| * **Purpose**: Detects if English text is AI-generated or human-written. | |
| * **Pipeline**: | |
| * Uses **GPT2 tokenizer** for input preprocessing. | |
| * Custom binary classifier to differentiate between AI and human-written content. | |
| * **Location**: [`features/text_classifier`](features/text_classifier) | |
| * **Docs**: [`docs/features/text_classifier.md`](docs/features/text_classifier.md) | |
| --- | |
| ## ποΈ Project Structure | |
| ```bash | |
| AI-Checker/ | |
| β | |
| βββ app.py # Main FastAPI entry point | |
| βββ config.py # Configuration settings | |
| βββ Dockerfile # Docker build script | |
| βββ Procfile # Deployment file for Heroku or similar | |
| βββ requirements.txt # Python dependencies | |
| βββ README.md # You are here π | |
| β | |
| βββ features/ # Core detection modules | |
| β βββ image_classifier/ | |
| β βββ image_edit_detector/ | |
| β βββ nepali_text_classifier/ | |
| β βββ text_classifier/ | |
| β | |
| βββ docs/ # Internal and API documentation | |
| β βββ api_endpoints.md | |
| β βββ deployment.md | |
| β βββ detector/ | |
| β β βββ ELA.md | |
| β β βββ fft.md | |
| β β βββ meta.md | |
| β β βββ note-for-backend.md | |
| β βββ functions.md | |
| β βββ nestjs_integration.md | |
| β βββ security.md | |
| β βββ setup.md | |
| β βββ structure.md | |
| β | |
| βββ IMG_Models/ # Saved image classifier model(s) | |
| β βββ latest-my_cnn_model.h5 | |
| β | |
| βββ notebooks/ # Experimental and debug notebooks | |
| βββ static/ # Static assets if needed | |
| βββ test.md # Test notes | |
| ```` | |
| --- | |
| ## π Documentation Links | |
| * [API Endpoints](docs/api_endpoints.md) | |
| * [Deployment Guide](docs/deployment.md) | |
| * [Detector Documentation](docs/detector/) | |
| * [Error Level Analysis (ELA)](docs/detector/ELA.md) | |
| * [Fast Fourier Transform (FFT)](docs/detector/fft.md) | |
| * [Metadata Analysis](docs/detector/meta.md) | |
| * [Backend Notes](docs/detector/note-for-backend.md) | |
| * [Functions Overview](docs/functions.md) | |
| * [NestJS Integration Guide](docs/nestjs_integration.md) | |
| * [Security Details](docs/security.md) | |
| * [Setup Instructions](docs/setup.md) | |
| * [Project Structure](docs/structure.md) | |
| --- | |
| ## π Usage | |
| 1. **Install dependencies** | |
| ```bash | |
| pip install -r requirements.txt | |
| ``` | |
| 2. **Run the API** | |
| ```bash | |
| uvicorn app:app --reload | |
| ``` | |
| 3. **Build Docker (optional)** | |
| ```bash | |
| docker build -t ai-contain-checker . | |
| docker run -p 8000:8000 ai-contain-checker | |
| ``` | |
| --- | |
| ## π Security & Integration | |
| * **Token Authentication** and **IP Whitelisting** supported. | |
| * NestJS integration guide: [`docs/nestjs_integration.md`](docs/nestjs_integration.md) | |
| * Rate limiting handled using `slowapi`. | |
| --- | |
| ## π‘οΈ Future Plans | |
| * Add **video classifier** module. | |
| * Expand dataset for **multilingual** AI content detection. | |
| * Add **fine-tuning UI** for models. | |
| --- | |
| ## π License | |
| See full license terms here: [`LICENSE.md`](license.md) | |