File size: 1,028 Bytes
76f07f2 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
import gradio as gr
from tensorflow import keras
import numpy as np
from huggingface_hub import HfApi
import h5py
from io import BytesIO
# Authenticate and read the custom model from Hugging Face Spaces
hf_api = HfApi()
model_url = hf_api.presigned_url('dhhd255', 'idk_test', filename='best_model.h5', token='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')
r = requests.get(model_url)
model_file = h5py.File(BytesIO(r.content), 'r')
# Load your custom model
model = keras.models.load_model(model_file)
def image_classifier(inp):
# Preprocess the input image
inp = np.array(inp)
inp = inp / 255.0
inp = np.expand_dims(inp, axis=0)
# Use your custom model for inference
predictions = model.predict(inp)
# Process the predictions and return the result
result = {}
for i, prediction in enumerate(predictions[0]):
label = f'Label {i+1}'
result[label] = prediction
return result
demo = gr.Interface(fn=image_classifier, inputs='image', outputs='label')
demo.launch()
|