블랙 포레스트 랩스획기적인 안정적 확산 모델을 개발한 팀이 출시했습니다. 유량 – AI 생성 이미지의 기능을 재정의하겠다고 약속하는 최첨단 모델 모음. 하지만 Flux가 이 분야에서 진정한 도약을 나타내는 것일까요? Midjourney와 같은 업계 리더와 비교하면 어떨까요? Flux의 세계를 깊이 파고들어 AI 생성 예술과 미디어의 미래를 재편할 잠재력을 살펴보겠습니다.
블랙 포레스트 랩스의 탄생
Flux의 기술적 측면을 살펴보기 전에 이 혁신적인 모델의 혈통을 이해하는 것이 중요합니다. Black Forest Labs는 단순한 AI 스타트업이 아닙니다. 기초적인 생성 AI 모델을 개발한 실적이 있는 재능 있는 강자입니다. 이 팀에는 VQGAN, Latent Diffusion, 그리고 AI 아트 세계를 강타한 Stable Diffusion 모델 패밀리의 제작자가 포함됩니다.
성공적인 시리즈 시드 펀딩 라운드를 통해 Andreessen Horowitz가 이끄는 3100만 달러 그리고 저명한 엔젤 투자자들의 지원을 받은 Black Forest Labs는 생성적 AI 연구의 최전선에 자리 잡았습니다. 그들의 사명은 명확합니다. 이미지와 비디오와 같은 미디어를 위한 최첨단 생성적 딥 러닝 모델을 개발하고 발전시키는 동시에 창의성, 효율성, 다양성의 경계를 넓히는 것입니다.
Flux 모델 패밀리 소개
Black Forest Labs는 이미지 세부 정보, 신속한 준수, 스타일 다양성 및 장면 복잡성에서 새로운 벤치마크를 설정하도록 설계된 텍스트-이미지 모델인 FLUX.1 제품군을 출시했습니다. Flux 제품군은 세 가지 변형으로 구성되어 있으며, 각각 다른 사용 사례와 접근성 수준에 맞게 조정됩니다.
- 플럭스.1 [pro]: 플래그십 모델로, 뛰어난 신속한 추종, 시각적 품질, 이미지 세부 정보 및 출력 다양성을 통해 이미지 생성에서 최고 수준의 성능을 제공합니다. API를 통해 제공되며, 전문가 및 기업용 프리미엄 옵션으로 자리매김했습니다.
- 플럭스.1 [dev]: 비상업적 응용 프로그램을 위한 개방형 중량, 안내 증류 모델입니다. 프로 버전과 유사한 품질과 신속한 준수 기능을 달성하도록 설계되었으며, 효율성도 더 높습니다.
- 플럭스.1 [schnell]: 이 제품군에서 가장 빠른 모델로, 로컬 개발 및 개인 사용에 최적화되었습니다. Apache 2.0 라이선스에 따라 공개적으로 사용할 수 있어 광범위한 애플리케이션과 실험에 사용할 수 있습니다.
저는 FLUX.1의 역량을 보여주는 독특하고 창의적인 프롬프트 예시를 제공할 것입니다. 이러한 프롬프트는 텍스트, 복잡한 구성 및 손과 같은 도전적인 요소를 처리하는 모델의 강점을 강조할 것입니다.
- 텍스트와 혼합된 예술적 스타일: “빈센트 반 고흐의 시그니처 스타일로 초상화를 그리지만, 수염을 ‘별이 빛나는 밤’이라는 글자를 휘감은 붓놀림으로 바꿔서 필기체로 표현하세요.”
- 텍스트 통합이 있는 역동적인 액션 장면: “만화책 페이지를 뚫고 나오는 슈퍼히어로. 액션 라인과 사운드 효과는 영웅의 이름인 ‘FLUX FORCE’를 굵고 역동적인 타이포그래피로 표현해야 합니다.”
- 정확한 객체 배치를 통한 초현실적 컨셉: “창문 햇빛 아래 갈색과 흰색의 귀여운 고양이 클로즈업. 눈의 질감과 색상에 날카로운 초점. 진정한 눈의 빛과 깊이를 포착하기 위한 자연광.”
이러한 프롬프트는 텍스트 렌더링, 복잡한 장면 구성 및 세부적인 객체 생성에 있어 FLUX.1의 역량을 시험하는 동시에 창의적이고 독특한 이미지 생성에 대한 잠재력을 보여주기 위해 고안되었습니다.
Flux의 기술적 혁신
Flux의 인상적인 역량의 핵심에는 이전 제품 및 동시대 제품과 차별화되는 일련의 기술 혁신이 있습니다.
규모에 따른 변압기 구동 흐름 모델
모든 공개 FLUX.1 모델은 멀티모달 및 병렬 확산 변환기 블록을 결합한 하이브리드 아키텍처를 기반으로 구축되었으며, 인상적인 120억 개의 매개변수로 확장되었습니다. 이는 기존의 많은 텍스트-이미지 모델과 비교했을 때 모델 크기와 복잡성이 크게 향상되었음을 의미합니다.
Flux 모델은 생성 모델을 훈련하기 위한 일반적이고 개념적으로 간단한 방법인 흐름 매칭을 통합하여 이전의 최첨단 확산 모델을 개선합니다. 흐름 매칭은 생성 모델링을 위한 보다 유연한 프레임워크를 제공하며, 확산 모델은 이 더 광범위한 접근 방식 내에서 특별한 경우입니다.
모델 성능과 하드웨어 효율성을 높이기 위해 Black Forest Labs는 회전 위치 임베딩과 병렬 어텐션 레이어를 통합했습니다. 이러한 기술을 사용하면 이미지의 공간 관계를 더 잘 처리하고 대규모 데이터를 더 효율적으로 처리할 수 있습니다.
건축 혁신
Flux의 성능에 기여하는 핵심 아키텍처 요소 중 일부를 분석해 보겠습니다.
- 하이브리드 아키텍처: Flux는 멀티모달 및 병렬 확산 변환기 블록을 결합함으로써 텍스트 및 시각적 정보를 모두 효과적으로 처리할 수 있어 프롬프트와 생성된 이미지 간의 정렬이 더 향상됩니다.
- 흐름 매칭: 이 접근 방식은 생성 모델의 보다 유연하고 효율적인 학습을 가능하게 합니다. 확산 모델과 기타 생성 기술을 포괄하는 통합 프레임워크를 제공하여 보다 견고하고 다재다능한 이미지 생성으로 이어질 가능성이 있습니다.
- 회전 위치 임베딩: 이러한 임베딩은 모델이 이미지 내의 공간 관계를 더 잘 이해하고 유지하는 데 도움이 되며, 이는 일관되고 자세한 시각적 콘텐츠를 생성하는 데 중요합니다.
- 병렬 어텐션 레이어: 이 기술은 텍스트 프롬프트와 생성된 이미지 모두에서 서로 다른 요소 간의 관계를 이해하는 데 중요한 주의 메커니즘을 보다 효율적으로 처리할 수 있게 해줍니다.
- 12B 매개변수로 확장: 모델의 엄청난 크기 덕분에 더욱 복잡한 패턴과 관계를 포착하고 종합할 수 있으며, 잠재적으로 더 높은 품질과 더 다양한 결과물을 얻을 수 있습니다.
벤치마킹 플럭스: 이미지 합성의 새로운 표준
Black Forest Labs는 FLUX.1이 이미지 합성 분야에서 새로운 표준을 제시하고 다음과 같은 인기 모델을 능가한다고 주장합니다. 중간 여행 v6.0, DALL·E 3(HD), SD3-Ultra의 몇 가지 주요 측면:
- 시각적 품질: Flux는 더 높은 충실도, 더 사실적인 디테일, 더 나은 전반적인 미적 매력을 갖춘 이미지를 제작하는 것을 목표로 합니다.
- 신속한 후속 조치: 이 모델은 주어진 텍스트 프롬프트에 더욱 충실하도록 설계되어 사용자의 의도를 더욱 정확하게 반영하는 이미지를 생성합니다.
- 크기/측면 변화: Flux는 0.1~2.0메가픽셀에 이르는 다양한 종횡비와 해상도를 지원하여 여러 사용 사례에 맞는 유연성을 제공합니다.
- 타이포그래피: 이 모델은 많은 텍스트-이미지 모델이 겪는 일반적인 과제인 이미지 내에서 텍스트를 생성하고 렌더링하는 데 있어 향상된 기능을 보여줍니다.
- 출력 다양성: Flux는 사전 학습을 통해 전체 출력 다양성을 보존하도록 특별히 미세 조정되어 더 광범위한 창의적 가능성을 제공합니다.
Flux vs. Midjourney: 비교 분석
이제 가장 중요한 질문에 답해 보겠습니다. Flux가 다음보다 더 나은가요? 중간 여행? 이에 답하려면 몇 가지 요소를 고려해야 합니다.
이미지 품질 및 미학
Flux와 Midjourney는 모두 고품질의 시각적으로 놀라운 이미지를 제작하는 것으로 유명합니다. Midjourney는 예술적 감각과 독특한 미적 매력을 지닌 이미지를 만드는 능력으로 칭찬을 받았습니다. 고급 아키텍처와 더 큰 매개변수 수를 갖춘 Flux는 이 수준의 품질과 일치하거나 이를 능가하는 것을 목표로 합니다.
Flux의 초기 사례는 인상적인 디테일, 사실적인 텍스처, 그리고 조명과 구성에 대한 강력한 이해를 보여줍니다. 그러나 예술의 주관적인 특성으로 인해 이 분야에서 우월성을 확실히 주장하기 어렵습니다. 사용자는 각 모델이 다양한 스타일이나 이미지 유형에서 강점을 가지고 있다는 것을 알게 될 것입니다.
즉각적인 준수
Flux가 잠재적으로 우위를 점하는 한 분야 중간 여행 신속한 준수에 있습니다. Black Forest Labs는 주어진 프롬프트를 정확하게 해석하고 실행하는 모델의 능력을 개선하는 데 중점을 두었습니다. 이를 통해 특히 복잡하거나 미묘한 요청의 경우 사용자의 의도와 더 밀접하게 일치하는 생성된 이미지가 생성될 수 있습니다.
중간 여행 때때로 프롬프트에 창의적인 자유를 취한다는 비판을 받아 아름답지만 예상치 못한 결과를 가져올 수 있습니다. Flux의 접근 방식은 생성된 출력에 대한 보다 정확한 제어를 제공할 수 있습니다.
속도와 효율성
FLUX.1의 도입으로 [schnell]Black Forest Labs는 Midjourney의 주요 장점 중 하나인 속도를 목표로 삼고 있습니다. Midjourney는 빠른 생성 시간으로 유명하며, 이로 인해 반복적인 창작 프로세스에서 인기를 얻었습니다. Flux가 품질을 유지하면서 이 속도와 맞먹거나 이를 능가할 수 있다면, 이는 중요한 판매 포인트가 될 수 있습니다.
접근성 및 사용 편의성
Midjourney는 사용자 친화적인 인터페이스와 Discord와의 통합으로 인해 부분적으로 인기를 얻었습니다. Flux는 새로운 플랫폼이기 때문에 비슷하게 접근 가능한 인터페이스를 개발하는 데 시간이 필요할 수 있습니다. 그러나 FLUX의 오픈 소스 특성.1 [schnell] 그리고 [dev] 이 모델은 광범위한 커뮤니티 개발 도구와 통합으로 이어질 수 있으며, 유연성과 사용자 정의 옵션 측면에서 Midjourney를 능가할 가능성이 있습니다.
기술적 역량
Flux의 고급 아키텍처와 더 큰 모델 크기는 복잡한 프롬프트를 이해하고 복잡한 세부 정보를 생성하는 측면에서 더 많은 원시 기능을 가질 수 있음을 시사합니다. 흐름 매칭 접근 방식과 하이브리드 아키텍처를 통해 Flux는 더 광범위한 작업을 처리하고 더 다양한 출력을 생성할 수 있습니다.
윤리적 고려 사항 및 편견 완화
Flux와 Midjourney는 모두 AI가 생성한 이미지의 윤리적 문제, 즉 편견, 잘못된 정보, 저작권 문제를 해결해야 하는 과제에 직면해 있습니다. Black Forest Labs는 투명성에 중점을 두고 모델을 널리 접근 가능하게 만드는 데 전념함으로써 잠재적으로 보다 강력한 커뮤니티 감독과 이러한 영역에서의 빠른 개선으로 이어질 수 있습니다.
코드 구현 및 배포
디퓨저와 함께 Flux 사용
Flux 모델은 다음을 사용하여 기존 워크플로에 쉽게 통합할 수 있습니다. 허깅 페이스 디퓨저 라이브러리. FLUX를 사용하는 단계별 가이드입니다.1 [dev] 또는 FLUX.1 [schnell] 디퓨저 포함:
- 먼저 Diffusers 라이브러리를 설치하거나 업그레이드하세요.
!pip install git+https://github.com/huggingface/diffusers.git
- 그런 다음 다음을 사용할 수 있습니다.
FluxPipeline
모델을 실행하려면:
import torchfrom diffusers import FluxPipeline# Load the modelpipe = FluxPipeline.from_pretrained("black-forest-labs/FLUX.1-dev", torch_dtype=torch.bfloat16)# Enable CPU offloading to save VRAM (optional)pipe.enable_model_cpu_offload()# Generate an imageprompt = "A cat holding a sign that says hello world"image = pipe( prompt, height=1024, width=1024, guidance_scale=3.5, output_type="pil", num_inference_steps=50, max_sequence_length=512, generator=torch.Generator("cpu").manual_seed(0)).images[0]# Save the generated imageimage.save("flux-dev.png")
이 코드 조각은 FLUX.1을 로드하는 방법을 보여줍니다. [dev] 모델을 만들고, 텍스트 프롬프트에서 이미지를 생성하고, 결과를 저장합니다.
LitServe를 사용하여 Flux를 API로 배포
확장 가능한 API 서비스로 Flux를 배포하려는 사람들을 위해 Black Forest Labs는 고성능 추론 엔진인 LitServe를 사용하는 예를 제공합니다. 배포 프로세스의 세부 내용은 다음과 같습니다.
모델 서버 정의:
from io import BytesIOfrom fastapi import Responseimport torchimport timeimport litserve as lsfrom optimum.quanto import freeze, qfloat8, quantizefrom diffusers import FlowMatchEulerDiscreteScheduler, AutoencoderKLfrom diffusers.models.transformers.transformer_flux import FluxTransformer2DModelfrom diffusers.pipelines.flux.pipeline_flux import FluxPipelinefrom transformers import CLIPTextModel, CLIPTokenizer, T5EncoderModel, T5TokenizerFastclass FluxLitAPI(ls.LitAPI): def setup(self, device): # Load model components scheduler = FlowMatchEulerDiscreteScheduler.from_pretrained("black-forest-labs/FLUX.1-schnell", subfolder="scheduler") text_encoder = CLIPTextModel.from_pretrained("openai/clip-vit-large-patch14", torch_dtype=torch.bfloat16) tokenizer = CLIPTokenizer.from_pretrained("openai/clip-vit-large-patch14", torch_dtype=torch.bfloat16) text_encoder_2 = T5EncoderModel.from_pretrained("black-forest-labs/FLUX.1-schnell", subfolder="text_encoder_2", torch_dtype=torch.bfloat16) tokenizer_2 = T5TokenizerFast.from_pretrained("black-forest-labs/FLUX.1-schnell", subfolder="tokenizer_2", torch_dtype=torch.bfloat16) vae = AutoencoderKL.from_pretrained("black-forest-labs/FLUX.1-schnell", subfolder="vae", torch_dtype=torch.bfloat16) transformer = FluxTransformer2DModel.from_pretrained("black-forest-labs/FLUX.1-schnell", subfolder="transformer", torch_dtype=torch.bfloat16) # Quantize to 8-bit to fit on an L4 GPU quantize(transformer, weights=qfloat8) freeze(transformer) quantize(text_encoder_2, weights=qfloat8) freeze(text_encoder_2) # Initialize the Flux pipeline self.pipe = FluxPipeline( scheduler=scheduler, text_encoder=text_encoder, tokenizer=tokenizer, text_encoder_2=None, tokenizer_2=tokenizer_2, vae=vae, transformer=None, ) self.pipe.text_encoder_2 = text_encoder_2 self.pipe.transformer = transformer self.pipe.enable_model_cpu_offload() def decode_request(self, request): return request["prompt"] def predict(self, prompt): image = self.pipe( prompt=prompt, width=1024, height=1024, num_inference_steps=4, generator=torch.Generator().manual_seed(int(time.time())), guidance_scale=3.5, ).images[0] return image def encode_response(self, image): buffered = BytesIO() image.save(buffered, format="PNG") return Response(content=buffered.getvalue(), headers={"Content-Type": "image/png"})# Start the serverif __name__ == "__main__": api = FluxLitAPI() server = ls.LitServer(api, timeout=False) server.run(port=8000)
이 코드는 모델 로딩, 요청 처리, 이미지 생성, 응답 인코딩을 포함하여 Flux에 대한 LitServe API를 설정합니다.
서버를 시작합니다:
python server.py
모델 API를 사용하세요:
간단한 클라이언트 스크립트를 사용하여 API를 테스트할 수 있습니다.
import requestsimport jsonurl = "http://localhost:8000/predict"prompt = "a robot sitting in a chair painting a picture on an easel of a futuristic cityscape, pop art"response = requests.post(url, json={"prompt": prompt})with open("generated_image.png", "wb") as f: f.write(response.content)print("Image generated and saved as generated_image.png")
배포의 주요 특징
- 서버리스 아키텍처: 그 릿서브 설정을 통해 사용하지 않을 때는 확장이 가능하고 서버리스 배포가 가능하며, 사용하지 않을 때는 확장이 불가능합니다.
- 개인 API: Flux를 귀하의 인프라에 개인 API로 배포할 수 있습니다.
- 다중 GPU 지원: 이 설정은 여러 GPU에서 효율적으로 작동하도록 설계되었습니다.
- 양자화: 이 코드는 모델을 8비트 정밀도로 양자화하는 방법을 보여주며, 이를 통해 NVIDIA L4 GPU와 같은 덜 강력한 하드웨어에서도 실행할 수 있습니다.
- CPU 오프로딩: 그
enable_model_cpu_offload()
이 방법은 사용하지 않을 때 모델의 일부를 CPU로 오프로드하여 GPU 메모리를 절약하는 데 사용됩니다.
플럭스의 실제 응용
Flux의 다양성과 강력함은 다양한 산업에서 광범위한 잠재적 응용 분야를 열어줍니다.
- 창조 산업: 그래픽 디자이너, 일러스트레이터, 아티스트는 Flux를 사용하여 콘셉트 아트, 무드 보드, 시각적 영감을 빠르게 만들어낼 수 있습니다.
- 마케팅 및 광고: 마케터는 전례 없는 속도와 품질로 캠페인, 소셜 미디어 콘텐츠, 제품 모형에 대한 맞춤형 비주얼을 제작할 수 있습니다.
- 게임 개발: 게임 디자이너는 Flux를 사용하여 환경, 캐릭터, 자산의 프로토타입을 빠르게 제작하여 사전 제작 프로세스를 간소화할 수 있습니다.
- 건축 및 인테리어 디자인: 건축가와 디자이너는 텍스트 설명을 기반으로 공간과 구조물의 사실적인 시각화를 생성할 수 있습니다.
- 교육: 교육자는 학습 자료를 개선하고 복잡한 개념을 더 접근하기 쉽게 만들기 위해 맞춤형 시각적 보조 자료와 그림을 만들 수 있습니다.
- 영화와 애니메이션: 스토리보드 아티스트와 애니메이터는 Flux를 사용하여 장면과 캐릭터를 빠르게 시각화하고 사전 시각화 프로세스를 가속화할 수 있습니다.
Flux와 텍스트-이미지 생성의 미래
Black Forest Labs는 Flux가 생성 AI 분야에서의 야망의 시작일 뿐이라고 분명히 밝혔습니다. 그들은 발표된 계획 경쟁력 있는 텍스트-비디오 생성 시스템을 개발하여 고화질과 전례 없는 속도로 정확한 생성 및 편집 기능을 제공합니다.
이 로드맵은 Flux가 단순한 독립형 제품이 아니라 생성적 AI 도구의 더 광범위한 생태계의 일부임을 시사합니다. 기술이 발전함에 따라 다음을 볼 수 있을 것으로 예상됩니다.
- 향상된 통합: 텍스트-이미지, 텍스트-비디오 생성 간의 원활한 워크플로를 통해 보다 복잡하고 동적인 콘텐츠 생성이 가능합니다.
- 향상된 사용자 정의: 고급 프롬프트 엔지니어링 기술이나 직관적인 사용자 인터페이스를 통해 생성된 콘텐츠에 대한 보다 세밀한 제어가 가능합니다.
- 실시간 생성: FLUX.1과 같은 모델로서 [schnell] 지속적으로 개선된다면, 라이브 콘텐츠 제작과 대화형 미디어에 혁명을 일으킬 수 있는 실시간 이미지 생성 기능을 볼 수 있을 것입니다.
- 크로스 모달 생성: 여러 모달리티(텍스트, 이미지, 비디오, 오디오)에서 콘텐츠를 일관되고 통합된 방식으로 생성하고 조작하는 능력.
- 윤리적 AI 개발: 강력할 뿐만 아니라 책임감 있고 윤리적으로 건전한 AI 모델 개발에 지속적으로 집중합니다.
결론: Flux가 Midjourney보다 더 나은가?
Flux가 Midjourney보다 “더 나은지”에 대한 질문은 간단한 예 또는 아니오로 쉽게 답할 수 없습니다. 두 모델 모두 텍스트-이미지 생성 기술의 최첨단을 나타내며, 각각 고유한 강점과 특성을 가지고 있습니다.
고급 아키텍처와 신속한 준수에 중점을 둔 Flux는 특정 시나리오에서 보다 정확한 제어와 잠재적으로 더 높은 품질을 제공할 수 있습니다. 오픈 소스 변형은 개발자와 연구자에게 매우 귀중할 수 있는 사용자 정의 및 통합 기회도 제공합니다.
중간 여행반면, 입증된 실적, 방대하고 활발한 사용자 기반, 그리고 많은 사용자가 사랑하게 된 독특한 예술적 스타일을 가지고 있습니다. Discord와의 통합과 사용자 친화적인 인터페이스 덕분에 모든 기술 수준의 크리에이티브가 쉽게 접근할 수 있게 되었습니다.
궁극적으로 “더 나은” 모델은 특정 사용 사례, 개인적 선호도 및 각 플랫폼의 진화하는 역량에 따라 달라질 수 있습니다. 분명한 것은 Flux가 생성 AI 분야에서 상당한 진전을 나타내며, 혁신적인 기술을 도입하고 텍스트-이미지 합성에서 가능한 것의 경계를 넓히고 있다는 것입니다.
게시물 Black Forest Labs의 Flux: 텍스트-이미지 모델의 다음 도약. Midjourney보다 나을까요? 처음 등장 유나이트.AI.