MetaQu's picture
Update app.py
9bc11a6 verified
raw
history blame
1.1 kB
from transformers import pipeline
import gradio as gr
from PIL import ExifTags
# Pakai model publik (gratis, tanpa login)
classifier = pipeline("image-classification", model="orpatashnik/image-real-fake")
def detect_image(image):
# --- Cek metadata (EXIF) ---
exif_result = "⚠️ Tidak ada metadata kamera"
try:
raw_exif = image._getexif()
if raw_exif:
exif_result = "βœ… Metadata kamera terdeteksi"
except:
pass
# --- Prediksi model ---
results = classifier(image)
label = results[0]["label"]
score = results[0]["score"] * 100
if "fake" in label.lower():
verdict = "🚨 Kemungkinan besar Hasil AI"
else:
verdict = "πŸ“· Kemungkinan besar Foto Asli"
return f"""{verdict}
Label Model: {label}
Confidence: {score:.2f}%
Cek Metadata: {exif_result}
"""
# Gradio app
iface = gr.Interface(
fn=detect_image,
inputs=gr.Image(type="pil"),
outputs="text",
title="AI Image Detector (Gratis)",
description="Upload gambar untuk mendeteksi apakah foto asli atau hasil AI"
)
iface.launch()