1
0
mirror of https://github.com/huggingface/diffusers.git synced 2026-01-27 17:22:53 +03:00

Reflect few contributions on contribution.md that were not reflected on #8294 (#8938)

* incorrect_number_fix

* add_TOC

* Update docs/source/ko/conceptual/contribution.md

Co-authored-by: Jihun Lim <31366038+heuristicwave@users.noreply.github.com>

* Update docs/source/ko/conceptual/contribution.md

Co-authored-by: Jihun Lim <31366038+heuristicwave@users.noreply.github.com>

* fix: manual edits

* fix: manual edtis

* fix: manual edits

* Update docs/source/ko/conceptual/contribution.md

Co-authored-by: Jihun Lim <31366038+heuristicwave@users.noreply.github.com>

* Update docs/source/ko/conceptual/contribution.md

Co-authored-by: Jihun Lim <31366038+heuristicwave@users.noreply.github.com>

* Update docs/source/ko/conceptual/contribution.md

Co-authored-by: Jihun Lim <31366038+heuristicwave@users.noreply.github.com>

* Update docs/source/ko/conceptual/contribution.md

Co-authored-by: Jihun Lim <31366038+heuristicwave@users.noreply.github.com>

* Update docs/source/ko/conceptual/contribution.md

Co-authored-by: Jihun Lim <31366038+heuristicwave@users.noreply.github.com>

* Update docs/source/ko/conceptual/contribution.md

Co-authored-by: Jihun Lim <31366038+heuristicwave@users.noreply.github.com>

* Update docs/source/ko/conceptual/contribution.md

Co-authored-by: Jihun Lim <31366038+heuristicwave@users.noreply.github.com>

* Update docs/source/ko/conceptual/contribution.md

Co-authored-by: Jihun Lim <31366038+heuristicwave@users.noreply.github.com>

* Update docs/source/ko/conceptual/contribution.md

Co-authored-by: Jihun Lim <31366038+heuristicwave@users.noreply.github.com>

* fix: manual edits

---------

Co-authored-by: Jihun Lim <31366038+heuristicwave@users.noreply.github.com>
This commit is contained in:
Jiwook Han
2024-08-20 01:54:38 +09:00
committed by GitHub
parent 9ab80a99a4
commit d72bbc68a9

View File

