StreamDiffusion: Una solución a nivel de pipeline para la generación interactiva en tiempo real
StreamDiffusion: A Pipeline-level Solution for Real-time Interactive Generation
December 19, 2023
Autores: Akio Kodaira, Chenfeng Xu, Toshiki Hazama, Takanori Yoshimoto, Kohei Ohno, Shogo Mitsuhori, Soichi Sugano, Hanying Cho, Zhijian Liu, Kurt Keutzer
cs.AI
Resumen
Presentamos StreamDiffusion, una pipeline de difusión en tiempo real diseñada para la generación interactiva de imágenes. Los modelos de difusión existentes son hábiles para crear imágenes a partir de texto o imágenes de entrada, pero a menudo no cumplen con las expectativas en interacciones en tiempo real. Esta limitación se hace particularmente evidente en escenarios que involucran entradas continuas, como el Metaverso, transmisiones de video en vivo y radiodifusión, donde un alto rendimiento es imperativo. Para abordar esto, presentamos un enfoque novedoso que transforma el proceso de eliminación de ruido secuencial original en un proceso de eliminación de ruido por lotes. Stream Batch elimina el enfoque convencional de esperar e interactuar y permite flujos fluidos y de alto rendimiento. Para manejar la disparidad de frecuencia entre la entrada de datos y el rendimiento del modelo, diseñamos una cola de entrada-salida novedosa para paralelizar el proceso de transmisión. Además, la pipeline de difusión existente utiliza guía libre de clasificador (CFG), que requiere un cálculo adicional de U-Net. Para mitigar los cálculos redundantes, proponemos un algoritmo novedoso de guía libre de clasificador residual (RCFG) que reduce el número de pasos de eliminación de ruido condicional negativa a solo uno o incluso cero. Además, introducimos un filtro de similitud estocástico (SSF) para optimizar el consumo de energía. Nuestro Stream Batch logra una aceleración de aproximadamente 1.5x en comparación con el método de eliminación de ruido secuencial en diferentes niveles de eliminación de ruido. El RCFG propuesto conduce a velocidades hasta 2.05x más altas que el CFG convencional. Combinando las estrategias propuestas y las herramientas de aceleración maduras existentes, la generación de imagen a imagen alcanza hasta 91.07 fps en una RTX4090, mejorando el rendimiento de AutoPipeline desarrollado por Diffusers en más de 59.56x. Además, nuestro StreamDiffusion propuesto también reduce significativamente el consumo de energía en 2.39x en una RTX3060 y 1.99x en una RTX4090, respectivamente.
English
We introduce StreamDiffusion, a real-time diffusion pipeline designed for
interactive image generation. Existing diffusion models are adept at creating
images from text or image prompts, yet they often fall short in real-time
interaction. This limitation becomes particularly evident in scenarios
involving continuous input, such as Metaverse, live video streaming, and
broadcasting, where high throughput is imperative. To address this, we present
a novel approach that transforms the original sequential denoising into the
batching denoising process. Stream Batch eliminates the conventional
wait-and-interact approach and enables fluid and high throughput streams. To
handle the frequency disparity between data input and model throughput, we
design a novel input-output queue for parallelizing the streaming process.
Moreover, the existing diffusion pipeline uses classifier-free guidance(CFG),
which requires additional U-Net computation. To mitigate the redundant
computations, we propose a novel residual classifier-free guidance (RCFG)
algorithm that reduces the number of negative conditional denoising steps to
only one or even zero. Besides, we introduce a stochastic similarity
filter(SSF) to optimize power consumption. Our Stream Batch achieves around
1.5x speedup compared to the sequential denoising method at different denoising
levels. The proposed RCFG leads to speeds up to 2.05x higher than the
conventional CFG. Combining the proposed strategies and existing mature
acceleration tools makes the image-to-image generation achieve up-to 91.07fps
on one RTX4090, improving the throughputs of AutoPipline developed by Diffusers
over 59.56x. Furthermore, our proposed StreamDiffusion also significantly
reduces the energy consumption by 2.39x on one RTX3060 and 1.99x on one
RTX4090, respectively.