kebincontreras's picture
update
bb7b186 verified
import gradio as gr
import numpy as np
import joblib
import os
# Ruta para cargar el modelo desde la carpeta 'model' dentro del directorio actual del repositorio
model_path = os.path.join('model', 'svm_model.joblib')
svm_model = joblib.load(model_path)
def predict_signature(signature):
try:
# Convertir la entrada de texto a un array numpy
signature_array = np.array([float(x.replace(',', '.').strip()) for x in signature.split("\n") if x.strip()]).reshape(1, -1)
# Predecir y devolver el resultado
prediction = svm_model.predict(signature_array)
return 'Java' if prediction[0] == 0 else 'Bangka Belitung'
except ValueError as e:
return f"Error in input: {e}"
# Crear la interfaz de Gradio
iface = gr.Interface(fn=predict_signature,
inputs=gr.Textbox(lines=2, placeholder="Paste the spectral signature here. Ensure that values are separated by newlines and decimals by commas."),
outputs="text",
title="Spectral Signature Classification",
description="Paste the spectral signature into the text box to classify between Java and Bangka Belitung. Ensure that values are separated by newlines and decimals by commas.",
examples=[["0,005666667\n0,005666667\n0,005666667\n..."]])
# Ejecutar la aplicación y crear un enlace público
iface.launch(share=True)