Spaces:
Runtime error
Runtime error
File size: 1,828 Bytes
e0d86b8 9dc172d b11e0ce e0d86b8 9dc172d e0d86b8 9dc172d e0d86b8 |
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 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 |
from fastai.vision.all import *
from huggingface_hub import from_pretrained_fastai
import gradio as gr
# ------------------------------
# 1. Cargar el modelo desde Hugging Face
# -------------------------------
repo_id = "AdrianRevi/Practica1Blindness" # Cambiar si es necesario
learner = from_pretrained_fastai(repo_id)
labels = learner.dls.vocab
# -------------------------------
# 2. Función de predicción
# -------------------------------
def predict(img):
try:
pred, pred_idx, probs = learner.predict(img)
return {labels[i]: float(probs[i]) for i in range(len(labels))}
except Exception as e:
return {"Error": str(e)}
# -------------------------------
# 3. Interfaz Gradio
# -------------------------------
title = "👁️ Clasificador de Ceguera con FastAI"
description = """
Esta aplicación utiliza un modelo de **Aprendizaje Profundo** entrenado con `fastai` para predecir el **grado de ceguera** en imágenes de retina.
📌 El modelo fue entrenado en Google Colab y desplegado en Hugging Face Spaces mediante `from_pretrained_fastai`.
🔍 Puedes subir tu propia imagen o usar uno de los ejemplos de la galería.
📷 La imagen se redimensiona automáticamente a 128x128 píxeles (tamaño de entrada del modelo).
"""
examples = ['20068.jpg', '20084.jpg'] # Archivos locales en el Space
# -------------------------------
# 4. Crear y lanzar interfaz
# -------------------------------
demo = gr.Interface(
fn=predict,
inputs=gr.Image(type="pil", shape=(128, 128), label="Sube una imagen de retina"),
outputs=gr.Label(num_top_classes=3, label="Predicción (Top 3)"),
examples=examples,
title=title,
description=description,
allow_flagging="never",
live=False,
theme="default",
)
if __name__ == "__main__":
demo.launch(show_error=True)
|