Studio Ghibli ๐ŸŽจ Lumina-Image 2.0

์„ธ๋ถ€ ์ •๋ณด

ํŒŒ์ผ ๋‹ค์šด๋กœ๋“œ

๋ชจ๋ธ ์„ค๋ช…

์„ค๋ช…

์›๋ž˜์˜ Lumina 2๋Š” Ghibli ์Šคํƒ€์ผ์„ ์ดํ•ดํ•˜์ง€ ๋ชปํ•ฉ๋‹ˆ๋‹ค. ์ œ๊ฐ€ ํ”„๋กฌํ”„ํŠธ๋ฅผ ์ž…๋ ฅํ•˜๋ฉด ์•Œ์•„๋ณผ ์ˆ˜ ์—†๋Š” ํ•ด๋ถ€ํ•™์  ์˜ค๋ฅ˜๊ฐ€ ์žˆ๋Š” ๋†€๋ผ์šด ์ด๋ฏธ์ง€๊ฐ€ ์ƒ์„ฑ๋˜์ง€๋งŒ, ์ด๋Š” Ghibli ์Šคํƒ€์ผ์ด ์•„๋‹™๋‹ˆ๋‹ค.

์ €๋Š” Ghibli ์˜ˆ์ˆ  ์Šคํƒ€์ผ์„ ๋งค์šฐ ์ข‹์•„ํ•˜๋ฉฐ, ๋งค๋ฒˆ ์ƒˆ๋กœ์šด ๋ชจ๋ธ์— ์ด ์Šคํƒ€์ผ์„ ๊ฐ€๋ฅด์น˜๋ ค๊ณ  ๋…ธ๋ ฅํ•ด์™”์Šต๋‹ˆ๋‹ค. ์ด๋Š” Lumina Image 2์— ๋Œ€ํ•œ ์ œ ์ดˆ๊ธฐ ์‹œ๋„ ๊ฒฐ๊ณผ์ž…๋‹ˆ๋‹ค. ๋” ๋‚˜์•„์งˆ ์ˆ˜๋Š” ์žˆ์ง€๋งŒ, ๊ทธ๋ณด๋‹ค ๋” ๋‚˜๋น ์งˆ ์ˆ˜๋„ ์žˆ์—ˆ์ฃ  ๐Ÿคท

์‚ฌ์šฉ๋ฒ•

๊ฐค๋Ÿฌ๋ฆฌ์˜ ๊ฐ ์ด๋ฏธ์ง€์—๋Š” ๋‚ด์žฅ๋œ ์›Œํฌํ”Œ๋กœ์šฐ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์œผ๋ฏ€๋กœ, ๊ทธ๋ƒฅ ComfyUI์— ๋“œ๋ž˜๊ทธํ•˜์„ธ์š”.
๊ฑฐ์˜ ๋ชจ๋“  ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” ๊ธฐ๋ณธ ์›Œํฌํ”Œ๋กœ์šฐ์™€ ๋™์ผํ•˜๋ฉฐ, ๋‹ค์Œ ํ•ญ๋ชฉ๋งŒ ๋‹ค๋ฆ…๋‹ˆ๋‹ค:

Steps: 40
Scheduler: sgm_uniform

(์ฐธ๊ณ : ์ด ์„ค์ •์ด ๋ฐ˜๋“œ์‹œ ์ตœ์ ์€ ์•„๋‹™๋‹ˆ๋‹ค. ๋‹จ์ง€ ์ด ์„ค์ •์œผ๋กœ LoRA ์ถœ๋ ฅ์„ ํ…Œ์ŠคํŠธํ–ˆ์„ ๋ฟ์ž…๋‹ˆ๋‹ค.)

๋‹ค๋ฅธ ์ƒ˜ํ”Œ๋Ÿฌ๋Š” ์•„์ง ์ถฉ๋ถ„ํžˆ ํ…Œ์ŠคํŠธํ•˜์ง€ ์•Š์•˜์ง€๋งŒ, ๋“ฃ๊ธฐ๋กœ๋Š” gradient_estimation ์ƒ˜ํ”Œ๋Ÿฌ๊ฐ€ ์ผ๋ถ€ ๊ฐœ์„ ์„ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ๊ณ , CFG ๊ฐ’์„ ๋‚ฎ์ถ”๋ฉด ํ•ด๋ถ€ํ•™์  ์ •ํ™•๋„๊ฐ€ ํ–ฅ์ƒ๋  ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

