Hugging Face์์ ๐งจ `diffusers` ์ฌ์ฉํ๊ธฐ
Hugging Face์์ ๐งจ diffusers ์ฌ์ฉํ๊ธฐ
diffusers๋ ์ด๋ฏธ์ง, ์ค๋์ค, ์ฌ์ง์ด ๋ถ์์ 3D ๊ตฌ์กฐ๊น์ง ์์ฑํ๋ ์ต์ฒจ๋จ ์ฌ์ ํ์ต diffusion ๋ชจ๋ธ์ ๋ค๋ฃจ๋ ํ์ค ๋ผ์ด๋ธ๋ฌ๋ฆฌ์์. ๊ฐ๋จํ ์ถ๋ก ์๋ฃจ์
์ ์ํ๋ ์ง์ diffusion ๋ชจ๋ธ์ ํ์ต์ํค๊ณ ์ถ๋ , Diffusers๋ ๋ ๋ค ์ง์ํ๋ ๋ชจ๋ํ ๋๊ตฌ ๋ชจ์์ด์์. ์ฑ๋ฅ๋ณด๋ค ์ฌ์ฉ์ฑ, '์ด๋ ค์ด ๊ฒ'๋ณด๋ค '๊ฐ๋จํ ๊ฒ', ์ถ์ํ๋ณด๋ค ์ปค์คํฐ๋ง์ด์ง์ ์ด์ ์ ๋ง์ถฐ ์ค๊ณ๋์ฃ .
Hub์ ์๋ ์๋ง์ diffusion ํ์ดํ๋ผ์ธ์ ๋ธ๋ผ์ฐ์ ์์ ๋ฐ๋ก ์ํํด๋ณผ ์ ์์ด์.
์ถ์ฒ: ๋ฌธ์
๋ณธ๋ฌธ
Hub์์ Diffusers ๋๋ฌ๋ณด๊ธฐ
Hub์๋ diffusers ํธํ์ด ๊ฐ๋ฅํ ํ์ดํ๋ผ์ธ์ด 10,000๊ฐ๊ฐ ๋์ด์. ๋ชจ๋ธ ํ์ด์ง ์ผ์ชฝ ํํฐ๋ก ์ฐพ์ ์ ์์ด์. Diffusion ์์คํ
์ ๋ณดํต ํ
์คํธ ์ธ์ฝ๋, UNet, VAE, ์ค์ผ์ค๋ฌ ๊ฐ์ ์ฌ๋ฌ ๊ตฌ์ฑ์์๋ก ์ด๋ฃจ์ด์ ธ ์์ด์. ์ด๋ค์ ๋จ๋
๋ชจ๋ธ์ ์๋์ง๋ง ํ์ดํ๋ผ์ธ ์ถ์ํ ๋๋ถ์ ์ถ๋ก ์ด๋ ํ์ต์ ์ฝ๊ฒ ์ฌ์ฉํ ์ ์์ด์.
๋ค์ํ ์์ ์ ์ํ diffusion ํ์ดํ๋ผ์ธ์ ์ฐพ์ ์ ์์ด์:
- ์์ฐ์ด ํ ์คํธ ํ๋กฌํํธ๋ก ์ด๋ฏธ์ง ์์ฑ (text-to-image).
- ์์ฐ์ด ํ ์คํธ ํ๋กฌํํธ๋ก ์ด๋ฏธ์ง ๋ณํ (image-to-image).
- ์์ฐ์ด ์ค๋ช ์ผ๋ก ๋น๋์ค ์์ฑ (text-to-video).
๋ค์ด๋ก๋ ์์ด ๋ธ๋ผ์ฐ์ ์์ ๋ฐ๋ก ๋ชจ๋ธ์ ์ํํด๋ณด๊ณ ์ถ๋ค๋ฉด ์ธ๋ธ๋ผ์ฐ์ ์์ ฏ ๋๋ถ์ ์ง์ ํด๋ณผ ์ ์์ด์!
Diffusers ๋ฆฌํฌ์งํ ๋ฆฌ ํ์ผ
Diffusers ๋ชจ๋ธ ๋ฆฌํฌ์งํ ๋ฆฌ์๋ ์ด๋ฏธ์ง๋ฅผ ์ธ์ฝ๋ฉํ๊ณ ์ ์ฌ(latent)๋ฅผ ๋์ฝ๋ฉํ๋ variational autoencoder, ํ ์คํธ ์ธ์ฝ๋, transformer ๋ชจ๋ธ ๋ฑ ํ์ํ ๋ชจ๋ ๋ชจ๋ธ ํ์ ๊ตฌ์ฑ์์๊ฐ ๋ค์ด ์์ด์. ์ด ํ์ ๊ตฌ์ฑ์์๋ค์ ๋ค์ค ํด๋ ๊ตฌ์กฐ๋ก ์ ๋ฆฌ๋ผ ์์ด์.
๊ฐ ํ์ ํด๋๋ Transformers ๋ชจ๋ธ์ฒ๋ผ ํด๋น ๊ตฌ์ฑ์์์ ๊ฐ์ค์น์ ์ค์ (ํด๋นํ๋ ๊ฒฝ์ฐ)์ ๋ด๊ณ ์์ด์.
๊ฐ์ค์น๋ ๋ณดํต safetensors ํ์ผ๋ก ์ ์ฅ๋๊ณ , ์ค์ ์ ๋ณดํต ๋ชจ๋ธ ์ํคํ ์ฒ ์ ๋ณด๋ฅผ ๋ด์ 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")
ํ์ดํ๋ผ์ธ๊ณผ ๋ชจ๋ธ ๊ณต์ ํ๊ธฐ
๋ชจ๋ ํ์ดํ๋ผ์ธ ํด๋์ค, ๋ชจ๋ธ ํด๋์ค, ์ค์ผ์ค๋ฌ ํด๋์ค๋ Hub์ ์์ ํ ํธํ๋ผ์. ๊ตฌ์ฒด์ ์ผ๋ก from_pretrained() ๋ฉ์๋๋ก Hub์์ ์ฝ๊ฒ ๋ก๋ํ๊ณ , push_to_hub() ๋ฉ์๋๋ก ๋ค๋ฅธ ์ฌ๋๋ค๊ณผ ๊ณต์ ํ ์ ์์ด์.
์์ธํ ๋ด์ฉ์ ๋ฌธ์๋ฅผ ํ์ธํด ์ฃผ์ธ์.
์ถ๊ฐ ์๋ฃ
- Diffusers ๋ผ์ด๋ธ๋ฌ๋ฆฌ.
- Diffusers ๋ฌธ์.
๋ ์์๋ณด๊ธฐ (Learn more)
- ํ์ฐ ๋ชจ๋ธ์ ๊ด์ฌ์ด ์๋ค๋ฉด Diffusers ๋ฌธ์๋ฅผ ์ ๋ ํด ๋ณด์ธ์.
- Transformers ๋ฌธ์์์ Hub์ ๋ค๋ฅธ ๋ชจ๋ธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ์ดํด๋ณผ ์ ์์ด์.
from_pretrained()์push_to_hub()๋ก Hub์์ ์๋ฐฉํฅ ๊ณต์ ๊ฐ ๊ธฐ๋ณธ ์ ๊ณต๋ผ์.