Spaces:
Running
Running
File size: 4,853 Bytes
8ac659e |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 |
# 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)
|