from fastai.vision.all import * def is_cat(x): return x[0].isupper() path = untar_data(URLs.PETS)/'images' learn=load_learner('model.pkl') labels = learn.dls.vocab 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))} import gradio as gr iface = gr.Interface(fn=predict, inputs=gr.Image(), outputs=gr.Label(num_top_classes=3)).launch(share=True) iface.launch()