Saltar al contenido principal
InicioTutorialesInteligencia Artificial (IA)

Generador de Imágenes AI Flux: Una guía con ejemplos

Aprende a utilizar Flux AI para generar imágenes y explora las características, aplicaciones y casos de uso de cada modelo de la familia Flux: Flux Pro, Flux Dev y Flux Schnell.
Actualizado 24 sept 2024  · 8 min leer

Entre los últimos avances en IA generativa está el conjunto de modelos Flux desarrollado por Laboratorios Black Forest. Estos modelos se encuentran entre los más avanzados en síntesis de texto a imagen, proporcionando una excelente calidad visual, puntualidad y diversidad de estilos.

He probado Flux y me he divertido mucho utilizándolo. En este blog, compartiré mi experiencia y te guiaré para empezar a utilizar Flux. Te explicaré sus principales características, cómo funciona, cómo ejecutar un pipeline, sus aplicaciones y mucho más.

¿Qué es la IA Flux?

Flux es una serie de modelos de generación de texto a imagen desarrollados por Black Forest Labs. Los modelos Flux están diseñados para crear imágenes muy detalladas y diversas a partir de indicaciones textuales.

Flux ofrece varias características clave que lo distinguen de otros modelos de IA generativa:

  • Calidad de imagen de vanguardia: Flux establece nuevas referencias en calidad visual, superando a modelos populares como Midjourney v6.0 y DALL-E 3.
  • Adhesión rápida: Los modelos están afinados para seguir indicaciones textuales con gran precisión, garantizando que las imágenes generadas coincidan con las entradas del usuario.
  • Diversidad y variabilidad de estilos: Flux admite una amplia gama de estilos y complejidades de escena, lo que lo hace adecuado para diversas aplicaciones creativas.
  • Eficacia: Los modelos están optimizados para el rendimiento, incorporando técnicas avanzadas como las incrustaciones y la atención atención capas.

Modelos Flux AI: Pro, Dev, Schnell

La familia de modelos Flux consta de tres variantes: Flux Pro, Flux Dev y Flux Schnell. Cada variante está diseñada para diferentes casos de uso, desde la generación de imágenes de nivel profesional hasta el desarrollo local eficiente.

Flujo Pro

Flux Pro es el modelo estrella de la familia Flux. Ofrece un rendimiento de primera línea, por lo que es ideal para uso profesional en industrias que requieren una generación de imágenes de alta calidad. Con una adherencia puntual, detalle visual y diversidad de salida de última generación, Flux Pro está diseñado para quienes exigen lo mejor en IA generativa.

Se puede acceder a Flux Pro a través de las API proporcionadas por Black Forest Labs, así como por plataformas como Replicate y fal.ai.

Desarrollo de flujo

Flux Dev es un modelo de peso abierto, con destilación de guía, diseñado para aplicaciones no comerciales. El versión destilada de Flux Pro ofrece una calidad similar y una capacidad de adherencia rápida, a la vez que es más eficaz. Flux Dev también está disponible en HuggingFace y plataformas como Replicate y fal.ai.

Esta variante es ideal para desarrolladores, investigadores y aficionados que quieran experimentar con la IA generativa sin necesidad de recursos de nivel profesional.

Flujo Schnell

Flux Schnell es el modelo más rápido de la familia Flux, adaptado para el desarrollo local y uso personal. Está disponible abiertamente bajo licencia Apache 2.0, lo que la hace accesible a un amplio abanico de usuarios. Al igual que Flux Dev, los pesos de Flux Schnell están disponibles en HuggingFace.

Flux Schnell es perfecto para quienes quieran experimentar con la IA generativa en sus máquinas locales, sin necesidad de grandes recursos computacionales.

Cómo funciona Flux AI

Los modelos Flux se construyen sobre una arquitectura híbrida de multimodal y difusión paralela transformador paralelos, escalados a 12.000 millones de parámetros. Esta arquitectura permite a los modelos generar imágenes con un alto grado de precisión y diversidad, incluso cuando se trata de escenas y estilos complejos.

Adecuación del flujo: La metodología básica

