ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Huggingface 컨트리뷰션 안내 정리 (1)
    개발 기록/컨트리뷰션 2025. 2. 13. 23:33

    Transformers

    🤗 Transformers 프로젝트에 기여하는 방법에 대한 자세한 안내입니다. 코드 기여 외에도 질문에 답변하거나 문서 개선 등 커뮤니티를 돕는 다양한 방법이 있습니다. 라이브러리를 홍보하는 것도 커뮤니티에 큰 도움이 됩니다. 예를 들어, 프로젝트에 도움이 된다면 트위터에 언급하거나 레포지토리에 별표를 주어 감사의 뜻을 표시할 수 있습니다. 기여를 선택할 때는 행동 강령을 준수해 주세요.

    기여 방법:

    • 기존 코드의 미해결 이슈 수정
    • 버그 관련 이슈나 새로운 기능에 대한 이슈 제출
    • 새로운 모델 구현
    • 예제나 문서에 기여

    처음 기여하는 경우, 초보자에게 적합한 Good First Issue 목록에서 시작할 수 있습니다. 좀 더 도전적인 작업을 원한다면 Good Second Issue 목록을 확인하세요.

    풀 리퀘스트 생성:

    1. 기여하기 전에 이미 진행 중인 작업이 없는지 확인하세요. 불확실한 경우 이슈를 열어 피드백을 받는 것이 좋습니다.
    2. 기여에 필요한 기본적인 git 지식이 필요합니다. git은 사용하기 어려울 수 있지만 가장 좋은 매뉴얼을 제공합니다.
    3. 🤗 Transformers에 기여하기 위해서는 Python 3.9 이상이 필요합니다.
    4. 레포지토리를 포크하고, 로컬 디스크에 클론한 후, 새 브랜치를 만들어 변경 사항을 개발하세요.
    5. 가상 환경에서 개발 환경을 설정하고, 필요한 테스트를 실행하여 변경 사항이 기존 테스트를 통과하는지 확인하세요.
    6. 코드 스타일과 품질을 유지하기 위해 black, ruff와 같은 도구를 사용하여 소스 코드를 포맷하세요.
    7. 문서 변경 사항이 있는 경우, 문서가 여전히 빌드되는지 확인하세요.
    8. 변경 사항을 추가하고 로컬에 커밋한 후, 변경 사항을 포크한 레포지토리의 브랜치로 푸시하세요.
    9. GitHub에서 풀 리퀘스트를 열어 프로젝트 관리자에게 리뷰를 요청하세요.

    테스트 및 스타일 가이드:

    • pytest를 사용하여 라이브러리의 동작을 테스트하고, 필요한 경우 unittest도 지원합니다.
    • 문서 작성 시 🤗 Transformers는 Google Python Style Guide를 따릅니다.

    윈도우에서 개발:

    • 윈도우에서 개발할 때는 git 설정을 조정해야 하며, make 명령어를 사용하기 위해 MSYS2를 설치할 수 있습니다.

    포크된 레포지토리를 상위 레포지토리와 동기화:

    • 메인 브랜치를 업데이트할 때는 상위 레포지토리에 불필요한 알림을 보내지 않도록 주의해야 합니다.

    이 정보를 바탕으로 🤗 Transformers 프로젝트에 효과적으로 기여할 수 있습니다.

    Diffusers

    🧨 Diffusers 프로젝트에 기여하는 방법에 대해 설명하겠습니다. 이 프로젝트는 오픈 소스 커뮤니티로부터의 기여를 환영하며, 코드 기여뿐만 아니라 질문에 답변하기, 다른 사람들을 도와주기, 문서 개선 등 다양한 형태의 참여를 소중하게 생각합니다.

    참여 방법:

    1. 커뮤니티와 소통하기 위해 Discord 채널에서 인사를 시작하세요.
    2. 질문에 답변하거나 문서를 개선하는 것처럼 다양한 방법으로 기여할 수 있습니다.
    3. 행동 강령윤리 지침을 읽고 이를 준수해주세요.

    기여할 수 있는 다양한 방법:

    • 질문에 답하기
    • 새 이슈 열기
    • 문서 기여
    • 새 모델이나 파이프라인 추가

    풀 리퀘스트(PR) 작성:

    • 기여하기 전에 동일한 작업을 하는 다른 PR이 없는지 확인하세요.
    • 개발 환경을 설정하고, git 명령어를 사용하여 코드 변경 사항을 관리하세요.
    • PR을 만들고, 리뷰를 받으세요.

    이슈 작성 방법:

    • 이슈를 명확하고 간결하게 작성하여, 빠른 해결을 도모하세요.
    • 문제를 재현할 수 있는 코드 스니펫을 포함시키세요.
    • 문제의 원인과 해결 방법에 대해 명확히 설명하세요.

    좋은 PR 작성 방법:

    • 기존 디자인 패턴과 일관성을 유지하며 코드를 작성하세요.
    • PR은 하나의 문제만 해결해야 합니다.
    • 테스트를 포함시켜 코드의 품질을 보증하세요.

    기여 과정에서 질문이나 도움이 필요하면 언제든지 커뮤니티에 문의하세요. 여러분의 기여는 커뮤니티 전체에 큰 가치를 제공합니다.

    Datasets 

    오픈 이슈 작업 방법:

    1. 이슈 페이지에서 열려 있는 이슈 목록을 확인할 수 있습니다.
    2. 일부 이슈에는 "help wanted" 라벨이 붙어 있어, 누구나 환영하는 이슈임을 나타냅니다.
    3. 작업하고 싶은 이슈가 이미 다른 사람에게 할당되지 않았는지 확인하세요.
    4. 이슈 페이지에서 #self-assign을 코멘트하여 자신에게 할당할 수 있습니다.
    5. 자신에게 할당된 이슈에 대해 작업하고, 최종적으로 풀 리퀘스트를 생성합니다.

    풀 리퀘스트 생성 방법:

    1. 저장소의 'Fork' 버튼을 클릭하여 자신의 GitHub 계정 아래 코드의 복사본을 만듭니다.
    2. 로컬 디스크에 포크를 복제하고 기본 저장소를 원격으로 추가합니다:
    3. 개발 변경을 위한 새 브랜치를 생성합니다:
    4. 가상 환경에서 다음 명령어를 실행하여 개발 환경을 설정합니다:
    5. 코드를 포맷하고, 필요한 경우 make style을 실행하여 코드 스타일을 맞춥니다.
    6. 변경 사항을 추가하고 로컬에 커밋을 기록합니다:
    7. 정기적으로 코드의 사본을 원본 저장소와 동기화하여 변경사항을 반영합니다:
    8. 만족스러울 때까지 변경 사항을 포크 저장소에 푸시한 후 GitHub에서 "Pull request"를 클릭하여 리뷰를 요청합니다.

    Hugging Face에서 데이터셋 추가 방법:

    데이터셋 카드에 기여하는 방법:

    • 데이터셋 카드의 문서화 개선에 기여할 수 있습니다. 데이터셋 페이지의 "Files and versions" 탭에서 README.md 파일을 편집하여 Pull Request를 열 수 있습니다.
    • 데이터셋 작성자나 경험 많은 사용자로서 데이터셋 카드에 정보를 추가할 수 있습니다.

    이 과정을 통해 오픈 소스 커뮤니티에서 건설적이고 포용적인 행동을 촉진하는 데 도움을 줄 수 있습니다. 모든 참여자는 HuggingFace 행동 강령을 준수할 것으로 기대됩니다.

Designed by Tistory.