Spaces:
Sleeping
Sleeping
File size: 1,130 Bytes
b004dac e107a45 056b7ab b004dac e107a45 056b7ab b004dac |
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 34 |
from fastai.vision.all import *
import gradio as gr
import pathlib
import fastai.learner
def custom_load_learner(fname, cpu=True, pickle_module=pickle):
"""Load a Learner from file in `fname` and ensure it's using a platform-independent path."""
map_loc = None if torch.cuda.is_available() and not cpu else 'cpu'
try:
res = torch.load(fname, map_location=map_loc, pickle_module=pickle_module)
except ModuleNotFoundError as e:
raise ImportError(f"{e}. To load the model on a different device, you may need to install the fastai library.")
if 'WindowsPath' in str(type(res.path)):
res.path = pathlib.Path(res.path)
return res
def is_cat(x): return x[0].isupper()
learn = custom_load_learner('model.pkl')
categories = ('dog', 'cat')
def classify_image(img):
pred, idx, probs = learn.predict(img)
return dict(zip(categories, map(float, probs)))
image = gr.inputs.Image(shape=(192,192))
label = gr.outputs.Label()
exemple = ["dog.jpg", "cat.jpg"]
intf = gr.Interface(fn=classify_image, inputs=image, outputs=label, examples=exemple)
intf.launch(inline=False) |