ํ•™์Šต

์ €๋Š” Ghibli ์˜ํ™”์˜ ํ™”๋ฉด ์บก์ฒ˜ ์ผ๋ถ€๋ฅผ ์‚ฌ์šฉํ–ˆ์œผ๋ฉฐ, ์ด 184์žฅ(1024x1024)์˜ ์ด๋ฏธ์ง€๋ฅผ ์‚ฌ์šฉํ–ˆ์Šต๋‹ˆ๋‹ค.

์ด ์ด๋ฏธ์ง€๋“ค์€ JoyCaption Alpha Two(๋กœ์ปฌ์—์„œ)๋ฅผ "์„ค๋ช…์ /๊ธด" ๋ชจ๋“œ๋กœ ์‚ฌ์šฉํ•˜์—ฌ ์บก์…˜์„ ์ž‘์„ฑํ–ˆ๊ณ , ๊ฐ ์บก์…˜ ์•ž์— "You are an assistant designed to generate high-quality images based on user prompts. Studio Ghibli style."๋ผ๋Š” ๋ฌธ์žฅ์„ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.

(์ €๋Š” LLM ์ ‘๋‘์–ด๊ฐ€ ๋ถˆํ•„์š”ํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•˜์ง€๋งŒ, ๊ทธ๋ž˜๋„ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.)

ํ•™์Šต์—๋Š” ai-toolkit์„ ์‚ฌ์šฉํ–ˆ์œผ๋ฉฐ, ์ด ๋„๊ตฌ๋Š” ์ตœ๊ทผ Lumina-2 ํ•™์Šต ๋ธŒ๋žœ์น˜๋ฅผ ์ฃผ ์ €์žฅ์†Œ์— ๋ณ‘ํ•ฉํ–ˆ์Šต๋‹ˆ๋‹ค. ์ฐธ๊ณ ๋กœ, Lumina-2 ํ•™์Šต(LoRA ๋ฐ ์ „์ฒด ๋ฏธ์„ธ ์กฐ์ •)์„ ์ง€์›ํ•˜๋Š” ๋˜ ๋‹ค๋ฅธ ํ•™์Šต ๋„๊ตฌ๋Š” diffusion-pipe์ž…๋‹ˆ๋‹ค. ์ €๋„ ์ด๋ฅผ ํ…Œ์ŠคํŠธํ•ด๋ณด์•˜์ง€๋งŒ, ์ œ ํ™˜๊ฒฝ์—์„œ๋Š” ai-toolkit๋ณด๋‹ค ๋” ๋А๋ ธ์Šต๋‹ˆ๋‹ค.

์ฒ˜์Œ์—๋Š” ๊ธฐ๋ณธ ๊ตฌ์„ฑ์„ ์‚ฌ์šฉํ–ˆ์ง€๋งŒ, ๊ธฐ๋ณธ ํ•™์Šต๋ฅ (1e-04)์ด ๋„ˆ๋ฌด ๋†’๋‹ค๊ณ  ํŒ๋‹จํ–ˆ์Šต๋‹ˆ๋‹ค. ์—ฌ๋Ÿฌ ์ตœ์ ํ™”๊ธฐ๋ฅผ ์‹คํ—˜ํ•œ ๊ฒฐ๊ณผ, 2000~3000 ๋‹จ๊ณ„ ํ›„ LoRA์˜ ํ’ˆ์งˆ์ด ์ข‹์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ๊ทธ ํ›„ ํ•™์Šต๋ฅ ์„ 5e-05๋กœ ๋ณ€๊ฒฝํ–ˆ๋”๋‹ˆ ๋” ๋‚˜์€ ๊ฒฐ๊ณผ๋ฅผ ์–ป์—ˆ์Šต๋‹ˆ๋‹ค. ์ตœ์ข…์ ์œผ๋กœ 20,000๋‹จ๊ณ„๊นŒ์ง€ ํ•™์Šตํ•˜๊ธฐ๋กœ ๊ฒฐ์ •ํ–ˆ์Šต๋‹ˆ๋‹ค. ํ•™์Šต์€ ๋งค์šฐ ๋น ๋ฅด๊ฒŒ ์ง„ํ–‰๋˜์—ˆ์Šต๋‹ˆ๋‹ค(RTX 3090์—์„œ ์•ฝ 1.7์ดˆ/๋‹จ๊ณ„). ์•„๋งˆ๋„ ์ง€๋‚œ ๋‘ ๋‹ฌ ๋™์•ˆ ์ œ๊ฐ€ ๋‹จ์ง€ HunyuanVideo๋งŒ ํ•™์Šตํ•ด์™”๊ธฐ ๋•Œ๋ฌธ์ผ ๊ฒƒ์ž…๋‹ˆ๋‹ค ๐Ÿ˜† ํ•™์Šต์ด ๋๋‚œ ํ›„, TensorBoard ๋กœ๊ทธ์— ๋”ฐ๋ผ ํ›ˆ๋ จ ์ค‘์— ์ข‹์€ ์ƒ˜ํ”Œ ํ’ˆ์งˆ์„ ๋ณด์˜€๊ฑฐ๋‚˜ ์†์‹ค์ด ๊ฐ€์žฅ ๋‚ฎ์€ ์ฒดํฌํฌ์ธํŠธ๋ฅผ ์„ ํƒํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ ํ›„ ComfyUI์—์„œ ์ˆ˜๋™์œผ๋กœ ํ…Œ์ŠคํŠธํ•˜๊ณ  17,200๋‹จ๊ณ„์˜ ์ฒดํฌํฌ์ธํŠธ๋ฅผ ์ตœ์ข… ์„ ํƒํ–ˆ์Šต๋‹ˆ๋‹ค.

