Recraft AI es una herramienta de diseño impulsada por modelos de difusión patentados. Su nuevo modelo Red Panda supera a todos los modelos de texto a imagen existentes, incluidos Midjourney, DALL-E 3 y FLUX. Recraft combina una experiencia de usuario única para diseñadores con herramientas de inteligencia artificial de vanguardia. Para dar soporte a millones de usuarios, los modelos de difusión requieren una infraestructura de inferencia sólida que combine hardware potente con software eficiente. En este artículo, exploraremos cómo las herramientas de aceleración de IA de TheStage ayudaron a los ingenieros e investigadores de IA de Recraft a lograr hasta el doble de rendimiento en las GPU de Nvidia a través de una interfaz Python intuitiva.
En los últimos años, los modelos de difusión han mostrado resultados extraordinarios para la generación de contenido, incluidas imágenes, música, videos y mallas 3D. Estos modelos utilizan los costos computacionales del tiempo de inferencia para mejorar iterativamente los resultados de generación, actualizando ligeramente el resultado en cada paso de inferencia. Ahora podemos ver una analogía en los modelos de difusión que utilizan el razonamiento a través de inferencias de múltiples pasos para brindar respuestas de alta calidad.
En TheStage AI, estamos construyendo un marco matemático general para modelos arbitrarios de PyTorch para manejar un flujo de aceleración de modelos complicado de forma totalmente automática. Nuestro sistema detecta automáticamente las optimizaciones existentes en su hardware (cuantificación, esparsificación) y selecciona para cada capa el algoritmo adecuado para lograr la mejor calidad con un tamaño de modelo y restricciones de latencia deseados o encontrar la mejor aceleración con restricciones de calidad restringidas. ¡Es un problema matemático difícil que podemos resolver de una manera altamente eficiente! Este artículo explora cómo aplicamos estas herramientas a través de nuestra asociación con Recraft AI.
Al diseñar nuestras herramientas, decidimos respetar los siguientes principios:
Dadas estas condiciones iniciales, nos propusimos crear herramientas con las siguientes características:
En cada iteración del proceso de difusión, una red neuronal elimina el ruido de la imagen en el espacio latente de un codificador automático variacional. Luego, la imagen recién obtenida se vuelve a mezclar con ruido, pero con un peso cada vez menor. Durante las iteraciones iniciales, el modelo de difusión esboza la escena principal, aprovechando el peso significativo del ruido para realizar mejoras sustanciales. En iteraciones posteriores, refina los detalles de alta frecuencia. Esta observación nos permite diseñar canales de aceleración específicos al asignar estratégicamente la capacidad de la red en las capas de una iteración a otra, preservando la calidad. Sin embargo, dicha asignación requiere herramientas especializadas que combinen conocimientos matemáticos con ingeniería de sonido: ¡aquí es donde TheStage AI puede ayudar significativamente!
Los modelos de difusión acelerada pueden considerarse como la aceleración de DNN arbitrarias, pero debemos tener en cuenta desafíos específicos. Por ejemplo, la cuantificación estática, que normalmente proporciona una aceleración significativa, presenta un desafío en los modelos de difusión a medida que las distribuciones de activación cambian de una iteración a otra. Para abordar esto, debemos estimar correctamente los valores óptimos para todas las iteraciones o utilizar diferentes configuraciones de cuantificación para cada iteración.
Los modelos de difusión son difíciles de entrenar y lograr un alto rendimiento. Sin embargo, los resultados demostrados por el equipo de Recraft superan a todos los modelos de texto a imagen modernos . Validar la degradación de dichos modelos puede ser difícil, por lo que es crucial utilizar técnicas de aceleración que preserven la semántica de las características originales. Los algoritmos de cuantificación pueden ser una buena opción si pueden manejar el desafío de variar las distribuciones de activación. Echemos un vistazo a nuestras canalizaciones automáticas, que describiremos en las siguientes secciones.
Perfilar un modelo dado con unos datos específicos permite:
Una vez que el generador de perfiles ha recopilado todos los datos necesarios, podemos iniciar nuestro tablero ANNA y mover el control deslizante para generar diferentes versiones optimizadas del modelo. Nuestros usuarios pueden seleccionar los mejores candidatos en función de la relación calidad-costo de inferencia. Nuestras herramientas manejan estas decisiones subjetivas de calidad de una manera sencilla.
Como se mencionó anteriormente, no utilizamos la compilación JIT porque aumenta el tiempo de inicio en frío de un nuevo nodo. Tampoco utilizamos compiladores estándar. En su lugar, compilamos nuestra propia configuración acelerada compleja que puede combinar diferentes algoritmos. Para lograrlo, hemos desarrollado nuestro propio protocolo interno para definir capas aceleradas por DNN de una manera independiente del hardware. Uno de los beneficios clave del marco de aceleración de IA de TheStage es que se puede compilar un único punto de control para una amplia gama de hardware, lo que resuelve la compatibilidad entre plataformas para el software de IA. Esta característica será particularmente importante para la implementación de dispositivos de borde en el desarrollo de aplicaciones.
Los objetivos de los compiladores DNN son:
Los servidores de inferencia y los canales de escalado automático desempeñan un papel importante en el procesamiento rentable y eficiente de las solicitudes entrantes. También pueden incluir la agrupación de solicitudes específicas y la recopilación de estadísticas para configurar el escalado predictivo para los escaladores automáticos. En nuestros próximos artículos, analizaremos los servidores de inferencia eficientes con más detalle.
Al aplicar todas las secuencias de comandos, podemos lograr un rendimiento mejor que el compilador de PyTorch ( torch.compile
) y, por supuesto, significativamente mejor que la ejecución ansiosa de PyTorch con float16. Además, como el compilador de PyTorch utiliza un enfoque de compilación JIT en cada inicialización de modelo, requiere una recompilación para muchos tamaños de entrada, lo que hace que el inicio en frío sea lo suficientemente largo para aplicaciones prácticas donde la latencia es muy importante.
Estos son los principales beneficios comerciales de la aceleración resultante para el producto de Recraft:
Las herramientas de optimización de IA de TheStage nos permiten acelerar nuestros modelos de texto a imagen sin degradación de la calidad, creando una mejor experiencia de usuario para nuestros clientes.
Directora ejecutiva de Recraft, Anna Veronika Dorogush
Estos resultados brindan una excelente validación de nuestras herramientas e investigaciones sobre productos de carga de trabajo a gran escala. El equipo de IA de TheStage continúa trabajando para ofrecer un rendimiento aún mayor. Para lograrlo, estamos colaborando con socios excepcionales. Estamos profundamente agradecidos a:
¡No dude en comunicarse con nosotros si tiene alguna pregunta! ¡Podemos ayudarlo a reducir los costos de infraestructura de inferencia!
Nuestro correo electrónico: [email protected]
Página principal de TheStage AI: thestage.ai
Plataforma de optimización de inferencia de IA TheStage: app.thestage.ai