TechnologyPublicado el October 7, 2026Por Thibault Mathian

Clasificador de seguridad para probadores virtuales: un modelo abierto

Lanzamos el Clasificador de seguridad para probadores virtuales (Apache-2.0). Analiza fotos de productos y predice qué mostrará el probador. Descubre por qué los detectores NSFW fallan, cómo lo creamos y cómo clasifica.

Tabla de contenidos

Hoy lanzamos el Clasificador de seguridad para probadores virtuales en Hugging Face bajo la licencia Apache-2.0. Analiza las fotos de un producto y responde a una sola pregunta: si un cliente se lo prueba, ¿qué mostrará la foto generada?

Lo creamos para filtrar los productos antes de que lleguen a un modelo de probador virtual. Cualquier servicio de prueba virtual que acepte imágenes de productos aleatorias se enfrenta al mismo problema, así que hemos decidido publicar el modelo, la política de etiquetado y la evaluación.

Ocho fotos de productos del catálogo de demostración de Genlook con el resultado del clasificador: un sujetador deportivo, unos pantalones cortos de baño y una chaqueta corta son aptos (ok); tres bañadores son reveladores (revealing); un arnés para perros es apto y está etiquetado como mascota (pet); una peluca es apta y está etiquetada como no ropa (not clothing).
Ocho fotos de productos del catálogo de demostración de Genlook con el resultado del clasificador: un sujetador deportivo, unos pantalones cortos de baño y una chaqueta corta son aptos (ok); tres bañadores son reveladores (revealing); un arnés para perros es apto y está etiquetado como mascota (pet); una peluca es apta y está etiquetada como no ropa (not clothing).

Por qué los detectores NSFW no funcionan en probadores virtuales

Un probador virtual toma la foto de una persona y la foto de un producto, y devuelve una imagen de la persona llevando dicho producto. El riesgo reside en el resultado final, pero lo único que puedes comprobar antes de generarlo es el producto.

Los detectores NSFW genéricos evalúan los píxeles de la imagen que reciben. Y esa no es la pregunta adecuada para la foto de un producto:

  • Una foto plana de lencería no contiene desnudos. Pero el resultado del probador virtual mostrará a la clienta en lencería.
  • Unas pezoneras sobre un fondo blanco son solo unos centímetros de tela. Pero el resultado del probador virtual será un topless.
  • Una máscara fetiche en un maniquí no es explícita. Pero sigue siendo un producto sexual.
  • Una modelo fotografiada desnuda llevando solo un collar es una imagen explícita. Pero el collar es un producto normal.

Cuando probamos tres populares clasificadores de imágenes NSFW de código abierto (NudeNet, nsfw-vit y Falconsai) en un conjunto inicial de 141 productos etiquetados, solo coincidieron con nuestras etiquetas entre un 48 y un 62 % de las veces. ShieldGemma 2 de Google, utilizando políticas personalizadas redactadas para esta misma cuestión, alcanzó el 71,6 %. Los modelos funcionan como deberían. Simplemente, responden a una pregunta distinta.

Qué predice el clasificador

Cada producto recibe un nivel, ordenado por gravedad:

NivelQué muestra el resultado del probador virtualEjemplos
okEl cliente vestido normalmenteRopa de diario, ropa deportiva, trajes de neopreno, cosplay que cubre como ropa normal, accesorios
revealingCobertura nivel traje de bañoBikinis y bañadores, ropa interior masculina, fajas, micro shorts, la mayoría de la ropa de festival
lingerieRopa interior femenina, sin zonas íntimas visiblesSujetadores, bragas, conjuntos de lencería, bodys, ligueros, corsés usados como lencería
adultZonas íntimas expuestas o un producto sexualMicro bañadores, pezoneras, prendas transparentes, diseños de copa abierta, ropa BDSM y fetiche, disfraces de rol sexual

Junto al nivel, se incluyen tres resultados adicionales:

  • subject: human_clothing, pet o not_clothing. Un arnés para perros y uno de bondage se parecen mucho en una foto de producto. Las pelucas, los cosméticos y los artículos para el hogar se marcan como no ropa (not_clothing).
  • swimwear: regular, near_micro o micro. Los regulares y casi micro son revealing, los micro son adult. La palabra "microkini" en el nombre de un producto no decide nada; las fotos sí.
  • ravewear: verdadero o falso, para trajes de festival. No cambia el nivel, pero la ropa de fiesta es donde el modelo duda más, por lo que resulta útil saberlo.

Los niveles describen el resultado, no el producto ni la tienda. El filtro adecuado depende del público: una marca de lencería permitirá la etiqueta lingerie, mientras que un marketplace infantil podría bloquear la etiqueta revealing. El modelo también devuelve un indicador blocked (probabilidad de adult de 0,3 o superior), que detecta más productos para adultos que el nivel principal por sí solo, a cambio de un pequeño aumento en los bloqueos falsos.

