File size: 1,170 Bytes
b9d5dbb
 
c4e3b39
 
83ab089
c4e3b39
 
 
 
 
b9d5dbb
 
 
c4e3b39
b9d5dbb
 
c4e3b39
b9d5dbb
 
 
 
c4e3b39
b9d5dbb
 
c4e3b39
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
import gradio as gr
from fastai.vision.all import *
import sys
import subprocess

# Install fasttransform for model compatibility
try:
    import fasttransform  # This makes the Pipeline class available for unpickling
except ImportError:
    subprocess.check_call([sys.executable, "-m", "pip", "install", "fasttransform"])

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))}

title = "Pet Breed Classifier"
description = "A pet breed classifier trained on the Oxford Pets dataset with fastai. Created as a demo for Gradio and HuggingFace Spaces."
article = "<p style='text-align: center'><a href='https://tmabraham.github.io/blog/gradio_hf_spaces_tutorial' target='_blank'>Blog post</a></p>"
examples = ['siamese.png']

gr.Interface(
    fn=predict,
    inputs=gr.Image(shape=(512, 512)),  # Updated to newer Gradio syntax
    outputs=gr.Label(num_top_classes=3),  # Updated to newer Gradio syntax
    title=title,
    description=description,
    article=article,
    examples=examples
).launch()