En el núcleo de la innovación de Flux se encuentra una técnica llamada adaptación de flujos. A diferencia de la difusión tradicional difusión tradicionales, que refinan gradualmente una imagen ruidosa hasta convertirla en coherente, la correspondencia de flujo adopta un enfoque más directo. Piensa que es como guiar un bolígrafo por un camino preciso para crear un dibujo, en lugar de empezar con un boceto borroso y afilarlo gradualmente.

Al aprender a predecir la transformación óptima en cada paso, los modelos de coincidencia de flujo pueden generar imágenes de alta calidad con notable eficacia, superando a los modelos de difusión tradicionales tanto en velocidad como en fidelidad.

Incrustaciones posicionales rotatorias y capas de atención paralelas

Los modelos de flujo utilizan dos técnicas clave para mejorar su rendimiento: las incrustaciones posicionales rotativas y las capas de atención paralelas.

Las incrustaciones rotatorias proporcionan al modelo una comprensión detallada de las relaciones espaciales dentro de una imagen, lo que es importante para generar visuales intrincados y coherentes.

Mientras tanto, las capas de atención paralela permiten al modelo procesar diferentes partes de una imagen simultáneamente, de forma similar a cuando varios expertos se centran en diversas áreas de un complejo rompecabezas. Este procesamiento paralelo mejora significativamente la eficiencia computacional del modelo, permitiéndole generar imágenes de alta calidad más rápidamente y reduciendo al mismo tiempo el consumo de recursos.

Modelos de flujo alimentados por transformador

Los modelos Flux están construidos sobre una potente arquitectura basada en transformadores, conocida por su capacidad para manejar tareas generativas a gran escala. Los Transformadores son eficaces para comprender las relaciones entre los distintos elementos de los datos, por lo que son ideales para traducir indicaciones textuales en representaciones visuales.

Los modelos Flux incorporan una combinación de autocodificadores, codificadores de texto CLIP y codificadores T5 para lograr esta traducción. Los autocodificadores comprimen y reconstruyen eficazmente los datos de imagen, mientras que los codificadores de texto CLIP captan el significado semántico de las indicaciones textuales. Los codificadores T5, reconocidos por su versatilidad en tareas lingüísticas, mejoran la capacidad del modelo para interpretar y generar contenidos visuales complejos a partir de entradas textuales.

Primeros pasos con Flux

Para empezar a utilizar Flux en tus propios proyectos, aquí tienes una guía rápida que te ayudará a iniciar tu viaje con Flux:

Diagrama de flujo para FLUX

  1. Elige una variante: Decide qué variante de Flux se adapta mejor a tus necesidades. Flux Pro es el camino a seguir si buscas una generación de imágenes de nivel profesional. Para el desarrollo y la experimentación no comerciales, Flux Dev ofrece un gran equilibrio entre rendimiento y accesibilidad. Y si te interesa el desarrollo local, Flux Schnell te ofrece una opción rápida y eficaz.
  2. Accede a los modelos: Una vez elegida tu variante, puedes acceder a los modelos a través de varias plataformas. Puedes utilizar la interfaz gráfica de usuario en Flux-ai.io o acceder a los modelos mediante programación: Flux Pro está disponible a través de API, mientras que Flux Dev y Flux Schnell pueden encontrarse en HuggingFace y GitHub.
  3. Experimenta con las indicaciones: Una de las características clave de Flux es su capacidad para generar imágenes a partir de indicaciones textuales. Empieza experimentando con distintas indicaciones para ver cómo responden los modelos. Tanto si quieres crear una imagen sencilla como una escena compleja, Flux te ofrece un amplio abanico de posibilidades.
  4. Optimiza el rendimiento: Si trabajas con recursos computacionales limitados, hay varias formas de optimizar Flux para mejorar el rendimiento. Técnicas como cuantización de modelosy optimizaciones de la inferencia pueden ayudarte a ejecutar los modelos con mayor rapidez y eficacia.

Cómo configurar una tubería de flujo

Los modelos Flux están disponibles en dos variantes principales basadas en su proceso de destilación: destilada por pasos de tiempo y destilada por guía. Cada variante tiene pautas de uso ligeramente diferentes, que se describen a continuación.

