testing / app.py
Sara Tolosa
update env
5b705f1
# This script is used to create a Gradio interface in which we have a
# dog vs cat classifier using the fastai library. For more explanation,
# check the Google Colab notebook "Lesson_2".
# Remember to select the correct environment with "Select Interpreter"
# Ctrl + Shift + P
from fastai.vision.all import *
import gradio as gr
# Define label function
def is_cat(x): return x[0].isupper()
# Load our model
learner = load_learner('model.pkl')
# Transform our model to obtain results that Gradio can handle with
categories = ('Dog', 'Cat')
def classify_image(img):
# We are saying that this predictions returns: the prediction, its index and the prediction probability
pred,idx,probs = learner.predict(img)
# Here we return a dictionary with categories as keys and its probabilities as values
return dict(zip(categories, map(float, probs)))
# Create the Gradio interface
image = gr.inputs.Image(shape=(192,192))
label = gr.outputs.Label()
examples = ['dogg.jpg', 'cat.jpg', 'dunno.jpg']
intf = gr.Interface(fn=classify_image, inputs=image, outputs=label, examples=examples)
intf.launch(inline=False, share=True)