(์™„์ „ํžˆ ํ™•์‹ ํ•˜๋Š” ๋ฐ”๋Š” ์•„๋‹ˆ์ง€๋งŒ, ์šฐ์ˆ˜ํ•œ LoRA๋ฅผ ์–ป๊ธฐ ์œ„ํ•œ ์ด ํ•™์Šต ๋‹จ๊ณ„ ์ˆ˜๋Š” ํ›จ์”ฌ ์ค„์ผ ์ˆ˜ ์žˆ์„ ๊ฒƒ์ด๋ผ ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” ๋‹จ์ง€ ์ฒซ ์‹œ๋„์ผ ๋ฟ์ด๋ฉฐ, ๋™์‹œ์— Lumina-2๊ฐ€ ์–ผ๋งˆ๋‚˜ ์˜ค๋žซ๋™์•ˆ ํ•™์Šต๋  ์ˆ˜ ์žˆ๋Š”์ง€ ํ…Œ์ŠคํŠธํ•˜๊ณ  ์‹ถ์—ˆ์Šต๋‹ˆ๋‹ค.)

์š”์•ฝํ•˜๋ฉด, ์ €๋Š” ๋‹ค์Œ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์‚ฌ์šฉํ–ˆ์Šต๋‹ˆ๋‹ค:

lr: 5e-5
optimizer: "adamw8bit"
optimizer_params.betas: [0.95, 0.98]
optimizer_params.weight_decay: 0.01
noise_offset: 0.1
lr_scheduler: "cosine"

๊ธฐํƒ€ ํ•˜์ดํผํŒŒ๋ผ๋ฏธํ„ฐ๋Š” ๋ชจ๋‘ ๊ธฐ๋ณธ๊ฐ’ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ์„ธํŠธ ๋ฐ ๊ตฌ์„ฑ ํŒŒ์ผ์€ ์ด LoRA์™€ ํ•จ๊ป˜ ์ฒจ๋ถ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

(์ €๋Š” ๋žญํฌ 16์„ ๊ทธ๋Œ€๋กœ ๋‘๋Š” ๊ฒƒ์ด ์‹ค์ˆ˜์˜€๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. Lumina-2 LoRA๋Š” ์Šคํƒ€์ผ์˜ ์„ธ๋ถ€ ์‚ฌํ•ญ์„ ์™„์ „ํžˆ ์žก์•„๋‚ด๋ ค๋ฉด ์ตœ์†Œ ๋žญํฌ 32 ์ด์ƒ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ €๋Š” ์•„์ง ํ•™์Šต ์ค‘์ž…๋‹ˆ๋‹ค.)

ํ˜ธํ™˜์„ฑ

