"FastSD CPU" CPU 만을 사용해서 이미지를 생성한다. LCM 이나 OpenVINO 를 사용하는듯.
예전에 한번 써보고 관심 없었는데, 갑자기 CPU 로 사용하는건 어떨까 해서 찾아봤다.
스텝은 4 이하로 설정하는게 핵심이다. 4 이하로 설정해도 품질이 좋은 이미지를 생성하기 위해 여러가지 작업을 한다. 물론 그렇지 않은 모델보다는 떨어지지만, 속도가 매우 중요한 경우에는 이 방법밖에 없다.
i7-7700K 에서 1장 생성하는데 약 30초 정도 걸린다. 품질도 생각보다는 좋다.
아래와 같이 LCM-LoRA 모델을 사용했다. OpenVINO 로 사용해도 속도는 크게 달라지지 않았다. OpenVINO를 사용해 성능을 향상시키려면 최신 CPU가 필요한것 같기도 하다. 예를 들어 AVX-VNNI 를 지원하는 CPU 말이다. (OpenVINO 는 AVX2 를 지원하는 CPU 에서 사용할 수 있다)
Stability AI 의 Stable Diffusion 3 (SD3) 가 주춤한 사이 FLUX.1 이 공개되었습니다. 8월 1일에 공개되었는데 이제 주목하게 되었네요. Stable Diffusion 시리즈를 만든 개발자 중 일부가 나와 Black Forest Labs 라는 회사를 차렸는데, 이 회사의 첫번째 생성형 AI입니다. 독일 회사입니다.
FLUX.1 의 성능이 매우 좋다고 해서 관심을 많이 가지고 있습니다. 전 아직 안 써 봤습니다만, SD3 보다는 좋아보입니다. SD3 는 라이선스에 이슈가 있어서 아직까지는 대중화 될지 안될지 모릅니다. FLUX.1 의 경우 특히 "손"도 잘 그리는것으로 알고 있습니다. 엄청난 성능에 SD3 로는 대응이 안되어서 Stability AI 에서는 SD 3.1 을 내놓을 예정이라 합니다.
현재 SD 는 개발사에서 제공한 모델이 주류가 아닙니다. SD1.5 의 경우 개발사에서 제공한 모델보다는, 수많은 사용자들이 만든 모델들을 사용하고 있고요, Dreamshaper 8 정도가 유명합니다. 저도 제가 병합한걸 쓰고 있습니다. SDXL 의 경우 개발사에서 제공한 모델 보다는, 사용자들이 학습시킨 Pony Diffusion 이나 Animagine XL, JuggernautXL v9 기반의 모델이 더 널리 쓰이고 있죠. 심지어 Novel AI 3 도 SDXL 기반으로 알려져 있고 꽤 성능이 좋죠. 이후에 나온 SD3 나 FLUX.1 도 마찬가지일거라 생각합니다. 사용자들이 학습시키려면 라이선스가 중요한데 일단 SD3 는 사용하기 어렵겠네요. 약 6개월 정도 후면 사용자들이 학습시킨 모델이 나올텐데 이떄쯤에 판가름 되겠죠.
FLUX.1 은 Pro, Dev, Schnell 의 3가지로 제공되는데 Pro 는 유료고, 공개된 건 Dev 와 Schnell 입니다. 120억개 파라메터를 가지고 있습니다. "Schnell"은 4스텝 고속 추론 모델이라 성능이 더 좋은 "Dev" 모델이 주가 될겁니다. 약어로 "FLUX.1 D"라고 부르네요. 아직 Stable Diffusion WebUI (SDUI) 에서는 지원이 안되고, Stable Diffusion WebUI Forge (SDF) 에서 지원된다고 하네요. SDF 는 예전에 VRAM 이 낮은 기기에서도 느리지만 이미지 생성이 되어서 한때 잘 썼었는데요, 다시 보니깐 반갑네요. (물론 같은 파라메터를 주어도 SDUI 와 유사한 이미지를 만들지 않습니다. 내부 알고리즘이 호환이 안되는거라서요)
FLUX 라는건 "선속"이라는 의미입니다. 특정 공간에서의 어떤 물리량의 "흐름"을 의미합니다. 주변에서 흔히 볼 수 있는 FLUX 라는 용어는 광선속을 이야기할때 주로 사용합니다. 광선속의 단위가 루멘, 칸델라, 럭스이고, 조명 기구의 밝기를 나타냅니다. 단위 면적당 광자의 흐름을 나타내죠.
Stable Diffusion 3 Medium 이 오픈소스로 릴리즈 되었습니다. ComfyUI 에서는 지원되고 아직 WebUI 에서는 지원안되지만 조만간 지원될걸로 생각합니다. ComfyUI 는 제작사인 Stability AI 에서 직접 지원해줬네요.
CLIP이 3가지(CLIP-G, CLIP-L, T5 XXL)이고, U-NET 구조를 가지지 않습니다. MMDiT (Multimodal Diffusion Transformer) 모델이라고 설명하네요. 파라메터는 20억개로 SDXL 의 26억개보다는 적지만, 굉장히 많은 개선점이 있습니다. 가장 눈에 띄의는건 텍스트를 제대로 인식해 출력해준다는 거네요. nVidia 와의 협업으로 TensorRT 를 사용한 성능 향상도 눈에 띄입니다.
실행시킬때 필요한 PC사양, 성능은 SDXL 과 크게 다르지 않을것 같네요. FP8 으로 줄인 모델을 사용하면 더 빠르게 사용할 수 있을 걸로 생각합니다.
WebUI 에서 포팅 중이긴 한데 아직 좀 더 기다려야 합니다. 대충 보니깐 현재 구현된건 ComfyUI 보다 많이 느리다고 하네요. Karras 스케줄러와도 안 맞는다고 합니다.
단 라이선스 때문에 말이 많네요. "크리에이터 라이선스"나 "상업 라이선스"는 유료인가 봅니다. 그리고 "비상업적 라이선스" 부분도 좀 애매한 부분이 있어, CiviAI 에서 이 부분에 대한 명확한 해명을 요구하고 있네요. 현재 라이선스대로라면 CivitAI 처럼 서비스 하는건 불가능하나 보네요.