Spaces:
Runtime error
Runtime error
| """ | |
| app.py - Gradio app for Hugging Face Spaces | |
| --------------------------------------------- | |
| Hosts the Bean Disease Classifier as a permanent, always-on API endpoint | |
| that the Flet app (or anything else) can call. | |
| This file goes in the root of your Hugging Face Space repo alongside | |
| requirements.txt and README.md. | |
| """ | |
| import gradio as gr | |
| from huggingface_hub import from_pretrained_fastai | |
| from fastai.vision.all import PILImage | |
| HF_MODEL_ID = "MarkJoshua/Mak-Bean-Disease-Classifier" | |
| learner = from_pretrained_fastai(HF_MODEL_ID) | |
| def classify(img): | |
| # Gradio hands us a plain PIL.Image.Image - fastai's transform pipeline | |
| # expects its own PILImage subclass, so convert before predicting. | |
| img = PILImage.create(img) | |
| pred_label, pred_idx, probs = learner.predict(img) | |
| vocab = learner.dls.vocab | |
| return {str(vocab[i]): float(probs[i]) for i in range(len(probs))} | |
| demo = gr.Interface( | |
| fn=classify, | |
| inputs=gr.Image(type="pil"), | |
| outputs=gr.Label(num_top_classes=5), | |
| title="Bean Disease Classifier", | |
| description=f"Model: {HF_MODEL_ID}", | |
| ) | |
| if __name__ == "__main__": | |
| demo.launch() |