ํ•œ ๊ฐ€์ง€ ์–ธ๊ธ‰ํ•  ์ : ai-toolkit์€ ComfyUI์™€ ํ˜ธํ™˜๋˜์ง€ ์•Š๋Š” ํ˜•์‹์œผ๋กœ LoRA safetensors ํŒŒ์ผ์„ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด, ํ•™์Šต ๋ฐ์ดํ„ฐ์— ํฌํ•จ๋œ _lumina2comfy.py ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ai-toolkit์œผ๋กœ ์ƒ์„ฑ๋œ LoRA ์ฒดํฌํฌ์ธํŠธ๋ฅผ ComfyUI ํ˜ธํ™˜ ํ˜•์‹์œผ๋กœ ๋ณ€ํ™˜ํ–ˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ๋ฒ•์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค:

python lumina2comfy.py "path/to/my/lora.safetensors"

(์ธ์ž๋กœ ํด๋” ๊ฒฝ๋กœ๋ฅผ ์ „๋‹ฌํ•˜๋ฉด, ํ•ด๋‹น ํด๋” ๋‚ด์˜ ๋ชจ๋“  safetensors ํŒŒ์ผ์„ ์ผ๊ด„ ๋ณ€ํ™˜ํ•ฉ๋‹ˆ๋‹ค.)

๋ˆ„๊ตฐ๊ฐ€์—๊ฒŒ ์œ ์šฉํ•  ์ˆ˜ ์žˆ๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค. ๐Ÿ˜Š

(์ฐธ๊ณ ๋กœ, diffusion-pipe๋Š” LoRA ๋ณ€ํ™˜์„ ํ•„์š”๋กœ ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด๋ฏธ ComfyUI ํ˜ธํ™˜ ํ˜•์‹์œผ๋กœ ํŒŒ์ผ์„ ์ถœ๋ ฅํ•ฉ๋‹ˆ๋‹ค.)

์ƒ๊ฐ

ํ•™์Šต์— ๋Œ€ํ•œ ์ œ ์ฒซ์ธ์ƒ์€ ๋งค์šฐ ๊ธ์ •์ ์ž…๋‹ˆ๋‹ค. ์™„์ „ํ•œ ๋ฏธ์„ธ ์กฐ์ •์ด ์–ผ๋งˆ๋‚˜ ์ž˜ ๋ ์ง€๋Š” ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค(ํ…Œ์ŠคํŠธํ•  ์‹œ๊ฐ„์ด๋‚˜ ์ ์ ˆํ•œ ๋ฐ์ดํ„ฐ์…‹์ด ์—†๊ธฐ ๋•Œ๋ฌธ์—), ์บ๋ฆญํ„ฐ๋‚˜ ๊ฐœ๋… LoRA ํ•™์Šต๋„ ์‹œ๋„ํ•ด๋ณด์ง€ ์•Š์•˜์ง€๋งŒ, ์ด ๋ชจ๋ธ์— ์ƒˆ๋กœ์šด ์Šคํƒ€์ผ์„ ๊ฐ€๋ฅด์น˜๋Š” ๊ฒƒ์€ ๋งค์šฐ ์œ ๋งํ•ด ๋ณด์ž…๋‹ˆ๋‹ค.

์ œ๊ฐ€ ๊ฐ€์ง„ Lumina 2์— ๋Œ€ํ•œ ์ดˆ๋ณด์ ์ธ ํ‰๊ฐ€๋Š”, ๋ถ„๋ช…ํžˆ Flux(2B ๋Œ€ 12B)๋ณด๋‹ค๋Š” ๋–จ์–ด์ง€์ง€๋งŒ, ์• ๋‹ˆ๋ฉ”์ด์…˜/์ผ๋Ÿฌ์ŠคํŠธ๋ ˆ์ด์…˜์šฉ์œผ๋กœ ํŠผํŠผํ•œ ๊ธฐ๋ณธ ๋ชจ๋ธ์ด ๋  ์ˆ˜ ์žˆ์„ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ํ•ด๋ถ€ํ•™์  ์˜ค๋ฅ˜๊ฐ€ ์žˆ์ง€๋งŒ, ์ด ํด๋ž˜์Šค์˜ ๋ชจ๋“  ๋ชจ๋ธ์ด ํ•ด๋ถ€ํ•™์  ๋ฌธ์ œ์— ์‹œ๋‹ฌ๋ฆฌ๋ฉฐ(ํ…์ŠคํŠธ ๋ Œ๋”๋ง๋„ ์‹คํŒจํ•ฉ๋‹ˆ๋‹ค). NSFW ์ฝ˜ํ…์ธ ์— ๋Œ€ํ•ด์„œ๋Š” ํ…Œ์ŠคํŠธํ•˜์ง€ ์•Š์•˜์ง€๋งŒ, ํ…Œ์ŠคํŠธํ•œ ์‚ฌ๋žŒ๋“ค์€ ๋ณ„๋กœ ์ข‹์ง€ ์•Š๋‹ค๊ณ  ๋งํ•ฉ๋‹ˆ๋‹ค.

