|
import gradio as gr |
|
from transformers import pipeline |
|
|
|
pipe = pipeline("image-classification", "umm-maybe/AI-image-detector") |
|
|
|
def image_classifier(image): |
|
outputs = pipe(image) |
|
results = {} |
|
for result in outputs: |
|
results[result['label']] = result['score'] |
|
return results |
|
|
|
title = "Maybe's AI Art Detector" |
|
description = """ |
|
This app is a proof-of-concept demonstration of using a ViT model to predict whether an artistic image was generated using AI. |
|
|
|
It was created in October 2022, and as such, the training data did not include any samples generated by Midjourney 5, SDXL, or DALLE-3. It still may be able to correctly identify samples from these more recent models due to being trained on outputs of their predecessors. |
|
|
|
Furthermore the intended scope of this tool is artistic images; that is to say, it is not a deepfake photo detector, and general computer imagery (webcams, screenshots, etc.) may throw it off. |
|
|
|
In general, this tool can only serve as one of many potential indicators that an image was AI-generated. Images scoring as very probably artificial (e.g. 90% or higher) could be referred to a human expert for further investigation, if needed. |
|
|
|
For more information please see the blog post describing this project at: |
|
https://medium.com/@matthewmaybe/can-an-ai-learn-to-identify-ai-art-545d9d6af226 |
|
""" |
|
|
|
demo = gr.Interface(fn=image_classifier, inputs=gr.Image(type="pil"), outputs="label", title=title, description=description) |
|
demo.launch(show_api=False) |
|
|