import gradio as gr from fastai.vision.all import * # Load your trained model def load_model(): path = 'export.pkl' learn = load_learner(path) return learn learn = load_model() # Define prediction function def predict_image(img): pred, pred_idx, probs = learn.predict(img) return {learn.dls.vocab[i]: float(probs[i]) for i in range(len(learn.dls.vocab))} # Create a Gradio interface interface = gr.Interface(fn=predict_image, inputs=gr.inputs.Image(type="pil"), outputs=gr.outputs.Label(num_top_classes=3), title="Image Classifier", description="Upload an image to classify.") if __name__ == "__main__": interface.launch()