TailSteer: ediciones de Qwen-Image 2.1 estables a 20 turnos
TailSteer es una etapa final de entrenamiento para Qwen-Image 2.1 que frena la deriva en cadenas largas de edición, con cuatro flujos nativos de ComfyUI.
ComfyUI/models/diffusion_models/, funciona con los nodos nativos de Qwen-Image 2.1 y viene con cuatro flujos de trabajo listos.
Edita una imagen diez veces seguidas y el último fotograma ya no es la misma imagen: la piel se vuelve plástica, el texto se deforma, el detalle del fondo se suaviza, y ninguna de las instrucciones pedía eso. TailSteer entrena el modelo para sobrevivir a ese bucle sin perder la calidad de la primera edición con la que empezó.
![]() |
|---|
| Turno 20 de veinte ediciones sucesivas, modelo base frente a TailSteer, del conjunto de ejemplos del proyecto |
Qué cambia
En el benchmark Add & Preserve del proyecto, que añade un objeto pequeño por turno durante diez turnos y puntúa lo que se mantuvo en su sitio, TailSteer conserva la tasa de completado de objetos del modelo base mientras mejora todo lo que queda fuera de la caja de edición:
| Métrica, turno 10 | Base | TailSteer |
|---|---|---|
| COA, completado de objetos (%) ↑ | 67.36 | 66.94 |
| PSNR fuera de la edición ↑ | 16.93 | 18.15 |
| SSIM fuera de la edición ↑ | 0.438 | 0.513 |
| LPIPS fuera de la edición ↓ | 0.270 | 0.239 |
El intercambio es pequeño: Qwen-IB EN 53.39 → 53.06, GEdit EN 8.11 → 8.04, ImgEdit 4.40 → 4.42. La generación de texto a imagen sigue funcionando desde el mismo checkpoint, y en la inferencia no se necesita ninguna máscara de preservación ni cambiar de modelo.
Mismo prompt y semilla: modelo base frente a TailSteer.
Ejecutarlo en ComfyUI
- Actualiza ComfyUI a una versión que incluya
TextEncodeQwenImage21yQwenImage21Cache, y luego colocaqwen_image_2.1_tailsteer_bf16.safetensors(14.23 GB) enmodels/diffusion_models/. - Añade los componentes base sin cambios:
qwen3vl_8b_bf16.safetensorsenmodels/text_encoders/(17.53 GB) yqwen_image_2.1_vae_bf16.safetensorsenmodels/vae/, ambos de Comfy-Org/Qwen-Image-2.1. - Arrastra un flujo de trabajo y ejecútalo: 40 pasos Euler, CFG 1.0, caché KV sin pérdida, resolución de referencia 1024.
En el flujo de trabajo de tres turnos, cada nodo VAE Decode alimenta al siguiente Text Encode Qwen Image 2.1, así que duplicar una etapa de edición extiende la cadena.
Un ajuste que hay que respetar: el muestreador usa ManualSigmas construidos a partir del desplazamiento dinámico publicado, y la programación genérica simple de ComfyUI no es la misma curva. Si cambias el tamaño de salida o el número de pasos, regenéralo con el comfyui_sigmas.py del proyecto y pega el resultado de nuevo.
La configuración validada es una H100 de 80 GB con componentes BF16; las configuraciones cuantizadas y con GPU de consumo no se han verificado. Los flujos de trabajo de ejemplo se ejecutan a 1280×832, 960×1120 y 1024×1024.
Disponibilidad
- Pesos: Lyricccco/Qwen-Image-2.1-TailSteer, además de la estructura completa de Diffusers y la guía de ComfyUI.
- La misma etapa de entrenamiento para otros backbones: FLUX.2 [klein] Base 9B y SenseNova-U1.5-8B-MoT.
- Código: Lyricccco/tailsteer; artículo arXiv 2611.06741.
- Demo en navegador de akhaliq: endless-edit-tailsteer.
La tarjeta del modelo indica que hay una versión más potente, con aproximadamente el doble de capacidad de preservación, en entrenamiento.

Comentarios
Inicia sesión con GitHub para unirte a la conversación.