from fastai.vision.all import * import gradio as gr import pathlib class GetX(ItemTransform): def encodes(self, x): return (x[0]) class GetY(ItemTransform): def encodes(self, x): return (x[1]) pathlib.WindowsPath = pathlib.PosixPath learn = load_learner("model.pkl") # categories = ('Disturbed Galaxies', # 'Merging Galaxies', # 'Round Smooth Galaxies', # 'In-between Round Smooth Galaxies', # 'Cigar Shaped Smooth Galaxies', # 'Barred Spiral Galaxies', # 'Unbarred Tight Spiral Galaxies', # 'Unbarred Loose Spiral Galaxies', # 'Edge-on Galaxies without Bulge', # 'Edge-on Galaxies with Bulge') # categories = ( 'Round Smooth Galaxies', 'Barred Spiral Galaxies', ) def classify_image(img): pred, idx, probs = learn.predict(img) return dict(zip(categories, map(float, probs))) image = gr.inputs.Image(shape=(192, 192)) label = gr.outputs.Label() intf = gr.Interface(fn=classify_image, inputs=image, outputs=label) intf.launch(inline=False)