Filtrado de Contenido NSFW con LLMs: Comparativa de Modelos
Analizar prompts de texto mediante Modelos de Lenguaje Grande (LLMs) puede prevenir la generación de contenido NSFW no deseado en la etapa del prompt. Esto ahorra recursos en comparación con el filtrado posterior de imágenes. Las pruebas en un conjunto de datos de 1000 prompts (400 NSFW) demostraron la efectividad del enfoque utilizando los modelos Phi-3-mini-4k-instruct-q4, Qwen2.5-1.5b-instruct-q4_k_s y Gemma-2-2b-it-Q4_K_S.
Criterios de evaluación: precisión (porcentaje de prompts NSFW bloqueados), tasa de error (porcentaje de falsos positivos en contenido SFW) y tiempo de análisis en milisegundos. Las pruebas se realizaron sin núcleos tensor.
Enfoques Básicos de Filtrado
Una lista negra de palabras funciona rápidamente (menos de 200 ms) pero se puede eludir fácilmente y requiere soporte de idioma. El análisis posterior de imágenes (por ejemplo, NsfwSpy) alcanza un 95% de precisión pero desperdicia recursos en la generación.
El análisis de prompts con LLM es óptimo: verificar texto es más económico y los modelos están disponibles sin ajuste fino. Un prompt del sistema define la tarea de clasificación como NSFW/SFW.
Comparativa de Modelos Sin Gramática
Las pruebas se realizaron con un prompt estándar y con ejemplos few-shot.
| Modelo | Prompt | Precisión (%) | Tasa de Error (%) | Tiempo (ms) |
|--------|--------|--------------|------------|------------|
| Phi-3 | Estándar | 55 | 1.3 | 359 |
| Phi-3 | Con ejemplos | 93.5 | 42.5 | 523 |
| Qwen2.5 | Estándar | 53.2 | 1 | 85 |
| Qwen2.5 | Con ejemplos | 80 | 4 | 280 |
| Gemma-2 | Estándar | 66.7 | <1 | 130 |
| Gemma-2 | Con ejemplos | <0.1 | <0.1 | 238 |
Phi-3 muestra mayor precisión con ejemplos pero una alta tasa de error. Qwen2.5 es rápido y equilibra métricas con few-shot. Gemma-2 lidera en modo estándar, pero few-shot falla debido a problemas de análisis de respuestas.
Implementación de Gramática para Estabilización
La gramática restringe la salida del modelo a las opciones "sí" (NSFW) / "no" (SFW). Esto resuelve problemas de análisis y proporciona respuestas predecibles.
Resultados actualizados:
| Modelo | Prompt | Precisión (%) | Tasa de Error (%) | Tiempo (ms) |
|--------|--------|--------------|------------|------------|
| Phi-3 | Estándar | 51 | 1 | 270 |
| Phi-3 | Con ejemplos | 93.7 | 43.1 | 553 |
| Qwen2.5 | Estándar | 55 | <1 | 156 |
| Qwen2.5 | Con ejemplos | 80.5 | 3.8 | 378 |
| Gemma-2 | Estándar | 66 | <1 | 231 |
| Gemma-2 | Con ejemplos | 40.2 | <0.1 | 321 |
El tiempo aumentó ~100 ms. Gemma-2 con ejemplos logró 0% de error en 1000 pruebas, pero la precisión cayó. El prompt estándar para Gemma-2 mantiene el equilibrio: 66% de precisión, error mínimo.
- Tamaños de modelo: Qwen2.5 (0.9 GB), Gemma-2 (1.5 GB), Phi-3 (2+ GB).
- Recomendaciones: Gemma-2 + Gramática sin few-shot para sistemas estrictos; Qwen2.5 para velocidad.
Escalando el Filtro
Un modelo puede manejar múltiples temas (NSFW + otras restricciones). Prueba en un conjunto de datos representativo, optimiza el prompt iterativamente. En producción, usa núcleos tensor para reducir la latencia 10 veces.
Conclusiones clave:
- El análisis preliminar de prompts reduce la carga en más del 95% comparado con el filtrado posterior.
- Gemma-2 es óptimo para precisión/tasa de error sin few-shot (66% / <1%).
- La gramática garantiza el análisis a costa de velocidad.
- Conjunto de prueba: 1000 prompts (40% NSFW) para evaluación confiable.
- Few-shot mejora Phi-3/Qwen pero conlleva riesgos de error.
— Editorial Team
Aún no hay comentarios.