| from fastai.vision.all import * | |
| import gradio as gr | |
| import os | |
| def get_label_from_file_path(path): | |
| return os.path.basename(os.path.dirname(path)) | |
| def predict(img): | |
| img = PILImage.create(img) | |
| pred, pred_idx, probs = learn_inf.predict(img) | |
| return {labels[i]: float(probs[i]) for i in range(len(labels))} | |
| script_dir = os.path.dirname(os.path.realpath(__file__)) | |
| learn_inf = load_learner(script_dir + '/model/cat_dog_classifier.pkl') | |
| labels = learn_inf.dls.vocab | |
| gr.Interface(fn=predict, inputs=gr.inputs.Image(shape=(224, 224)), | |
| outputs=gr.outputs.Label(num_top_classes=3)).launch(share=False) | |