Instructions to use Atugil-Intelligence/Synas-Detect-1 with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use Atugil-Intelligence/Synas-Detect-1 with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("image-classification", model="Atugil-Intelligence/Synas-Detect-1") pipe("https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/hub/parrots.png")# Load model directly from transformers import AutoProcessor, AutoModelForImageClassification processor = AutoProcessor.from_pretrained("Atugil-Intelligence/Synas-Detect-1") model = AutoModelForImageClassification.from_pretrained("Atugil-Intelligence/Synas-Detect-1", device_map="auto") - Notebooks
- Google Colab
- Kaggle
Synas Detect 1
Synas Detect 1 is a high-accuracy vision classifier (~304 million parameters) developed by Atugil Intelligence. Fine-tuned on modern synthetic media, it specializes in determining whether an image is an authentic photograph or AI-generated by models such as Midjourney, Stable Diffusion, DALL·E, Imagen, and similar generative systems.
Model Overview
| Attribute | Detail |
|---|---|
| Developed by | Atugil Intelligence |
| Model Name | Synas Detect 1 |
| Model Type | Vision Transformer / Image Classifier |
| Base Architecture | openai/clip-vit-large-patch14 |
| Parameter Count | ~304 Million |
| License | MIT |
| Primary Task | Binary Image Classification (0: AI Generated / Fake, 1: Real Photograph) |
Intended Use
Primary Use Cases
- Media Authenticity Verification – Detect synthetic imagery for journalism, publishing, and digital archives.
- Content Moderation – Flag AI-generated uploads within trust and safety pipelines.
- Forensic Visual Analysis – Assist researchers and investigators by identifying subtle generation artefacts.
Limitations
While Synas Detect 1 performs strongly across a wide variety of datasets, it has several limitations:
- Extremely compressed JPEG images or aggressive social media recompression may reduce confidence.
- Heavy cropping, resizing, or post-processing can remove useful forensic signals.
- The model is not explicitly trained against adversarial perturbations or deliberate evasion attacks.
- Classification confidence should not be treated as absolute proof of authenticity.
Training Setup
| Setting | Value |
|---|---|
| Dataset | ComplexDataLab/OpenFake (Core Partition) |
| Hardware | 2× NVIDIA T4 GPUs |
| Precision | Mixed Precision (FP16) |
| Framework | PyTorch + Transformers |
| Parallelism | DataParallel |
| Effective Batch Size | 64 |
| Learning Rate | 2e-5 |
| Optimizer | AdamW + Linear Learning Rate Decay |
The model was fine-tuned on high-quality synthetic and real image pairs while preserving the strong visual representations learned by CLIP.
Performance
| Metric | Score |
|---|---|
| In-Distribution Accuracy | ~96% |
| Out-of-Sample Accuracy | ~92–95% |
Performance varies depending on image quality, compression level, and the generation model used.
Usage
Transformers Pipeline
from transformers import pipeline
from PIL import Image
classifier = pipeline(
"image-classification",
model="Atugil-Intelligence/synas-detect-1"
)
image = Image.open("path_to_image.jpg").convert("RGB")
predictions = classifier(image)
print("Synas Detect 1 Predictions")
print("-" * 40)
for prediction in predictions:
print(
f"{prediction['label']} "
f"({prediction['score'] * 100:.2f}%)"
)
Native PyTorch Implementation
import torch
from PIL import Image
from transformers import (
AutoImageProcessor,
AutoModelForImageClassification,
)
MODEL_ID = "Atugil-Intelligence/synas-detect-1"
device = torch.device(
"cuda" if torch.cuda.is_available() else "cpu"
)
processor = AutoImageProcessor.from_pretrained(MODEL_ID)
model = AutoModelForImageClassification.from_pretrained(
MODEL_ID
).to(device)
model.eval()
image = Image.open("path_to_image.jpg").convert("RGB")
inputs = processor(
image,
return_tensors="pt"
).to(device)
with torch.no_grad():
outputs = model(**inputs)
probabilities = torch.softmax(outputs.logits, dim=-1)
prediction = probabilities.argmax(dim=-1).item()
confidence = probabilities[0][prediction].item()
labels = {
0: "AI Generated (Fake)",
1: "Real Photograph",
}
print(f"Prediction : {labels[prediction]}")
print(f"Confidence : {confidence * 100:.2f}%")
License
Synas Detect 1 is released under the MIT License.
Attribution
This model is fine-tuned from OpenAI's CLIP ViT-Large Patch-14 vision backbone.
Copyright
- Copyright © 2021 OpenAI (Base Model)
- Copyright © 2026 Atugil Intelligence (Fine-Tuned Weights)
Citation
If you use Synas Detect 1 in research, benchmarks, or production systems, please cite:
@misc{synas_detect_1_2026,
author = {Atugil Intelligence},
title = {Synas Detect 1: High-Accuracy Synthetic Image Classifier},
year = {2026},
publisher = {Hugging Face},
howpublished = {\url{https://huggingface.co/Atugil-Intelligence/synas-detect-1}}
}
- Downloads last month
- 15
Model tree for Atugil-Intelligence/Synas-Detect-1
Base model
openai/clip-vit-large-patch14Evaluation results
- accuracy on OpenFake Core Datasetself-reported95.000