File size: 977 Bytes
da0f209
7590a98
da0f209
7590a98
 
da0f209
7590a98
 
da0f209
7590a98
 
 
 
 
 
 
da0f209
7590a98
 
 
da0f209
7590a98
da0f209
7590a98
da0f209
7590a98
 
 
 
 
 
 
 
 
da0f209
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
from fastai.vision.all import *
import gradio as gr

# 1. Carga las clases
labels = ['okabe', 'kurisu']  # ← Ajusta con tus etiquetas reales

# 2. Reconstruye los data loaders (usa imagen ficticia para construirlos)
def label_func(fname): return 'okabe'  # dummy label

dls = ImageDataLoaders.from_name_func(
    Path('.'), 
    get_image_files('.'), 
    label_func=label_func,
    item_tfms=Resize(224),
    bs=1  # batch size pequeño, no se usará en producción
)

# 3. Reconstruye el modelo (usa tu arquitectura real si es distinta)
learn = cnn_learner(dls, resnet34)
learn.load('model_weights')  # Asegúrate de subir este archivo .pth a tu repo HF

# 4. Predicción
def predict(img):
    pred, pred_idx, probs = learn.predict(img)
    return {labels[i]: float(probs[i]) for i in range(len(labels))}

# 5. UI
gr.Interface(
    fn=predict,
    inputs=gr.Image(),
    outputs=gr.Label(num_top_classes=3),
    examples=['kurisu.jpg', 'okabe.jpg']
).launch(share=False)