import gradio as gr from fastai.vision.all import * learn = load_learner('model.pkl') labels = ['brown_spots', 'green', 'spoiled', 'yellow'] def predict(img): img = PILImage.create(img) pred,pred_idx,probs = learn.predict(img) return {labels[i]: float(probs[i]) for i in range(len(labels))} title = "Banana Quality Classifier" description = "A banana classifier that can classify bananas into 4 categories based on their quality" examples = ['yellow_banana.jpg', 'green_banana.jpg', 'banana_with_brown_spots.jpg', 'black_banana.jpg', 'banana.jpg'] interpretation='default' enable_queue=True gr.Interface( fn=predict, inputs=gr.Image(label="Input Image Component", shape=(512, 512), sources=["upload", "webcam", "clipboard"]), outputs=gr.Image(label="Output Image Component", num_top_classes=4), title=title, description=description, examples=examples, interpretation=interpretation, enable_queue=enable_queue ).launch() inputs=gr.Image(label="Input Image Component", width=300), outputs=gr.Image(label="Output Image Component")