Hub documentation
Hugging Face์์ ๐งจ diffusers ์ฌ์ฉ
Hugging Face์์ ๐งจ diffusers ์ฌ์ฉ
Diffusers๋ ์ด๋ฏธ์ง, ์ค๋์ค, ์ฌ์ง์ด ๋ถ์์ 3D ๊ตฌ์กฐ ์์ฑ์ ์ํ ์ต์ฒจ๋จ ์ฌ์ ํ์ต diffusion model์ ์ํ ํ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ๋๋ค. ๊ฐ๋จํ ์ถ๋ก ์๋ฃจ์ ์ ์ฐพ๊ณ ์๊ฑฐ๋ ์์ฒด diffusion model์ ํ์ตํ๋ ค๋ ๊ฒฝ์ฐ, Diffusers๋ ์ด ๋ ๊ฐ์ง๋ฅผ ๋ชจ๋ ์ง์ํ๋ ๋ชจ๋ํ ๋๊ตฌ ์์์ ๋๋ค. ์ด ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ์ฑ๋ฅ๋ณด๋ค ์ฌ์ฉ์ฑ, ๋จ์ํจ๋ณด๋ค ์ฉ์ด์ฑ, ์ถ์ํ๋ณด๋ค ์ปค์คํฐ๋ง์ด์ง ๊ฐ๋ฅ์ฑ์ ์ค์ ์ผ๋ก ์ค๊ณ๋์์ต๋๋ค.
Hub์์ Diffusers ํ์
Hub์๋ 10,000๊ฐ ์ด์์ diffusers ํธํ ํ์ดํ๋ผ์ธ์ด ์์ผ๋ฉฐ, ๋ชจ๋ธ ํ์ด์ง ์ผ์ชฝ์์ ํํฐ๋งํ์ฌ ์ฐพ์ ์ ์์ต๋๋ค. Diffusion ์์คํ
์ ์ผ๋ฐ์ ์ผ๋ก ํ
์คํธ ์ธ์ฝ๋, UNet, VAE, ์ค์ผ์ค๋ฌ์ ๊ฐ์ ์ฌ๋ฌ ๊ตฌ์ฑ ์์๋ก ์ด๋ฃจ์ด์ ธ ์์ต๋๋ค. ๋
๋ฆฝ์ ์ธ ๋ชจ๋ธ์ ์๋์ง๋ง, ํ์ดํ๋ผ์ธ ์ถ์ํ๋ฅผ ํตํด ์ถ๋ก ์ด๋ ํ์ต์ ์ฝ๊ฒ ์ฌ์ฉํ ์ ์์ต๋๋ค.
๋ค์ํ ์์ ์ ์ํ diffusion ํ์ดํ๋ผ์ธ์ ์ฐพ์ ์ ์์ต๋๋ค:
- ์์ฐ์ด ํ ์คํธ ํ๋กฌํํธ(text-to-image)์์ ์ด๋ฏธ์ง๋ฅผ ์์ฑํฉ๋๋ค.
- ์์ฐ์ด ํ ์คํธ ํ๋กฌํํธ๋ฅผ ์ฌ์ฉํ์ฌ ์ด๋ฏธ์ง๋ฅผ ๋ณํํ๋ ์์ (image-to-image).
- ์์ฐ์ด ์ค๋ช (text-to-video)์์ ๋น๋์ค ์์ฑ
๋ชจ๋ธ์ ๋ค์ด๋ก๋ํ์ง ์๊ณ ํ ์คํธํด ๋ณด๋ ค๋ฉด ๋ธ๋ผ์ฐ์ ์์ ฏ์ ํตํด ๋ธ๋ผ์ฐ์ ์์ ๋ชจ๋ธ์ ์ง์ ์ฌ์ฉํด ๋ณผ ์ ์์ต๋๋ค.

