Spaces:
Sleeping
Sleeping
File size: 825 Bytes
61bc9be bdb83bf 5c36b58 4314de5 bdb83bf 61bc9be bdb83bf 61bc9be 5c36b58 61bc9be 339ccca 61bc9be 4314de5 5c36b58 4314de5 339ccca 4314de5 bdb83bf 5c36b58 |
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 |
import gradio as gr
from transformers import AutoImageProcessor, AutoModel
import torch
from PIL import Image
import numpy as np
# Cargar el modelo solo una vez
processor = AutoImageProcessor.from_pretrained("facebook/dinov2-base")
model = AutoModel.from_pretrained("facebook/dinov2-base")
model.eval()
def get_embedding(image_np):
image = Image.fromarray(image_np).convert("RGB")
inputs = processor(images=image, return_tensors="pt")
with torch.no_grad():
embeddings = model(**inputs).last_hidden_state[:, 0] # CLS token
return embeddings.squeeze().tolist()
iface = gr.Interface(
fn=get_embedding,
inputs=gr.Image(type="numpy"), # CAMBIO CLAVE AQUÍ
outputs="json",
description="Microservicio para extraer embeddings de imágenes usando DINOv2."
)
iface.queue()
iface.launch()
|