@@ -10,7 +10,7 @@ an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express o
specific language governing permissions and limitations under the License.
-->
# Diffusers์— ๊ธฐ์—ฌํ•˜๋Š” ๋ฐฉ๋ฒ• ๐Ÿงจ
# Diffusers์— ๊ธฐ์—ฌํ•˜๋Š” ๋ฐฉ๋ฒ• ๐Ÿงจ [[how-to-contribute-to-diffusers-]]
์˜คํ”ˆ ์†Œ์Šค ์ปค๋ฎค๋‹ˆํ‹ฐ์—์„œ์˜ ๊ธฐ์—ฌ๋ฅผ ํ™˜์˜ํ•ฉ๋‹ˆ๋‹ค! ๋ˆ„๊ตฌ๋‚˜ ์ฐธ์—ฌํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์ฝ”๋“œ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์งˆ๋ฌธ์— ๋‹ต๋ณ€ํ•˜๊ฑฐ๋‚˜ ๋ฌธ์„œ๋ฅผ ๊ฐœ์„ ํ•˜๋Š” ๋“ฑ ๋ชจ๋“  ์œ ํ˜•์˜ ์ฐธ์—ฌ๊ฐ€ ๊ฐ€์น˜ ์žˆ๊ณ  ๊ฐ์‚ฌํžˆ ์—ฌ๊ฒจ์ง‘๋‹ˆ๋‹ค. ์งˆ๋ฌธ์— ๋‹ต๋ณ€ํ•˜๊ณ  ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค์„ ๋„์™€์ฃผ๋ฉฐ ์†Œํ†ตํ•˜๊ณ  ๋ฌธ์„œ๋ฅผ ๊ฐœ์„ ํ•˜๋Š” ๊ฒƒ์€ ๋ชจ๋‘ ์ปค๋ฎค๋‹ˆํ‹ฐ์—๊ฒŒ ํฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๊ด€์‹ฌ์ด ์žˆ๋‹ค๋ฉด ๋‘๋ ค์›Œํ•˜์ง€ ๋ง๊ณ  ์ฐธ์—ฌํ•ด๋ณด์„ธ์š”!
@@ -18,9 +18,9 @@ specific language governing permissions and limitations under the License.
์–ด๋–ค ๋ฐฉ์‹์œผ๋กœ๋“  ๊ธฐ์—ฌํ•˜๋ ค๋Š” ๊ฒฝ์šฐ, ์šฐ๋ฆฌ๋Š” ๊ฐœ๋ฐฉ์ ์ด๊ณ  ํ™˜์˜ํ•˜๋ฉฐ ์นœ๊ทผํ•œ ์ปค๋ฎค๋‹ˆํ‹ฐ์˜ ์ผ๋ถ€๊ฐ€ ๋˜๊ธฐ ์œ„ํ•ด ๋…ธ๋ ฅํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ์˜ [ํ–‰๋™ ๊ฐ•๋ น](https://github.com/huggingface/diffusers/blob/main/CODE_OF_CONDUCT.md)์„ ์ฝ๊ณ  ์ƒํ˜ธ ์ž‘์šฉ ์ค‘์— ์ด๋ฅผ ์กด์ค‘ํ•˜๋„๋ก ์ฃผ์˜ํ•ด์ฃผ์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค. ๋˜ํ•œ ํ”„๋กœ์ ํŠธ๋ฅผ ์•ˆ๋‚ดํ•˜๋Š” [์œค๋ฆฌ ์ง€์นจ](https://huggingface.co/docs/diffusers/conceptual/ethical_guidelines)์— ์ต์ˆ™ํ•ด์ง€๊ณ  ๋™์ผํ•œ ํˆฌ๋ช…์„ฑ๊ณผ ์ฑ…์ž„์„ฑ์˜ ์›์น™์„ ์ค€์ˆ˜ํ•ด์ฃผ์‹œ๊ธฐ๋ฅผ ๋ถ€ํƒ๋“œ๋ฆฝ๋‹ˆ๋‹ค.
์šฐ๋ฆฌ๋Š” ์ปค๋ฎค๋‹ˆํ‹ฐ๋กœ๋ถ€ํ„ฐ์˜ ํ”ผ๋“œ๋ฐฑ์„ ๋งค์šฐ ์ค‘์š”ํ•˜๊ฒŒ ์ƒ๊ฐํ•˜๋ฏ€๋กœ, ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๊ฐœ์„ ํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋  ๊ฐ€์น˜ ์žˆ๋Š” ํ”ผ๋“œ๋ฐฑ์ด ์žˆ๋‹ค๊ณ  ์ƒ๊ฐ๋˜๋ฉด ๋ง์„ค์ด์ง€ ๋ง๊ณ  ์˜๊ฒฌ์„ ์ œ์‹œํ•ด์ฃผ์„ธ์š” - ๋ชจ๋“  ๋ฉ”์‹œ์ง€, ๋Œ“๊ธ€, ์ด์Šˆ, ํ’€ ๋ฆฌํ€˜์ŠคํŠธ(PR)๋Š” ์ฝํžˆ๊ณ  ๊ณ ๋ ค๋ฉ๋‹ˆ๋‹ค.
์šฐ๋ฆฌ๋Š” ์ปค๋ฎค๋‹ˆํ‹ฐ๋กœ๋ถ€ํ„ฐ์˜ ํ”ผ๋“œ๋ฐฑ์„ ๋งค์šฐ ์ค‘์š”ํ•˜๊ฒŒ ์ƒ๊ฐํ•˜๋ฏ€๋กœ, ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๊ฐœ์„ ํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋  ๊ฐ€์น˜ ์žˆ๋Š” ํ”ผ๋“œ๋ฐฑ์ด ์žˆ๋‹ค๊ณ  ์ƒ๊ฐ๋˜๋ฉด ๋ง์„ค์ด์ง€ ๋ง๊ณ  ์˜๊ฒฌ์„ ์ œ์‹œํ•ด์ฃผ์„ธ์š” - ๋ชจ๋“  ๋ฉ”์‹œ์ง€, ๋Œ“๊ธ€, ์ด์Šˆ, Pull Request(PR)๋Š” ์ฝํžˆ๊ณ  ๊ณ ๋ ค๋ฉ๋‹ˆ๋‹ค.
## ๊ฐœ์š”
## ๊ฐœ์š” [[overview]]
์ด์Šˆ์— ์žˆ๋Š” ์งˆ๋ฌธ์— ๋‹ต๋ณ€ํ•˜๋Š” ๊ฒƒ์—์„œ๋ถ€ํ„ฐ ์ฝ”์–ด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์— ์ƒˆ๋กœ์šด diffusion ๋ชจ๋ธ์„ ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒƒ๊นŒ์ง€ ๋‹ค์–‘ํ•œ ๋ฐฉ๋ฒ•์œผ๋กœ ๊ธฐ์—ฌ๋ฅผ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
@@ -38,9 +38,9 @@ specific language governing permissions and limitations under the License.
์•ž์„œ ๋งํ•œ ๋Œ€๋กœ, **๋ชจ๋“  ๊ธฐ์—ฌ๋Š” ์ปค๋ฎค๋‹ˆํ‹ฐ์—๊ฒŒ ๊ฐ€์น˜๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค**. ์ด์–ด์ง€๋Š” ๋ถ€๋ถ„์—์„œ ๊ฐ ๊ธฐ์—ฌ์— ๋Œ€ํ•ด ์กฐ๊ธˆ ๋” ์ž์„ธํžˆ ์„ค๋ช…ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.
4๋ถ€ํ„ฐ 9๊นŒ์ง€์˜ ๋ชจ๋“  ๊ธฐ์—ฌ์—๋Š” PR์„ ์—ด์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. [PR์„ ์—ด๊ธฐ](#how-to-open-a-pr)์—์„œ ์ž์„ธํžˆ ์„ค๋ช…๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.
4๋ถ€ํ„ฐ 9๊นŒ์ง€์˜ ๋ชจ๋“  ๊ธฐ์—ฌ์—๋Š” Pull Request์„ ์—ด์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. [Pull Request ์—ด๊ธฐ](#how-to-open-a-pr)์—์„œ ์ž์„ธํžˆ ์„ค๋ช…๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.
### 1. Diffusers ํ† ๋ก  ํฌ๋Ÿผ์ด๋‚˜ Diffusers Discord์—์„œ ์งˆ๋ฌธํ•˜๊ณ  ๋‹ต๋ณ€ํ•˜๊ธฐ
### 1. Diffusers ํ† ๋ก  ํฌ๋Ÿผ์ด๋‚˜ Diffusers Discord์—์„œ ์งˆ๋ฌธํ•˜๊ณ  ๋‹ต๋ณ€ํ•˜๊ธฐ [[1-asking-and-answering-questions-on-the-diffusers-discussion-forum-or-on-the-diffusers-discord]]
Diffusers ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์™€ ๊ด€๋ จ๋œ ๋ชจ๋“  ์งˆ๋ฌธ์ด๋‚˜ ์˜๊ฒฌ์€ [ํ† ๋ก  ํฌ๋Ÿผ](https://discuss.huggingface.co/c/discussion-related-to-httpsgithubcomhuggingfacediffusers/63)์ด๋‚˜ [Discord](https://discord.gg/G7tWnz98XR)์—์„œ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์งˆ๋ฌธ๊ณผ ์˜๊ฒฌ์—๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋‚ด์šฉ์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค(ํ•˜์ง€๋งŒ ์ด์— ๊ตญํ•œ๋˜์ง€๋Š” ์•Š์Šต๋‹ˆ๋‹ค):
- ์ง€์‹์„ ๊ณต์œ ํ•˜๊ธฐ ์œ„ํ•ด์„œ ํ›ˆ๋ จ ๋˜๋Š” ์ถ”๋ก  ์‹คํ—˜์— ๋Œ€ํ•œ ๊ฒฐ๊ณผ ๋ณด๊ณ 
@@ -54,7 +54,7 @@ Diffusers ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์™€ ๊ด€๋ จ๋œ ๋ชจ๋“  ์งˆ๋ฌธ์ด๋‚˜ ์˜๊ฒฌ์€ [ํ† ๋ก  ํฌ
- Diffusion ๋ชจ๋ธ์— ๋Œ€ํ•œ ์œค๋ฆฌ์  ์งˆ๋ฌธ
- ...
ํฌ๋Ÿผ์ด๋‚˜ Discord์—์„œ ์งˆ๋ฌธ์„ ํ•˜๋ฉด ์ปค๋ฎค๋‹ˆํ‹ฐ๊ฐ€ ์ง€์‹์„ ๊ณต๊ฐœ์ ์œผ๋กœ ๊ณต์œ ํ•˜๋„๋ก ์žฅ๋ ค๋˜๋ฉฐ, ๋ฏธ๋ž˜์— ๋™์ผํ•œ ์งˆ๋ฌธ์„ ๊ฐ€์ง„ ์ดˆ๋ณด์ž์—๊ฒŒ๋„ ๋„์›€์ด ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๊ถ๊ธˆํ•œ ์งˆ๋ฌธ์€ ์–ธ์ œ๋“ ์ง€ ํ•˜์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค.
ํฌ๋Ÿผ์ด๋‚˜ Discord์—์„œ ์งˆ๋ฌธ์„ ํ•˜๋ฉด ์ปค๋ฎค๋‹ˆํ‹ฐ๊ฐ€ ์ง€์‹์„ ๊ณต๊ฐœ์ ์œผ๋กœ ๊ณต์œ ํ•˜๋„๋ก ์žฅ๋ ค๋˜๋ฉฐ, ํ–ฅํ›„ ๋™์ผํ•œ ์งˆ๋ฌธ์„ ๊ฐ€์ง„ ์ดˆ๋ณด์ž์—๊ฒŒ๋„ ๋„์›€์ด ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๊ถ๊ธˆํ•œ ์งˆ๋ฌธ์€ ์–ธ์ œ๋“ ์ง€ ํ•˜์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค.
๋˜ํ•œ, ์ด๋Ÿฌํ•œ ์งˆ๋ฌธ์— ๋‹ต๋ณ€ํ•˜๋Š” ๊ฒƒ์€ ์ปค๋ฎค๋‹ˆํ‹ฐ์—๊ฒŒ ๋งค์šฐ ํฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค. ์™œ๋ƒํ•˜๋ฉด ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ๋ชจ๋‘๊ฐ€ ํ•™์Šตํ•  ์ˆ˜ ์žˆ๋Š” ๊ณต๊ฐœ์ ์ธ ์ง€์‹์„ ๋ฌธ์„œํ™”ํ•˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.
**์ฃผ์˜**ํ•˜์‹ญ์‹œ์˜ค. ์งˆ๋ฌธ์ด๋‚˜ ๋‹ต๋ณ€์— ํˆฌ์žํ•˜๋Š” ๋…ธ๋ ฅ์ด ๋งŽ์„์ˆ˜๋ก ๊ณต๊ฐœ์ ์œผ๋กœ ๋ฌธ์„œํ™”๋œ ์ง€์‹์˜ ํ’ˆ์งˆ์ด ๋†’์•„์ง‘๋‹ˆ๋‹ค. ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ, ์ž˜ ์ •์˜๋˜๊ณ  ์ž˜ ๋‹ต๋ณ€๋œ ์งˆ๋ฌธ์€ ๋ชจ๋‘์—๊ฒŒ ์ ‘๊ทผ ๊ฐ€๋Šฅํ•œ ๊ณ ํ’ˆ์งˆ ์ง€์‹ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ๋งŒ๋“ค์–ด์ค๋‹ˆ๋‹ค. ๋ฐ˜๋ฉด์— ์ž˜๋ชป๋œ ์งˆ๋ฌธ์ด๋‚˜ ๋‹ต๋ณ€์€ ๊ณต๊ฐœ ์ง€์‹ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ์ „๋ฐ˜์ ์ธ ํ’ˆ์งˆ์„ ๋‚ฎ์ถœ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
@@ -64,9 +64,9 @@ Diffusers ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์™€ ๊ด€๋ จ๋œ ๋ชจ๋“  ์งˆ๋ฌธ์ด๋‚˜ ์˜๊ฒฌ์€ [ํ† ๋ก  ํฌ
[*ํฌ๋Ÿผ*](https://discuss.huggingface.co/c/discussion-related-to-httpsgithubcomhuggingfacediffusers/63)์€ ๊ตฌ๊ธ€๊ณผ ๊ฐ™์€ ๊ฒ€์ƒ‰ ์—”์ง„์—์„œ ๋” ์ž˜ ์ƒ‰์ธํ™”๋ฉ๋‹ˆ๋‹ค. ๊ฒŒ์‹œ๋ฌผ์€ ์ธ๊ธฐ์— ๋”ฐ๋ผ ์ˆœ์œ„๊ฐ€ ๋งค๊ฒจ์ง€๋ฉฐ, ์‹œ๊ฐ„์ˆœ์œผ๋กœ ์ •๋ ฌ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์ด์ „์— ๊ฒŒ์‹œํ•œ ์งˆ๋ฌธ๊ณผ ๋‹ต๋ณ€์„ ์‰ฝ๊ฒŒ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
๋˜ํ•œ, ํฌ๋Ÿผ์— ๊ฒŒ์‹œ๋œ ์งˆ๋ฌธ๊ณผ ๋‹ต๋ณ€์€ ์‰ฝ๊ฒŒ ๋งํฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
๋ฐ˜๋ฉด *Discord*๋Š” ์ฑ„ํŒ… ํ˜•์‹์œผ๋กœ ๋˜์–ด ์žˆ์–ด ๋น ๋ฅธ ๋Œ€ํ™”๋ฅผ ์œ ๋„ํ•ฉ๋‹ˆ๋‹ค.
์งˆ๋ฌธ์— ๋Œ€ํ•œ ๋‹ต๋ณ€์„ ๋น ๋ฅด๊ฒŒ ๋ฐ›์„ ์ˆ˜๋Š” ์žˆ๊ฒ ์ง€๋งŒ, ์‹œ๊ฐ„์ด ์ง€๋‚˜๋ฉด ์งˆ๋ฌธ์ด ๋” ์ด์ƒ ๋ณด์ด์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ, Discord์—์„œ ์ด์ „์— ๊ฒŒ์‹œ๋œ ์ •๋ณด๋ฅผ ์ฐพ๋Š” ๊ฒƒ์€ ํ›จ์”ฌ ์–ด๋ ต์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ํฌ๋Ÿผ์„ ์‚ฌ์šฉํ•˜์—ฌ ๊ณ ํ’ˆ์งˆ์˜ ์งˆ๋ฌธ๊ณผ ๋‹ต๋ณ€์„ ํ•˜์—ฌ ์ปค๋ฎค๋‹ˆํ‹ฐ๋ฅผ ์œ„ํ•œ ์˜ค๋ž˜ ์ง€์†๋˜๋Š” ์ง€์‹์„ ๋งŒ๋“ค๊ธฐ๋ฅผ ๊ถŒ์žฅํ•ฉ๋‹ˆ๋‹ค. Discord์—์„œ์˜ ํ† ๋ก ์ด ๋งค์šฐ ํฅ๋ฏธ๋กœ์šด ๋‹ต๋ณ€๊ณผ ๊ฒฐ๋ก ์„ ์ด๋Œ์–ด๋‚ด๋Š” ๊ฒฝ์šฐ, ํ•ด๋‹น ์ •๋ณด๋ฅผ ํฌ๋Ÿผ์— ๊ฒŒ์‹œํ•˜์—ฌ ๋ฏธ๋ž˜ ๋…์ž๋“ค์—๊ฒŒ ๋” ์‰ฝ๊ฒŒ ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ๋„๋ก ๊ถŒ์žฅํ•ฉ๋‹ˆ๋‹ค.
์งˆ๋ฌธ์— ๋Œ€ํ•œ ๋‹ต๋ณ€์„ ๋น ๋ฅด๊ฒŒ ๋ฐ›์„ ์ˆ˜๋Š” ์žˆ๊ฒ ์ง€๋งŒ, ์‹œ๊ฐ„์ด ์ง€๋‚˜๋ฉด ์งˆ๋ฌธ์ด ๋” ์ด์ƒ ๋ณด์ด์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ, Discord์—์„œ ์ด์ „์— ๊ฒŒ์‹œ๋œ ์ •๋ณด๋ฅผ ์ฐพ๋Š” ๊ฒƒ์€ ํ›จ์”ฌ ์–ด๋ ต์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ํฌ๋Ÿผ์„ ์‚ฌ์šฉํ•˜์—ฌ ๊ณ ํ’ˆ์งˆ์˜ ์งˆ๋ฌธ๊ณผ ๋‹ต๋ณ€์„ ํ•˜์—ฌ ์ปค๋ฎค๋‹ˆํ‹ฐ๋ฅผ ์œ„ํ•œ ์˜ค๋ž˜ ์ง€์†๋˜๋Š” ์ง€์‹์„ ๋งŒ๋“ค๊ธฐ๋ฅผ ๊ถŒ์žฅํ•ฉ๋‹ˆ๋‹ค. Discord์—์„œ์˜ ํ† ๋ก ์ด ๋งค์šฐ ํฅ๋ฏธ๋กœ์šด ๋‹ต๋ณ€๊ณผ ๊ฒฐ๋ก ์„ ์ด๋Œ์–ด๋‚ด๋Š” ๊ฒฝ์šฐ, ํ•ด๋‹น ์ •๋ณด๋ฅผ ํฌ๋Ÿผ์— ๊ฒŒ์‹œํ•˜์—ฌ ํ–ฅํ›„ ๋…์ž๋“ค์—๊ฒŒ ๋” ์‰ฝ๊ฒŒ ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ๋„๋ก ๊ถŒ์žฅํ•ฉ๋‹ˆ๋‹ค.
### 2. GitHub ์ด์Šˆ ํƒญ์—์„œ ์ƒˆ๋กœ์šด ์ด์Šˆ ์—ด๊ธฐ
### 2. GitHub ์ด์Šˆ ํƒญ์—์„œ ์ƒˆ๋กœ์šด ์ด์Šˆ ์—ด๊ธฐ [[2-opening-new-issues-on-the-github-issues-tab]]
๐Ÿงจ Diffusers ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” ์‚ฌ์šฉ์ž๋“ค์ด ๋งˆ์ฃผ์น˜๋Š” ๋ฌธ์ œ๋ฅผ ์•Œ๋ ค์ฃผ๋Š” ๋•๋ถ„์— ๊ฒฌ๊ณ ํ•˜๊ณ  ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์ด์Šˆ๋ฅผ ๋ณด๊ณ ํ•ด์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.
@@ -81,53 +81,52 @@ Diffusers ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์™€ ๊ด€๋ จ๋œ ๋ชจ๋“  ์งˆ๋ฌธ์ด๋‚˜ ์˜๊ฒฌ์€ [ํ† ๋ก  ํฌ
- ์ด์Šˆ๊ฐ€ ์ตœ์‹  Diffusers ๋ฒ„์ „์œผ๋กœ ์—…๋ฐ์ดํŠธํ•˜๋ฉด ํ•ด๊ฒฐ๋  ์ˆ˜ ์žˆ๋Š”์ง€ ํ™•์ธํ•ด์ฃผ์„ธ์š”. ์ด์Šˆ๋ฅผ ๊ฒŒ์‹œํ•˜๊ธฐ ์ „์— `python -c "import diffusers; print(diffusers.__version__)"` ๋ช…๋ น์„ ์‹คํ–‰ํ•˜์—ฌ ํ˜„์žฌ ์‚ฌ์šฉ ์ค‘์ธ Diffusers ๋ฒ„์ „์ด ์ตœ์‹  ๋ฒ„์ „๊ณผ ์ผ์น˜ํ•˜๊ฑฐ๋‚˜ ๋” ๋†’์€์ง€ ํ™•์ธํ•ด์ฃผ์„ธ์š”.
- ์ƒˆ๋กœ์šด ์ด์Šˆ๋ฅผ ์—ด ๋•Œ ํˆฌ์žํ•˜๋Š” ๋…ธ๋ ฅ์ด ๋งŽ์„์ˆ˜๋ก ๋‹ต๋ณ€์˜ ํ’ˆ์งˆ์ด ๋†’์•„์ง€๊ณ  Diffusers ์ด์Šˆ ์ „์ฒด์˜ ํ’ˆ์งˆ๋„ ํ–ฅ์ƒ๋ฉ๋‹ˆ๋‹ค.
#### 2.1 ์žฌํ˜„๊ฐ€๋Šฅํ•˜๊ณ  ์ตœ์†Œํ•œ์ธ ๋ฒ„๊ทธ ๋ฆฌํฌํŠธ
#### 2.1 ์žฌํ˜„ ๊ฐ€๋Šฅํ•œ ์ตœ์†Œํ•œ์˜ ๋ฒ„๊ทธ ๋ฆฌํฌํŠธ [[21-reproducible-minimal-bug-reports]]
์ƒˆ๋กœ์šด ์ด์Šˆ๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋‚ด์šฉ์„ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค.
๋ฒ„๊ทธ ๋ณด๊ณ ์„œ๋Š” ํ•ญ์ƒ ์žฌํ˜„ ๊ฐ€๋Šฅํ•œ ์ฝ”๋“œ ์กฐ๊ฐ์„ ํฌํ•จํ•˜๊ณ  ๊ฐ€๋Šฅํ•œ ํ•œ ์ตœ์†Œํ•œ์ด์–ด์•ผ ํ•˜๋ฉฐ ๊ฐ„๊ฒฐํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
๋ฒ„๊ทธ ๋ฆฌํฌํŠธ๋Š” ํ•ญ์ƒ ์žฌํ˜„ ๊ฐ€๋Šฅํ•œ ์ฝ”๋“œ ์กฐ๊ฐ์„ ํฌํ•จํ•˜๊ณ  ๊ฐ€๋Šฅํ•œ ํ•œ ์ตœ์†Œํ•œ์ด์–ด์•ผ ํ•˜๋ฉฐ ๊ฐ„๊ฒฐํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
์ž์„ธํžˆ ๋งํ•˜๋ฉด:
- ๋ฒ„๊ทธ๋ฅผ ๊ฐ€๋Šฅํ•œ ํ•œ ์ขํ˜€์•ผ ํ•ฉ๋‹ˆ๋‹ค. **์ „์ฒด ์ฝ”๋“œ ํŒŒ์ผ์„ ๊ทธ๋ƒฅ ๋˜์ง€์ง€ ๋งˆ์„ธ์š”**.
- ์ฝ”๋“œ์˜ ์„œ์‹์„ ์ง€์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
- Diffusers๊ฐ€ ์˜์กดํ•˜๋Š” ์™ธ๋ถ€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์ œ์™ธํ•œ ๋‹ค๋ฅธ ์™ธ๋ถ€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” ํฌํ•จํ•˜์ง€ ๋งˆ์‹ญ์‹œ์˜ค.
- **๋ฐ˜๋“œ์‹œ** ํ™˜๊ฒฝ์— ๋Œ€ํ•œ ๋ชจ๋“  ํ•„์š”ํ•œ ์ •๋ณด๋ฅผ ์ œ๊ณตํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ์œ„ํ•ด ์‰˜์—์„œ `diffusers-cli env`๋ฅผ ์‹คํ–‰ํ•˜๊ณ  ํ‘œ์‹œ๋œ ์ •๋ณด๋ฅผ ์ด์Šˆ์— ๋ณต์‚ฌํ•˜์—ฌ ๋ถ™์—ฌ๋„ฃ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
- ์ด์Šˆ๋ฅผ ์„ค๋ช…ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋…์ž๊ฐ€ ๋ฌธ์ œ๊ฐ€ ๋ฌด์—‡์ด๋ฉฐ ์™œ ๋ฌธ์ œ์ธ์ง€ ๋ชจ๋ฅด๋ฉด ํ•ด๊ฒฐํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
- **ํ•ญ์ƒ** ๋…์ž๊ฐ€ ๊ฐ€๋Šฅํ•œ ํ•œ ์ ์€ ๋…ธ๋ ฅ์œผ๋กœ ๋ฌธ์ œ๋ฅผ ์žฌํ˜„ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ฝ”๋“œ ์กฐ๊ฐ์ด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ์—†๊ฑฐ๋‚˜ ์ •์˜๋˜์ง€ ์•Š์€ ๋ณ€์ˆ˜ ๋•Œ๋ฌธ์— ์‹คํ–‰๋˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ ๋…์ž๊ฐ€ ๋„์›€์„ ์ค„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์žฌํ˜„ ๊ฐ€๋Šฅํ•œ ์ฝ”๋“œ ์กฐ๊ฐ์ด ๊ฐ€๋Šฅํ•œ ํ•œ ์ตœ์†Œํ™”๋˜๊ณ  ๊ฐ„๋‹จํ•œ Python ์…ธ์— ๋ณต์‚ฌํ•˜์—ฌ ๋ถ™์—ฌ๋„ฃ์„ ์ˆ˜ ์žˆ๋„๋ก ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
- **ํ•ญ์ƒ** ์‚ฌ์šฉ์ž ํ™˜๊ฒฝ์— ๋Œ€ํ•œ ๋ชจ๋“  ํ•„์š”ํ•œ ์ •๋ณด๋ฅผ ์ œ๊ณตํ•˜์„ธ์š”. ์ด๋ฅผ ์œ„ํ•ด ์‰˜์—์„œ `diffusers-cli env`๋ฅผ ์‹คํ–‰ํ•˜๊ณ  ํ‘œ์‹œ๋œ ์ •๋ณด๋ฅผ ์ด์Šˆ์— ๋ณต์‚ฌํ•˜์—ฌ ๋ถ™์—ฌ๋„ฃ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
- ์ด์Šˆ๋ฅผ ์„ค๋ช…ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋…์ž๊ฐ€ ๋ฌธ์ œ๊ฐ€ ๋ฌด์—‡์ธ์ง€, ์™œ ๋ฌธ์ œ๊ฐ€ ๋˜๋Š”์ง€ ๋ชจ๋ฅธ๋‹ค๋ฉด ์ด์Šˆ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
- **ํ•ญ์ƒ** ๋…์ž๊ฐ€ ๊ฐ€๋Šฅํ•œ ํ•œ ์ ์€ ๋…ธ๋ ฅ์œผ๋กœ ๋ฌธ์ œ๋ฅผ ์žฌํ˜„ํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ฝ”๋“œ ์กฐ๊ฐ์ด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ์—†๊ฑฐ๋‚˜ ์ •์˜๋˜์ง€ ์•Š์€ ๋ณ€์ˆ˜ ๋•Œ๋ฌธ์— ์‹คํ–‰๋˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ ๋…์ž๊ฐ€ ๋„์›€์„ ์ค„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์žฌํ˜„ ๊ฐ€๋Šฅํ•œ ์ฝ”๋“œ ์กฐ๊ฐ์ด ๊ฐ€๋Šฅํ•œ ํ•œ ์ตœ์†Œํ™”๋˜๊ณ  ๊ฐ„๋‹จํ•œ Python ์…ธ์— ๋ณต์‚ฌํ•˜์—ฌ ๋ถ™์—ฌ๋„ฃ์„ ์ˆ˜ ์žˆ๋„๋ก ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
- ๋ฌธ์ œ๋ฅผ ์žฌํ˜„ํ•˜๊ธฐ ์œ„ํ•ด ๋ชจ๋ธ๊ณผ/๋˜๋Š” ๋ฐ์ดํ„ฐ์…‹์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ ๋…์ž๊ฐ€ ํ•ด๋‹น ๋ชจ๋ธ์ด๋‚˜ ๋ฐ์ดํ„ฐ์…‹์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋ชจ๋ธ์ด๋‚˜ ๋ฐ์ดํ„ฐ์…‹์„ [Hub](https://huggingface.co)์— ์—…๋กœ๋“œํ•˜์—ฌ ์‰ฝ๊ฒŒ ๋‹ค์šด๋กœ๋“œํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฌธ์ œ ์žฌํ˜„์„ ๊ฐ€๋Šฅํ•œ ํ•œ ์‰ฝ๊ฒŒํ•˜๊ธฐ ์œ„ํ•ด ๋ชจ๋ธ๊ณผ ๋ฐ์ดํ„ฐ์…‹์„ ๊ฐ€๋Šฅํ•œ ํ•œ ์ž‘๊ฒŒ ์œ ์ง€ํ•˜๋ ค๊ณ  ๋…ธ๋ ฅํ•˜์„ธ์š”.
์ž์„ธํ•œ ๋‚ด์šฉ์€ [์ข‹์€ ์ด์Šˆ ์ž‘์„ฑ ๋ฐฉ๋ฒ•](#how-to-write-a-good-issue) ์„น์…˜์„ ์ฐธ์กฐํ•˜์„ธ์š”.
๋ฒ„๊ทธ ๋ณด๊ณ ์„œ๋ฅผ ์—ด๋ ค๋ฉด [์—ฌ๊ธฐ](https://github.com/huggingface/diffusers/issues/new?assignees=&labels=bug&projects=&template=bug-report.yml)๋ฅผ ํด๋ฆญํ•˜์„ธ์š”.
๋ฒ„๊ทธ ๋ฆฌํฌํŠธ๋ฅผ ์—ด๋ ค๋ฉด [์—ฌ๊ธฐ](https://github.com/huggingface/diffusers/issues/new?assignees=&labels=bug&projects=&template=bug-report.yml)๋ฅผ ํด๋ฆญํ•˜์„ธ์š”.
#### 2.2. ๊ธฐ๋Šฅ ์š”์ฒญ
#### 2.2. ๊ธฐ๋Šฅ ์š”์ฒญ [[22-feature-requests]]
์„ธ๊ณ„์ ์ธ ๊ธฐ๋Šฅ ์š”์ฒญ์€ ๋‹ค์Œ ์‚ฌํ•ญ์„ ๋‹ค๋ฃน๋‹ˆ๋‹ค:
1. ๋จผ์ € ๋™๊ธฐ๋ถ€์—ฌ:
* ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์™€ ๊ด€๋ จ๋œ ๋ฌธ์ œ/๋ถˆ๋งŒ์ด ์žˆ๋Š”๊ฐ€์š”? ๊ทธ๋ ‡๋‹ค๋ฉด ์™œ ๊ทธ๋Ÿฐ์ง€ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”. ๋ฌธ์ œ๋ฅผ ๋ณด์—ฌ์ฃผ๋Š” ์ฝ”๋“œ ์กฐ๊ฐ์„ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ์ด ๊ฐ€์žฅ ์ข‹์Šต๋‹ˆ๋‹ค.
* ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์™€ ๊ด€๋ จ๋œ ๋ฌธ์ œ/๋ถˆ๋งŒ์ด ์žˆ๋‚˜์š”? ๊ทธ๋ ‡๋‹ค๋ฉด ์™œ ๊ทธ๋Ÿฐ์ง€ ์„ค๋ช…ํ•ด์ฃผ์„ธ์š”. ๋ฌธ์ œ๋ฅผ ๋ณด์—ฌ์ฃผ๋Š” ์ฝ”๋“œ ์กฐ๊ฐ์„ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ์ด ๊ฐ€์žฅ ์ข‹์Šต๋‹ˆ๋‹ค.
* ํ”„๋กœ์ ํŠธ์— ํ•„์š”ํ•œ ๊ธฐ๋Šฅ์ธ๊ฐ€์š”? ์šฐ๋ฆฌ๋Š” ๊ทธ์— ๋Œ€ํ•ด ๋“ฃ๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค!
* ์ปค๋ฎค๋‹ˆํ‹ฐ์— ๋„์›€์ด ๋  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์„ ์ž‘์—…ํ–ˆ๊ณ  ๊ทธ๊ฒƒ์— ๋Œ€ํ•ด ์ƒ๊ฐํ•˜๊ณ  ์žˆ๋Š”๊ฐ€์š”? ๋ฉ‹์ง€๋„ค์š”! ์–ด๋–ค ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ–ˆ๋Š”์ง€ ์•Œ๋ ค์ฃผ์„ธ์š”.
2. ๊ธฐ๋Šฅ์„ *์ƒ์„ธํžˆ ์„ค๋ช…ํ•˜๋Š”* ๋ฌธ๋‹จ์„ ์ž‘์„ฑํ•ด์ฃผ์„ธ์š”;
3. ๋ฏธ๋ž˜ ์‚ฌ์šฉ์„ ๋ณด์—ฌ์ฃผ๋Š” **์ฝ”๋“œ ์กฐ๊ฐ**์„ ์ œ๊ณตํ•ด์ฃผ์„ธ์š”;
4. ์ด๊ฒƒ์ด ๋…ผ๋ฌธ๊ณผ ๊ด€๋ จ๋œ ๊ฒฝ์šฐ ๋งํฌ๋ฅผ ์ฒจ๋ถ€ํ•ด์ฃผ์„ธ์š”;
5. ๋„์›€์ด ๋  ์ˆ˜ ์žˆ๋Š” ์ถ”๊ฐ€ ์ •๋ณด(๊ทธ๋ฆผ, ์Šคํฌ๋ฆฐ์ƒท ๋“ฑ)๋ฅผ ์ฒจ๋ถ€ํ•ด์ฃผ์„ธ์š”.
3. ํ–ฅํ›„ ์‚ฌ์šฉ์„ ๋ณด์—ฌ์ฃผ๋Š” **์ฝ”๋“œ ์กฐ๊ฐ**์„ ์ œ๊ณตํ•ด์ฃผ์„ธ์š”;
4. ๋…ผ๋ฌธ๊ณผ ๊ด€๋ จ๋œ ๋‚ด์šฉ์ธ ๊ฒฝ์šฐ ๋งํฌ๋ฅผ ์ฒจ๋ถ€ํ•ด์ฃผ์„ธ์š”;
5. ๋„์›€์ด ๋  ์ˆ˜ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐ๋˜๋Š” ์ถ”๊ฐ€ ์ •๋ณด(๊ทธ๋ฆผ, ์Šคํฌ๋ฆฐ์ƒท ๋“ฑ)๋ฅผ ์ฒจ๋ถ€ํ•ด์ฃผ์„ธ์š”.
๊ธฐ๋Šฅ ์š”์ฒญ์€ [์—ฌ๊ธฐ](https://github.com/huggingface/diffusers/issues/new?assignees=&labels=&template=feature_request.md&title=)์—์„œ ์—ด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
#### 2.3 ํ”ผ๋“œ๋ฐฑ
#### 2.3 ํ”ผ๋“œ๋ฐฑ [[23-feedback]]
๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋””์ž์ธ๊ณผ ๊ทธ๊ฒƒ์ด ์™œ ์ข‹์€์ง€ ๋˜๋Š” ๋‚˜์œ์ง€์— ๋Œ€ํ•œ ์ด์œ ์— ๋Œ€ํ•œ ํ”ผ๋“œ๋ฐฑ์€ ํ•ต์‹ฌ ๋ฉ”์ธํ…Œ์ด๋„ˆ๊ฐ€ ์‚ฌ์šฉ์ž ์นœํ™”์ ์ธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๋งŒ๋“œ๋Š” ๋ฐ ์—„์ฒญ๋‚œ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค. ํ˜„์žฌ ๋””์ž์ธ ์ฒ ํ•™์„ ์ดํ•ดํ•˜๋ ค๋ฉด [์—ฌ๊ธฐ](https://huggingface.co/docs/diffusers/conceptual/philosophy)๋ฅผ ์ฐธ์กฐํ•ด ์ฃผ์„ธ์š”. ํŠน์ • ๋””์ž์ธ ์„ ํƒ์ด ํ˜„์žฌ ๋””์ž์ธ ์ฒ ํ•™๊ณผ ๋งž์ง€ ์•Š๋Š”๋‹ค๊ณ  ์ƒ๊ฐ๋˜๋ฉด, ๊ทธ ์ด์œ ์™€ ์–ด๋–ป๊ฒŒ ๋ณ€๊ฒฝ๋˜์–ด์•ผ ํ•˜๋Š”์ง€ ์„ค๋ช…ํ•ด ์ฃผ์„ธ์š”. ๋ฐ˜๋Œ€๋กœ ํŠน์ • ๋””์ž์ธ ์„ ํƒ์ด ๋””์ž์ธ ์ฒ ํ•™์„ ๋„ˆ๋ฌด ๋”ฐ๋ฅด๊ธฐ ๋•Œ๋ฌธ์— ์‚ฌ์šฉ ์‚ฌ๋ก€๋ฅผ ์ œํ•œํ•œ๋‹ค๊ณ  ์ƒ๊ฐ๋˜๋ฉด, ๊ทธ ์ด์œ ์™€ ์–ด๋–ป๊ฒŒ ๋ณ€๊ฒฝ๋˜์–ด์•ผ ํ•˜๋Š”์ง€ ์„ค๋ช…ํ•ด ์ฃผ์„ธ์š”. ํŠน์ • ๋””์ž์ธ ์„ ํƒ์ด ๋งค์šฐ ์œ ์šฉํ•˜๋‹ค๊ณ  ์ƒ๊ฐ๋˜๋ฉด, ๋ฏธ๋ž˜์˜ ๋””์ž์ธ ๊ฒฐ์ •์— ํฐ ๋„์›€์ด ๋˜๋ฏ€๋กœ ์ด์— ๋Œ€ํ•œ ์˜๊ฒฌ์„ ๋‚จ๊ฒจ ์ฃผ์„ธ์š”.
๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋””์ž์ธ๊ณผ ๊ทธ๊ฒƒ์ด ์™œ ์ข‹์€์ง€ ๋˜๋Š” ๋‚˜์œ์ง€์— ๋Œ€ํ•œ ์ด์œ ์— ๋Œ€ํ•œ ํ”ผ๋“œ๋ฐฑ์€ ํ•ต์‹ฌ ๋ฉ”์ธํ…Œ์ด๋„ˆ๊ฐ€ ์‚ฌ์šฉ์ž ์นœํ™”์ ์ธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๋งŒ๋“œ๋Š” ๋ฐ ์—„์ฒญ๋‚œ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค. ํ˜„์žฌ ๋””์ž์ธ ์ฒ ํ•™์„ ์ดํ•ดํ•˜๋ ค๋ฉด [์—ฌ๊ธฐ](https://huggingface.co/docs/diffusers/conceptual/philosophy)๋ฅผ ์ฐธ์กฐํ•ด ์ฃผ์„ธ์š”. ํŠน์ • ๋””์ž์ธ ์„ ํƒ์ด ํ˜„์žฌ ๋””์ž์ธ ์ฒ ํ•™๊ณผ ๋งž์ง€ ์•Š๋Š”๋‹ค๊ณ  ์ƒ๊ฐ๋˜๋ฉด, ๊ทธ ์ด์œ ์™€ ์–ด๋–ป๊ฒŒ ๋ณ€๊ฒฝ๋˜์–ด์•ผ ํ•˜๋Š”์ง€ ์„ค๋ช…ํ•ด ์ฃผ์„ธ์š”. ๋ฐ˜๋Œ€๋กœ ํŠน์ • ๋””์ž์ธ ์„ ํƒ์ด ๋””์ž์ธ ์ฒ ํ•™์„ ๋„ˆ๋ฌด ๋”ฐ๋ฅด๊ธฐ ๋•Œ๋ฌธ์— ์‚ฌ์šฉ ์‚ฌ๋ก€๋ฅผ ์ œํ•œํ•œ๋‹ค๊ณ  ์ƒ๊ฐ๋˜๋ฉด, ๊ทธ ์ด์œ ์™€ ์–ด๋–ป๊ฒŒ ๋ณ€๊ฒฝ๋˜์–ด์•ผ ํ•˜๋Š”์ง€ ์„ค๋ช…ํ•ด ์ฃผ์„ธ์š”. ํŠน์ • ๋””์ž์ธ ์„ ํƒ์ด ๋งค์šฐ ์œ ์šฉํ•˜๋‹ค๊ณ  ์ƒ๊ฐ๋˜๋ฉด, ํ–ฅํ›„ ๋””์ž์ธ ๊ฒฐ์ •์— ํฐ ๋„์›€์ด ๋˜๋ฏ€๋กœ ์ด์— ๋Œ€ํ•œ ์˜๊ฒฌ์„ ๋‚จ๊ฒจ ์ฃผ์„ธ์š”.
ํ”ผ๋“œ๋ฐฑ์— ๊ด€ํ•œ ์ด์Šˆ๋Š” [์—ฌ๊ธฐ](https://github.com/huggingface/diffusers/issues/new?assignees=&labels=&template=feedback.md&title=)์—์„œ ์—ด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
#### 2.4 ๊ธฐ์ˆ ์ ์ธ ์งˆ๋ฌธ
#### 2.4 ๊ธฐ์ˆ ์ ์ธ ์งˆ๋ฌธ [[24-technical-questions]]
๊ธฐ์ˆ ์ ์ธ ์งˆ๋ฌธ์€ ์ฃผ๋กœ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ํŠน์ • ์ฝ”๋“œ๊ฐ€ ์™œ ํŠน์ • ๋ฐฉ์‹์œผ๋กœ ์ž‘์„ฑ๋˜์—ˆ๋Š”์ง€ ๋˜๋Š” ์ฝ”๋“œ์˜ ํŠน์ • ๋ถ€๋ถ„์ด ๋ฌด์—‡์„ ํ•˜๋Š”์ง€์— ๋Œ€ํ•œ ์งˆ๋ฌธ์ž…๋‹ˆ๋‹ค. ์งˆ๋ฌธํ•˜์‹  ์ฝ”๋“œ ๋ถ€๋ถ„์— ๋Œ€ํ•œ ๋งํฌ๋ฅผ ์ œ๊ณตํ•˜๊ณ  ํ•ด๋‹น ์ฝ”๋“œ ๋ถ€๋ถ„์ด ์ดํ•ดํ•˜๊ธฐ ์–ด๋ ค์šด ์ด์œ ์— ๋Œ€ํ•œ ์ž์„ธํ•œ ์„ค๋ช…์„ ํ•ด์ฃผ์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค.
๊ธฐ์ˆ ์ ์ธ ์งˆ๋ฌธ์— ๊ด€ํ•œ ์ด์Šˆ๋ฅผ [์—ฌ๊ธฐ](https://github.com/huggingface/diffusers/issues/new?assignees=&labels=bug&template=bug-report.yml)์—์„œ ์—ด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
#### 2.5 ์ƒˆ๋กœ์šด ๋ชจ๋ธ, ์Šค์ผ€์ค„๋Ÿฌ ๋˜๋Š” ํŒŒ์ดํ”„๋ผ์ธ ์ถ”๊ฐ€ ์ œ์•ˆ
#### 2.5 ์ƒˆ๋กœ์šด ๋ชจ๋ธ, ์Šค์ผ€์ค„๋Ÿฌ ๋˜๋Š” ํŒŒ์ดํ”„๋ผ์ธ ์ถ”๊ฐ€ ์ œ์•ˆ [[25-proposal-to-add-a-new-model-scheduler-or-pipeline]]
๋งŒ์•ฝ diffusion ๋ชจ๋ธ ์ปค๋ฎค๋‹ˆํ‹ฐ์—์„œ Diffusers ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์— ์ถ”๊ฐ€ํ•˜๊ณ  ์‹ถ์€ ์ƒˆ๋กœ์šด ๋ชจ๋ธ, ํŒŒ์ดํ”„๋ผ์ธ ๋˜๋Š” ์Šค์ผ€์ค„๋Ÿฌ๊ฐ€ ์žˆ๋‹ค๋ฉด, ๋‹ค์Œ ์ •๋ณด๋ฅผ ์ œ๊ณตํ•ด์ฃผ์„ธ์š”:
@@ -135,34 +134,34 @@ Diffusers ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์™€ ๊ด€๋ จ๋œ ๋ชจ๋“  ์งˆ๋ฌธ์ด๋‚˜ ์˜๊ฒฌ์€ [ํ† ๋ก  ํฌ
* ํ•ด๋‹น ๋ชจ๋ธ์˜ ์˜คํ”ˆ ์†Œ์Šค ๊ตฌํ˜„์— ๋Œ€ํ•œ ๋งํฌ
* ๋ชจ๋ธ ๊ฐ€์ค‘์น˜๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ, ๊ฐ€์ค‘์น˜์˜ ๋งํฌ
๋ชจ๋ธ์— ์ง์ ‘ ๊ธฐ์—ฌํ•˜๊ณ ์ž ํ•˜๋Š” ๊ฒฝ์šฐ, ์ตœ์„ ์˜ ์•ˆ๋‚ด๋ฅผ ์œ„ํ•ด ์šฐ๋ฆฌ์—๊ฒŒ ์•Œ๋ ค์ฃผ์„ธ์š”. ๋˜ํ•œ, ๊ฐ€๋Šฅํ•˜๋‹ค๋ฉด ๊ตฌ์„ฑ ์š”์†Œ(๋ชจ๋ธ, ์Šค์ผ€์ค„๋Ÿฌ, ํŒŒ์ดํ”„๋ผ์ธ ๋“ฑ)์˜ ์›๋ž˜ ์ €์ž๋ฅผ GitHub ํ•ธ๋“ค๋กœ ํƒœ๊ทธํ•˜๋Š” ๊ฒƒ์„ ์žŠ์ง€ ๋งˆ์„ธ์š”.
์ง์ ‘ ๋ชจ๋ธ์— ๊ธฐ์—ฌํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด, ๊ฐ€์žฅ ์ž˜ ์•ˆ๋‚ดํ•ด๋“œ๋ฆด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ, ๊ฐ€๋Šฅํ•˜๋‹ค๋ฉด ๊ตฌ์„ฑ ์š”์†Œ(๋ชจ๋ธ, ์Šค์ผ€์ค„๋Ÿฌ, ํŒŒ์ดํ”„๋ผ์ธ ๋“ฑ)์˜ ์›์ €์ž๋ฅผ GitHub ํ•ธ๋“ค๋กœ ํƒœ๊ทธํ•˜๋Š” ๊ฒƒ์„ ์žŠ์ง€ ๋งˆ์„ธ์š”.
๋ชจ๋ธ/ํŒŒ์ดํ”„๋ผ์ธ/์Šค์ผ€์ค„๋Ÿฌ์— ๋Œ€ํ•œ ์š”์ฒญ์„ [์—ฌ๊ธฐ](https://github.com/huggingface/diffusers/issues/new?assignees=&labels=New+model%2Fpipeline%2Fscheduler&template=new-model-addition.yml)์—์„œ ์—ด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
### 3. GitHub ์ด์Šˆ ํƒญ์—์„œ ๋ฌธ์ œ์— ๋Œ€ํ•œ ๋‹ต๋ณ€ํ•˜๊ธฐ
### 3. GitHub ์ด์Šˆ ํƒญ์—์„œ ๋ฌธ์ œ์— ๋Œ€ํ•œ ๋‹ต๋ณ€ํ•˜๊ธฐ [[3-answering-issues-on-the-github-issues-tab]]
GitHub์—์„œ ์ด์Šˆ์— ๋Œ€ํ•œ ๋‹ต๋ณ€์„ ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” Diffusers์— ๋Œ€ํ•œ ๊ธฐ์ˆ ์ ์ธ ์ง€์‹์ด ํ•„์š”ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ, ์ •ํ™•ํ•œ ๋‹ต๋ณ€์ด ์•„๋‹ˆ๋”๋ผ๋„ ๋ชจ๋‘๊ฐ€ ์‹œ๋„ํ•ด๊ธฐ๋ฅผ ๊ถŒ์žฅํ•ฉ๋‹ˆ๋‹ค. ์ด์Šˆ์— ๋Œ€ํ•œ ๊ณ ํ’ˆ์งˆ ๋‹ต๋ณ€์„ ์ œ๊ณตํ•˜๊ธฐ ์œ„ํ•œ ๋ช‡ ๊ฐ€์ง€ ํŒ:
- ๊ฐ€๋Šฅํ•œ ํ•œ ๊ฐ„๊ฒฐํ•˜๊ณ  ์ตœ์†Œํ•œ์œผ๋กœ ์œ ์ง€ํ•ฉ๋‹ˆ๋‹ค.
- ์ฃผ์ œ์— ์ง‘์ค‘ํ•ฉ๋‹ˆ๋‹ค. ์ด์Šˆ์— ๋Œ€ํ•œ ๋‹ต๋ณ€์€ ํ•ด๋‹น ์ด์Šˆ์— ๊ด€๋ จ๋œ ๋‚ด์šฉ์—๋งŒ ์ง‘์ค‘ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
- ์ฝ”๋“œ, ๋…ผ๋ฌธ ๋˜๋Š” ๋‹ค๋ฅธ ์†Œ์Šค๋ฅผ ์ œ๊ณตํ•˜์—ฌ ๋‹ต๋ณ€์„ ์ฆ๋ช…ํ•˜๊ฑฐ๋‚˜ ์ง€์ง€ํ•ฉ๋‹ˆ๋‹ค.
- ์ž์‹ ์˜ ์ฃผ์žฅ์„ ์ฆ๋ช…ํ•˜๊ฑฐ๋‚˜ ์žฅ๋ คํ•˜๋Š” ์ฝ”๋“œ, ๋…ผ๋ฌธ ๋˜๋Š” ๊ธฐํƒ€ ์ถœ์ฒ˜๋Š” ๋งํฌ๋ฅผ ์ œ๊ณตํ•˜์„ธ์š”.
- ์ฝ”๋“œ๋กœ ๋‹ต๋ณ€ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ„๋‹จํ•œ ์ฝ”๋“œ ์กฐ๊ฐ์ด ์ด์Šˆ์— ๋Œ€ํ•œ ๋‹ต๋ณ€์ด๊ฑฐ๋‚˜ ์ด์Šˆ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋ณด์—ฌ์ค€๋‹ค๋ฉด, ์™„์ „ํžˆ ์žฌํ˜„ ๊ฐ€๋Šฅํ•œ ์ฝ”๋“œ ์กฐ๊ฐ์„ ์ œ๊ณตํ•ด์ฃผ์„ธ์š”.
๋˜ํ•œ, ๋งŽ์€ ์ด์Šˆ๋“ค์€ ๋‹จ์ˆœํžˆ ์ฃผ์ œ์™€ ๋ฌด๊ด€ํ•˜๊ฑฐ๋‚˜ ๋‹ค๋ฅธ ์ด์Šˆ์˜ ์ค‘๋ณต์ด๊ฑฐ๋‚˜ ๊ด€๋ จ์ด ์—†๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์ด์Šˆ๋“ค์— ๋Œ€ํ•œ ๋‹ต๋ณ€์„ ์ œ๊ณตํ•˜๊ณ , ์ด์Šˆ ์ž‘์„ฑ์ž์—๊ฒŒ ๋” ์ •ํ™•ํ•œ ์ •๋ณด๋ฅผ ์ œ๊ณตํ•˜๊ฑฐ๋‚˜, ์ค‘๋ณต๋œ ์ด์Šˆ์— ๋Œ€ํ•œ ๋งํฌ๋ฅผ ์ œ๊ณตํ•˜๊ฑฐ๋‚˜, [ํฌ๋Ÿผ](https://discuss.huggingface.co/c/discussion-related-to-httpsgithubcomhuggingfacediffusers/63) ์ด๋‚˜ [Discord](https://discord.gg/G7tWnz98XR)๋กœ ๋ฆฌ๋””๋ ‰์…˜ํ•˜๋Š” ๊ฒƒ์€ ๋ฉ”์ธํ…Œ์ด๋„ˆ์—๊ฒŒ ํฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค.
์ด์Šˆ๊ฐ€ ์˜ฌ๋ฐ”๋ฅธ ๋ฒ„๊ทธ ๋ณด๊ณ ์„œ์ด๊ณ  ์†Œ์Šค ์ฝ”๋“œ์—์„œ ์ˆ˜์ •์ด ํ•„์š”ํ•˜๋‹ค๊ณ  ํ™•์ธํ•œ ๊ฒฝ์šฐ, ๋‹ค์Œ ์„น์…˜์„ ์‚ดํŽด๋ณด์„ธ์š”.
๋‹ค์Œ ๋ชจ๋“  ๊ธฐ์—ฌ์— ๋Œ€ํ•ด์„œ๋Š” PR์„ ์—ด์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค. [PR ์—ด๊ธฐ](#how-to-open-a-pr) ์„น์…˜์—์„œ ์ž์„ธํžˆ ์„ค๋ช…๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.
๋‹ค์Œ ๋ชจ๋“  ๊ธฐ์—ฌ์— ๋Œ€ํ•ด์„œ๋Š” PR์„ ์—ด์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค. [Pull Request ์—ด๊ธฐ](#how-to-open-a-pr) ์„น์…˜์—์„œ ์ž์„ธํžˆ ์„ค๋ช…๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.
### 4. "Good first issue" ๊ณ ์น˜๊ธฐ
### 4. "Good first issue" ๊ณ ์น˜๊ธฐ [[4-fixing-a-good-first-issue]]
*Good first issues*๋Š” [Good first issue](https://github.com/huggingface/diffusers/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22) ๋ผ๋ฒจ๋กœ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ, ์ด์Šˆ๋Š” ์ด๋ฏธ ์ž ์žฌ์ ์ธ ํ•ด๊ฒฐ์ฑ…์ด ์–ด๋–ป๊ฒŒ ๋ณด์ด๋Š”์ง€ ์„ค๋ช…ํ•˜๊ณ  ์žˆ์–ด์„œ ์ˆ˜์ •ํ•˜๊ธฐ ์‰ฝ์Šต๋‹ˆ๋‹ค.
๋งŒ์•ฝ ์ด์Šˆ๊ฐ€ ์•„์ง ๋‹ซํžˆ์ง€ ์•Š์•˜๊ณ  ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•ด๋ณด๊ณ  ์‹ถ๋‹ค๋ฉด, "์ด ์ด์Šˆ๋ฅผ ํ•ด๊ฒฐํ•ด๋ณด๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค."๋ผ๋Š” ๋ฉ”์‹œ์ง€๋ฅผ ๋‚จ๊ธฐ๋ฉด ๋ฉ๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ ์„ธ ๊ฐ€์ง€ ์‹œ๋‚˜๋ฆฌ์˜ค๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค:
- a.) ์ด์Šˆ ์„ค๋ช…์ด ์ด๋ฏธ ํ•ด๊ฒฐ์ฑ…์„ ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค. ์ด ๊ฒฝ์šฐ, ํ•ด๊ฒฐ์ฑ…์ด ์ดํ•ด๋˜๊ณ  ํ•ฉ๋ฆฌ์ ์œผ๋กœ ๋ณด์ธ๋‹ค๋ฉด, PR ๋˜๋Š” ๋“œ๋ž˜ํ”„ํŠธ PR์„ ์—ด์–ด์„œ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
- b.) ์ด์Šˆ ์„ค๋ช…์ด ํ•ด๊ฒฐ์ฑ…์„ ์ œ์•ˆํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด ๊ฒฝ์šฐ, ์–ด๋–ค ํ•ด๊ฒฐ์ฑ…์ด ๊ฐ€๋Šฅํ• ์ง€ ๋ฌผ์–ด๋ณผ ์ˆ˜ ์žˆ๊ณ , Diffusers ํŒ€์˜ ๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ๊ณง ๋‹ต๋ณ€ํ•ด์ค„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋งŒ์•ฝ ์–ด๋–ป๊ฒŒ ์ˆ˜์ •ํ• ์ง€ ์ข‹์€ ์•„์ด๋””์–ด๊ฐ€ ์žˆ๋‹ค๋ฉด, ์ง์ ‘ PR์„ ์—ด์–ด๋„ ๋ฉ๋‹ˆ๋‹ค.
- a.) ์ด์Šˆ ์„ค๋ช…์— ์ด๋ฏธ ์ˆ˜์ • ์‚ฌํ•ญ์„ ์ œ์•ˆํ•˜๋Š” ๊ฒฝ์šฐ, ํ•ด๊ฒฐ์ฑ…์ด ์ดํ•ด๋˜๊ณ  ํ•ฉ๋ฆฌ์ ์œผ๋กœ ๋ณด์ธ๋‹ค๋ฉด, PR ๋˜๋Š” ๋“œ๋ž˜ํ”„ํŠธ PR์„ ์—ด์–ด์„œ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
- b.) ์ด์Šˆ ์„ค๋ช…์— ์ˆ˜์ • ์‚ฌํ•ญ์ด ์ œ์•ˆ๋˜์–ด ์žˆ์ง€ ์•Š์€ ๊ฒฝ์šฐ, ์ œ์•ˆํ•œ ์ˆ˜์ • ์‚ฌํ•ญ์ด ๊ฐ€๋Šฅํ• ์ง€ ๋ฌผ์–ด๋ณผ ์ˆ˜ ์žˆ๊ณ , Diffusers ํŒ€์˜ ๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ๊ณง ๋‹ต๋ณ€ํ•ด์ค„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋งŒ์•ฝ ์–ด๋–ป๊ฒŒ ์ˆ˜์ •ํ• ์ง€ ์ข‹์€ ์•„์ด๋””์–ด๊ฐ€ ์žˆ๋‹ค๋ฉด, ์ง์ ‘ PR์„ ์—ด์–ด๋„ ๋ฉ๋‹ˆ๋‹ค.
- c.) ์ด๋ฏธ ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์—ด๋ฆฐ PR์ด ์žˆ์ง€๋งŒ, ์ด์Šˆ๊ฐ€ ์•„์ง ๋‹ซํžˆ์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. PR์ด ๋” ์ด์ƒ ์ง„ํ–‰๋˜์ง€ ์•Š์•˜๋‹ค๋ฉด, ์ƒˆ๋กœ์šด PR์„ ์—ด๊ณ  ์ด์ „ PR์— ๋งํฌ๋ฅผ ๊ฑธ๋ฉด ๋ฉ๋‹ˆ๋‹ค. PR์€ ์ข…์ข… ์›๋ž˜ ๊ธฐ์—ฌ์ž๊ฐ€ ๊ฐ‘์ž๊ธฐ ์‹œ๊ฐ„์„ ๋‚ด์ง€ ๋ชปํ•ด ๋” ์ด์ƒ ์ง„ํ–‰ํ•˜์ง€ ๋ชปํ•˜๋Š” ๊ฒฝ์šฐ์— ๋” ์ด์ƒ ์ง„ํ–‰๋˜์ง€ ์•Š๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ์ด๋Š” ์˜คํ”ˆ ์†Œ์Šค์—์„œ ์ž์ฃผ ๋ฐœ์ƒํ•˜๋Š” ์ผ์ด๋ฉฐ ๋งค์šฐ ์ •์ƒ์ ์ธ ์ƒํ™ฉ์ž…๋‹ˆ๋‹ค. ์ด ๊ฒฝ์šฐ, ์ปค๋ฎค๋‹ˆํ‹ฐ๋Š” ์ƒˆ๋กœ ์‹œ๋„ํ•˜๊ณ  ๊ธฐ์กด PR์˜ ์ง€์‹์„ ํ™œ์šฉํ•ด์ฃผ๋ฉด ๋งค์šฐ ๊ธฐ์  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด๋ฏธ PR์ด ์žˆ๊ณ  ํ™œ์„ฑํ™”๋˜์–ด ์žˆ๋‹ค๋ฉด, ์ œ์•ˆ์„ ํ•ด์ฃผ๊ฑฐ๋‚˜ PR์„ ๊ฒ€ํ† ํ•˜๊ฑฐ๋‚˜ PR์— ๊ธฐ์—ฌํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ๋ฌผ์–ด๋ณด๋Š” ๋“ฑ ์ž‘์„ฑ์ž๋ฅผ ๋„์™€์ค„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
### 5. ๋ฌธ์„œ์— ๊ธฐ์—ฌํ•˜๊ธฐ
### 5. ๋ฌธ์„œ์— ๊ธฐ์—ฌํ•˜๊ธฐ [[5-contribute-to-the-documentation]]
์ข‹์€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” ํ•ญ์ƒ ์ข‹์€ ๋ฌธ์„œ๋ฅผ ๊ฐ–๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค! ๊ณต์‹ ๋ฌธ์„œ๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์ฒ˜์Œ ์‚ฌ์šฉํ•˜๋Š” ์‚ฌ์šฉ์ž๋“ค์—๊ฒŒ ์ฒซ ๋ฒˆ์งธ ์ ‘์  ์ค‘ ํ•˜๋‚˜์ด๋ฉฐ, ๋”ฐ๋ผ์„œ ๋ฌธ์„œ์— ๊ธฐ์—ฌํ•˜๋Š” ๊ฒƒ์€ ๋งค์šฐ ๊ฐ€์น˜ ์žˆ๋Š” ๊ธฐ์—ฌ์ž…๋‹ˆ๋‹ค.
@@ -180,7 +179,7 @@ GitHub์—์„œ ์ด์Šˆ์— ๋Œ€ํ•œ ๋‹ต๋ณ€์„ ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” Diffusers์— ๋Œ€ํ•œ
๋ฌธ์„œ์— ๋Œ€ํ•œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ๋กœ์ปฌ์—์„œ ํ™•์ธํ•˜๋Š” ๋ฐฉ๋ฒ•์€ [์ด ํŽ˜์ด์ง€](https://github.com/huggingface/diffusers/tree/main/docs)๋ฅผ ์ฐธ์กฐํ•ด์ฃผ์„ธ์š”.
### 6. ์ปค๋ฎค๋‹ˆํ‹ฐ ํŒŒ์ดํ”„๋ผ์ธ์— ๊ธฐ์—ฌํ•˜๊ธฐ
### 6. ์ปค๋ฎค๋‹ˆํ‹ฐ ํŒŒ์ดํ”„๋ผ์ธ์— ๊ธฐ์—ฌํ•˜๊ธฐ [[6-contribute-a-community-pipeline]]
> [!TIP]
> ์ปค๋ฎค๋‹ˆํ‹ฐ ํŒŒ์ดํ”„๋ผ์ธ์— ๋Œ€ํ•ด ์ž์„ธํžˆ ์•Œ์•„๋ณด๋ ค๋ฉด [์ปค๋ฎค๋‹ˆํ‹ฐ ํŒŒ์ดํ”„๋ผ์ธ](../using-diffusers/custom_pipeline_overview#community-pipelines) ๊ฐ€์ด๋“œ๋ฅผ ์ฝ์–ด๋ณด์„ธ์š”. ์ปค๋ฎค๋‹ˆํ‹ฐ ํŒŒ์ดํ”„๋ผ์ธ์ด ์™œ ํ•„์š”ํ•œ์ง€ ๊ถ๊ธˆํ•˜๋‹ค๋ฉด GitHub ์ด์Šˆ [#841](https://github.com/huggingface/diffusers/issues/841)๋ฅผ ํ™•์ธํ•ด๋ณด์„ธ์š” (๊ธฐ๋ณธ์ ์œผ๋กœ, ์šฐ๋ฆฌ๋Š” diffusion ๋ชจ๋ธ์ด ์ถ”๋ก ์— ์‚ฌ์šฉ๋  ์ˆ˜ ์žˆ๋Š” ๋ชจ๋“  ๋ฐฉ๋ฒ•์„ ์œ ์ง€ํ•  ์ˆ˜ ์—†์ง€๋งŒ ์ปค๋ฎค๋‹ˆํ‹ฐ๊ฐ€ ์ด๋ฅผ ๊ตฌ์ถ•ํ•˜๋Š” ๊ฒƒ์„ ๋ฐฉํ•ดํ•˜๊ณ  ์‹ถ์ง€ ์•Š์Šต๋‹ˆ๋‹ค).
@@ -246,7 +245,7 @@ output = pipeline()
<hfoptions id="pipeline type">
<hfoption id="GitHub pipeline">
GitHub ํŒŒ์ดํ”„๋ผ์ธ์„ ๊ณต์œ ํ•˜๋ ค๋ฉด Diffusers [์ €์žฅ์†Œ](https://github.com/huggingface/diffusers)์—์„œ PR์„ ์—ด๊ณ  one_step_unet.py ํŒŒ์ผ์„ [examples/community](https://github.com/huggingface/diffusers/tree/main/examples/community) ํ•˜์œ„ ํด๋”์— ์ถ”๊ฐ€ํ•˜์„ธ์š”.
GitHub ํŒŒ์ดํ”„๋ผ์ธ์„ ๊ณต์œ ํ•˜๋ ค๋ฉด Diffusers [์ €์žฅ์†Œ](https://github.com/huggingface/diffusers)์—์„œ Pull Request๋ฅผ ์—ด๊ณ  one_step_unet.py ํŒŒ์ผ์„ [examples/community](https://github.com/huggingface/diffusers/tree/main/examples/community) ํ•˜์œ„ ํด๋”์— ์ถ”๊ฐ€ํ•˜์„ธ์š”.
</hfoption>
<hfoption id="Hub pipeline">
@@ -256,7 +255,7 @@ Hub ํŒŒ์ดํ”„๋ผ์ธ์„ ๊ณต์œ ํ•˜๋ ค๋ฉด, ํ—ˆ๋ธŒ์— ๋ชจ๋ธ ์ €์žฅ์†Œ๋ฅผ ์ƒ์„ฑํ•˜
</hfoption>
</hfoptions>
### 7. ํ›ˆ๋ จ ์˜ˆ์ œ์— ๊ธฐ์—ฌํ•˜๊ธฐ
### 7. ํ›ˆ๋ จ ์˜ˆ์ œ์— ๊ธฐ์—ฌํ•˜๊ธฐ [[7-contribute-to-training-examples]]
Diffusers ์˜ˆ์ œ๋Š” [examples](https://github.com/huggingface/diffusers/tree/main/examples) ํด๋”์— ์žˆ๋Š” ํ›ˆ๋ จ ์Šคํฌ๋ฆฝํŠธ์˜ ๋ชจ์Œ์ž…๋‹ˆ๋‹ค.
@@ -268,7 +267,7 @@ Diffusers ์˜ˆ์ œ๋Š” [examples](https://github.com/huggingface/diffusers/tree/mai
์—ฐ๊ตฌ์šฉ ํ›ˆ๋ จ ์˜ˆ์ œ๋Š” [examples/research_projects](https://github.com/huggingface/diffusers/tree/main/examples/research_projects)์— ์œ„์น˜ํ•˜๋ฉฐ, ๊ณต์‹ ํ›ˆ๋ จ ์˜ˆ์ œ๋Š” `research_projects` ๋ฐ `community` ํด๋”๋ฅผ ์ œ์™ธํ•œ [examples](https://github.com/huggingface/diffusers/tree/main/examples)์˜ ๋ชจ๋“  ํด๋”๋ฅผ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค.
๊ณต์‹ ํ›ˆ๋ จ ์˜ˆ์ œ๋Š” Diffusers์˜ ํ•ต์‹ฌ ๋ฉ”์ธํ…Œ์ด๋„ˆ๊ฐ€ ์œ ์ง€ ๊ด€๋ฆฌํ•˜๋ฉฐ, ์—ฐ๊ตฌ์šฉ ํ›ˆ๋ จ ์˜ˆ์ œ๋Š” ์ปค๋ฎค๋‹ˆํ‹ฐ๊ฐ€ ์œ ์ง€ ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค.
์ด๋Š” ๊ณต์‹ ํŒŒ์ดํ”„๋ผ์ธ vs ์ปค๋ฎค๋‹ˆํ‹ฐ ํŒŒ์ดํ”„๋ผ์ธ์— ๋Œ€ํ•œ [6. ์ปค๋ฎค๋‹ˆํ‹ฐ ํŒŒ์ดํ”„๋ผ์ธ ๊ธฐ์—ฌํ•˜๊ธฐ](#6-contribute-a-community-pipeline)์—์„œ ์ œ์‹œํ•œ ์ด์œ ์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค: ํ•ต์‹ฌ ๋ฉ”์ธํ…Œ์ด๋„ˆ๊ฐ€ diffusion ๋ชจ๋ธ์˜ ๋ชจ๋“  ๊ฐ€๋Šฅํ•œ ํ›ˆ๋ จ ๋ฐฉ๋ฒ•์„ ์œ ์ง€ ๊ด€๋ฆฌํ•˜๋Š” ๊ฒƒ์€ ํ˜„์‹ค์ ์œผ๋กœ ๋ถˆ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.
Diffusers ํ•ต์‹ฌ ๋ฉ”์ธํ…Œ์ž‰๋„ˆ์™€ ์ปค๋ฎค๋‹ˆํ‹ฐ๊ฐ€ ํŠน์ • ํ›ˆ๋ จ ํŒจ๋Ÿฌ๋‹ค์ž„์„ ๋„ˆ๋ฌด ์‹คํ—˜์ ์ด๊ฑฐ๋‚˜ ์ถฉ๋ถ„ํžˆ ์ธ๊ธฐ ์—†๋Š” ๊ฒƒ์œผ๋กœ ๊ฐ„์ฃผํ•˜๋Š” ๊ฒฝ์šฐ, ํ•ด๋‹น ํ›ˆ๋ จ ์ฝ”๋“œ๋Š” `research_projects` ํด๋”์— ๋„ฃ๊ณ  ์ž‘์„ฑ์ž๊ฐ€ ์œ ์ง€ ๊ด€๋ฆฌํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
Diffusers ํ•ต์‹ฌ ๋ฉ”์ธํ…Œ์ด๋„ˆ์™€ ์ปค๋ฎค๋‹ˆํ‹ฐ๊ฐ€ ํŠน์ • ํ›ˆ๋ จ ํŒจ๋Ÿฌ๋‹ค์ž„์„ ๋„ˆ๋ฌด ์‹คํ—˜์ ์ด๊ฑฐ๋‚˜ ์ถฉ๋ถ„ํžˆ ๋Œ€์ค‘์ ์ด์ง€ ์•Š๋‹ค๊ณ  ํŒ๋‹จํ•œ๋‹ค๋ฉด, ํ•ด๋‹น ํ›ˆ๋ จ ์ฝ”๋“œ๋Š” `research_projects` ํด๋”์— ๋„ฃ๊ณ  ์ž‘์„ฑ์ž์— ์˜ํ•ด ๊ด€๋ฆฌ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
๊ณต์‹ ํ›ˆ๋ จ ๋ฐ ์—ฐ๊ตฌ ์˜ˆ์ œ๋Š” ํ•˜๋‚˜ ์ด์ƒ์˜ ํ›ˆ๋ จ ์Šคํฌ๋ฆฝํŠธ, requirements.txt ํŒŒ์ผ ๋ฐ README.md ํŒŒ์ผ์„ ํฌํ•จํ•˜๋Š” ๋””๋ ‰ํ† ๋ฆฌ๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๊ฐ€ ํ›ˆ๋ จ ์˜ˆ์ œ๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ๋ฆฌํฌ์ง€ํ† ๋ฆฌ๋ฅผ ๋ณต์ œํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค:
@@ -298,14 +297,14 @@ Diffusers์™€ ๊ธด๋ฐ€ํ•˜๊ฒŒ ํ†ตํ•ฉ๋˜์–ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์—, ๊ธฐ์—ฌ์ž๋“ค์ด [Accele
๋งŒ์•ฝ ๊ณต์‹ ํ›ˆ๋ จ ์˜ˆ์ œ์— ๊ธฐ์—ฌํ•˜๋Š” ๊ฒฝ์šฐ, [examples/test_examples.py](https://github.com/huggingface/diffusers/blob/main/examples/test_examples.py)์— ํ…Œ์ŠคํŠธ๋ฅผ ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒƒ๋„ ํ™•์ธํ•ด์ฃผ์„ธ์š”. ๋น„๊ณต์‹ ํ›ˆ๋ จ ์˜ˆ์ œ์—๋Š” ์ด ์ž‘์—…์ด ํ•„์š”ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
### 8. "Good second issue" ๊ณ ์น˜๊ธฐ
### 8. "Good second issue" ๊ณ ์น˜๊ธฐ [[8-fixing-a-good-second-issue]]
"Good second issue"๋Š” [Good second issue](https://github.com/huggingface/diffusers/issues?q=is%3Aopen+is%3Aissue+label%3A%22Good+second+issue%22) ๋ผ๋ฒจ๋กœ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. Good second issue๋Š” [Good first issues](https://github.com/huggingface/diffusers/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22)๋ณด๋‹ค ํ•ด๊ฒฐํ•˜๊ธฐ๊ฐ€ ๋” ๋ณต์žกํ•ฉ๋‹ˆ๋‹ค.
์ด์Šˆ ์„ค๋ช…์€ ์ผ๋ฐ˜์ ์œผ๋กœ ์ด์Šˆ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ๋œ ๊ตฌ์ฒด์ ์ด๋ฉฐ, ๊ด€์‹ฌ ์žˆ๋Š” ๊ธฐ์—ฌ์ž๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์— ๋Œ€ํ•œ ๊ฝค ๊นŠ์€ ์ดํ•ด๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.
Good second issue๋ฅผ ํ•ด๊ฒฐํ•˜๊ณ ์ž ํ•˜๋Š” ๊ฒฝ์šฐ, ํ•ด๋‹น ์ด์Šˆ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด PR์„ ์—ด๊ณ  PR์„ ์ด์Šˆ์— ๋งํฌํ•˜์„ธ์š”. ์ด๋ฏธ ํ•ด๋‹น ์ด์Šˆ์— ๋Œ€ํ•œ PR์ด ์—ด๋ ค์žˆ์ง€๋งŒ ๋ณ‘ํ•ฉ๋˜์ง€ ์•Š์€ ๊ฒฝ์šฐ, ์™œ ๋ณ‘ํ•ฉ๋˜์ง€ ์•Š์•˜๋Š”์ง€ ์ดํ•ดํ•˜๊ธฐ ์œ„ํ•ด ์‚ดํŽด๋ณด๊ณ  ๊ฐœ์„ ๋œ PR์„ ์—ด์–ด๋ณด์„ธ์š”.
Good second issue๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ Good first issue ์ด์Šˆ๋ณด๋‹ค ๋ณ‘ํ•ฉํ•˜๊ธฐ๊ฐ€ ๋” ์–ด๋ ค์šฐ๋ฏ€๋กœ, ํ•ต์‹ฌ ๋ฉ”์ธํ…Œ์ด๋„ˆ์—๊ฒŒ ๋„์›€์„ ์š”์ฒญํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. PR์ด ๊ฑฐ์˜ ์™„๋ฃŒ๋œ ๊ฒฝ์šฐ, ํ•ต์‹ฌ ๋ฉ”์ธํ…Œ์ด๋„ˆ๋Š” PR์— ์ฐธ์—ฌํ•˜์—ฌ ์ปค๋ฐ‹ํ•˜๊ณ  ๋ณ‘ํ•ฉ์„ ์ง„ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
### 9. ํŒŒ์ดํ”„๋ผ์ธ, ๋ชจ๋ธ, ์Šค์ผ€์ค„๋Ÿฌ ์ถ”๊ฐ€ํ•˜๊ธฐ
### 9. ํŒŒ์ดํ”„๋ผ์ธ, ๋ชจ๋ธ, ์Šค์ผ€์ค„๋Ÿฌ ์ถ”๊ฐ€ํ•˜๊ธฐ [[9-adding-pipelines-models-schedulers]]
ํŒŒ์ดํ”„๋ผ์ธ, ๋ชจ๋ธ, ์Šค์ผ€์ค„๋Ÿฌ๋Š” Diffusers ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์—์„œ ๊ฐ€์žฅ ์ค‘์š”ํ•œ ๋ถ€๋ถ„์ž…๋‹ˆ๋‹ค.
์ด๋“ค์€ ์ตœ์ฒจ๋‹จ diffusion ๊ธฐ์ˆ ์— ์‰ฝ๊ฒŒ ์ ‘๊ทผํ•˜๋„๋ก ํ•˜๋ฉฐ, ๋”ฐ๋ผ์„œ ์ปค๋ฎค๋‹ˆํ‹ฐ๊ฐ€ ๊ฐ•๋ ฅํ•œ ์ƒ์„ฑํ˜• AI ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.
@@ -323,9 +322,9 @@ PR์— ์›๋ณธ ์ฝ”๋“œ๋ฒ ์ด์Šค/๋…ผ๋ฌธ ๋งํฌ๋ฅผ ์ถ”๊ฐ€ํ•˜๊ณ , ๊ฐ€๋Šฅํ•˜๋ฉด PR์—
PR์—์„œ ๋ง‰ํžŒ ๊ฒฝ์šฐ๋‚˜ ๋„์›€์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ, ์ฒซ ๋ฒˆ์งธ ๋ฆฌ๋ทฐ๋‚˜ ๋„์›€์„ ์š”์ฒญํ•˜๋Š” ๋ฉ”์‹œ์ง€๋ฅผ ๋‚จ๊ธฐ๋Š” ๊ฒƒ์„ ์ฃผ์ €ํ•˜์ง€ ๋งˆ์„ธ์š”.
#### Copied from mechanism
#### Copied from mechanism [[copied-from-mechanism]]
`# Copied from mechanism` ์€ ํŒŒ์ดํ”„๋ผ์ธ, ๋ชจ๋ธ ๋˜๋Š” ์Šค์ผ€์ค„๋Ÿฌ ์ฝ”๋“œ๋ฅผ ์ถ”๊ฐ€ํ•  ๋•Œ ์ดํ•ดํ•ด์•ผ ํ•  ๋…ํŠนํ•˜๊ณ  ์ค‘์š”ํ•œ ๊ธฐ๋Šฅ์ž…๋‹ˆ๋‹ค. Diffusers ์ฝ”๋“œ๋ฒ ์ด์Šค ์ „์ฒด์—์„œ ์ด๋ฅผ ์ž์ฃผ ๋ณผ ์ˆ˜ ์žˆ๋Š”๋ฐ, ์ด๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ ๋Š” ์ฝ”๋“œ๋ฒ ์ด์Šค๋ฅผ ์ดํ•ดํ•˜๊ธฐ ์‰ฝ๊ณ  ์œ ์ง€ ๊ด€๋ฆฌํ•˜๊ธฐ ์‰ฝ๊ฒŒ ์œ ์ง€ํ•˜๊ธฐ ์œ„ํ•จ์ž…๋‹ˆ๋‹ค. `# Copied from mechanism` ์œผ๋กœ ํ‘œ์‹œ๋œ ์ฝ”๋“œ๋Š” ๋ณต์‚ฌํ•œ ์ฝ”๋“œ์™€ ์ •ํ™•ํžˆ ๋™์ผํ•˜๋„๋ก ๊ฐ•์ œ๋ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด `make fix-copies`๋ฅผ ์‹คํ–‰ํ•  ๋•Œ ๋งŽ์€ ํŒŒ์ผ์— ๊ฑธ์ณ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์‰ฝ๊ฒŒ ์—…๋ฐ์ดํŠธํ•˜๊ณ  ์ „ํŒŒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
`# Copied from mechanism` ์€ ํŒŒ์ดํ”„๋ผ์ธ, ๋ชจ๋ธ ๋˜๋Š” ์Šค์ผ€์ค„๋Ÿฌ ์ฝ”๋“œ๋ฅผ ์ถ”๊ฐ€ํ•  ๋•Œ ์ดํ•ดํ•ด์•ผ ํ•  ๋…ํŠนํ•˜๊ณ  ์ค‘์š”ํ•œ ๊ธฐ๋Šฅ์ž…๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ Diffusers ์ฝ”๋“œ๋ฒ ์ด์Šค ์ „๋ฐ˜์—์„œ ๋ณผ ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์ด๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ ๋Š” ์ฝ”๋“œ๋ฒ ์ด์Šค๋ฅผ ์ดํ•ดํ•˜๊ณ  ์œ ์ง€ ๊ด€๋ฆฌํ•˜๊ธฐ ์‰ฝ๊ฒŒ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด์„œ์ž…๋‹ˆ๋‹ค. `# Copied from mechanism` ์œผ๋กœ ํ‘œ์‹œ๋œ ์ฝ”๋“œ๋Š” ๋ณต์‚ฌํ•œ ์ฝ”๋“œ์™€ ์ •ํ™•ํžˆ ๋™์ผํ•˜๋„๋ก ๊ฐ•์ œ๋ฉ๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด `make fix-copies`๋ฅผ ์‹คํ–‰ํ•  ๋•Œ๋งˆ๋‹ค ์—ฌ๋Ÿฌ ํŒŒ์ผ์— ๊ฑธ์ณ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์‰ฝ๊ฒŒ ์—…๋ฐ์ดํŠธํ•˜๊ณ  ์ „ํŒŒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์˜ˆ๋ฅผ ๋“ค์–ด, ์•„๋ž˜ ์ฝ”๋“œ ์˜ˆ์ œ์—์„œ [`~diffusers.pipelines.stable_diffusion.StableDiffusionPipelineOutput`]์€ ์›๋ž˜ ์ฝ”๋“œ์ด๋ฉฐ, `AltDiffusionPipelineOutput`์€ `# Copied from mechanism`์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ณต์‚ฌํ•ฉ๋‹ˆ๋‹ค. ์œ ์ผํ•œ ์ฐจ์ด์ ์€ ํด๋ž˜์Šค ์ ‘๋‘์‚ฌ๋ฅผ `Stable`์—์„œ `Alt`๋กœ ๋ณ€๊ฒฝํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค.
@@ -347,7 +346,7 @@ class AltDiffusionPipelineOutput(BaseOutput):
๋” ์ž์„ธํžˆ ์•Œ๊ณ  ์‹ถ๋‹ค๋ฉด [~Don't~ Repeat Yourself*](https://huggingface.co/blog/transformers-design-philosophy#4-machine-learning-models-are-static) ๋ธ”๋กœ๊ทธ ํฌ์ŠคํŠธ์˜ ์ด ์„น์…˜์„ ์ฝ์–ด๋ณด์„ธ์š”.
## ์ข‹์€ ์ด์Šˆ ์ž‘์„ฑ ๋ฐฉ๋ฒ•
## ์ข‹์€ ์ด์Šˆ ์ž‘์„ฑ ๋ฐฉ๋ฒ• [[how-to-write-a-good-issue]]
**์ด์Šˆ๋ฅผ ์ž˜ ์ž‘์„ฑํ• ์ˆ˜๋ก ๋น ๋ฅด๊ฒŒ ํ•ด๊ฒฐ๋  ๊ฐ€๋Šฅ์„ฑ์ด ๋†’์•„์ง‘๋‹ˆ๋‹ค.**
@@ -356,16 +355,16 @@ class AltDiffusionPipelineOutput(BaseOutput):
3. **์žฌํ˜„ ๊ฐ€๋Šฅ์„ฑ**: ์žฌํ˜„ ๊ฐ€๋Šฅํ•œ ์ฝ”๋“œ ์กฐ๊ฐ์ด ์—†์œผ๋ฉด ํ•ด๊ฒฐํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๋ฒ„๊ทธ๋ฅผ ๋ฐœ๊ฒฌํ•œ ๊ฒฝ์šฐ, ์œ ์ง€ ๊ด€๋ฆฌ์ž๋Š” ๊ทธ ๋ฒ„๊ทธ๋ฅผ ์žฌํ˜„ํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด์Šˆ์— ์žฌํ˜„ ๊ฐ€๋Šฅํ•œ ์ฝ”๋“œ ์กฐ๊ฐ์„ ํฌํ•จํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ฝ”๋“œ ์กฐ๊ฐ์€ Python ์ธํ„ฐํ”„๋ฆฌํ„ฐ์— ๋ณต์‚ฌํ•˜์—ฌ ๋ถ™์—ฌ๋„ฃ์„ ์ˆ˜ ์žˆ๋Š” ํ˜•ํƒœ์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ฝ”๋“œ ์กฐ๊ฐ์ด ์ž‘๋™ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ฆ‰, ๋ˆ„๋ฝ๋œ import๋‚˜ ์ด๋ฏธ์ง€์— ๋Œ€ํ•œ ๋งํฌ๊ฐ€ ์—†์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด์Šˆ์—๋Š” ์˜ค๋ฅ˜ ๋ฉ”์‹œ์ง€์™€ ์ •ํ™•ํžˆ ๋™์ผํ•œ ์˜ค๋ฅ˜ ๋ฉ”์‹œ์ง€๋ฅผ ์žฌํ˜„ํ•˜๊ธฐ ์œ„ํ•ด ์ˆ˜์ •ํ•˜์ง€ ์•Š๊ณ  ๋ณต์‚ฌํ•˜์—ฌ ๋ถ™์—ฌ๋„ฃ์„ ์ˆ˜ ์žˆ๋Š” ์ฝ”๋“œ ์กฐ๊ฐ์ด ํฌํ•จ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด์Šˆ์— ์‚ฌ์šฉ์ž์˜ ๋กœ์ปฌ ๋ชจ๋ธ ๊ฐ€์ค‘์น˜๋‚˜ ๋กœ์ปฌ ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ, ๋…์ž๊ฐ€ ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†๋Š” ๊ฒฝ์šฐ ์ด์Šˆ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ๋‚˜ ๋ชจ๋ธ์„ ๊ณต์œ ํ•  ์ˆ˜ ์—†๋Š” ๊ฒฝ์šฐ, ๋”๋ฏธ ๋ชจ๋ธ์ด๋‚˜ ๋”๋ฏธ ๋ฐ์ดํ„ฐ๋ฅผ ๋งŒ๋“ค์–ด ์‚ฌ์šฉํ•ด๋ณด์„ธ์š”.
4. **๊ฐ„๊ฒฐ์„ฑ**: ๊ฐ€๋Šฅํ•œ ํ•œ ๊ฐ„๊ฒฐํ•˜๊ฒŒ ์œ ์ง€ํ•˜์—ฌ ๋…์ž๊ฐ€ ๋ฌธ์ œ๋ฅผ ๋น ๋ฅด๊ฒŒ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋„๋ก ๋„์™€์ฃผ์„ธ์š”. ๋ฌธ์ œ์™€ ๊ด€๋ จ์ด ์—†๋Š” ์ฝ”๋“œ๋‚˜ ์ •๋ณด๋Š” ๋ชจ๋‘ ์ œ๊ฑฐํ•ด์ฃผ์„ธ์š”. ๋ฒ„๊ทธ๋ฅผ ๋ฐœ๊ฒฌํ•œ ๊ฒฝ์šฐ, ๋ฌธ์ œ๋ฅผ ์„ค๋ช…ํ•˜๋Š” ๊ฐ€์žฅ ๊ฐ„๋‹จํ•œ ์ฝ”๋“œ ์˜ˆ์ œ๋ฅผ ๋งŒ๋“ค์–ด๋ณด์„ธ์š”. ๋ฒ„๊ทธ๋ฅผ ๋ฐœ๊ฒฌํ•œ ํ›„์—๋Š” ์ž‘์—… ํ๋ฆ„ ์ „์ฒด๋ฅผ ๋ฌธ์ œ์— ๋˜์ง€๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ, ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•˜๋Š” ํ›ˆ๋ จ ์ฝ”๋“œ์˜ ์–ด๋А ๋ถ€๋ถ„์ด ๋ฌธ์ œ์ธ์ง€ ๋จผ์ € ์ดํ•ดํ•˜๊ณ  ๋ช‡ ์ค„๋กœ ์žฌํ˜„ํ•ด๋ณด์„ธ์š”. ์ „์ฒด ๋ฐ์ดํ„ฐ์…‹ ๋Œ€์‹  ๋”๋ฏธ ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฌ์šฉํ•ด๋ณด์„ธ์š”.
5. ๋งํฌ ์ถ”๊ฐ€ํ•˜๊ธฐ. ํŠน์ •ํ•œ ์ด๋ฆ„, ๋ฉ”์„œ๋“œ, ๋˜๋Š” ๋ชจ๋ธ์„ ์ฐธ์กฐํ•˜๋Š” ๊ฒฝ์šฐ, ๋…์ž๊ฐ€ ๋” ์ž˜ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋„๋ก ๋งํฌ๋ฅผ ์ œ๊ณตํ•ด์ฃผ์„ธ์š”. ํŠน์ • PR์ด๋‚˜ ์ด์Šˆ๋ฅผ ์ฐธ์กฐํ•˜๋Š” ๊ฒฝ์šฐ, ํ•ด๋‹น ์ด์Šˆ์— ๋งํฌ๋ฅผ ๊ฑธ์–ด์ฃผ์„ธ์š”. ๋…์ž๊ฐ€ ๋ฌด์—‡์„ ๋งํ•˜๋Š”์ง€ ์•Œ๊ณ  ์žˆ๋‹ค๊ณ  ๊ฐ€์ •ํ•˜์ง€ ๋งˆ์„ธ์š”. ์ด์Šˆ์— ๋งํฌ๋ฅผ ์ถ”๊ฐ€ํ• ์ˆ˜๋ก ์ข‹์Šต๋‹ˆ๋‹ค.
6. ํฌ๋งทํŒ…. ํŒŒ์ด์ฌ ์ฝ”๋“œ ๊ตฌ๋ฌธ์œผ๋กœ ์ฝ”๋“œ๋ฅผ ํฌ๋งทํŒ…ํ•˜๊ณ , ์ผ๋ฐ˜ ์ฝ”๋“œ ๊ตฌ๋ฌธ์œผ๋กœ ์—๋Ÿฌ ๋ฉ”์‹œ์ง€๋ฅผ ํฌ๋งทํŒ…ํ•ด์ฃผ์„ธ์š”. ์ž์„ธํ•œ ๋‚ด์šฉ์€ [๊ณต์‹ GitHub ํฌ๋งทํŒ… ๋ฌธ์„œ](https://docs.github.com/en/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax)๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.
7. ์ด์Šˆ๋ฅผ ํ•ด๊ฒฐํ•ด์•ผ ํ•˜๋Š” ํ‹ฐ์ผ“์ด ์•„๋‹ˆ๋ผ, ์ž˜ ์ž‘์„ฑ๋œ ๋ฐฑ๊ณผ์‚ฌ์ „ ํ•ญ๋ชฉ์œผ๋กœ ์ƒ๊ฐํ•ด๋ณด์„ธ์š”. ์ถ”๊ฐ€๋œ ์ด์Šˆ๋Š” ๊ณต๊ฐœ์ ์œผ๋กœ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ์ง€์‹์— ๊ธฐ์—ฌํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ž˜ ์ž‘์„ฑ๋œ ์ด์Šˆ๋ฅผ ์ถ”๊ฐ€ํ•จ์œผ๋กœ์จ ๋ฉ”์ธํ…Œ์ด๋„ˆ๊ฐ€ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐ ๋„์›€์„ ์ฃผ๋Š” ๊ฒƒ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ, ์ „์ฒด ์ปค๋ฎค๋‹ˆํ‹ฐ๊ฐ€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ํŠน์ • ์ธก๋ฉด์„ ๋” ์ž˜ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋„๋ก ๋„์›€์„ ์ฃผ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
6. ํฌ๋งทํŒ…. ์ฝ”๋“œ๋ฅผ ํŒŒ์ด์ฌ ์ฝ”๋“œ ๊ตฌ๋ฌธ์œผ๋กœ, ์—๋Ÿฌ ๋ฉ”์‹œ์ง€๋ฅผ ์ผ๋ฐ˜ ์ฝ”๋“œ ๊ตฌ๋ฌธ์œผ๋กœ ํ˜•์‹ํ™”ํ•˜์—ฌ ์ด์Šˆ๋ฅผ ๊น”๋”ํ•˜๊ฒŒ ์ž‘์„ฑํ•˜์„ธ์š”. ์ž์„ธํ•œ ๋‚ด์šฉ์€ [GitHub ๊ณต์‹ ํฌ๋งทํŒ… ๋ฌธ์„œ](https://docs.github.com/en/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax)๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.
7. ์—ฌ๋Ÿฌ๋ถ„์˜ ์ด์Šˆ๋ฅผ ๋‹จ์ˆœํžˆ ํ•ด๊ฒฐํ•ด์•ผ ํ•  ํ‹ฐ์ผ“์œผ๋กœ ์ƒ๊ฐํ•˜์ง€ ๋ง๊ณ , ์ž˜ ์ž‘์„ฑ๋œ ๋ฐฑ๊ณผ์‚ฌ์ „ ํ•ญ๋ชฉ์œผ๋กœ ์ƒ๊ฐํ•ด๋ณด์„ธ์š”. ์ถ”๊ฐ€๋œ ๋ชจ๋“  ์ด์Šˆ๋Š” ๊ณต๊ฐœ์ ์œผ๋กœ ์ด์šฉ ๊ฐ€๋Šฅํ•œ ์ง€์‹์— ๋Œ€ํ•œ ๊ธฐ์—ฌ์ž…๋‹ˆ๋‹ค. ์ž˜ ์ž‘์„ฑ๋œ ์ด์Šˆ๋ฅผ ์ถ”๊ฐ€ํ•จ์œผ๋กœ์จ ๋ฉ”์ธํ…Œ์ด๋„ˆ๊ฐ€ ์—ฌ๋Ÿฌ๋ถ„์˜ ์ด์Šˆ๋ฅผ ๋” ์‰ฝ๊ฒŒ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•  ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ, ์ „์ฒด ์ปค๋ฎค๋‹ˆํ‹ฐ๊ฐ€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ํŠน์ • ์ธก๋ฉด์„ ๋” ์ž˜ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋„๋ก ๋„์›€์„ ์ฃผ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.
## ์ข‹์€ PR ์ž‘์„ฑ ๋ฐฉ๋ฒ•
## ์ข‹์€ PR ์ž‘์„ฑ ๋ฐฉ๋ฒ• [[how-to-write-a-good-pr]]
1. ์นด๋ฉœ๋ ˆ์˜จ์ด ๋˜์„ธ์š”. ๊ธฐ์กด์˜ ๋””์ž์ธ ํŒจํ„ด๊ณผ ๊ตฌ๋ฌธ์„ ์ดํ•ดํ•˜๊ณ , ์ฝ”๋“œ ์ถ”๊ฐ€๊ฐ€ ๊ธฐ์กด ์ฝ”๋“œ๋ฒ ์ด์Šค์— ๋งค๋„๋Ÿฝ๊ฒŒ ํ๋ฅด๋„๋ก ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๋””์ž์ธ ํŒจํ„ด์ด๋‚˜ ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค์™€ ํฌ๊ฒŒ ๋‹ค๋ฅธ PR์€ ๋ณ‘ํ•ฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
2. ์ดˆ์ ์„ ๋งž์ถ”์„ธ์š”. ํ•˜๋‚˜์˜ ๋ฌธ์ œ๋งŒ ํ•ด๊ฒฐํ•˜๋Š” PR์„ ์ž‘์„ฑํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. "์ถ”๊ฐ€ํ•˜๋ฉด์„œ ๋‹ค๋ฅธ ๋ฌธ์ œ๋„ ํ•ด๊ฒฐํ•˜๊ธฐ"์— ๋น ์ง€์ง€ ์•Š๋„๋ก ์ฃผ์˜ํ•˜์„ธ์š”. ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๊ด€๋ จ ์—†๋Š” ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” PR์„ ์ž‘์„ฑํ•˜๋Š” ๊ฒƒ์€ ๋ฆฌ๋ทฐํ•˜๊ธฐ๊ฐ€ ํ›จ์”ฌ ์–ด๋ ต์Šต๋‹ˆ๋‹ค.
1. ์นด๋ฉœ๋ ˆ์˜จ์ด ๋˜์„ธ์š”. ๊ธฐ์กด์˜ ๋””์ž์ธ ํŒจํ„ด๊ณผ ๊ตฌ๋ฌธ์„ ์ดํ•ดํ•˜๊ณ , ์—ฌ๋Ÿฌ๋ถ„์ด ์ถ”๊ฐ€ํ•˜๋Š” ์ฝ”๋“œ๊ฐ€ ๊ธฐ์กด ์ฝ”๋“œ๋ฒ ์ด์Šค์™€ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ์–ด์šฐ๋Ÿฌ์ง€๋„๋ก ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๋””์ž์ธ ํŒจํ„ด์ด๋‚˜ ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค์™€ ํฌ๊ฒŒ ๋‹ค๋ฅธ Pull Request๋“ค์€ ๋ณ‘ํ•ฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
2. ๋ ˆ์ด์ €์ฒ˜๋Ÿผ ์ง‘์ค‘ํ•˜์„ธ์š”. Pull Request๋Š” ํ•˜๋‚˜์˜ ๋ฌธ์ œ, ์˜ค์ง ํ•˜๋‚˜์˜ ๋ฌธ์ œ๋งŒ ํ•ด๊ฒฐํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. "์ด์™• ์ถ”๊ฐ€ํ•˜๋Š” ๊น€์— ๋‹ค๋ฅธ ๋ฌธ์ œ๋„ ๊ณ ์น˜์ž"๋Š” ํ•จ์ •์— ๋น ์ง€์ง€ ์•Š๋„๋ก ์ฃผ์˜ํ•˜์„ธ์š”. ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๊ด€๋ จ ์—†๋Š” ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ํ•œ ๋ฒˆ์— ํ•ด๊ฒฐํ•˜๋Š” Pull Request๋“ค์€ ๊ฒ€ํ† ํ•˜๊ธฐ๊ฐ€ ํ›จ์”ฌ ๋” ์–ด๋ ต์Šต๋‹ˆ๋‹ค.
3. ๋„์›€์ด ๋˜๋Š” ๊ฒฝ์šฐ, ์ถ”๊ฐ€ํ•œ ๋‚ด์šฉ์ด ์–ด๋–ป๊ฒŒ ์‚ฌ์šฉ๋˜๋Š”์ง€ ์˜ˆ์ œ ์ฝ”๋“œ ์กฐ๊ฐ์„ ์ถ”๊ฐ€ํ•ด๋ณด์„ธ์š”.
4. PR์˜ ์ œ๋ชฉ์€ ๊ธฐ์—ฌ ๋‚ด์šฉ์„ ์š”์•ฝํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
5. PR์ด ์ด์Šˆ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๊ฒฝ์šฐ, PR ์„ค๋ช…์— ์ด์Šˆ ๋ฒˆํ˜ธ๋ฅผ ์–ธ๊ธ‰ํ•˜์—ฌ ์—ฐ๊ฒฐ๋˜๋„๋ก ํ•ด์ฃผ์„ธ์š” (์ด์Šˆ๋ฅผ ์ฐธ์กฐํ•˜๋Š” ์‚ฌ๋žŒ๋“ค์ด ์ž‘์—… ์ค‘์ž„์„ ์•Œ ์ˆ˜ ์žˆ๋„๋ก).
4. Pull Request์˜ ์ œ๋ชฉ์€ ๊ธฐ์—ฌ ๋‚ด์šฉ์„ ์š”์•ฝํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
5. Pull Request๊ฐ€ ์ด์Šˆ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๊ฒฝ์šฐ, Pull Request์˜ ์„ค๋ช…์— ์ด์Šˆ ๋ฒˆํ˜ธ๋ฅผ ์–ธ๊ธ‰ํ•˜์—ฌ ์—ฐ๊ฒฐ๋˜๋„๋ก ํ•ด์ฃผ์„ธ์š” (์ด์Šˆ๋ฅผ ์ฐธ์กฐํ•˜๋Š” ์‚ฌ๋žŒ๋“ค์ด ์ž‘์—… ์ค‘์ž„์„ ์•Œ ์ˆ˜ ์žˆ๋„๋ก).
6. ์ง„ํ–‰ ์ค‘์ธ ์ž‘์—…์„ ๋‚˜ํƒ€๋‚ด๋ ค๋ฉด ์ œ๋ชฉ์— `[WIP]`๋ฅผ ์ ‘๋‘์‚ฌ๋กœ ๋ถ™์—ฌ์ฃผ์„ธ์š”. ์ด๋Š” ์ค‘๋ณต ์ž‘์—…์„ ํ”ผํ•˜๊ณ , ๋ณ‘ํ•ฉ ์ค€๋น„๊ฐ€ ๋œ PR๊ณผ ๊ตฌ๋ถ„ํ•  ์ˆ˜ ์žˆ๋„๋ก ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค.
7. [์ข‹์€ ์ด์Šˆ๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•](#how-to-write-a-good-issue)์— ์„ค๋ช…๋œ ๋Œ€๋กœ ํ…์ŠคํŠธ๋ฅผ ๊ตฌ์„ฑํ•˜๊ณ  ํ˜•์‹์„ ์ง€์ •ํ•ด๋ณด์„ธ์š”.
8. ๊ธฐ์กด ํ…Œ์ŠคํŠธ๊ฐ€ ํ†ต๊ณผํ•˜๋Š”์ง€ ํ™•์ธํ•˜์„ธ์š”
@@ -374,10 +373,10 @@ class AltDiffusionPipelineOutput(BaseOutput):
`RUN_SLOW=1 python -m pytest tests/test_my_new_model.py`.
CircleCI๋Š” ๋А๋ฆฐ ํ…Œ์ŠคํŠธ๋ฅผ ์‹คํ–‰ํ•˜์ง€ ์•Š์ง€๋งŒ, GitHub Actions๋Š” ๋งค์ผ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค!
10. ๋ชจ๋“  ๊ณต๊ฐœ ๋ฉ”์„œ๋“œ๋Š” ๋งˆํฌ๋‹ค์šด๊ณผ ์ž˜ ์ž‘๋™ํ•˜๋Š” ์ •๋ณด์„ฑ docstring์„ ๊ฐ€์ ธ์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ์‹œ๋กœ [`pipeline_latent_diffusion.py`](https://github.com/huggingface/diffusers/blob/main/src/diffusers/pipelines/latent_diffusion/pipeline_latent_diffusion.py)๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.
11. ๋ ˆํฌ์ง€ํ† ๋ฆฌ๊ฐ€ ๋น ๋ฅด๊ฒŒ ์„ฑ์žฅํ•˜๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์—, ๋ ˆํฌ์ง€ํ† ๋ฆฌ์— ํฐ ๋ถ€๋‹ด์„ ์ฃผ๋Š” ํŒŒ์ผ์ด ์ถ”๊ฐ€๋˜์ง€ ์•Š๋„๋ก ์ฃผ์˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฏธ์ง€, ๋น„๋””์˜ค ๋ฐ ๊ธฐํƒ€ ํ…์ŠคํŠธ๊ฐ€ ์•„๋‹Œ ํŒŒ์ผ์„ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ํŒŒ์ผ์„ ๋ฐฐ์น˜ํ•˜๊ธฐ ์œ„ํ•ด hf.co ํ˜ธ์ŠคํŒ… `dataset`์ธ [`hf-internal-testing`](https://huggingface.co/hf-internal-testing) ๋˜๋Š” [huggingface/documentation-images](https://huggingface.co/datasets/huggingface/documentation-images)๋ฅผ ํ™œ์šฉํ•˜๋Š” ๊ฒƒ์ด ์šฐ์„ ์ž…๋‹ˆ๋‹ค.
11. ๋ฆฌํฌ์ง€ํ† ๋ฆฌ๊ฐ€ ๋น ๋ฅด๊ฒŒ ์„ฑ์žฅํ•˜๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์—, ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ํฐ ๋ถ€๋‹ด์„ ์ฃผ๋Š” ํŒŒ์ผ์ด ์ถ”๊ฐ€๋˜์ง€ ์•Š๋„๋ก ์ฃผ์˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฏธ์ง€, ๋น„๋””์˜ค ๋ฐ ๊ธฐํƒ€ ํ…์ŠคํŠธ๊ฐ€ ์•„๋‹Œ ํŒŒ์ผ์„ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ํŒŒ์ผ์„ ๋ฐฐ์น˜ํ•˜๊ธฐ ์œ„ํ•ด hf.co ํ˜ธ์ŠคํŒ… `dataset`์ธ [`hf-internal-testing`](https://huggingface.co/hf-internal-testing) ๋˜๋Š” [huggingface/documentation-images](https://huggingface.co/datasets/huggingface/documentation-images)๋ฅผ ํ™œ์šฉํ•˜๋Š” ๊ฒƒ์ด ์šฐ์„ ์ž…๋‹ˆ๋‹ค.
์™ธ๋ถ€ ๊ธฐ์—ฌ์ธ ๊ฒฝ์šฐ, ์ด๋ฏธ์ง€๋ฅผ PR์— ์ถ”๊ฐ€ํ•˜๊ณ  Hugging Face ๊ตฌ์„ฑ์›์—๊ฒŒ ์ด๋ฏธ์ง€๋ฅผ ์ด ๋ฐ์ดํ„ฐ์…‹์œผ๋กœ ์ด๋™ํ•˜๋„๋ก ์š”์ฒญํ•˜์„ธ์š”.
## PR์„ ์—ด๊ธฐ ์œ„ํ•œ ๋ฐฉ๋ฒ•
## PR์„ ์—ด๊ธฐ ์œ„ํ•œ ๋ฐฉ๋ฒ• [[how-to-open-a-pr]]
์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๊ธฐ ์ „์—, ์ด๋ฏธ ๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ๊ฐ™์€ ์ž‘์—…์„ ํ•˜๊ณ  ์žˆ๋Š”์ง€ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด ๊ธฐ์กด์˜ PR์ด๋‚˜ ์ด์Šˆ๋ฅผ ๊ฒ€์ƒ‰ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. ํ™•์‹คํ•˜์ง€ ์•Š์€ ๊ฒฝ์šฐ, ํ”ผ๋“œ๋ฐฑ์„ ๋ฐ›๊ธฐ ์œ„ํ•ด ์ด์Šˆ๋ฅผ ์—ด์–ด๋ณด๋Š” ๊ฒƒ์ด ํ•ญ์ƒ ์ข‹์€ ์•„์ด๋””์–ด์ž…๋‹ˆ๋‹ค.
@@ -403,7 +402,7 @@ CircleCI๋Š” ๋А๋ฆฐ ํ…Œ์ŠคํŠธ๋ฅผ ์‹คํ–‰ํ•˜์ง€ ์•Š์ง€๋งŒ, GitHub Actions๋Š” ๋งค์ผ
`main` ๋ธŒ๋žœ์น˜ ์œ„์—์„œ **์ ˆ๋Œ€** ์ž‘์—…ํ•˜์ง€ ๋งˆ์„ธ์š”.
1. ๊ฐ€์ƒ ํ™˜๊ฒฝ์—์„œ ๋‹ค์Œ ๋ช…๋ น์„ ์‹คํ–‰ํ•˜์—ฌ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์„ ์„ค์ •ํ•˜์„ธ์š”:
4. ๊ฐ€์ƒ ํ™˜๊ฒฝ์—์„œ ๋‹ค์Œ ๋ช…๋ น์„ ์‹คํ–‰ํ•˜์—ฌ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์„ ์„ค์ •ํ•˜์„ธ์š”:
```bash
$ pip install -e ".[dev]"
@@ -467,7 +466,7 @@ CircleCI๋Š” ๋А๋ฆฐ ํ…Œ์ŠคํŠธ๋ฅผ ์‹คํ–‰ํ•˜์ง€ ์•Š์ง€๋งŒ, GitHub Actions๋Š” ๋งค์ผ
7. ๋ฉ”์ธํ…Œ์ด๋„ˆ๊ฐ€ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์š”์ฒญํ•˜๋Š” ๊ฒƒ์€ ๊ดœ์ฐฎ์Šต๋‹ˆ๋‹ค. ํ•ต์‹ฌ ๊ธฐ์—ฌ์ž๋“ค์—๊ฒŒ๋„ ์ผ์–ด๋‚˜๋Š” ์ผ์ž…๋‹ˆ๋‹ค! ๋”ฐ๋ผ์„œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ Pull request์—์„œ ๋ณผ ์ˆ˜ ์žˆ๋„๋ก ๋กœ์ปฌ ๋ธŒ๋žœ์น˜์—์„œ ์ž‘์—…ํ•˜๊ณ  ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ํฌํฌ์— ํ‘ธ์‹œํ•˜๋ฉด ์ž๋™์œผ๋กœ Pull request์— ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค.
### ํ…Œ์ŠคํŠธ
### ํ…Œ์ŠคํŠธ [[tests]]
๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋™์ž‘๊ณผ ์—ฌ๋Ÿฌ ์˜ˆ์ œ๋ฅผ ํ…Œ์ŠคํŠธํ•˜๊ธฐ ์œ„ํ•ด ํฌ๊ด„์ ์ธ ํ…Œ์ŠคํŠธ ๋ฌถ์Œ์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ํ…Œ์ŠคํŠธ๋Š” [tests ํด๋”](https://github.com/huggingface/diffusers/tree/main/tests)์—์„œ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
@@ -494,7 +493,7 @@ $ python -m unittest discover -s tests -t . -v
$ python -m unittest discover -s examples -t examples -v
```
### upstream(main)๊ณผ forked main ๋™๊ธฐํ™”ํ•˜๊ธฐ
### upstream(HuggingFace) main๊ณผ forked main ๋™๊ธฐํ™”ํ•˜๊ธฐ [[syncing-forked-main-with-upstream-huggingface-main]]
upstream ์ €์žฅ์†Œ์— ๋ถˆํ•„์š”ํ•œ ์ฐธ์กฐ ๋…ธํŠธ๋ฅผ ์ถ”๊ฐ€ํ•˜๊ณ  ๊ด€๋ จ ๊ฐœ๋ฐœ์ž์—๊ฒŒ ์•Œ๋ฆผ์„ ๋ณด๋‚ด๋Š” ๊ฒƒ์„ ํ”ผํ•˜๊ธฐ ์œ„ํ•ด,
forked ์ €์žฅ์†Œ์˜ main ๋ธŒ๋žœ์น˜๋ฅผ ๋™๊ธฐํ™”ํ•  ๋•Œ ๋‹ค์Œ ๋‹จ๊ณ„๋ฅผ ๋”ฐ๋ฅด์„ธ์š”:
@@ -507,6 +506,6 @@ $ git commit -m '<your message without GitHub references>'
$ git push --set-upstream origin your-branch-for-syncing
```
### ์Šคํƒ€์ผ ๊ฐ€์ด๋“œ
### ์Šคํƒ€์ผ ๊ฐ€์ด๋“œ [[style-guide]]
Documentation string์— ๋Œ€ํ•ด์„œ๋Š”, ๐Ÿงจ Diffusers๋Š” [Google ์Šคํƒ€์ผ](https://google.github.io/styleguide/pyguide.html)์„ ๋”ฐ๋ฆ…๋‹ˆ๋‹ค.