Los casos difíciles

La mayoría de los productos son fáciles de clasificar. La política existe para aquellos que no lo son, y cada regla proviene de un producto real que requirió una decisión:

ProductoNivelPor qué
Sujetador deportivo vendido como ropa de gimnasiookSe usa como top en público
El mismo corte vendido como bralette de lenceríalingerieRopa interior femenina
Sujetador de encaje, pezones claramente visibles en las fotosadultTransparente sobre los pezones
Bóxers para hombrerevealingCobertura nivel traje de baño
Traje de neopreno, camiseta de surf, burkiniokCobertura total
Pantalones de cuero, vestido con aspecto de látexokArtículos de moda
Traje tipo "catsuit" de cuero o látex vendido como ropa feticheadultTraje fetiche
Arnés de pecho de cuero sobre una camisaokAccesorio sobre la ropa
Arnés de correas sobre la piel desnudaadultArtículo fetiche
Máscara de animal para HalloweenokDisfraz
Máscara de "pup-play"adultMáscara fetiche
Cadena para el cuerpo estilizada sobre un vestidookJoyería sobre la ropa
Cadena para el cuerpo sobre un torso desnudoadultSe lleva sin nada debajo
Cosplay que cubre como la ropa normalokDisfraz
Traje de anime estilo lenceríaadultCosplay sexualizado

La política completa, con las reglas para cada nivel y etiqueta, está publicada como LABELLING_POLICY.md junto a los pesos del modelo.

Los ejemplos al principio de este artículo son del modelo publicado ejecutándose en nuestro propio catálogo de demostración. El bañador de manga larga es un caso útil: tiene manga larga y cremallera frontal, pero la parte inferior tiene corte de bañador de una pieza, por lo que el probador virtual muestra una cobertura de nivel traje de baño y el modelo dice revealing. El sujetador deportivo con cuello halter que aparece a su lado en nuestro catálogo se mantiene como ok con un 0,97.

Cómo lo creamos

Datos. Unos 2600 productos (aproximadamente 5000 fotos) de catálogos de tiendas online, elegidos para cubrir los casos difíciles: lencería, micro bañadores, ropa fetiche, ropa de festival, cosplay y ropa para mascotas, junto a una gran proporción de moda de diario para que el modelo no bloquee en exceso. Solo se usan fotos de productos, nunca fotos de clientes. Cualquier producto que pudiera mostrar a un menor en un contexto revelador o sexual se eliminó de los datos de forma permanente.

Etiquetas. Claude etiquetó cada producto tras analizar cada foto y leer el título y la descripción, siguiendo la política redactada. Un revisor humano comprobó ejemplos de calibración para cada nivel y corrigió los casos límite, y esas decisiones se reincorporaron a la política. La política pasó por varias versiones; por ejemplo, el nivel lingerie se separó de adult cuando quedó claro que la mayoría de la ropa interior no es explícita.

Modelo. La base es SigLIP 2 de Google (so400m, parche 16, 384 px), Apache-2.0. Se incluyen dos variantes:

VarianteTamañoQué es
finetuned (predeterminado)unos 0,9 GBLos últimos 6 bloques del transformador y el cabezal de agrupación (pooling) entrenados de principio a fin, con cuatro cabezales lineales
frozenunos 120 KB sobre SigLIP 2La torre de visión original, cabezales logísticos en la media y el máximo de las incrustaciones (embeddings) de la foto

Un producto se puntúa en base a todas sus fotos, porque a menudo una foto oculta lo que otra muestra (una vista trasera, una toma detallada de la tela).

También probamos un LLM de última generación con la misma política. Estuvo cerca en precisión, pero cada llamada tardaba unos 1,6 segundos y seguía necesitando un sistema de respaldo para los tiempos de espera agotados. Un clasificador de visión se ejecuta en decenas de milisegundos por foto en una GPU, da siempre la misma respuesta y puede volver a entrenarse cuando cambie la política.

Resultados y precisión

Validación cruzada quíntuple sobre 2596 productos: cada producto es puntuado por un modelo que nunca lo vio durante el entrenamiento.

finetunedfrozen
Precisión, 4 niveles94,6 %94,2 %
Productos para adultos no detectados, indicador blocked34 de 53439 de 534
Falsos adultos, indicador blocked5255
Tasa de recuperación (Recall) lencería90 %89 %
Precisión del sujeto (subject)99,2 %
Precisión etiqueta ropa de baño90,0 %

Por grupo de productos (finetuned, nivel superior):