์ด ๋ชจ๋ธ์˜ ๊ฐ€์žฅ ๊ฐ•๋ ฅํ•œ ์žฅ์ ์€ 16์ฑ„๋„ VAE์™€ ํ›Œ๋ฅญํ•œ ํ”„๋กฌํ”„ํŠธ ์ค€์ˆ˜์„ฑ์ž…๋‹ˆ๋‹ค(์ œ๊ฐ€ ์ง€๊ธˆ๊นŒ์ง€ ๋ณธ ์–ด๋–ค ๋ชจ๋ธ๋ณด๋‹ค๋„ ๋” ๋‚˜์œผ๋ฉฐ, ๋•Œ๋กœ๋Š” Flux์— ๊ทผ์ ‘ํ•˜๊ธฐ๋„ ํ•ฉ๋‹ˆ๋‹ค). ๋˜ํ•œ, ๋ชจ๋“  T2I ๋ชจ๋ธ ์ค‘์—์„œ ๊ฐ€์žฅ ์ด์ƒ์ ์ธ ๋ผ์ด์„ ์Šค๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค(ํ•˜์ง€๋งŒ ๊ทธ๋“ค์€ ๋ถ„๋ช… Schnell์˜ VAE๋กœ ์ „ํ™˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค).

์ง„์ •ํ•œ ์งˆ๋ฌธ์€, ๋ฏธ์„ธ ์กฐ์ •์œผ๋กœ ํ•ด๋ถ€ํ•™์  ์˜ค๋ฅ˜๋ฅผ ๊ณ ์น  ์ˆ˜ ์žˆ์„๊นŒ ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ €๋Š” ๊ฐ€๋Šฅํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•˜์ง€๋งŒ, ํ™•์‹ ํ•  ์ˆ˜๋Š” ์—†์Šต๋‹ˆ๋‹ค. ํ…Œ์ŠคํŠธ ์ค‘ ์–ป์€ ๋งŽ์€ ์ด๋ฏธ์ง€์—๋Š” ๋‹ค์–‘ํ•œ ์‹ ์ฒด ์™œ๊ณก์ด ํฌํ•จ๋˜์–ด ์žˆ์—ˆ์ง€๋งŒ, ๊ทธ ์ค‘ ์ผ๋ถ€๋Š” LoRA ํƒ“์ผ ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

์ปค๋ฎค๋‹ˆํ‹ฐ์˜ ์ง€์›์ด ์žˆ๋‹ค๋ฉด, ์ด ๋ชจ๋ธ์€ ๋˜ ๋‹ค๋ฅธ NAI-XL์ด ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ ์ ˆํ•œ ์• ๋‹ˆ๋ฉ”์ด์…˜ ๋ฏธ์„ธ ์กฐ์ •์ด ์—†๋‹ค๋ฉด, ์ด ๋ชจ๋ธ์€ ์žŠํ˜€์งˆ ์œ„ํ—˜์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋งˆ์น˜ ํ˜„์žฌ SD3.5M์ด ์œ„ํ—˜์— ์ฒ˜ํ•ด ์žˆ๋Š” ๊ฒƒ์ฒ˜๋Ÿผ์š”. ๋˜ํ•œ ์˜ค๋Š˜๋‚  ๋ˆ„๊ฐ€ Kwai Kolors๋‚˜ PixArt Sigma, Hunyuan DIT์„ ๊ธฐ์–ตํ• ๊นŒ์š”? โ˜น๏ธ

์ด ๋ชจ๋ธ๋กœ ๋งŒ๋“  ์ด๋ฏธ์ง€

์ด๋ฏธ์ง€๋ฅผ ์ฐพ์„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.