import gradio as gr from fastai.vision.all import * import skimage from fastai.vision.all import PILImage import datetime # Import datetime to generate unique filenames learn = load_learner('export.pkl') labels = learn.dls.vocab def predict(img): img = PILImage.create(img) img = img.resize((512, 512)) pred, pred_idx, probs = learn.predict(img) # Check if the prediction is "elephant" if pred == "elephant": # Generate a unique filename using the current timestamp filename = f"elephant_{datetime.datetime.now().strftime('%Y%m%d_%H%M%S')}.jpg" # Save the image img.save(filename) return {labels[i]: float(probs[i]) for i in range(len(labels))} examples = ['image1.jpg', 'image2.jpg'] gr.Interface(fn=predict, inputs=gr.components.Image(), outputs=gr.components.Label(num_top_classes=3), examples=examples).launch()