GrupoProductosPrecisión
Catálogos de moda de diario103297,5 %
Cuerdas y bondage75100 %
Marcas de trajes de baño23095,2 %
Marcas de lencería12094,2 %
Anime y cosplay6393,7 %
Catálogos fetiche, lencería y mascotas63192,6 %
Trajes de baño exóticos y micro33091,8 %
Festival y fiesta (rave)11585,2 %

Micro bañadores reales: 91 de 95 detectados.

El conjunto de pruebas es difícil a propósito. En los catálogos de moda de diario, el tipo de ropa que venden la mayoría de las tiendas, la precisión es del 97,5 %.

Limitaciones

  • La lencería transparente es el límite más complicado. Que los pezones o los genitales sean claramente visibles es lo que decide entre lingerie y adult, y hay productos muy similares en ambos lados. La mayoría de los errores restantes ocurren aquí.
  • La ropa de festival y de fiesta es el grupo más débil. Las redes, las mallas y los diamantes de imitación empujan al modelo hacia la etiqueta adult.
  • Fotografía de comercio electrónico principalmente occidental. Es de esperar una menor precisión en estilos fotográficos muy diferentes.
  • Clasifica productos, no personas. No lo utilices para identificar o tomar decisiones sobre una persona.

Cómo usarlo

# pip install torch open_clip_torch safetensors huggingface_hub pillow
from huggingface_hub import hf_hub_download
import importlib.util

spec = importlib.util.spec_from_file_location(
    "tryon_safety",
    hf_hub_download("Genlook/tryon-safety-classifier", "tryon_safety.py"),
)
tryon_safety = importlib.util.module_from_spec(spec)
spec.loader.exec_module(tryon_safety)

clf = tryon_safety.TryOnSafetyClassifier.from_pretrained(
    "Genlook/tryon-safety-classifier", revision="v1.0"
)
pred = clf.predict(["front.jpg", "back.jpg"])  # todas las fotos de un producto
print(pred.level, pred.blocked, pred.subject, pred.swimwear, pred.ravewear)

Fija la versión con revision="v1.0" para que ninguna actualización altere tus resultados sin que tú lo elijas. La inferencia solo necesita open_clip y torch, y los pesos son safetensors.

Los falsos positivos, falsos negativos y las ideas para la próxima versión son bienvenidos en la pestaña Discussions del repositorio del modelo.

Qué significa esto para Genlook

La API de prueba virtual de Genlook ya comprueba cada producto antes de devolver una prueba virtual: los productos para adultos y fetiche se rechazan, y los trajes de baño, ropa interior y lencería requieren una cuenta de pago. Una prueba virtual rechazada falla con CONTENT_POLICY_VIOLATION y se reembolsa su crédito (referencia de errores). Este clasificador es el modelo que creamos para esa misma comprobación.

Para los desarrolladores, esto significa que la seguridad es parte de la API en lugar de algo que haya que construir en torno a ella. Un único punto de conexión (endpoint) cubre todos los tipos de productos, a un coste de 0,02 $ por prueba virtual en un plan, reduciéndose a 0,015 $ por volumen (0,04 $ en la modalidad de pago por uso), y las cuentas nuevas empiezan con créditos gratuitos.

Resumen

  • El lanzamiento: un clasificador Apache-2.0 basado en SigLIP 2 que predice qué mostraría una prueba virtual de un producto, analizando las fotos de dicho producto.
  • Por qué existe: los detectores NSFW evalúan los píxeles de la foto de un producto, lo cual es un enfoque incorrecto para los probadores virtuales. Tres de ellos obtuvieron entre un 48 y un 62 % en nuestras etiquetas.
  • Resultados: cuatro niveles (ok, revealing, lingerie, adult), además de etiquetas para el sujeto, ropa de baño y ropa de festival.
  • Precisión: 94,6 % en cuatro niveles en un conjunto deliberadamente difícil, 97,5 % en moda de diario, 100 % en cuerdas y bondage.
  • Abierto: los pesos, el código de inferencia y la política de etiquetado son públicos. Los datos de entrenamiento no lo son.

Obtén el modelo en Hugging Face, consigue una clave API en platform.genlook.app, o añade el probador virtual a tu tienda.

FAQ

Preguntas, respondidas.

¿Qué es el Clasificador de seguridad para probadores virtuales?↓
¿Por qué no usar un detector NSFW para los probadores virtuales?↓
¿Qué precisión tiene?↓
¿Puedo usarlo comercialmente?↓
¿La API de probador virtual de Genlook incluye comprobaciones de seguridad?↓

¿Listo para reducir devoluciones y aumentar conversiones?

Instala Genlook en tu tienda Shopify en minutos. Empieza con nuestro plan gratuito.

Artículos relacionados