Spaces:
Runtime error
Runtime error
import gradio | |
from fastai.vision.all import * | |
MODELS_PATH = Path('./models') | |
EXAMPLES_PATH = Path('./examples') | |
# Required function expected by fastai learn object | |
# it wasn't exported as a part of the pickle | |
# as it was defined externally to the learner object | |
# during the training time dataloaders setup | |
def label_func(filepath): | |
return filepath.parent.name | |
LEARN = load_learner(MODELS_PATH/'usk-coffee-convnext_nano_935625.pkl') | |
LABELS = LEARN.dls.vocab | |
def gradio_predict(img): | |
img = PILImage.create(img) | |
_pred, _pred_idx, probs = LEARN.predict(img) | |
labels_probs = {LABELS[i]: float(probs[i]) for i, _ in enumerate(LABELS)} | |
return labels_probs | |
with open('gradio_article.md') as f: | |
article = f.read() | |
interface_options = { | |
"title": "USK-Coffee bean classifer (USK-Coffee|ConvNext-nano|fast.ai)", | |
"description": "A coffee bean image classifier(ConvNext nano) fine tuned on the USK-Coffee (https://comvis.unsyiah.ac.id/usk-coffee/) dataset using fastai & timm.", | |
"article": article, | |
"examples" : [f'{EXAMPLES_PATH}/{f.name}' for f in EXAMPLES_PATH.iterdir()], | |
"interpretation": "default", | |
"allow_flagging": "never" | |
} | |
demo = gradio.Interface(fn=gradio_predict, | |
inputs=gradio.inputs.Image(shape=(512, 512)), | |
outputs=gradio.outputs.Label(num_top_classes=5), | |
**interface_options) | |
launch_options = { | |
"enable_queue": True, | |
"share": False, | |
} | |
demo.launch(**launch_options) | |