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()