from huggingface_hub import from_pretrained_keras import gradio as gr import numpy as np import tensorflow as tf # Cargar modelo desde Hugging Face (esto es solo un ejemplo, asegúrate de tener un modelo adecuado) repo_id = "ramirces/anomalydetectiondataset" learner = from_pretrained_keras(repo_id) # Definir función predict para detectar anomalías def predict(img): # Hacer predicciones con el modelo pred = learner.predict(img) # Calcular error cuadrático medio (MSE) entre entrada y salida mse = np.mean((img - pred) ** 2) # Establecer umbral de anomalía (ajustar según sea necesario) anomaly_threshold = 0.1 # Determinar si la instancia es una anomalía if mse >= anomaly_threshold: anomaly_msg = "Posible anomalía significativa" else: anomaly_msg = "No anomalía" return {"Mensaje": anomaly_msg, "MSE": mse} # Crear interfaz Gradio gr.Interface(fn=predict, inputs=gr.inputs.Image(shape=(28, 28)), outputs=[gr.outputs.Textbox(label="Mensaje"), gr.outputs.Textbox(label="MSE")], examples=['output_image.png', 'output_image_anomaly1.png']).launch(share=False)