<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>CUDA on kenji.blog</title><link>http://kenji.blog/es/tags/cuda/</link><description>Recent content in CUDA on kenji.blog</description><generator>Hugo -- gohugo.io</generator><language>es</language><copyright>kenjinote</copyright><lastBuildDate>Fri, 11 Sep 2026 19:00:00 +0900</lastBuildDate><atom:link href="http://kenji.blog/es/tags/cuda/index.xml" rel="self" type="application/rss+xml"/><item><title>Manual de Configuración de Entorno Local para Herramientas de Generación de Imágenes por IA (Stable Diffusion, etc.)</title><link>http://kenji.blog/es/p/local-ai-image-generation-setup/</link><pubDate>Fri, 11 Sep 2026 19:00:00 +0900</pubDate><guid>http://kenji.blog/es/p/local-ai-image-generation-setup/</guid><description>&lt;img src="http://kenji.blog/p/local-ai-image-generation-setup/img/eyecatch.jpg" alt="Featured image of post Manual de Configuración de Entorno Local para Herramientas de Generación de Imágenes por IA (Stable Diffusion, etc.)" />&lt;h2 id="1-introducción-por-qué-generar-imágenes-por-ia-en-un-entorno-local">1. Introducción: ¿Por qué generar imágenes por IA en un entorno local?
&lt;/h2>&lt;p>La tecnología de generación de imágenes por IA ha experimentado una evolución explosiva desde que Stable Diffusion se convirtió en código abierto. Actualmente, los servicios comerciales basados en la nube como Midjourney, DALL-E 3 y Adobe Firefly también son muy potentes y fáciles de usar. Sin embargo, estos servicios tienen desventajas como restricciones en el contenido generado debido a los términos de servicio (por ejemplo, filtros NSFW), costos continuos debido a las suscripciones y la imposibilidad de controlar el proceso de generación en detalle.&lt;/p>
&lt;p>Construir una herramienta de generación de imágenes por IA en un entorno local (su propio PC) tiene las siguientes ventajas abrumadoras:&lt;/p>
&lt;ol>
&lt;li>&lt;strong>Libertad completa y generación ilimitada&lt;/strong>: No hay límite en el número de imágenes generadas ni costos adicionales, y puede generar infinitas imágenes siempre que sus recursos locales lo permitan.&lt;/li>
&lt;li>&lt;strong>Alta personalización&lt;/strong>: Es posible el control detallado de la composición y la reproducción de personajes o estilos artísticos específicos mediante el uso de LoRA (Low-Rank Adaptation) y ControlNet.&lt;/li>
&lt;li>&lt;strong>Privacidad y seguridad&lt;/strong>: Como los datos no se envían a la nube, es ideal para tareas de diseño altamente confidenciales o proyectos personales.&lt;/li>
&lt;li>&lt;strong>Introducción inmediata de las últimas tecnologías&lt;/strong>: Puede probar los últimos modelos y extensiones que la comunidad de código abierto publica diariamente.&lt;/li>
&lt;/ol>
&lt;p>Este manual asume un entorno de Windows y explicará a fondo (con un volumen de más de 10,000 caracteres) desde cómo construir los tres principales entornos de generación de imágenes por IA (AUTOMATIC1111 Stable Diffusion WebUI, ComfyUI, Fooocus), hasta los antecedentes matemáticos fundamentales e incluso métodos de optimización de VRAM.&lt;/p>
&lt;hr>
&lt;h2 id="2-antecedentes-matemáticos-y-arquitectura-del-modelo-de-difusión-diffusion-model">2. Antecedentes matemáticos y arquitectura del modelo de difusión (Diffusion Model)
&lt;/h2>&lt;p>Para construir un entorno local y configurar los parámetros adecuadamente, es muy útil comprender cómo funcionan los &lt;strong>modelos de difusión latente (Latent Diffusion Model: LDM)&lt;/strong> como Stable Diffusion.&lt;/p>
&lt;h3 id="21-proceso-de-adición-de-ruido-forward-process-y-proceso-de-eliminación-reverse-process">2.1 Proceso de adición de ruido (Forward Process) y proceso de eliminación (Reverse Process)
&lt;/h3>&lt;p>El principio básico del modelo de difusión consiste en un &amp;ldquo;Forward Process&amp;rdquo; que agrega ruido gaussiano gradualmente a los datos originales (imagen) hasta convertirlo en ruido completo, y un &amp;ldquo;Reverse Process&amp;rdquo; que restaura la imagen original a partir de ese ruido.&lt;/p>
&lt;p>El Forward Process se define como una cadena de Markov, y el estado $x_t$ en el paso $t$ se expresa mediante la siguiente ecuación:&lt;/p>
$$ q(x_t | x_{t-1}) = \mathcal{N}(x_t; \sqrt{1 - \beta_t} x_{t-1}, \beta_t I) $$
&lt;p>Utilizando el truco de reparametrización (Reparameterization trick), se puede calcular el estado de cualquier paso $t$ directamente desde el estado inicial $x_0$.&lt;/p>
$$ x_t = \sqrt{\bar{\alpha}_t} x_0 + \sqrt{1 - \bar{\alpha}_t} \epsilon $$
&lt;p>Aquí, $\alpha_t = 1 - \beta_t$, $\bar{\alpha}_t = \prod_{s=1}^t \alpha_s$, y $\epsilon \sim \mathcal{N}(0, I)$ es ruido muestreado de una distribución normal estándar.&lt;/p>
&lt;p>En el Reverse Process, que es la fase de generación de imágenes, se utiliza una red neuronal (U-Net) $\epsilon_\theta$ para predecir y eliminar el ruido agregado. La función de pérdida (loss function) es simplemente la siguiente:&lt;/p>
$$ L_{simple} = \mathbb{E}_{x_0, \epsilon \sim \mathcal{N}(0, I), t} \left[ || \epsilon - \epsilon_\theta(\sqrt{\bar{\alpha}_t} x_0 + \sqrt{1 - \bar{\alpha}_t} \epsilon, t) ||^2 \right] $$
&lt;h3 id="22-reducción-del-costo-computacional-mediante-el-espacio-latente-latent-space">2.2 Reducción del costo computacional mediante el espacio latente (Latent Space)
&lt;/h3>&lt;p>Si la eliminación de ruido se realiza directamente en el espacio de píxeles (Pixel Space), la cantidad de cálculos aumenta cuadráticamente con la resolución de la imagen, lo que lo convierte en un proceso muy pesado. Stable Diffusion utiliza un &lt;strong>VAE (Variational Autoencoder)&lt;/strong> para convertir la imagen en un &amp;ldquo;espacio latente (Latent Space)&amp;rdquo; comprimido antes de procesarla.&lt;/p>
&lt;p>El codificador $E$ comprime una imagen con resolución $H \times W \times 3$ en $z \in \mathbb{R}^{H/8 \times W/8 \times 4}$. Como la dimensión espacial se reduce a un octavo, el costo computacional del mecanismo de autoatención (Self-Attention) pasa a ser $\mathcal{O}((\frac{H \times W}{64})^2)$, lo que supone una mejora espectacular del rendimiento. Después de la generación, el decodificador $D$ restaura la imagen al espacio de píxeles como $\tilde{x} = D(z)$.&lt;/p>
&lt;h3 id="23-arquitectura-del-sistema-de-stable-diffusion">2.3 Arquitectura del sistema de Stable Diffusion
&lt;/h3>&lt;p>El siguiente diagrama de Mermaid muestra el proceso general de generación de Stable Diffusion (generación de imágenes a partir de texto: txt2img).&lt;/p>
&lt;div class="mermaid">graph TD
A["Entrada del usuario (Prompt de texto)"] --> B["Codificador de texto (CLIP ViT-L/14)"]
B --> C["Vector de condicionamiento (Conditioning)"]
D["Ruido aleatorio (Latent Space)"] --> E["U-Net (Predictor de ruido)"]
C --> E
E --> F["Programador (Scheduler: DDIM, Euler a, etc.)"]
F --> D
F --> G["Variable latente sin ruido"]
G --> H["Decodificador VAE (Variational Autoencoder)"]
H --> I["Imagen generada final (Pixel Space)"]&lt;/div>
&lt;hr>
&lt;h2 id="3-análisis-exhaustivo-de-los-requisitos-de-hardware">3. Análisis exhaustivo de los requisitos de hardware
&lt;/h2>&lt;p>En la generación de imágenes por IA en local, la selección del hardware es lo más importante.&lt;/p>
&lt;h3 id="31-gpu-tarjeta-gráfica">3.1 GPU (Tarjeta gráfica)
&lt;/h3>&lt;p>Es el corazón del procesamiento de IA. Al ejecutar Stable Diffusion en un entorno Windows, las GPU de NVIDIA son el estándar de facto. Aunque es posible ejecutarlo en Radeon de AMD utilizando ROCm, considerando la dificultad de configurar el entorno en Windows y que muchas extensiones dependen de CUDA (la arquitectura de computación paralela de NVIDIA), se puede decir que NVIDIA es la única opción viable.&lt;/p>
&lt;ul>
&lt;li>&lt;strong>Requisitos mínimos&lt;/strong>: VRAM de 6GB (GTX 1060 6GB / RTX 2060, etc.). &lt;em>Sin embargo, habrá grandes restricciones en la resolución y las funciones.&lt;/em>&lt;/li>
&lt;li>&lt;strong>Requisitos recomendados&lt;/strong>: VRAM de 12GB (RTX 3060 12GB / RTX 4070, etc.). Es la línea base para ejecutar modelos SDXL cómodamente.&lt;/li>
&lt;li>&lt;strong>Requisitos ideales&lt;/strong>: VRAM de 16GB a 24GB (RTX 4080 / RTX 3090 / RTX 4090). Necesario para la generación de alta resolución, uso simultáneo de ControlNet complejos y entrenamiento de modelos locales (LoRA, etc.).&lt;/li>
&lt;/ul>
&lt;h3 id="32-memoria-ram-y-almacenamiento">3.2 Memoria (RAM) y Almacenamiento
&lt;/h3>&lt;ul>
&lt;li>&lt;strong>RAM&lt;/strong>: Se recomiendan encarecidamente 32GB o más. Al transferir modelos (desde varios GB hasta decenas de GB) del almacenamiento a la VRAM, se utiliza temporalmente la memoria RAM del sistema. Si falta RAM, se utilizará el archivo de paginación (page file), lo que provocará una caída fatal en la velocidad.&lt;/li>
&lt;li>&lt;strong>Almacenamiento&lt;/strong>: Un SSD NVMe M.2 es obligatorio. Los modelos de IA recientes (Checkpoints) tienen una capacidad de entre 2GB y 7GB cada uno. Si se utiliza un HDD, solo la carga del modelo tardará varios minutos, lo cual no es práctico.&lt;/li>
&lt;/ul>
&lt;hr>
&lt;h2 id="4-configuración-del-software-base-edición-windows">4. Configuración del software base (Edición Windows)
&lt;/h2>&lt;p>Antes de instalar las herramientas principales, prepararemos el software base necesario.&lt;/p>
&lt;h3 id="41-instalación-de-python">4.1 Instalación de Python
&lt;/h3>&lt;p>La mayoría de las herramientas de IA están escritas en Python. Instalaremos &lt;strong>Python 3.10.6&lt;/strong>, que tiene la mayor compatibilidad con Stable Diffusion WebUI y otros (las versiones demasiado nuevas pueden romper dependencias como PyTorch).&lt;/p>
&lt;ol>
&lt;li>Descargue &lt;code>python-3.10.6-amd64.exe&lt;/code> desde el archivo oficial de Python.&lt;/li>
&lt;li>Al iniciar el instalador, asegúrese de marcar la casilla &lt;strong>&amp;ldquo;Add Python 3.10 to PATH&amp;rdquo;&lt;/strong> en la parte inferior.&lt;/li>
&lt;li>En la pantalla de finalización de la instalación, haga clic en &lt;strong>&amp;ldquo;Disable path length limit&amp;rdquo;&lt;/strong> (Desactivar límite de longitud de ruta). (Importante: si no se desactiva el límite de ruta de 260 caracteres de Windows, se producirán errores en bibliotecas dependientes de jerarquías profundas).&lt;/li>
&lt;/ol>
&lt;h3 id="42-instalación-de-git-for-windows">4.2 Instalación de Git for Windows
&lt;/h3>&lt;p>Git es necesario para obtener el código fuente y los modelos desde GitHub.&lt;/p>
&lt;ol>
&lt;li>Descargue el instalador desde el sitio oficial de Git for Windows e instálelo con todas las configuraciones predeterminadas.&lt;/li>
&lt;/ol>
&lt;h3 id="43-configuración-de-cuda-toolkit-y-cudnn">4.3 Configuración de CUDA Toolkit y cuDNN
&lt;/h3>&lt;p>Como el PyTorch más reciente descarga los binarios de CUDA necesarios durante la instalación, ya no es obligatorio instalar el CUDA Toolkit en todo el sistema. Sin embargo, si planea usar extensiones personalizadas (compilación de TensorRT o xFormers), se recomienda instalar &lt;strong>CUDA Toolkit 11.8&lt;/strong> o &lt;strong>12.1&lt;/strong> (según el PyTorch a utilizar) desde el sitio oficial de NVIDIA.&lt;/p>
&lt;hr>
&lt;h2 id="5-procedimiento-de-construcción-de-los-3-grandes-frontends">5. Procedimiento de construcción de los 3 grandes frontends
&lt;/h2>&lt;p>Explicaremos cómo construir las tres principales herramientas de generación de imágenes por IA en la actualidad. Úselas de acuerdo con su propósito y habilidades.&lt;/p>
&lt;h3 id="51-construcción-de-automatic1111-stable-diffusion-webui">5.1 Construcción de AUTOMATIC1111 Stable Diffusion WebUI
&lt;/h3>&lt;p>Es la herramienta más versátil, con la historia más larga, abundantes extensiones y ajustes finos de parámetros.&lt;/p>
&lt;p>&lt;strong>Procedimiento de instalación:&lt;/strong>&lt;/p>
&lt;ol>
&lt;li>Abra el símbolo del sistema en cualquier directorio (por ejemplo, &lt;code>C:\work\ai&lt;/code>).&lt;/li>
&lt;li>Ejecute el siguiente comando para clonar el repositorio:
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-cmd" data-lang="cmd">&lt;span class="line">&lt;span class="cl">git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;/li>
&lt;li>Haga clic derecho en &lt;code>webui-user.bat&lt;/code> dentro del directorio clonado y ábralo en modo de edición.&lt;/li>
&lt;li>Para mejorar el rendimiento, configure los argumentos de inicio &lt;code>COMMANDLINE_ARGS&lt;/code> de la siguiente manera:
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-bat" data-lang="bat">&lt;span class="line">&lt;span class="cl">&lt;span class="k">set&lt;/span> &lt;span class="nv">COMMANDLINE_ARGS&lt;/span>&lt;span class="p">=&lt;/span>--xformers --opt-sdp-attention --theme dark
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;/li>
&lt;li>Haga doble clic en &lt;code>webui-user.bat&lt;/code> para ejecutarlo. La primera vez, se descargarán bibliotecas enormes como PyTorch, por lo que puede tardar varias decenas de minutos según su entorno.&lt;/li>
&lt;li>Cuando finalice, se mostrará &lt;code>Running on local URL: http://127.0.0.1:7860&lt;/code>, y podrá acceder a él a través de su navegador.&lt;/li>
&lt;/ol>
&lt;h3 id="52-construcción-de-comfyui-y-las-ventajas-del-uso-de-nodos">5.2 Construcción de ComfyUI y las ventajas del uso de nodos
&lt;/h3>&lt;p>ComfyUI es una interfaz basada en nodos (Node-based) que conecta visualmente el proceso de generación mediante bloques llamados &amp;ldquo;nodos&amp;rdquo;. Su gestión de la VRAM es excelente y, a menudo, funciona en entornos donde AUTOMATIC1111 se quedaría sin memoria.&lt;/p>
&lt;div class="mermaid">graph TD
subgraph "Ejemplo de Flujo de Trabajo en ComfyUI"
A["Cargar Checkpoint"] --> B["Codificación de Texto CLIP (Positivo)"]
A --> C["Codificación de Texto CLIP (Negativo)"]
A --> D["Imagen Latente Vacía"]
B --> E["KSampler (Muestreo)"]
C --> E
D --> E
A --> F["Decodificador VAE"]
E --> F
F --> G["Guardar Imagen"]
end&lt;/div>
&lt;p>&lt;strong>Procedimiento de instalación:&lt;/strong>&lt;/p>
&lt;ol>
&lt;li>Descargue el archivo 7z de la versión Windows Standalone desde la página oficial de lanzamientos de GitHub de ComfyUI.&lt;/li>
&lt;li>Descomprímalo y simplemente ejecute &lt;code>run_nvidia_gpu.bat&lt;/code> dentro (no requiere configuración porque es una versión portátil con Python incluido).&lt;/li>
&lt;li>&lt;strong>Instalación de ComfyUI Manager&lt;/strong>: Esencial para gestionar extensiones. Abra el símbolo del sistema en el directorio &lt;code>ComfyUI/custom_nodes/&lt;/code> y ejecute lo siguiente:
&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-cmd" data-lang="cmd">&lt;span class="line">&lt;span class="cl">git clone https://github.com/ltdrdata/ComfyUI-Manager.git
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>Al reiniciar, aparecerá el botón &amp;ldquo;Manager&amp;rdquo; en la parte inferior derecha de la interfaz, desde donde podrá instalar varios nodos personalizados.&lt;/li>
&lt;/ol>
&lt;h3 id="53-construcción-de-fooocus-alta-calidad-para-principiantes">5.3 Construcción de Fooocus: Alta calidad para principiantes
&lt;/h3>&lt;p>Fooocus es una interfaz diseñada con el objetivo de &amp;ldquo;obtener imágenes abrumadoramente hermosas incluso con prompts cortos&amp;rdquo;, al estilo de Midjourney. Está optimizada específicamente para modelos SDXL y realiza internamente la expansión de prompts basada en GPT-2 y complejos pipelines (procesos automáticos).&lt;/p>
&lt;p>&lt;strong>Procedimiento de instalación:&lt;/strong>&lt;/p>
&lt;ol>
&lt;li>Descargue y descomprima el paquete de lanzamiento para Windows desde el GitHub oficial de Fooocus.&lt;/li>
&lt;li>Ejecute &lt;code>run.bat&lt;/code>. Se descargarán automáticamente excelentes modelos SDXL como Juggernaut XL, y estará listo para comenzar la generación de alta calidad de inmediato.&lt;/li>
&lt;li>Marcando la casilla &amp;ldquo;Advanced&amp;rdquo;, también podrá utilizar funciones avanzadas como Image Prompt (Prompt de imagen) o Inpainting.&lt;/li>
&lt;/ol>
&lt;hr>
&lt;h2 id="6-gestión-de-modelos-y-comprensión-de-la-estructura-de-datos">6. Gestión de modelos y comprensión de la estructura de datos
&lt;/h2>&lt;p>La calidad de la generación de imágenes por IA depende completamente del modelo (datos entrenados) que se utilice.&lt;/p>
&lt;h3 id="61-checkpoints-modelos-base">6.1 Checkpoints (Modelos Base)
&lt;/h3>&lt;p>Es el modelo principal, el núcleo de la generación de imágenes. Anteriormente, el formato &lt;code>.ckpt&lt;/code> (formato Pickle) era el predominante, pero contenía vulnerabilidades de ejecución de código arbitrario (Arbitrary Code Execution), ya que permitía ejecutar cualquier código Python. Actualmente, el formato &lt;strong>&lt;code>.safetensors&lt;/code>&lt;/strong> es el estándar, ya que garantiza la seguridad y permite cargas sin copia (mmap) desde el disco a la memoria. Nunca descargue archivos &lt;code>.ckpt&lt;/code> de origen desconocido.&lt;/p>
&lt;h3 id="62-comportamiento-matemático-de-lora-low-rank-adaptation">6.2 Comportamiento matemático de LoRA (Low-Rank Adaptation)
&lt;/h3>&lt;p>LoRA es una técnica para evitar el enorme costo computacional necesario para el ajuste fino de un modelo completo (fine-tuning) y añadir el aprendizaje de un personaje o estilo específico.&lt;/p>
&lt;p>En lugar de actualizar directamente la matriz de pesos $W_0 \in \mathbb{R}^{d \times k}$ con miles de millones de parámetros, LoRA introduce dos matrices de rango bajo $A \in \mathbb{R}^{r \times k}$ y $B \in \mathbb{R}^{d \times r}$ (rango $r \ll \min(d, k)$). El nuevo peso se calcula de la siguiente manera:&lt;/p>
$$ W = W_0 + \Delta W = W_0 + B A $$
&lt;p>Gracias a esto, la cantidad de parámetros a entrenar y guardar se reduce drásticamente de $d \times k$ a $r \times (d + k)$, permitiendo la aplicación de estilos potentes con archivos ligeros de solo unos cientos de MB.&lt;/p>
&lt;h3 id="63-vae-variational-autoencoder">6.3 VAE (Variational Autoencoder)
&lt;/h3>&lt;p>Como se mencionó anteriormente, es el modelo que transforma entre el espacio latente y el espacio de píxeles. En los modelos de estilo anime, si no se configura el VAE adecuadamente, la salida puede resultar en &amp;ldquo;imágenes apagadas&amp;rdquo;, con aspecto blanquecino y bajo contraste. Se debe colocar y aplicar un VAE especializado en anime, como &lt;code>kl-f8-anime2.ckpt&lt;/code>, en la carpeta &lt;code>models/VAE&lt;/code>.&lt;/p>
&lt;h3 id="64-ejemplo-de-estructura-de-directorios-automatic1111">6.4 Ejemplo de estructura de directorios (AUTOMATIC1111)
&lt;/h3>&lt;div class="highlight">&lt;div class="chroma">
&lt;table class="lntable">&lt;tr>&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code>&lt;span class="lnt">1
&lt;/span>&lt;span class="lnt">2
&lt;/span>&lt;span class="lnt">3
&lt;/span>&lt;span class="lnt">4
&lt;/span>&lt;span class="lnt">5
&lt;/span>&lt;span class="lnt">6
&lt;/span>&lt;span class="lnt">7
&lt;/span>&lt;span class="lnt">8
&lt;/span>&lt;span class="lnt">9
&lt;/span>&lt;/code>&lt;/pre>&lt;/td>
&lt;td class="lntd">
&lt;pre tabindex="0" class="chroma">&lt;code class="language-text" data-lang="text">&lt;span class="line">&lt;span class="cl">stable-diffusion-webui/
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">├── models/
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">│ ├── Stable-diffusion/ &amp;lt;-- Coloque aquí los Checkpoints (.safetensors)
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">│ ├── Lora/ &amp;lt;-- Coloque aquí los modelos LoRA
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">│ ├── VAE/ &amp;lt;-- Coloque aquí los modelos VAE
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">│ └── ControlNet/ &amp;lt;-- Coloque aquí los modelos para ControlNet
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">├── embeddings/ &amp;lt;-- Coloque aquí los Textual Inversion (archivos PT)
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">├── extensions/ &amp;lt;-- Extensiones clonadas desde Git
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">└── webui-user.bat &amp;lt;-- Archivo batch de inicio
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/td>&lt;/tr>&lt;/table>
&lt;/div>
&lt;/div>&lt;hr>
&lt;h2 id="7-optimización-de-vram-y-ajuste-de-rendimiento">7. Optimización de VRAM y ajuste de rendimiento
&lt;/h2>&lt;p>Técnicas para superar la mayor barrera de la generación local, la &amp;ldquo;falta de VRAM (CUDA Out Of Memory)&amp;rdquo;, y maximizar la velocidad de generación.&lt;/p>
&lt;h3 id="71-optimización-del-mecanismo-de-atención-xformers--sdp-attention">7.1 Optimización del mecanismo de Atención (xFormers / SDP Attention)
&lt;/h3>&lt;p>La mayor parte de los cálculos de Stable Diffusion se invierten en la Cross-Attention dentro de U-Net. Como el cálculo de Atención predeterminado consume mucha memoria, se optimiza mediante los siguientes enfoques:&lt;/p>
&lt;ul>
&lt;li>&lt;strong>xFormers (&lt;code>--xformers&lt;/code>)&lt;/strong>: Una implementación de Atención eficiente en memoria (Memory Efficient Attention) desarrollada por Meta. Reduce drásticamente el consumo de VRAM y mejora la velocidad, pero tiene la característica de que debido al no determinismo en los cálculos &amp;ldquo;genera imágenes ligeramente diferentes incluso con exactamente el mismo valor de semilla (seed)&amp;rdquo;.&lt;/li>
&lt;li>&lt;strong>SDP Attention (&lt;code>--opt-sdp-attention&lt;/code>)&lt;/strong>: Scaled Dot Product Attention, incorporado de forma estándar desde PyTorch 2.0. Tiene el mismo efecto de reducción de VRAM y velocidad que xFormers, con la ventaja de tener menos dependencias. También hay variaciones sin no determinismo como &lt;code>--opt-sub-quad-attention&lt;/code>.&lt;/li>
&lt;/ul>
&lt;h3 id="72-opciones-de-inicio-para-ahorrar-vram">7.2 Opciones de inicio para ahorrar VRAM
&lt;/h3>&lt;ul>
&lt;li>&lt;code>--medvram&lt;/code>: Para entornos con 6GB a 8GB de VRAM. Ahorra memoria procesando el U-Net en partes, pero la velocidad disminuye un poco.&lt;/li>
&lt;li>&lt;code>--lowvram&lt;/code>: Para entornos con 4GB de VRAM o menos. Intercambia módulos constantemente con la VRAM, lo que reduce drásticamente la velocidad pero permite la ejecución forzada.&lt;/li>
&lt;li>&lt;code>--medvram-sdxl&lt;/code>: Una bandera muy útil que aplica MedVRAM solo cuando se usan modelos SDXL.&lt;/li>
&lt;/ul>
&lt;h3 id="73-ultra-aceleración-con-tensorrt">7.3 Ultra aceleración con TensorRT
&lt;/h3>&lt;p>&lt;strong>TensorRT&lt;/strong> es un framework (marco de trabajo) para aprovechar al máximo los Tensor Cores de las GPU NVIDIA.
Se compila el U-Net de Stable Diffusion como un motor dedicado (archivo &lt;code>.trt&lt;/code>) para la GPU en uso. La compilación lleva varias decenas de minutos y tiene la desventaja de fijar la resolución y el tamaño del lote (Dynamic Shape es posible pero reduce la eficiencia), pero la velocidad de generación aumenta &lt;strong>entre 1.5 y más de 2 veces&lt;/strong>. Es la mejor técnica de optimización para usos profesionales donde se generan grandes cantidades de imágenes de la misma resolución.&lt;/p>
&lt;h3 id="74-tiled-vae--tiled-diffusion">7.4 Tiled VAE / Tiled Diffusion
&lt;/h3>&lt;p>Al generar o escalar imágenes de alta resolución (como 4K), la VRAM se agota de inmediato durante el proceso de decodificación del VAE. Para evitar esto, es indispensable utilizar una extensión (Multidiffusion / Tiled VAE) que divida la imagen en cuadrículas (por ejemplo, fragmentos de $512 \times 512$), las procese por separado y finalmente las combine.&lt;/p>
&lt;hr>
&lt;h2 id="8-tecnología-de-control-avanzado-controlnet">8. Tecnología de control avanzado: ControlNet
&lt;/h2>&lt;p>Con solo prompts de texto, es imposible especificar la pose de un personaje, perspectivas complejas o los movimientos detallados de las yemas de los dedos. Quien resuelve esto es &lt;strong>ControlNet&lt;/strong>.&lt;/p>
&lt;p>ControlNet mantiene fijos los pesos del modelo de Stable Diffusion entrenado, copia la estructura del codificador e intercala &amp;ldquo;Zero-convolutions (capas de convolución inicializadas con pesos en cero)&amp;rdquo;. Esto permite agregar condicionamientos adicionales sin destruir la capacidad de generación original.&lt;/p>
&lt;p>&lt;strong>Preprocesadores y modelos representativos:&lt;/strong>&lt;/p>
&lt;ul>
&lt;li>&lt;strong>OpenPose&lt;/strong>: Extrae el esqueleto humano (posiciones de las articulaciones) y genera una imagen con exactamente la misma pose.&lt;/li>
&lt;li>&lt;strong>Canny&lt;/strong>: Detecta los bordes y colorea o convierte en imagen realista basándose en el dibujo lineal (lineart).&lt;/li>
&lt;li>&lt;strong>Depth&lt;/strong>: Genera un mapa de profundidad (Depth Map) y produce una imagen manteniendo las relaciones espaciales de adelante hacia atrás.&lt;/li>
&lt;li>&lt;strong>Lineart&lt;/strong>: Es superior a Canny en la extracción de líneas para estilos de anime.&lt;/li>
&lt;/ul>
&lt;p>Al aplicar múltiples ControlNets al mismo tiempo (Multi-ControlNet), es posible generar con certeza &amp;ldquo;imágenes con la pose especificada y la perspectiva del fondo especificada&amp;rdquo;.&lt;/p>
&lt;hr>
&lt;h2 id="9-solución-de-problemas-faq">9. Solución de problemas (FAQ)
&lt;/h2>&lt;p>Errores frecuentes y sus soluciones en la construcción y operación de entornos locales.&lt;/p>
&lt;h3 id="q1-la-generación-se-detiene-con-el-error-cuda-out-of-memory">Q1. La generación se detiene con el error &lt;code>CUDA out of memory.&lt;/code>.
&lt;/h3>&lt;p>&lt;strong>A1:&lt;/strong> Falta VRAM. Baje la resolución de generación o establezca el tamaño del lote (batch size) a 1. Además, en el caso de A1111, agregue &lt;code>--xformers&lt;/code> y &lt;code>--medvram&lt;/code> en &lt;code>webui-user.bat&lt;/code> y reinicie. Al realizar mejoras de alta resolución (Hires. fix), si usa un escalador de la familia ESRGAN como R-ESRGAN en lugar de un escalador Latent, puede reducir el consumo de VRAM.&lt;/p>
&lt;h3 id="q2-la-imagen-generada-sale-completamente-negra-o-llena-de-ruido">Q2. La imagen generada sale completamente negra o llena de ruido.
&lt;/h3>&lt;p>&lt;strong>A2:&lt;/strong> Es un fenómeno donde los tensores colapsan debido a la aparición de valores NaN (Not a Number) durante el cálculo. Realice las siguientes acciones:&lt;/p>
&lt;ol>
&lt;li>Agregue la opción de inicio &lt;code>--no-half-vae&lt;/code> para que solo el VAE calcule en precisión simple (FP32).&lt;/li>
&lt;li>Agregue la opción de inicio &lt;code>--disable-nan-check&lt;/code> (no es una solución de raíz).&lt;/li>
&lt;li>Es posible que los cálculos en FP16 no sean adecuados para el modelo que está utilizando (especialmente en la serie SD 2.1), así que pruebe el modo de precisión completa.&lt;/li>
&lt;/ol>
&lt;h3 id="q3-se-produce-un-error-de-python-o-git-al-iniciar-webui-userbat">Q3. Se produce un error de Python o Git al iniciar &lt;code>webui-user.bat&lt;/code>.
&lt;/h3>&lt;p>&lt;strong>A3:&lt;/strong> Se sospecha una inconsistencia en las bibliotecas dependientes. Elimine por completo la carpeta &lt;code>venv&lt;/code> dentro del directorio WebUI y vuelva a ejecutar &lt;code>webui-user.bat&lt;/code>. El entorno virtual se reconstruirá desde cero (lo que provocará que se vuelvan a descargar varios GB).&lt;/p>
&lt;h3 id="q4-descargué-un-modelo-safetensors-pero-no-aparece-en-la-lista">Q4. Descargué un modelo (Safetensors) pero no aparece en la lista.
&lt;/h3>&lt;p>&lt;strong>A4:&lt;/strong> Asegúrese de colocarlo en la carpeta &lt;code>models/Stable-diffusion&lt;/code> y presione el botón &amp;ldquo;Refresh&amp;rdquo; (Actualizar) junto al menú desplegable de selección de Checkpoint en la interfaz de usuario. Si lo colocó en una subcarpeta, verifique que la extensión sea correcta.&lt;/p>
&lt;hr>
&lt;h2 id="10-conclusión-el-futuro-de-la-generación-de-imágenes-por-ia-y-la-superioridad-del-entorno-local">10. Conclusión: El futuro de la generación de imágenes por IA y la superioridad del entorno local
&lt;/h2>&lt;p>El movimiento de generación de imágenes por IA de código abierto, que comenzó con Stable Diffusion, continúa evolucionando hacia arquitecturas de próxima generación como SDXL, Stable Diffusion 3 y Flux.1. La cantidad de parámetros de los modelos se está volviendo enorme, pasando de miles de millones a decenas de miles de millones, por lo que en el futuro los entornos de GPU con más de 24 GB de VRAM serán aún más solicitados.&lt;/p>
&lt;p>Sin embargo, tecnologías de optimización local como TensorRT, cuantización (Quantization) y GGUF también están acelerando su evolución a la misma velocidad, y se está formando un ecosistema donde la inferencia suficiente es posible incluso con hardware para consumidores en general.&lt;/p>
&lt;p>La construcción del entorno CUDA, la optimización de la VRAM y la comprensión de canales de procesamiento (pipelines) como ComfyUI explicados en este manual se convertirán en conocimientos básicos universales que serán útiles independientemente de cómo cambien las tendencias tecnológicas de la IA. Esperamos que su creatividad se exprese al máximo en un entorno local sin restricciones.&lt;/p></description></item></channel></rss>