The Tale of the Princess Kaguya ๐ฅ Wan2.1-T2V-14B
์ธ๋ถ ์ ๋ณด
ํ์ผ ๋ค์ด๋ก๋
๋ชจ๋ธ ์ค๋ช
๊ฐ์
๊ณต์ฃผ ๊ฐ๊ตฌ์ผ์ ์ด์ผ๊ธฐ(2013๋ )๋ ์ด์ฌ๋ฌด ํ์นดํํ๊ฐ ์ผ๋ณธ์์ ๊ฐ์ฅ ์ค๋๋ ์ ์ค์ธ ๋๋๋ฌด ์ ๋จ์ ์ด์ผ๊ธฐ๋ฅผ ์๋ฆ๋ต๊ฒ ์ฌํด์ํ ์ํ์ด๋ค. ์ด ์ด์ผ๊ธฐ๋ ๊ฒธ์ํ ๋๋๋ฌด ์ ๋จ์์ ๊ทธ์ ์๋ด๊ฐ ๋๋๋ฌด ์์์ ์๊ธฐ๋ก ๋ฐ๊ฒฌํ ์ฒ์์ ์กด์ฌ๋ฅผ ์ค์ฌ์ผ๋ก ์ ๊ฐ๋๋ค. ๊ทธ๋ ๊ฐ ์๋ฆ๋ค์ด ์ ์ ์ฌ์ธ์ผ๋ก ์ฑ์ฅํ๋ฉด์, ๊ทธ๋ ๋ ๊ท์กฑ ์ฌํ์ ์๊ฒฉํ ๊ธฐ๋์ ์ ํญํ๋ฉด์๋ ๋จ์ํ ์๊ณจ์์์ ์์ ๋ก์ด ์ถ์ ๊ฐ๋งํ๋ค. ์ด ์ํ๋ ์ ์ฒด์ฑ, ์์ , ๊ทธ๋ฆฌ๊ณ ์ถ์ ์ ํํจ์ ๋ํ ์ง๋ฌธ์ ํ๊ตฌํ๋ฉฐ, ์ฐ๋ฆฌ๊ฐ ์ถ์์ ์ง์ ์ผ๋ก ๋ฌด์์ ์ํ๋์ง, ๊ทธ๋ฆฌ๊ณ ์ง์ ํ ํ๋ณต์ ์ฐพ์ ์ ์๋์ง์ ๋ํ ๊น์ด ์๋ ์ฑ์ฐฐ์ ์ ์ฌํ๋ค.
์ด ์ํ๊ฐ ์ง์ ์ผ๋ก ํน๋ณํ ์ด์ ๋ ๊ณ ์ ์ ์ธ ์ผ๋ณธ ์๋ฌตํ์ ๋ชฉํํ์์ ์๊ฐ์ ๋ฐ์ ๋น๋ฒํ ์๊ฐ์ ์คํ์ผ ๋๋ฌธ์ด๋ค. ํ์นดํํ๋ ๋๋ก๋ ๋ฏธ์์ฑ์ฒ๋ผ ๋ณด์ผ ์ ๋์ ์ต์ํ์ ์์์ ๋๋ก์ ์คํ์ผ์ ์๋์ ์ผ๋ก ์ ํํ์ผ๋ฉฐ, ์ด๋ฌํ ๊ฑฐ์น ์ง๊ฐ์ด ์คํ๋ ค ๊ด๊ฐ์ ์ด์ผ๊ธฐ ์์ผ๋ก ๋ ๊น์ด ๋นจ์๋ค์ธ๋ค. ์์ฑํ ๋ฐฐ๊ฒฝ์ ๋ถ๋๋ฝ๊ณ ๊ฟ๊ฐ์ผ๋ฉฐ, ์บ๋ฆญํฐ ์ ๋๋ฉ์ด์ ์ ์์์ ์ ์ผ๋ก ๊ตฌ์ฑ๋์ด ๊ฐ์ ์ ๋ฐ๋ผ ์ ๋์ ์ผ๋ก ๋ณํํ๋ค. ํ์จํ ์ฅ๋ฉด์์๋ ๋ถ๋๋ฝ๊ณ ํ๋ฅด๋ ์ ์, ๊ฐ๋ ฌํ ๊ฐ์ ์ฅ๋ฉด์์๋ ๋ ์นด๋กญ๊ณ ๋ถ๊ท์นํ ์ ์ ์ฌ์ฉํ๋ค. ์ด ์์ ์ ์ ํ์ ๋จ์ํ ์๋ฆ๋ต๊ฒ ๋ณด์ด๋ ๊ฒ์ ๋์ด์, ์๋ฐฑ ๋ ๊ฐ ์ด์ด์ ธ ์จ ์ผ๋ณธ ๋ฏธ์ ์ ํต๊ณผ ์ฐ๊ฒฐํ๋ฉด์๋ ์ฐ๋ฆฌ๊ฐ ์ต์ํ๊ฒ ๋ณด์์จ ์ ๊ตํ๊ณ ์ปดํจํฐ๋ก ์๋ฒฝํ๊ฒ ์ ์๋ ์ ๋๋ฉ์ด์ ์์ ๋ฒ์ด๋๋ค. ํ์นดํํ๊ฐ ๋ถ์์ ํจ์ ์์ฉํ๊ณ ๊ด๊ฐ์ ์์๋ ฅ์ด ๊ณต๋ฐฑ์ ์ฑ์ฐ๋๋ก ํ์ฉํ๋ ๋ฐฉ์์๋ ๊ฐ๋ ฅํ ํ์ด ์๋ค. ๊ฒฐ๊ณผ์ ์ผ๋ก ์ด ์ํ๋ ๊ณ ๋์ ์ด๋ฉด์๋ ์์ ํ ์ ์ ํ๊ฒ ๋๊ปด์ง๋ฉฐ, ํญ๋์ ๋นํ๊ฐ๋ค์ ์ฐฌ์ฌ๋ฅผ ๋ฐ์ผ๋ฉฐ ์ญ์ฌ์ ๊ฐ์ฅ ํ๋ฅญํ ์ ๋๋ฉ์ด์ ์ํ ์ค ํ๋๋ก ์๋ฆฌ ์ก์๋ค.
์ค๋ช
์ด LoRA๋ Redline๊ณผ ๋ง์ฐฌ๊ฐ์ง๋ก, ๋จ์ํ ์ ์ ํ๋ ์์ผ๋ก๋ ์์ ํ ํํํ ์ ์๋ ์ ๋๋ฉ์ด์ ์คํ์ผ์ ์ฐ์์ ์ด์ด๊ฐ๋ค. ๋ํ, Wan์ ๊ธฐ๋ณธ 3D ๋ ๋๋ง ํธํฅ์์ ๋ฒ์ด๋ 2D ์์์ ์ ๋๋ฉ์ด์ ์คํ์ผ๋ก ์์ ํ ๋์ฒดํ๋ ค๋ ์๋๋ฅผ ํ์๋ค(์์ ํ ์ฑ๊ณตํ์ง๋ ๋ชปํ์). ๋ชฉํ๋ ์๊ฐ์ ๋ฏธํ๋ฟ ์๋๋ผ ์์ง์, ์๋, ๊ตฌ๋, ๊ทธ๋ฆฌ๊ณ ์ ์ฒด์ ์ธ ์๋์ง๊น์ง ์ ํํ๋ ๊ฒ์ด์๋ค. ๋ฌผ๋ก , ์ด ๋ชจ๋ ๊ฒ์ ๋จ ํ๋์ ์์ LoRA๋ก Achieveํ๋ ๊ฒ์ ๋ถ๊ฐ๋ฅํ๋ค.
๐ ๊ทธ๋ฌ๋ ์ด ๋ชจ๋ธ์ ์์๋ณด๋ค ํ๋ฅญํ๊ฒ ์คํ์ผ์ ํ์ตํ๋ค. ๊ณต์ฃผ ๊ฐ๊ตฌ์ผ์ ์ด์ผ๊ธฐ ์คํ์ผ์ ํน์ง๋ค์ ์ ๋ณต์ฌํด๋๋ค: ๋จ์ํ๋ ํ๊ฒฝ, ์ฌ๋ฐฑ์ ์งํ๋ก์ด ํ์ฉ, ์๋ฌตํ ์คํ์ผ, ๋ฏธ์์ฑ ํํ์ ํจ๊ณผ, ์ท๊ฐ์ ๊ณก์ , ๊ฐ์ ์ ํํ, ์์ง์๊ณผ ์ ์ง, ๊ทธ๋ฆฌ๊ณ ๋ฏธ๋๋ฉ๋ฆฌ์ฆ. ์ด ๋ชจ๋ธ์ ์ง์ ํ ํ๊ฒฝ๊ณผ ์ธ๋ฌผ๋ฟ ์๋๋ผ ๋ฏธ๋, ์ค์ธ, ํ๋ ๋ฑ ๋ค์ํ ์๋์ ์ฅ๋ฉด๋ค๋ ์ ๋ฌ์ฌํ๋ค.
๐ ๊ทธ๋ฌ๋ ํ ์คํธ ์ค์๋ง ๋ฐ๊ฒฌํ๊ณ ์์ ํ์ง ๋ชปํ ํ๋์ ๋ถํธํ ๊ฒฐํจ์ด ์๋ค. ์ผ๋ถ ์์์์ ํน์ ๋ฌผ์ฒด์ ์ด์ํ ๋ฐ์ฌ๊ด์ด ๋ํ๋๋ค. ์ด ํจ๊ณผ๋ ์ด์ ์ฒดํฌํฌ์ธํธ(์: 15K-19K ๋จ๊ณ)์์๋ ๋ํ๋ฌ๊ธฐ ๋๋ฌธ์, ๊ณผ์ ํฉ์ด ์๋๋ค(LoRA๋ ํน์ ๊ตฌ์กฐ์ ํ๋ ์ ์กด์ฌ์ ๋ํ ํธํฅ์ด ์์ผ๋ฉฐ, ์ด๋ ๊ณผ์ ํฉ์ ์งํ๊ฐ ๋๋ค. ๋ฐ์ดํฐ์ ์ ์บก์ ์ ํ๋กฌํํธ๋ก ์ฌ์ฉ๋๋ฉฐ, ์๋ณธ ๋ฐ์ดํฐ์ ๊ณผ ์์ ํ ๋ค๋ฅธ ์์์ ์์ฑํ ์ ์๋ค). ์ต์ ํ ๊ธฐ๋ฅ(Sage Attention ๋ฑ)์ ๋นํ์ฑํํ๊ฑฐ๋ ์ํ๋ง ํ๋ผ๋ฏธํฐ๋ฅผ ์กฐ์ ํด๋ ํฐ ๋์์ด ๋์ง ์๋๋ค. LoRA ๊ฐ๋๋ฅผ ๋ฎ์ถ๋ฉด ์ด ํจ๊ณผ๋ ์ค์ด๋ค์ง๋ง, ๋ชฉํ ์คํ์ผ์์ ๋ ๋ฉ์ด์ง๋ค. ๋๋ ์ผ๋ถ LoRA ๋ธ๋ก์ ๋นํ์ฑํํ์ฌ ์ด ํจ๊ณผ๋ฅผ ์ ๊ฑฐํ๋ ค ํ์ง๋ง, ์ฑ๊ณตํ์ง ๋ชปํ๋ค.
์ด ํจ๊ณผ์ ๊ฐ์ฅ ๋์ ์ ์ ์์ ํ ์์ธก ๋ถ๊ฐ๋ฅํ๋ค๋ ๊ฒ์ด๋ค. ๋๋ ๊ทธ ์์ธ์ด ๋ฌด์์ธ์ง ์ดํดํ์ง ๋ชปํด ๊ธฐ๋ถ์ด ์ข์ง ์๋ค. ๋ด ์ต์ ์ ์ถ์ธก์, ์ด ์คํ์ผ์ ๋ด์ฌ๋ ์๋ฌต์ ์ธ ํจํด(์: ๊ฑฐ์ ๊ทธ๋ฆผ์๊ฐ ์๋ ๋ถ๋๋ฝ๊ณ ํ์ฐ๋ ์กฐ๋ช )์ด, ๋ฐ์ดํฐ์ ์ ์กด์ฌํ์ง ์๋ ์ผ๋ถ ๋์์ ๋ํด ๋ชจ๋ธ์ด ๋ณด๊ฐํ๊ณ ์ฌํํ๋ ค๋ค ์ ๋๋ก ๊ตฌํ๋์ง ์์ ๋ฐ์ํ๋ ๊ฒ ๊ฐ๋ค. ๊ณต์ฃผ ๊ฐ๊ตฌ์ผ์ ์ด์ผ๊ธฐ ์คํ์ผ์ ํน์ง์, ๊ฐํ ๋ฐฉํฅ์ฑ ์กฐ๋ช (ํ์ ๋ฐ์ฌ, ๋ธ๋ฃธ, ๋ฐ์ฌ๊ด ๋ฑ)์ ๋ณด์ฌ์ฃผ๋ ์์ ๊ฐ ๋ฐ์ดํฐ์ ์ ๋ถ์กฑํ๊ธฐ ๋๋ฌธ์ด๋ค. ๋ฐ๋ผ์ ์กฐ๋ช ์ถ์ฒ๋ฅผ ์์ํ๋ ์ฅ๋ฉด์ ํ๋กฌํํธ๋ก ์ ๋ ฅํ๋ฉด, ๋ชจ๋ธ์ ํ์ต๋ ํํ๊ณผ ์ฌ์ ์ง์ ์ฌ์ด์ ๋ชจ์์ ์ง๋ฉดํ๋ฉฐ, ๋ถ๋๋ฌ์ด ๊ด์ฑ, ๊ฐ์ฅ์๋ฆฌ ๋ธ๋ฃธ, ํน์ ํฌ๋ฏธํ ๋ฐ์ฌ๊ด ๊ฐ์ ์๊ฐ์ ์์๋ฅผ 'ํ์'ํ๋ค.
โ ๋ง์ฝ ์ด ํจ๊ณผ์ ํ์คํ ์์ธ์ ๋ฐ๊ฒฌํ๋ค๋ฉด, LoRA๋ฅผ ๋ค์ ํ์ตํ๊ฑฐ๋ ์บ๋ฆฌ๋ธ๋ ์ด์ ํ์ฒ๋ฆฌ๋ฅผ ์ํํ ๊ณํ์ด๋ค. ๊ทธ๋ฌ๋ ์ด ๋ชจ๋ธ ์์ ์ ๊ธธ๊ณ ํผ๋กํ ๊ณผ์ ์ด์๊ณ , ํ์ฌ๋ ๋ ๋ค๋ฅธ 2~3์ฃผ๊ฐ์ ๋ฌด์๋ฏธํ ์คํ์ ๊ฐ๋นํ ์ฌ์ ๊ฐ ์๋ค.
์ฌ์ฉ๋ฒ
ํ๋กฌํํธ์ "Kaguya-hime style"์ ์ถ๊ฐํ์ธ์. ํธ๋ฆฌ๊ฑฐ ๋จ์ด ์์ด๋ ์๋ํ ์ ์๊ฒ ์ง๋ง, ์ ๋ ํญ์ ์ถ๊ฐํ๋ฉฐ, ํธ๋ฆฌ๊ฑฐ ์์ด ์ฌ์ฉํ์ ๋์ ๋์์ ํ ์คํธํด๋ณด์ง ์์๊ธฐ ๋๋ฌธ์ ์ ํํ ์ด๋ป๊ฒ ์๋ํ๋์ง๋ ๋ชจ๋ฆ ๋๋ค.
์ ๋ Kijai์ ๋ํผ๋ฅผ ์ฌ์ฉํ์ง๋ง, ๋ค์ดํฐ๋ธ ์ํฌํ๋ก์ฐ์์๋ ์๋ํ ๊ฒ์ ๋๋ค.
๋ชจ๋ ์์์ ๊ธฐ๋ณธ WanVideo2.1-14B-T2V ๋ชจ๋ธ์ ์ฌ์ฉํด ์์ฑ๋์์ผ๋ฉฐ, ๊ฐ ์์์๋ ํฌํจ๋ ComfyUI ์ํฌํ๋ก์ฐ๊ฐ ๋ด์ฅ๋์ด ์์ต๋๋ค.
์ํฌํ๋ก์ฐ์ JSON ์์๋ ์ฌ๊ธฐ์์ ํ์ธํ ์ ์์ต๋๋ค.
๋ฐ์ดํฐ์
๋ฐ์ดํฐ์ ์ ๊ณต์ฃผ ๊ฐ๊ตฌ์ผ์ ์ด์ผ๊ธฐ ์ํ์์ ์ถ์ถํ๋ค. PySceneDetect๋ฅผ ์ฌ์ฉํด ๋ถํ ํ ํ, ํด๋ฆฝ์ 16fps๋ก ๋ณํํ๊ณ ์๋์ผ๋ก 295๊ฐ๋ฅผ ์ ์ ํ๋ค. ๋ ๋์ ๊ฒฐ์ ์ด์์ ๊ฒ์ ์ด๊ฒ์ ์ค์ด๋ ๊ฒ(100~150๊ฐ๋ก)์ด์๊ฒ ์ง๋ง, ์ด ๋ง์ ํด๋ฆฝ์ ์๋ ๋ค์์ฑ ์๋ ๋ฐ์ดํฐ์ ์ผ ๋๋ง ์ ๋นํ๋๋ค. ๋ด ๊ฒฝ์ฐ์๋ ๋ ์ ๊ฒ ์ ํํ ์ ์์๋ค: ๊ฐ ํด๋ฆฝ์ด ํ๋์ ์์ ์ํ์ด์๊ณ , ์ด๋ค ๊ฒ์ ๋จ๊ธฐ๊ณ ์ด๋ค ๊ฒ์ ๋ฒ๋ฆด์ง ๊ฒฐ์ ํ๊ธฐ๊ฐ ์ด๋ ต๊ธฐ ๋๋ฌธ์ด๋ค. ๋ํ, ์ด ์์๋ค์์ ffmpeg๋ฅผ ์ฌ์ฉํด ์ฝ 1000๊ฐ์ ํ๋ ์์ ์ถ์ถํ๊ณ , ๊ทธ ์ค์์ ์๋์ผ๋ก 240๊ฐ์ ์ด๋ฏธ์ง๋ฅผ ์ ์ ํ์ฌ ๊ณ ํด์๋ ์ด๋ฏธ์ง ๋ฐ์ดํฐ์ ์ ๊ตฌ์ฑํ๋ค.
๋ฐ์ดํฐ์ ๊ตฌ์กฐ๋ ์๋ณธ ๋ฐ์ดํฐ๊ฐ ํ์ต๋ ๋ฐฉ์(๊ณต์ WanVideo ๋ณด๊ณ ์์ ๋ฐ๋ฅด๋ฉด)์ ๋ชจ๋ฐฉํ๋ ค ํ๋ค. ์ด๋ 720p, 480p, 192p ํด์๋์ ์์๊ณผ ์ด๋ฏธ์ง๋ฅผ ํฌํจํ๋ค. ์ด์ ๋ฐ๋ผ:
1๏ธโฃ ๋ฐ์ดํฐ์ ์ ์ฒซ ๋ฒ์งธ ๋ถ๋ถ์ 255๊ฐ์ ์ด๋ฏธ์ง๋ก, ์์ค ํด์๋๋ 1920x1040, ํ์ต ํด์๋๋ 1328x720px(720p)์ด๋ค.
์ด๋ฏธ์ง๋ ๋ค์ ํ๋กฌํํธ๋ฅผ ์ฌ์ฉํด Qwen2.5-VL-7B-Instruct๋ก ์บก์ ์ ์์ฑํ๋ค:
๋น์ ์ ์ ๋ฌธ์ ์ธ ์๊ฐ ์ฅ๋ฉด ๋ฌ์ฌ์์
๋๋ค.
๋ค์ ์ ๋๋ฉ์ด์
ํ๋ ์(๋น๋์ค ์ฅ๋ฉด์์ ์ถ์ถํ ์ ์ง ํ๋ฉด)์ ๋ํด ๋ค์์ ํฌํจํ๋ ์์ธํ๊ณ ๊ณ ๋๋ก ๋ฌ์ฌ์ ์ธ ์บก์
์ ์์ฑํ์ธ์:
- ๊ธธ์ด๋ ์ฝ 80~100๋จ์ด์
๋๋ค.
- ์ ํํ "Kaguya-hime style"์ด๋ผ๋ ๋ฌธ๊ตฌ๋ก ์์ํฉ๋๋ค.
- ํ์ฌ์์ , ๋จ์ํ๊ณ ๊ฐ๊ฒฐํ๋ฉฐ ๊ตฌ์ฒด์ ์ธ ์ธ์ด๋ฅผ ์ฌ์ฉํ์ฌ ํ๋ ์์ ๋ณด์ด๋ ๊ฒ๋ง ์ค๋ช
ํฉ๋๋ค.
- ์์๋ "์ฃผ์ฒด โ ์ฅ๋ฉด โ ์์๋ ์์ง์/๋ถ์๊ธฐ"์
๋๋ค (์: "Kaguya-hime style, ํ์ ํฌ๋์ ์
์ ์ด๋ฆฐ ์๋
์ด ์๋ฒฝ์ ๋๋ฌด ๋ฌธ ์์ ์ ์๋ค. ์์นจ ์๊ฐ๊ฐ ๊ทธ ๋ค์ ๊ฐ๋ ์ง๋ถ ์ฃผ๋ณ์ ํ๋ ๋ฆฐ๋ค.").
- ์ ํํ ์ธ๋ถ์ฌํญ ํฌํจ (๋์ด, ์ฑ๋ณ, ์ท ์์, ์ฃผ์ ๋ฌผ์ฒด, ํ๊ฒฝ, ๋ ์จ, ์๊ฐ๋).
- ๊ฐ์ ์ ํ์ฉ์ฌ, ์ถ์์ ์์ฌ, ์คํ์ผ ๋จ์ด๋ ์ ์ธํ๋, ํ์ ์ ๋์ฌ๋ง ํฌํจํฉ๋๋ค.
- ์ฌ๋ฌ ์ฃผ์ฒด๊ฐ ์๋ ์ฅ๋ฉด์์๋ ํ๋ ์ค์ธ ์ฃผ์ ์ธ๋ฌผ์ ์ค์ฌ์ผ๋ก ์ค๋ช
ํ์ธ์.
๋ค์ ํ
ํ๋ฆฟ์ ์ฌ์ฉํ์ธ์: "Kaguya-hime style, [์ ํ์ ์ดฌ์ ๊ฐ๋ (ํด๋ก์ฆ์
, ๋ฏธ๋์ ์ท, ์์ด๋ ์ท)] of a [์๊ฐ์ ์ธ๋ถ์ฌํญ์ด ํฌํจ๋ ์ฃผ์ฒด] [์์ธ/์ ์ง ์์น ๋๋ ๋ถ๋๋ฌ์ด ์์์ ๋์]. [์ธ๋ถ์ ์ธ ์ค์ ]. [๋ฏธ๋ฌํ ์ญ๋์ ์์ ๋๋ ๋ถ์๊ธฐ ๋จ์ (๋ฐ๋, ๋ ๋ค๋๋ ๊ฝ์, ๋ฌผ๊ฒฐ์น๋ ๋ฌผ, ๋ฑ๋ถ ๋น)์ผ๋ก ์ ์ ์ธ ๋๋์ ํผํ์ธ์]. [์ถ๊ฐ์ ์ธ ์๊ฐ์ ๋งฅ๋ฝ ๋๋ ๋ฐฐ๊ฒฝ ์ธ๋ถ์ฌํญ]." (์: "Kaguya-hime style, ๋ก์ ํ์ ๊ธฐ๋ชจ๋
ธ๋ฅผ ์
์ ๋
ธ๋
์ ์ฅ์ธ๋ค์ด ๊ฒธ์ํ ์์
์ฅ์์ ๋๋ฌด ์กฐ๊ฐ์ ์๊ธฐ๊ณ ์๋ค. ํ๋น ์์ ๋ ๋ค๋๋ ๊ฐ๋ฃจ ์
์๋ค. ๋๊ตฌ์ ๋๋ฌด ์๊ตญ๋ค์ด ๋ฎ์ ํ
์ด๋ธ ์์ ํฉ์ด์ ธ ์๋ค. ํํ๋ฏธ ๋ฐ๋ฅ์ ๊ทธ๋ฆผ์๊ฐ ๊ธธ์ด์ง๊ณ ์๋ค.")
2๏ธโฃ ๋ฐ์ดํฐ์ ์ ๋ ๋ฒ์งธ ๋ถ๋ถ์ 295๊ฐ์ ํด๋ฆฝ์ผ๋ก, ์์ค ํด์๋ 1920x1040, ํ์ต ํด์๋ 880x480px(480p). ๋ฐ์ดํฐ์ ๊ตฌ์ฑ์์ ๋ค์์ ์ง์ ํ๋ค:
frame_extraction = "head", target_frames = [13]
(์ด ํด์๋์์ RTX 3090์์ ํ์ต ์๋๋ฅผ ๋๋ฌด ๋ง์ด ํฌ์ํ์ง ์์ผ๋ฉด์ ํ๋ณดํ ์ ์๋ ์ต๋ ํ๋ ์ ์)
์ด ๋ถ๋ถ์ ๋ฐ์ดํฐ์ ๋ Qwen2.5-VL-7B-Instruct์ ๋ค์ ํ๋กฌํํธ๋ฅผ ์ฌ์ฉํด ์บก์ ์ ์์ฑํ๋ค (์์ธํ ์บก์ ์ ๊ฐ์กฐํ๊ณ ์ธ๋ถ์ฌํญ์ ์ด์ ):
๋น์ ์ ์ ๋ฌธ์ ์ธ ์๊ฐ ์ฅ๋ฉด ๋ฌ์ฌ์์
๋๋ค.
๋ค์ ์ ๋๋ฉ์ด์
์์ ํด๋ฆฝ์ ๋ํด ๋ค์์ ํฌํจํ๋ ์์ธํ๊ณ ๊ณ ๋๋ก ๋ฌ์ฌ์ ์ธ ์บก์
์ ์์ฑํ์ธ์:
- ๊ธธ์ด๋ ์ฝ 80~100๋จ์ด์
๋๋ค.
- ์ ํํ "Kaguya-hime style"์ด๋ผ๋ ๋ฌธ๊ตฌ๋ก ์์ํฉ๋๋ค.
- ํ์ฌ์์ , ๋จ์ํ๊ณ ๊ฐ๊ฒฐํ๋ฉฐ ๊ตฌ์ฒด์ ์ธ ์ธ์ด๋ฅผ ์ฌ์ฉํ์ฌ ํ๋ฉด์ ๋ณด์ด๋ ๊ฒ๋ง ์ค๋ช
ํฉ๋๋ค.
- ์์๋ "์ฃผ์ฒด โ ์ฅ๋ฉด โ ์์ง์/์นด๋ฉ๋ผ"์
๋๋ค (์: "Kaguya-hime style, ํฐ ๊ธฐ๋ชจ๋
ธ๋ฅผ ์
์ ์ ์ ์ฌ์. ๊ทธ๋
๋ ๋ฌ๋น์ด ๋น์ถ๋ ๋๋๋ฌด ์ฒ์ ๊ฑท๋๋ค. ์นด๋ฉ๋ผ๊ฐ ๋ฐ๋ง๋ถ์ด ๊ทธ ์ฃผ๋ณ์ ๋ ๋ค๋๋ฉฐ ์ฒ์ฒํ ํ๋ค๋ฆฐ๋ค.")
- ์นด๋ฉ๋ผ ์์ง์์ด ๋ณด์ผ ๊ฒฝ์ฐ ํฌํจํ์ธ์(ํฌ, ์ค, ํธํธ). ๋ช
ํํ ์นด๋ฉ๋ผ ์์ง์์ด ์๋ค๋ฉด ์ฃผ์ฒด์ ํ๊ฒฝ์ ์์ง์์ ์ง์คํ์ธ์.
- ์ ํํ ์ธ๋ถ์ฌํญ ํฌํจ (๋์ด, ์ฑ๋ณ, ์ท ์์, ์ฃผ์ ๋ฌผ์ฒด, ํ๊ฒฝ, ๋ ์จ, ์๊ฐ๋, ์นด๋ฉ๋ผ ์์ง์).
- ๊ฐ์ ์ ํ์ฉ์ฌ, ์ถ์์ ์์ฌ, ์คํ์ผ ๋จ์ด๋ ์ ์ธํ๋, ํ์ ์ ๋์ฌ๋ง ํฌํจํฉ๋๋ค.
- ์ฌ๋ฌ ์ฃผ์ฒด๊ฐ ์๋ ์ฅ๋ฉด์์๋ ํ๋ ์ค์ธ ์ฃผ์ ์ธ๋ฌผ์ ์ค์ฌ์ผ๋ก ์ค๋ช
ํ์ธ์.
- ๋ณด์ด๋ ๋ชจ๋ ์์ง์(์ท๊น์ ํ๋ค๋ฆผ, ์
์ ํจ๊ณผ, ํ๊ฒฝ ๋ณํ ๋ฑ)์ ๊ฐ์กฐํ์ธ์.
๋ค์ ํ
ํ๋ฆฟ์ ์ฌ์ฉํ์ธ์: "Kaguya-hime style, [๋ช
ํํ ๊ฒฝ์ฐ ์ ํ์ ์ดฌ์ ๊ฐ๋] of a [์๊ฐ์ ์ธ๋ถ์ฌํญ์ด ํฌํจ๋ ์ฃผ์ฒด ์ค๋ช
] [ํ๋/์์ง์]. [์์ธํ ์ค์ ์ค๋ช
]. [์นด๋ฉ๋ผ ์์ง์]. [์ถ๊ฐ์ ์ธ ๋ฐฐ๊ฒฝ ์์ ๋๋ ๋ถ์๊ธฐ ์ธ๋ถ์ฌํญ]." (์: "Kaguya-hime style, ๊ธด ๊ฒ์ ๋จธ๋ฆฌ๋ฅผ ๊ฐ์ง ์ ์ ์ฌ์ฑ์ด ํฐ ๊ธฐ๋ชจ๋
ธ๋ฅผ ์
๊ณ ์์์ ๋๋๋ฌด ์ฒ์ ์ฒ์ฒํ ๊ฑท๊ณ ์๋ค. ์นด๋ฉ๋ผ๊ฐ ๊ทธ๋
๋ฅผ ๋ฐ๋ผ ํ๋ค๋ฆฐ๋ค. ํฉ๊ธ๋น ๋น์ด ํ๋ค๋ฆฌ๋ ๋๋๋ฌด ์ค๊ธฐ ์ฌ์ด๋ก ์ค๋ฉฐ๋ ๋ค. ๋์ฝ๋ค์ด ๊ทธ๋
์ ์๊ธธ์ ํฉ์ด์ ธ ์๋ค.")
3๏ธโฃ ์ธ ๋ฒ์งธ ๋ถ๋ถ์ ๋์ผํ 295๊ฐ์ ๋น๋์ค๋ฅผ ์ฌ์ฉํ์ผ๋ฉฐ, ํ์ต ํด์๋๋ 352x192px(192p). ์ฌ์ฉํ ์ ์๋ ์ต๋ ํ๋ ์ ์๋ 49๊ฐ์๋ค. ์ด ๋น๋์ค๋ ์ธ ๊ทธ๋ฃน์ผ๋ก ๋๋์ด์ก๋ค:
- 34~49 ํ๋ ์: target_frames = [33], frame_extraction = "uniform", frame_sample = 2
- 50~100 ํ๋ ์: target_frames = [49], frame_extraction = "uniform", frame_sample = 2
- 101~160 ํ๋ ์: target_frames = [49], frame_extraction = "uniform", frame_sample = 3
์ด ๋ถ๋ถ์ ๋ฐ์ดํฐ์ ๋ Qwen2.5-VL-7B-Instruct์ ๋ค์ ํ๋กฌํํธ(๊ฐ๊ฒฐํ ์บก์ ์ ๊ฐ์กฐํ๊ณ ์ธ๋ถ์ฌํญ์ ์ง์คํ์ง ์์)๋ฅผ ์ฌ์ฉํด ์บก์ ์ ์์ฑํ๋ค:
๋น์ ์ ์ฐ์ํ๊ณ ์๋ฌตํ ์คํ์ผ์ ์ ๋๋ฉ์ด์
์์ ํด๋ฆฝ์ ์ํ ์ ๋ฌธ์ ์ธ ์๊ฐ ์ฅ๋ฉด ๋ฌ์ฌ์์
๋๋ค. ๋ค์ ํ
ํ๋ฆฟ์ ๋ฐ๋ผ ํ ๋ฌธ์ฅ์ ์บก์
์ ์์ฑํ์ธ์(15~30๋จ์ด):
"Kaguya-hime style, [์ฃผ์ ์ฃผ์ฒด] [ํ๋/์์ง์ ๋๋ ์ํ] in/on [๋ฐฐ๊ฒฝ ์์๋ฅผ ํฌํจํ ํน์ ์ฅ์], with [์๋๊ฐ ์๋ ์ธ๋ถ์ฌํญ: ์์, ์กฐ๋ช
, ๋ ์จ, ๋ถ์๊ธฐ], during [์๊ฐ๋ ๋๋ ๋งฅ๋ฝ์ ๋ง๋ ์๊ฐ์ ์ค๋ช
]."
์์: "Kaguya-hime style, ์ธ๋ก์ด ์ฌ๋ฌด๋ผ์ด๊ฐ ์๊ฐ ๋ ๋๋๋ฌด ์ฒ์ ๊ฑฐ๋๋ฉฐ, ๋ฌ๋น์ด ๋ถ๋๋ฌ์ด ๊ทธ๋ฆผ์๋ฅผ ๋๋ฆฌ์ฐ๊ณ , ๊ณ ์ํ ์์ ์ ํ์๋ฆฌ์คํ ์๋ฌตํ์ ํ์จํจ์ ๋๋๋ค."
์๊ตฌ์ฌํญ:
- ์ฃผ์ ์ฃผ์ฒด ์๋ณ (์: ์ธ๋ฌผ, ๋๋ฌผ, ๋ฌผ์ฒด).
- ์ฃผ์ ํ๋, ์์ง์ ๋๋ ์ํ ๊ธฐ์ (์๋๊ฐ ์๋ ๋์ฌ๋ ํ์ฉ์ฌ ์ฌ์ฉ).
- ๋ฐฐ๊ฒฝ ์์๋ฅผ ํฌํจํ ์ค์ ๋ช
์ (์: ์ฒ, ๊ฐ, ๊ฑด์ถ๋ฌผ, ๋๋ ์ต์ํ๋ ์ถ์์ ๋ชจํฐํ).
- ํ๋ถํ ์๊ฐ์ ์ธ๋ถ์ฌํญ ํฌํจ (์: ๋ฐ์ง์ด๋ ๋ฌ๋น, ์๋๊ฐ ์๋ ์์ฑ, ์๊ฐ ๋ ๊ณต๊ธฐ).
- ์๊ฐ๋ ๋ช
์ (์: ์๋ฒฝ, ํฉํผ) ๋๋ ์ ์ ํ ์๊ฐ์ ๋งฅ๋ฝ (์: ํํ์ง ์ฅ๋ฉด์ ๋ํ "์์ํ ๋ฐค").
- ๋ช
ํํ ์ฃผ์ฒด๋ ์๊ฐ์ด ์๋ ๊ฒฝ์ฐ, ์๋๊ฐ ์๋ ์ค์ ๊ณผ ๋ถ์๊ธฐ์ ์ง์ค.
- ์บก์
์ ๊ฐ๊ฒฐํ๊ณ ์๋๊ฐ ์์ผ๋ฉฐ ์์ฐ์ค๋ฝ๊ฒ ํ๋ฅด๋๋ก ํ์ธ์.
๋ชจ๋ ์บก์ ์ ์๋์ผ๋ก ๊ฒํ ํ๊ณ (๋ง์ ์์ ์ด ํ์ํ๋ค). ์ผ๋ถ ์บ๋ฆญํฐ๋ ๋ช ์์ ์ผ๋ก ํ๊ทธํ๋ค("Takenoko", "Menowarawa", "Sutemaru"), ๊ทธ๋ฌ๋ ๋จ์ง ์ฌ๋ฏธ๋ก ํ ๊ฒ์ด๋ฉฐ, ์ด ํ๊ทธ๋ฅผ ์ฌ์ฉํ๋ค๊ณ ํด์ ์ ํํ ์บ๋ฆญํฐ๊ฐ ์ฌํ๋๋ค๋ ๋ณด์ฅ์ ์๋ค. ์ฌ์ค, ์คํ์ผ LoRA๋ฅผ ์ํ ์บ๋ฆญํฐ ์บก์ ์ผ๋ก์ ์ด๋ ์ด์์ ์ธ ๋ฐฉ๋ฒ์ด ์๋๋ค. ๋ ๋์ ์ ๊ทผ๋ฒ์ ํ๋ ์์์ ์บ๋ฆญํฐ๊ฐ ์ ์ผํ ์ฃผ์ฒด์ผ ๋๋ง ํ๊ทธํ๋ ๊ฒ์ด๋ค. ๊ทธ๋ฌ๋ ์ด๋ฒ์๋ ์ฃผ๋ก 'ํ๊ท ํ๋' ์คํ์ผ์ ์ฌํํ๋ ค ํ๊ณ , ํน์ ์บ๋ฆญํฐ๋ฅผ ์ฌํํ๋ ค๋ ์๋๊ฐ ์์๊ธฐ ๋๋ฌธ์ ์ด ๋ฐฉ๋ฒ์ผ๋ก ์ถฉ๋ถํ๋ค.
๐๏ธ ์๋๋ ๋ฐ์ดํฐ์ ๊ตฌ์ฑ์ ์ ์ฒด toml ํ์ผ์ ๋๋ค(์ฐธ๊ณ : ๋ฐ์ดํฐ์ ์ ๋ ๋ฒ์งธ ๋ถ๋ถโ480p ์์โ๋ ๊ตฌ์ฑ์์ ์ธ ๋ถ๋ถ์ผ๋ก ๋๋์ด์ ธ ์์ง๋ง, ์ด ๋ชจ๋ ์น์ ์ ํ๋ผ๋ฏธํฐ๋ ๋์ผํ๋ฉฐ, ์ด๋ 192p ๋ฒ์ ์ ํด๋ฆฝ์ด ์ด๋ฏธ ์ธ ๊ทธ๋ฃน(34-49, 50-100, 101-160 ํ๋ ์)์ผ๋ก ๋ถ๋ฅ๋์ด ์์๊ณ , 480p ๋ฒ์ ์์๋ ๋์ผํ ํด๋ ๊ตฌ์กฐ๋ฅผ ์ฌ์ฌ์ฉํ์ฌ ์ผ๊ด์ฑ๊ณผ ๋ฐ์ดํฐ ๊ด๋ฆฌ์ ํธ์์ฑ์ ๋์ด๊ธฐ ์ํจ์ ๋๋ค):
[general]
enable_bucket = true
bucket_no_upscale = true
[[datasets]]
image_directory = "H:/datasets/princess_kaguya/images/1920x1040/1"
cache_directory = "H:/datasets/princess_kaguya/images/1920x1040/1/cache_highres"
caption_extension = ".highres"
resolution = [1328, 720]
batch_size = 1
num_repeats = 1
[[datasets]] video_directory = "H:/datasets/princess_kaguya/videos/1920x1040/34-49" cache_directory = "H:/datasets/princess_kaguya/videos/1920x1040/34-49/cache_mediumres" caption_extension = ".mediumres" resolution = [880, 480] batch_size = 1 num_repeats = 1 frame_extraction = "head" target_frames = [13]
[[datasets]] video_directory = "H:/datasets/princess_kaguya/videos/1920x1040/50-100" cache_directory = "H:/datasets/princess_kaguya/videos/1920x1040/50-100/cache_mediumres" caption_extension = ".mediumres" resolution = [880, 480] batch_size = 1 num_repeats = 1 frame_extraction = "head" target_frames = [13]
[[datasets]] video_directory = "H:/datasets/princess_kaguya/videos/1920x1040/101-160" cache_directory = "H:/datasets/princess_kaguya/videos/1920x1040/101-160/cache_mediumres" caption_extension = ".mediumres" resolution = [880, 480] batch_size = 1 num_repeats = 1 frame_extraction = "head" target_frames = [13]
[[datasets]] video_directory = "H:/datasets/princess_kaguya/videos/1920x1040/34-49" cache_directory = "H:/datasets/princess_kaguya/videos/1920x1040/34-49/cache_lowres" caption_extension = ".lowres" resolution = [352, 192] batch_size = 1 num_repeats = 1 frame_extraction = "uniform" target_frames = [33] frame_sample = 2
[[datasets]] video_directory = "H:/datasets/princess_kaguya/videos/1920x1040/50-100" cache_directory = "H:/datasets/princess_kaguya/videos/1920x1040/50-100/cache_lowres" caption_extension = ".lowres" resolution = [352, 192] batch_size = 1 num_repeats = 1 frame_extraction = "uniform" target_frames = [49] frame_sample = 2
[[datasets]] video_directory = "H:/datasets/princess_kaguya/videos/1920x1040/101-160" cache_directory = "H:/datasets/princess_kaguya/videos/1920x1040/101-160/cache_lowres" caption_extension = ".lowres" resolution = [352, 192] batch_size = 1 num_repeats = 1 frame_extraction = "uniform" target_frames = [49] frame_sample = 3
(์ ์ฒด ์์ค ๋ฐ์ดํฐ์
๋ ์
๋ก๋ํ์ต๋๋ค.)
### **ํ์ต**
ํ์ต์๋ [musubi-tuner](https://github.com/kohya-ss/musubi-tuner)๋ฅผ ์ฌ์ฉํ์ต๋๋ค(Windows 11, 64GB RAM, RTX 3090).
ํ์ต ๋งค๊ฐ๋ณ์ ์์ฒด์๋ ํน๋ณํ ํฅ๋ฏธ๋ก์ด ์ ์ด ์์ผ๋ฉฐ, ๋๋ถ๋ถ [Studio Ghibli LoRA](https://civitai.com/models/1404755/studio-ghibli-style-wan21-t2v-14b)์์ ๊ฐ์ ธ์์ต๋๋ค.
๐๏ธ ์๋๋ ํ์ต์ ์์ํ๊ธฐ ์ํด ์ฌ์ฉํ ๋ฐฐ์น ์คํฌ๋ฆฝํธ์ ์์์
๋๋ค:
accelerate launch --num_cpu_threads_per_process 1 --mixed_precision fp16 wan_train_network.py ^ --task t2v-14B ^ --vae G:/samples/musubi-tuner/wan14b/vae/wan_2.1_vae.safetensors ^ --t5 G:/samples/musubi-tuner/wan14b/tenc/models_t5_umt5-xxl-enc-bf16.pth ^ --dit E:/ComfyUI_windows_portable/ComfyUI/models/diffusion_models/wan/wan2.1_t2v_14B_fp16.safetensors ^ --blocks_to_swap 15 ^ --flash_attn ^ --mixed_precision fp16 ^ --fp8_base ^ --fp8_scaled ^ --dataset_config G:/samples/musubi-tuner/_kaguya_wan14b_dataset.toml ^ --gradient_checkpointing ^ --max_data_loader_n_workers 2 ^ --persistent_data_loader_workers ^ --learning_rate 6e-5 ^ --lr_scheduler constant_with_warmup ^ --lr_warmup_steps 100 ^ --optimizer_type adamw8bit ^ --optimizer_args weight_decay=0.01 ^ --network_module networks.lora_wan ^ --network_dim 32 ^ --network_alpha 32 ^ --timestep_sampling shift ^ --discrete_flow_shift 3.0 ^ --output_dir G:/samples/musubi-tuner/output ^ --output_name kaguya_wan14b ^ --log_config ^ --log_with all ^ --wandb_api_key MY_WANDB_API_KEY ^ --wandb_run_name kaguya ^ --logging_dir G:/samples/musubi-tuner/logs ^ --sample_prompts G:/samples/musubi-tuner/_kaguya_wan14b_sampling.txt ^ --save_state ^ --sample_every_n_steps 500 ^ --save_every_n_steps 500 ^ --max_train_epochs 50
ํ์ต์ 42,000๋จ๊ณ๊น์ง ์งํํ์ผ๋ฉฐ, ์ดํ ์ฌ๋ฌ ์ฒดํฌํฌ์ธํธ๋ฅผ ์คํํ์ฌ 34,000๋จ๊ณ์ ์ฒดํฌํฌ์ธํธ๋ฅผ ์ต์ข
์ ์ผ๋ก ์ ํํ์ต๋๋ค. ์์ค ๊ฐ์๋ ๋ณ๋ก ์ ๊ฒฝ ์ฐ์ง ์์์ต๋๋ค(ํ์ต ์ํ๋ค์ด ๊ธ์ ์ ์ธ ๋ํฅ์ ๋ณด์๊ณ , ์ด๋ ๋ชจ๋ธ์ด ๋ฐ์ดํฐ๋ฅผ ์๊ธฐํ์ง ์๊ณ ํจ๊ณผ์ ์ผ๋ก ํ์ตํ๊ณ ์์์ ํ์ธ์์ผ ์ฃผ์๊ณ , ์ด๋ ์์ค ๊ฐ๋ณด๋ค ๋ ์ค์ํ์ต๋๋ค). ๋ค๋ง, ํ์ต ๊ธฐ๊ฐ ๋์ ์์ค์ ์ฝ 0.1์์ 0.09๋ก ์์ ์ ์ผ๋ก ๊ฐ์ํ๋ฉฐ, ๊ณผ์ ํฉ์ ์งํ ์์ด ์ผ๊ด๋ ์๋ ด์ ๋ณด์์ต๋๋ค.
P.S. ์ต์ข
LoRA ๊ฐ์ค์น๋ฅผ ์์ ํฉ์ฑ ๋ฐ์ดํฐ์
์ผ๋ก ์ฌํ ์ธ๋ฐ ์กฐ์ ํ์ฌ ์ฒ์์ ์ธ๊ธ๋ ๋ฌธ์ ๋ฅผ ์ํํ๋ ค๊ณ ์๋ํ์ง๋ง, ์ด ๋ฐฉ๋ฒ์ ํจ๊ณผ๊ฐ ์์๊ณ ์คํ๋ ค ๋ชจ๋ธ ์ฑ๋ฅ์ ์ ํ์์ผฐ์ต๋๋ค.