Diffusers ์ ์ฅ์ ํ์ผ
Diffusers ๋ชจ๋ธ ์ ์ฅ์์๋ ์ด๋ฏธ์ง๋ฅผ ์ธ์ฝ๋ฉํ๊ณ latents๋ฅผ ๋์ฝ๋ฉํ๋ ๋ณ๋ถ ์คํ ์ธ์ฝ๋, ํ ์คํธ ์ธ์ฝ๋, transformer ๋ชจ๋ธ ๋ฑ ํ์ํ ๋ชจ๋ ๋ชจ๋ธ ํ์ ๊ตฌ์ฑ ์์๋ฅผ ํฌํจํฉ๋๋ค. ์ด๋ฌํ ํ์ ๊ตฌ์ฑ ์์๋ ์ฌ๋ฌ ํด๋๋ก ๊ตฌ์ฑ๋ ๋ ์ด์์์ ์ ๋ฆฌ๋์ด ์์ต๋๋ค.

๊ฐ ํ์ ํด๋์๋ Transformers ๋ชจ๋ธ๊ณผ ์ ์ฌํ๊ฒ ๊ฐ ๊ตฌ์ฑ ์์์ ๊ฐ์ค์น์ ๊ตฌ์ฑ ํ์ผ(ํด๋นํ๋ ๊ฒฝ์ฐ)์ด ํฌํจ๋์ด ์์ต๋๋ค.
Weights๋ ์ผ๋ฐ์ ์ผ๋ก safetensors ํ์ผ๋ก ์ ์ฅ๋๋ฉฐ, configuration์ ๋ชจ๋ธ ์ํคํ ์ฒ์ ๋ํ ์ ๋ณด๋ฅผ ๋ด์ json ํ์ผ์ ๋๋ค.
๊ธฐ์กด ํ์ดํ๋ผ์ธ ์ฌ์ฉ
๋ชจ๋ diffusers ํ์ดํ๋ผ์ธ์ ํ ์ค๋ง ์ถ๊ฐํ๋ฉด ๋ฐ๋ก ์ฌ์ฉํ ์ ์์ต๋๋ค. ์์ฑ์ ์คํํ๋ ค๋ฉด ํญ์ DiffusionPipeline์์ ์์ํ๋ ๊ฒ์ ๊ถ์ฅํฉ๋๋ค:
from diffusers import DiffusionPipeline
pipeline = DiffusionPipeline.from_pretrained("stabilityai/stable-diffusion-xl-base-1.0")UNet๊ณผ ๊ฐ์ ํน์ ํ์ดํ๋ผ์ธ ๊ตฌ์ฑ ์์๋ฅผ ๋ก๋ํ๋ ค๋ฉด ๋ค์์ ์ํํ ์ ์์ต๋๋ค:
from diffusers import UNet2DConditionModel
unet = UNet2DConditionModel.from_pretrained("stabilityai/stable-diffusion-xl-base-1.0", subfolder="unet")ํ์ดํ๋ผ์ธ ๋ฐ ๋ชจ๋ธ ๊ณต์
๋ชจ๋ pipeline ํด๋์ค, ๋ชจ๋ธ ํด๋์ค, ์ค์ผ์ค๋ฌ ํด๋์ค๋ Hub์ ์์ ํ ํธํ๋ฉ๋๋ค. ๊ตฌ์ฒด์ ์ผ๋ก, from_pretrained() ๋ฉ์๋๋ฅผ ์ฌ์ฉํ์ฌ Hub์์ ์ฝ๊ฒ ๋ก๋ํ ์ ์์ผ๋ฉฐ, push_to_hub() ๋ฉ์๋๋ฅผ ์ฌ์ฉํ์ฌ ๋ค๋ฅธ ์ฌ์ฉ์์ ๊ณต์ ํ ์ ์์ต๋๋ค.
์์ธํ ๋ด์ฉ์ ๋ฌธ์๋ฅผ ํ์ธํด ์ฃผ์ธ์.
์ถ๊ฐ ๋ฆฌ์์ค
- Diffusers ๋ผ์ด๋ธ๋ฌ๋ฆฌ.
- Diffusers ๋ฌธ์.