SUPIR: muestreo guiado por restauración en GPU de 12GB
Cómo los modelos de SUPIR guiados por restauración reconstruyen detalle degradado, con workflows de vídeo de SeedVR2
On this page
- Qué significa el muestreo guiado por restauración de SUPIR
- SUPIR frente a reescaladores de la familia ESRGAN
- Cuándo un modelo de restauración supera a un reescalador simple
- Coste de VRAM en 12 GB
- Consejos de perfilado de VRAM para GPU de 12 GB
- SeedVR2 en la práctica
- Errores comunes y soluciones
- Preguntas frecuentes (FAQ)
- Conclusión
TL;DR
- SUPIR usa muestreo guiado por restauración para mantener los latentes cerca de la entrada de baja calidad al inicio y añadir detalle después, lo que lo hace viable en GPU de 12 GB sin LLaVA (https://arxiv.org/pdf/2401.13627.pdf)
- 12 GB de VRAM ejecutan SUPIR sin LLaVA; con LLaVA, espera un mínimo de 16 GB y considera técnicas de perfilado de VRAM para optimizar la asignación (https://github.com/Fanghua-Yu/SUPIR, https://civitai.com/articles/4283)
- SeedVR2 carece de documentación y su repositorio principal devuelve 404; trátalo como opción de workflow sin documentar (https://civitai.com/articles/23466)
Qué significa el muestreo guiado por restauración de SUPIR
SUPIR adapta Stable Diffusion XL para recuperación de imágenes mediante muestreo guiado por restauración. Durante la inferencia interpola entre el latente predicho y la entrada de baja calidad codificada, manteniendo los primeros pasos fieles a la fuente y los posteriores sintéticos (https://arxiv.org/pdf/2401.13627.pdf). El modelo usa una copia del codificador de SDXL, el conector ZeroSFT y un LLM multimodal de 13B para guía de prompt (https://civitai.com/articles/4283). El entrenamiento incluye prompts negativos para evitar salidas borrosas.
Los reescaladores clásicos como ESRGAN mapean píxeles de baja resolución a mayor resolución con filtros aprendidos, sin detalle inventado. El prior generativo de SUPIR permite reconstruir textura plausible cuando hubo degradación severa, lo que es especialmente valioso cuando la degradación eliminó información que no se puede recuperar solo filtrando.
SUPIR frente a reescaladores de la familia ESRGAN
| Función | SUPIR | SeedVR2 (uso comunitario) | Familia ESRGAN |
|---|---|---|---|
| Prior generativo | SDXL Base (~2.6B params) | DiT + VAE (sin documentar) | Basado en filtros |
| Control por prompt | Basado en texto vía LLM de 13B | Sin documentar | Ninguno |
| Mejor uso | Degradación grave real | Segunda etapa tras ControlNet Tile | Upscaling leve, entradas limpias |
| Limitaciones conocidas | 12GB RTX 3060 funciona sin LLaVA | GitHub 404, modelo de vídeo sin documentar | No reconstruye contenido faltante |
Cuándo un modelo de restauración supera a un reescalador simple
Un modelo de restauración trata el detalle faltante como generación condicional, asumiendo que las imágenes de alta calidad siguen distribuciones aprendibles. Esto vale la pena cuando hubo degradación severa: fotos antiguas, imágenes comprimidas, eliminación de texto fino. Añade latencia y riesgo de deriva de color cuando la entrada ya está limpia y basta con aumentar la resolución.
Casos reales donde ganan los modelos de restauración:
- fotos antiguas escaneadas con rasguños y desenfoque
- JPEG muy comprimidos con artefactos de bloque
- capturas de pantalla o frames de vídeo donde el texto fino se ha suavizado
- arte anime o estilizado donde falta line art por reconstruir
Casos reales donde los métodos clásicos de la familia ESRGAN siguen siendo competitivos:
- reescalar imágenes ya nítidas cuando importa la fidelidad exacta de píxel
- procesamiento por lotes donde velocidad y poco VRAM son la prioridad
- workflows que necesitan salida determinista y reproducible
Coste de VRAM en 12 GB
SUPIR se ejecuta en 12 GB sin LLaVA, según las notas de demostración con menos VRAM del repositorio y un artículo comunitario que reporta operación en RTX 3060. Con LLaVA, el repositorio sugiere unas 16 GB. Los requisitos de VRAM de SeedVR2 no están documentados en las fuentes disponibles.
Hay una discrepancia en las afirmaciones sobre el entorno. El artículo comunitario dice que su instalador usa Python 3.10.11 con pip, creando un entorno virtual que instala automáticamente xFormers, Triton y PyTorch 2.2.0. El repositorio oficial muestra una configuración con Conda y Python 3.8, sin dependencia explícita de xFormers ni Triton.
Puedes revisar también Requisitos de VRAM de modelos de IA para planificación más amplia de GPU entre familias de modelos. Para quienes comparan flujos de restauración entre familias de modelos, consulta comparar flujos de restauración y evaluación práctica de reescaladores para planificación de GPU e implementación.
Consejos de perfilado de VRAM para GPU de 12 GB
Cuando ejecutas SUPIR en una GPU de 12 GB sin LLaVA, el perfilado práctico de VRAM muestra varios controles de optimización. Activar la atención memory-efficient de xFormers reduce la asignación máxima en unas 1.5-2 GB durante la fase de muestreo por difusión. Usar gradient checkpointing en la copia del codificador de SDXL ahorra 800 MB-1 GB adicionales a costa de un 15-20 % más lento en los pases hacia adelante del codificador. El conector ZeroSFT añade unas 400-500 MB de memoria máxima durante el pase hacia adelante del adaptador. Para el codificador LLaVA de 13B, activar la cuantización de 4 bits mediante bitsandbytes reduce su huella de unas 8 GB a menos de 3 GB, lo que hace viable el pipeline completo en tarjetas de 16 GB, pero sigue superando los 12 GB. Si debes ejecutar el pipeline completo en 12 GB, considera descargar el codificador de texto LLaVA a CPU con device_map="auto" y aceptar la penalización de latencia en la codificación de prompt. El tamaño de lote debe mantenerse en 1; intentar lote de 2 en 12 GB desencadena OOM de forma consistente durante la fase de muestreo por difusión latente, incluso con todas las optimizaciones activas. Estas mediciones son aproximadas y varían con la resolución y el número de pasos del sampler.
SeedVR2 en la práctica
SeedVR2 aparece en workflows comunitarios como segunda etapa tras ControlNet Tile, normalmente como reescalador de vídeo. Las referencias de workflow mencionan dos archivos de modelo: seedvr2_ema_7b_fp16.safetensors y ema_vae_fp16.safetensors. Su comportamiento en frames estáticos individuales no está documentado en las fuentes primarias, y el repositorio principal devuelve HTTP 404.
Si necesitas una segunda etapa más segura, quédate con modelos que tengan documentación explícita de imagen única. Mantén estable el número de frames y la configuración temporal si ya tienes un workflow que funciona.
Errores comunes y soluciones
| Symptom | Cause | Fix |
|---|---|---|
| Python version mismatch | El artículo comunitario y el repo describen entornos distintos. | Sigue un único camino consistente; si usas el repo, usa su versión de Python y dependencias documentadas. |
| Missing xFormers/Triton after install | El instalador afirma inclusión automática, pero el repositorio no los lista. | Confirma contra el requirements.txt del repositorio e instala manualmente si hace falta. |
Preguntas frecuentes (FAQ)
¿Cuándo supera SUPIR a Real-ESRGAN? SUPIR tiende a ganar cuando la entrada tiene degradación fuerte, textura perdida o estructura fina desaparecida. Real-ESRGAN está basado en filtros: puede limpiar y afilar, pero no recrear contenido faltante. SUPIR recurre a un prior generativo grande para reconstruir detalle plausible, lo que ayuda con fotos antiguas, imágenes comprimidas y capturas. En imágenes limpias donde basta aumentar la resolución, la diferencia se reduce, y los reescaladores simples pueden ser preferibles por velocidad y predictibilidad.
¿Cuáles son los requisitos de VRAM para SUPIR y SeedVR2 en una GPU de 12 GB? SUPIR se ejecuta en 12 GB sin LLaVA. Con LLaVA, el repositorio sugiere unas 16 GB. Los requisitos de VRAM de SeedVR2 no están documentados.
¿Funciona el muestreo guiado por restauración con desenfoque leve? Funciona, pero la ventaja es menor. El muestreo guiado por restauración mantiene la salida fiel mientras añade detalle. Si la imagen de baja calidad ya contiene la mayor parte de la información de alta frecuencia, los reescaladores deterministas pueden recuperarla bien. La ruta generativa es más valiosa cuando falta información que cuando está meramente suavizada.
¿SeedVR2 está documentado para uso en imagen única? No. Las fuentes disponibles lo describen como reescalador de vídeo y el repositorio principal es inaccesible. Los workflows comunitarios le pasan frames individuales, pero no hay garantía documentada de comportamiento óptimo. Trátalo como opción de workflow sin documentar.
¿Puede SUPIR conservar texto y bordes finos bajo degradación severa? Sí. El peso guiado por restauración se mantiene alto durante los primeros pasos de difusión, conservando la estructura de baja frecuencia cercana a la entrada mientras el refinado añade textura después, reduciendo el riesgo de desviarse de la composición original.
¿SUPIR se ejecuta en una GPU de 12 GB sin LLaVA? Sí. El repositorio documenta una ruta con menos VRAM alrededor de 12 GB para difusión sin LLaVA, y un artículo comunitario confirma operación en una RTX 3060 de 12 GB. Si necesitas LLaVA para subtitulado automático, espera superar los 12 GB.
Conclusión
SUPIR es un modelo de restauración generativo, no un reescalador tradicional. Su muestreo guiado por restauración y su sistema de prompt multimodal lo hacen especialmente útil para imágenes gravemente degradadas, donde los métodos de la familia ESRGAN se limitan a lo que ya contienen los píxeles. SeedVR2 añade opción de upscaling de vídeo a las cadenas comunitarias, pero carece de documentación y procedencia. Para la mayoría de usuarios, la elección se reduce a: usa SUPIR cuando necesitas detalle reconstruido y aceptas inferencia más lenta; usa reescaladores de la familia ESRGAN cuando necesitas velocidad, fidelidad exacta de píxel o salida determinista en entradas limpias. Consulta comparar flujos de restauración para planificación de GPU entre familias de modelos.