import pathlib | |
import gradio as gr | |
from fastai.vision.all import * | |
# to solve the mismatch between windows (local) system and huggingspace (linux) | |
plt = platform.system() | |
if plt == 'Linux': pathlib.WindowsPath = pathlib.PosixPath | |
learn = load_learner('export.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))} | |
iface = gr.Interface( | |
fn=predict, | |
inputs=gr.components.Image(shape=(512, 512)), | |
outputs=gr.components.Label(num_top_classes=3), | |
description="Pet Classifier", | |
article="<p style='text-align: center'><a href='google.com' target='_blank'>Blog post</a></p>", | |
live=True, | |
enable_queue=True, | |
) | |
iface.launch() | |