diff --git a/docs/source/ko/tutorials/tutorial_overview.mdx b/docs/source/ko/tutorials/tutorial_overview.mdx new file mode 100644 index 000000000000..bf9cf39f64e6 --- /dev/null +++ b/docs/source/ko/tutorials/tutorial_overview.mdx @@ -0,0 +1,23 @@ + + +# Overview + +๐Ÿงจย Diffusers์— ์˜ค์‹  ๊ฑธ ํ™˜์˜ํ•ฉ๋‹ˆ๋‹ค! ์—ฌ๋Ÿฌ๋ถ„์ด diffusion ๋ชจ๋ธ๊ณผ ์ƒ์„ฑ AI๋ฅผ ์ฒ˜์Œ ์ ‘ํ•˜๊ณ , ๋” ๋งŽ์€ ๊ฑธ ๋ฐฐ์šฐ๊ณ  ์‹ถ์œผ์…จ๋‹ค๋ฉด ์ œ๋Œ€๋กœ ์ฐพ์•„์˜ค์…จ์Šต๋‹ˆ๋‹ค. ์ด ํŠœํ† ๋ฆฌ์–ผ์€ diffusion model์„ ์—ฌ๋Ÿฌ๋ถ„์—๊ฒŒ ์  ํ‹€ํ•˜๊ฒŒ ์†Œ๊ฐœํ•˜๊ณ , ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ๊ธฐ๋ณธ ์‚ฌํ•ญ(ํ•ต์‹ฌ ๊ตฌ์„ฑ์š”์†Œ์™€ ๐Ÿงจย Diffusers ์‚ฌ์šฉ๋ฒ•)์„ ์ดํ•ดํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋˜๋„๋ก ์„ค๊ณ„๋˜์—ˆ์Šต๋‹ˆ๋‹ค. + +์—ฌ๋Ÿฌ๋ถ„์€ ์ด ํŠœํ† ๋ฆฌ์–ผ์„ ํ†ตํ•ด ๋น ๋ฅด๊ฒŒ ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•ด์„  ์ถ”๋ก  ํŒŒ์ดํ”„๋ผ์ธ์„ ์–ด๋–ป๊ฒŒ ์‚ฌ์šฉํ•ด์•ผ ํ•˜๋Š”์ง€, ๊ทธ๋ฆฌ๊ณ  ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ modular toolbox์ฒ˜๋Ÿผ ์ด์šฉํ•ด์„œ ์—ฌ๋Ÿฌ๋ถ„๋งŒ์˜ diffusion system์„ ๊ตฌ์ถ•ํ•  ์ˆ˜ ์žˆ๋„๋ก ํŒŒ์ดํ”„๋ผ์ธ์„ ๋ถ„ํ•ดํ•˜๋Š” ๋ฒ•์„ ๋ฐฐ์šธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹ค์Œ ๋‹จ์›์—์„œ๋Š” ์—ฌ๋Ÿฌ๋ถ„์ด ์›ํ•˜๋Š” ๊ฒƒ์„ ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•ด ์ž์‹ ๋งŒ์˜ diffusion model์„ ํ•™์Šตํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋ฐฐ์šฐ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. + +ํŠœํ† ๋ฆฌ์–ผ์„ ์™„๋ฃŒํ•œ๋‹ค๋ฉด ์—ฌ๋Ÿฌ๋ถ„์€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์ง์ ‘ ํƒ์ƒ‰ํ•˜๊ณ , ์ž์‹ ์˜ ํ”„๋กœ์ ํŠธ์™€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์ ์šฉํ•  ์Šคํ‚ฌ๋“ค์„ ์Šต๋“ํ•  ์ˆ˜ ์žˆ์„ ๊ฒ๋‹ˆ๋‹ค. + +[Discord](https://discord.com/invite/JfAtkvEtRb)๋‚˜ [ํฌ๋Ÿผ](https://discuss.huggingface.co/c/discussion-related-to-httpsgithubcomhuggingfacediffusers/63) ์ปค๋ฎค๋‹ˆํ‹ฐ์— ์ž์œ ๋กญ๊ฒŒ ์ฐธ์—ฌํ•ด์„œ ๋‹ค๋ฅธ ์‚ฌ์šฉ์ž์™€ ๊ฐœ๋ฐœ์ž๋“ค๊ณผ ๊ต๋ฅ˜ํ•˜๊ณ  ํ˜‘์—…ํ•ด ๋ณด์„ธ์š”! + +์ž ์ง€๊ธˆ๋ถ€ํ„ฐ diffusing์„ ์‹œ์ž‘ํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค! ๐Ÿงจ \ No newline at end of file diff --git a/docs/source/ko/using-diffusers/reusing_seeds.mdx b/docs/source/ko/using-diffusers/reusing_seeds.mdx new file mode 100644 index 000000000000..9ad27c3f2ac7 --- /dev/null +++ b/docs/source/ko/using-diffusers/reusing_seeds.mdx @@ -0,0 +1,63 @@ + + +# Deterministic(๊ฒฐ์ •์ ) ์ƒ์„ฑ์„ ํ†ตํ•œ ์ด๋ฏธ์ง€ ํ’ˆ์งˆ ๊ฐœ์„  + +์ƒ์„ฑ๋œ ์ด๋ฏธ์ง€์˜ ํ’ˆ์งˆ์„ ๊ฐœ์„ ํ•˜๋Š” ์ผ๋ฐ˜์ ์ธ ๋ฐฉ๋ฒ•์€ *๊ฒฐ์ •์  batch(๋ฐฐ์น˜) ์ƒ์„ฑ*์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด ๋ฐฉ๋ฒ•์€ ์ด๋ฏธ์ง€ batch(๋ฐฐ์น˜)๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ๋‘ ๋ฒˆ์งธ ์ถ”๋ก  ๋ผ์šด๋“œ์—์„œ ๋” ์ž์„ธํ•œ ํ”„๋กฌํ”„ํŠธ์™€ ํ•จ๊ป˜ ๊ฐœ์„ ํ•  ์ด๋ฏธ์ง€ ํ•˜๋‚˜๋ฅผ ์„ ํƒํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ํ•ต์‹ฌ์€ ์ผ๊ด„ ์ด๋ฏธ์ง€ ์ƒ์„ฑ์„ ์œ„ํ•ด ํŒŒ์ดํ”„๋ผ์ธ์— [`torch.Generator`](https://pytorch.org/docs/stable/generated/torch.Generator.html#generator) ๋ชฉ๋ก์„ ์ „๋‹ฌํ•˜๊ณ , ๊ฐ `Generator`๋ฅผ ์‹œ๋“œ์— ์—ฐ๊ฒฐํ•˜์—ฌ ์ด๋ฏธ์ง€์— ์žฌ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. + +์˜ˆ๋ฅผ ๋“ค์–ด [`runwayml/stable-diffusion-v1-5`](runwayml/stable-diffusion-v1-5)๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋‹ค์Œ ํ”„๋กฌํ”„ํŠธ์˜ ์—ฌ๋Ÿฌ ๋ฒ„์ „์„ ์ƒ์„ฑํ•ด ๋ด…์‹œ๋‹ค. + +```py +prompt = "Labrador in the style of Vermeer" +``` + +(๊ฐ€๋Šฅํ•˜๋‹ค๋ฉด) ํŒŒ์ดํ”„๋ผ์ธ์„ [`DiffusionPipeline.from_pretrained`]๋กœ ์ธ์Šคํ„ด์Šคํ™”ํ•˜์—ฌ GPU์— ๋ฐฐ์น˜ํ•ฉ๋‹ˆ๋‹ค. + +```python +>>> from diffusers import DiffusionPipeline + +>>> pipe = DiffusionPipeline.from_pretrained("runwayml/stable-diffusion-v1-5", torch_dtype=torch.float16) +>>> pipe = pipe.to("cuda") +``` + +์ด์ œ ๋„ค ๊ฐœ์˜ ์„œ๋กœ ๋‹ค๋ฅธ `Generator`๋ฅผ ์ •์˜ํ•˜๊ณ  ๊ฐ `Generator`์— ์‹œ๋“œ(`0` ~ `3`)๋ฅผ ํ• ๋‹นํ•˜์—ฌ ๋‚˜์ค‘์— ํŠน์ • ์ด๋ฏธ์ง€์— ๋Œ€ํ•ด `Generator`๋ฅผ ์žฌ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ฉ๋‹ˆ๋‹ค. + +```python +>>> import torch + +>>> generator = [torch.Generator(device="cuda").manual_seed(i) for i in range(4)] +``` + +์ด๋ฏธ์ง€๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ์‚ดํŽด๋ด…๋‹ˆ๋‹ค. + +```python +>>> images = pipe(prompt, generator=generator, num_images_per_prompt=4).images +>>> images +``` + +![img](https://huggingface.co/datasets/diffusers/diffusers-images-docs/resolve/main/reusabe_seeds.jpg) + +์ด ์˜ˆ์ œ์—์„œ๋Š” ์ฒซ ๋ฒˆ์งธ ์ด๋ฏธ์ง€๋ฅผ ๊ฐœ์„ ํ–ˆ์ง€๋งŒ ์‹ค์ œ๋กœ๋Š” ์›ํ•˜๋Š” ๋ชจ๋“  ์ด๋ฏธ์ง€๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค(์‹ฌ์ง€์–ด ๋‘ ๊ฐœ์˜ ๋ˆˆ์ด ์žˆ๋Š” ์ด๋ฏธ์ง€๋„!). ์ฒซ ๋ฒˆ์งธ ์ด๋ฏธ์ง€์—์„œ๋Š” ์‹œ๋“œ๊ฐ€ '0'์ธ '์ƒ์„ฑ๊ธฐ'๋ฅผ ์‚ฌ์šฉํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— ๋‘ ๋ฒˆ์งธ ์ถ”๋ก  ๋ผ์šด๋“œ์—์„œ๋Š” ์ด '์ƒ์„ฑ๊ธฐ'๋ฅผ ์žฌ์‚ฌ์šฉํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด๋ฏธ์ง€์˜ ํ’ˆ์งˆ์„ ๊ฐœ์„ ํ•˜๋ ค๋ฉด ํ”„๋กฌํ”„ํŠธ์— ๋ช‡ ๊ฐ€์ง€ ํ…์ŠคํŠธ๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค: + +```python +prompt = [prompt + t for t in [", highly realistic", ", artsy", ", trending", ", colorful"]] +generator = [torch.Generator(device="cuda").manual_seed(0) for i in range(4)] +``` + +์‹œ๋“œ๊ฐ€ `0`์ธ ์ œ๋„ˆ๋ ˆ์ดํ„ฐ 4๊ฐœ๋ฅผ ์ƒ์„ฑํ•˜๊ณ , ์ด์ „ ๋ผ์šด๋“œ์˜ ์ฒซ ๋ฒˆ์งธ ์ด๋ฏธ์ง€์ฒ˜๋Ÿผ ๋ณด์ด๋Š” ๋‹ค๋ฅธ ์ด๋ฏธ์ง€ batch(๋ฐฐ์น˜)๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค! + +```python +>>> images = pipe(prompt, generator=generator).images +>>> images +``` + +![img](https://huggingface.co/datasets/diffusers/diffusers-images-docs/resolve/main/reusabe_seeds_2.jpg)