Modelo destilado por pasos de tiempo (Flujo Schnell)

La variante destilada por pasos de tiempo, Flux Schnell, está optimizada para la velocidad. Se beneficia de menos pasos de muestreo, por lo que es ideal para situaciones en las que se requiere una generación rápida. Sin embargo, tiene algunas limitaciones, como una longitud máxima de secuencia de 256 fichas y una escala de orientación que debe fijarse en 0.

Así es como puedes utilizar Flux Schnell (fragmento de código extraído de Black Forest Labs' GitHub):

import torch
from diffusers import FluxPipeline

pipe = FluxPipeline.from_pretrained("black-forest-labs/FLUX.1-schnell", torch_dtype=torch.bfloat16)
pipe.enable_model_cpu_offload()
prompt = "A cat holding a sign that says hello world"
out = pipe(
    prompt=prompt,
    guidance_scale=0.0,
    height=768,
    width=1360,
    num_inference_steps=4,
    max_sequence_length=256,
).images[0]
out.save("image.png")

Salida de Flux Schnell para el prompt: "Un gato sujetando un cartel que dice Hola mundo"

Este fragmento de código demuestra cómo generar una imagen utilizando el modelo Flux Schnell con un simple mensaje de texto. El parámetro num_inference_steps está ajustado a 4, lo que refleja la eficacia del modelo para producir imágenes rápidamente.

Modelo guiado-destilado (Flux Dev)

La variante destilada de guía, Flux Dev, está diseñada para escenarios en los que se prioriza la calidad sobre la velocidad. Requiere unos 50 pasos de muestreo para generar imágenes de alta calidad y no tiene las limitaciones de longitud de secuencia de la variante destilada por pasos de tiempo.

Así es como puedes utilizar Flux Dev (fragmento de código extraído de GitHub):

import torch
from diffusers import FluxPipeline

pipe = FluxPipeline.from_pretrained("black-forest-labs/FLUX.1-dev", torch_dtype=torch.bfloat16)
pipe.enable_model_cpu_offload()
prompt = "a tiny astronaut hatching from an egg on the moon"
out = pipe(
    prompt=prompt,
    guidance_scale=3.5,
    height=768,
    width=1360,
    num_inference_steps=50,
).images[0]
out.save("image.png")

Salida de Flux Dev para el prompt: "Un pequeño astronauta saliendo de un huevo en la Luna".

En este ejemplo, el guidance_scale se fija en 3,5, lo que permite al modelo generar imágenes que se ajusten fielmente a la indicación dada. El mayor número de pasos de inferencia garantiza que la calidad del resultado se mantenga a un alto nivel.

Flux también puede generar imágenes utilizando precisión FP16 (coma flotante de 16 bits) para acelerar la inferencia en GPUs como Turing o Volta. Sin embargo, la ejecución en FP16 a veces puede producir resultados diferentes en comparación con FP32 o BF16, sobre todo en los codificadores de texto. Para mitigarlo, se puede forzar a los codificadores de texto a ejecutarse en FP32 para eliminar cualquier diferencia de salida.

Aplicaciones reales de la IA Flux

El fundente tiene una amplia gama de aplicaciones en diversas industrias:

  • Medios de comunicación y entretenimiento: Flux puede utilizarse para generar imágenes y vídeos de alta calidad para películas, programas de TV, videojuegos y publicidad.
  • Arte y diseño: Los artistas y diseñadores pueden utilizar Flux para explorar nuevas direcciones creativas, generar obras de arte únicas y experimentar con diferentes estilos y técnicas.
  • Publicidad y marketing: Flux puede utilizarse para crear elementos visuales llamativos para campañas publicitarias y de marketing. Al generar imágenes que se ajustan al mensaje y la marca deseados, Flux puede ayudar a las empresas a destacar.
  • Educación e investigación: En entornos educativos, Flux puede utilizarse para enseñar a los estudiantes la IA generativa y sus aplicaciones. Los investigadores también pueden utilizar los modelos para explorar nuevas vías de investigación en IA y desarrollar soluciones innovadoras a problemas complejos.

Flujo AI: Retos y consideraciones

Aunque Flux ofrece capacidades increíbles, es importante ser consciente de los retos y consideraciones que conlleva el uso de modelos generativos de IA.

Recursos informáticos: Generar imágenes de alta calidad con Flux requiere un gran esfuerzo recursos computacionales computacionales. Si trabajas con un dispositivo de consumo, puede que tengas que optimizar los modelos para obtener un mejor rendimiento o plantearte utilizar servicios basados en la nube.

Consideraciones éticas: Como ocurre con cualquier tecnología de IA, existen consideraciones éticas a tener en cuenta al utilizar Flux. Es importante asegurarse de que el contenido generado se utiliza de forma responsable y que los modelos no se utilicen con fines perjudiciales.

Privacidad de los datos: Al utilizar Flux para aplicaciones comerciales, es importante tener en cuenta la privacidad de los datos y la seguridad de seguridad. Asegúrate de que todos los datos utilizados con los modelos se manejan de acuerdo con la normativa y las mejores prácticas pertinentes.

Conclusión

Flux supone un avance notable en la IA generativa, ya que proporciona herramientas eficaces para la síntesis de texto a imagen en diversas aplicaciones.

Gracias a su buena calidad de imagen y a su gran rapidez y eficacia operativa, Flux puede ser una buena elección para la generación de imágenes.

A medida que explores sus funciones, céntrate en optimizar el rendimiento y en tener en cuenta los aspectos éticos de tu trabajo.


Photo of Bhavishya Pandit
Author
Bhavishya Pandit
LinkedIn
Twitter

Ingeniero Senior de GenAI y creador de contenidos que ha conseguido 20 millones de visitas compartiendo conocimientos sobre GenAI y ciencia de datos.

Temas

Aprende IA con estos cursos

Certificación disponible

Course

Procesado de imágenes en Python

4 hr
44.7K
Aprende a procesar, transformar y manipular imágenes a tu antojo.
See DetailsRight Arrow
Start Course
Ver másRight Arrow
Relacionado
An AI juggles tasks

blog

Cinco proyectos que puedes crear con modelos de IA generativa (con ejemplos)

Aprende a utilizar modelos de IA generativa para crear un editor de imágenes, un chatbot similar a ChatGPT con pocos recursos y una aplicación clasificadora de aprobación de préstamos y a automatizar interacciones PDF y un asistente de voz con GPT.
Abid Ali Awan's photo

Abid Ali Awan

10 min

blog

Los 7 mejores generadores de vídeo de IA para 2024 con vídeos de ejemplo

Descubre los mejores generadores de vídeo de IA disponibles en la actualidad, como RunwayML, Synthesia, Colossyan, Pictory, DeepBrain AI, Invideo y el esperadísimo Sora y Veo de DeepMind.
Dr Ana Rojo-Echeburúa's photo

Dr Ana Rojo-Echeburúa

9 min

blog

¿Qué es un modelo generativo?

Los modelos generativos utilizan el machine learning para descubrir patrones en los datos y generar datos nuevos. Conoce su importancia y sus aplicaciones en la IA.
Abid Ali Awan's photo

Abid Ali Awan

11 min

tutorial

Cómo ejecutar Stable Diffusion:

Explora la IA generativa con nuestro tutorial introductorio sobre Stable Diffusion. Aprende a ejecutar el modelo de aprendizaje profundo en línea y localmente para generar imágenes detalladas.
Kurtis Pykes 's photo

Kurtis Pykes

7 min

tutorial

Tutorial FLAN-T5: Guía y puesta a punto

Una guía completa para afinar un modelo FLAN-T5 para una tarea de respuesta a preguntas utilizando la biblioteca de transformadores, y ejecutando la inferencia optmizada en un escenario del mundo real.
Zoumana Keita 's photo

Zoumana Keita

15 min

tutorial

IA explicable - Comprender y confiar en los modelos de aprendizaje automático

Sumérjase en la IA explicable (XAI) y aprenda a generar confianza en los sistemas de IA con LIME y SHAP para la interpretabilidad de modelos. Comprender la importancia de la transparencia y la equidad en las decisiones basadas en la IA.
Zoumana Keita 's photo

Zoumana Keita

12 min

See MoreSee More