import gradio as gr from fastai.vision.all import load_learner, PILImage def is_cat(x): return x[0].isupper() learn = load_learner("model.pkl") labels = learn.dls.vocab categories = ("Dog", "Cat") def predict(img): img = PILImage.create(img) _, _, probs = learn.predict(img) return dict(zip(categories, map(float, probs))) # return {labels[i]: float(probs[i]) for i in range(len(labels))} title = "Cat or Dog Classifier" description = "Classifier to determine if a photo is a cat or not." article = "

Blog post

" examples = ["siamese.PNG", "poodle.jpg", "panda.jpg"] interpretation = "default" enable_queue = True gr.Interface( fn=predict, inputs=gr.components.Image(shape=(512, 512)), outputs=gr.components.Label(num_top_classes=3), title=title, description=description, article=article, examples=examples, interpretation=interpretation, ).launch(enable_queue=enable_queue)