Transformers documentation
공유
공유
Hugging Face Hub은 다양한 유형과 크기의 모델을 공유하고, 발견하며, 활용하기 위한 플랫폼입니다. 모든 사람을 위해 오픈소스 머신러닝을 발전시키기 위해, 모델을 Hub에 공유하는 것을 강력히 권장합니다!
이 가이드에서는 Transformers에서 모델을 Hub에 공유하는 방법을 보여 드립니다.
설정
Hub에 모델을 공유하려면 Hugging Face 계정이 필요합니다. User Access Token을 생성하고(기본적으로 cache에 저장됨) 명령줄 또는 notebook에서 계정에 로그인하세요.
hf auth login
from huggingface_hub import notebook_login
notebook_login()리포지토리 기능
각 모델 저장소는 버전 관리, 커밋 히스토리, diff 시각화를 제공합니다.

버전 관리는 Git과 Git Large File Storage (LFS)를 기반으로 하며, 리비전(revision)을 통해 커밋 해시, 태그 또는 브랜치로 모델 버전을 지정할 수 있습니다.
예를 들어, from_pretrained()에서 revision 매개변수를 사용하여 커밋 해시에서 특정 모델 버전을 로드할 수 있습니다.
model = AutoModel.from_pretrained(
"julien-c/EsperBERTo-small", revision="4c77982"
)브랜치 또는 태그에서 로드하면 해당 호출의 모든 파일이 하나의 커밋에 고정된 후, 그 커밋에서 모든 파일을 가져옵니다.
해당 pin은 해당 호출 동안에만 유지됩니다. 실행 간 재현성을 확보하려면, 고정된 것으로 취급하는 명시적인 commit hash 또는 tag를 전달하세요. 실행 간 main이나 다른 이동하는 branch가 고정된 상태를 유지한다고 의존하지 마세요.
모델 저장소도 게이팅을 지원하여 모델에 대한 액세스를 제어할 수 있습니다. 게이팅은 공개 전에 소수의 사용자 그룹이 연구용 모델을 미리 볼 수 있도록 하는 데 일반적으로 사용됩니다.

모델 저장소에는 사용자가 Hub에서 모델과 직접 상호작용할 수 있는 추론 위젯도 포함됩니다.
자세한 내용은 Hub Models 문서를 참고하세요.
모델 업로드
워크플로우 선호도에 따라 모델을 Hub에 업로드하는 방법은 여러 가지가 있습니다. Trainer를 사용하여 모델을 push하거나, 모델에 대해 push_to_hub()를 직접 호출하거나, Hub 웹 인터페이스를 사용할 수 있습니다.
Trainer
Trainer는 학습 후 모델을 Hub에 직접 업로드할 수 있습니다. TrainingArguments에서 push_to_hub=True를 설정하고 Trainer에 전달하세요. 학습이 완료되면 push_to_hub()를 호출하여 모델을 업로드합니다.
push_to_hub()는 학습 하이퍼파라미터와 결과와 같은 유용한 정보를 모델 카드에 자동으로 추가합니다.
from transformers import TrainingArguments, Trainer
training_args = TrainingArguments(output_dir="my-awesome-model", push_to_hub=True)
trainer = Trainer(
model=model,
args=training_args,
train_dataset=small_train_dataset,
eval_dataset=small_eval_dataset,
compute_metrics=compute_metrics,
)
trainer.push_to_hub()모델을 비공개 저장소에 업로드하려면 TrainingArguments에서 hub_private_repo=True를 설정하세요. 저장소가 아직 생성되지 않은 경우(예: TrainingArguments에서 push_to_hub=False인 경우)에는 push_to_hub()에 private=True를 전달하는 것도 가능합니다. private 인수는 저장소가 생성될 때만 적용되므로, 기존 저장소의 가시성을 변경하지 않습니다.
trainer.push_to_hub(private=True)PushToHubMixin
PushToHubMixin은 모델이나 토크나이저를 Hub에 푸시하는 기능을 제공합니다.
Call push_to_hub() directly on a model to upload it to the Hub. It creates a repository under your namespace with the model name specified in push_to_hub().
model.push_to_hub("my-awesome-model")토크나이저와 같은 다른 객체도 동일한 방식으로 Hub에 push됩니다.
tokenizer.push_to_hub("my-awesome-model")Hugging Face 프로필에 새로 생성된 모델 저장소가 표시되어야 합니다. 업로드된 모든 파일을 확인하려면 Files 탭으로 이동하세요.
Hub에 파일을 푸시하는 방법에 대한 자세한 내용은 Hub에 파일 업로드 가이드를 참조하세요.
Hub 웹 인터페이스
Hub 웹 인터페이스는 코딩 없이 모델을 업로드하는 방법입니다.
- 새 모델을 선택하여 새 저장소를 생성합니다.

모델에 대한 정보를 추가하세요:
- 리포지토리의 owner를 선택합니다. 이는 사용자 자신 또는 사용자가 속한 조직 중 하나일 수 있습니다.
- 모델 이름을 선택하세요. 이 이름은 저장소 이름으로도 사용됩니다.
- 모델이 공개인지 비공개인지 선택합니다.
- 라이선스 사용법을 설정합니다.
모델 저장소를 생성하려면 Create model을 클릭하세요.
Files 탭을 선택한 후 Add file 버튼을 클릭하여 파일을 리포지토리에 드래그 앤 드롭으로 추가합니다. 커밋 메시지를 입력하고 Commit changes to main을 클릭하여 파일을 커밋합니다.

모델 카드
모델 카드는 모델의 성능, 한계, 잠재적 편향, 윤리적 고려 사항에 대해 사용자에게 정보를 제공합니다. 저장소에 모델 카드를 추가하는 것을 강력히 권장합니다!
모델 카드는 저장소의 README.md 파일입니다. 이 파일을 추가하려면:
README.md파일을 수동으로 생성하여 업로드- 리포지토리의 모델 카드 편집 버튼을 클릭하는 것
모델 카드에 무엇을 포함해야 하는지 예시로 Llama 3.1 모델 카드를 확인해 보세요.
Model Cards 가이드에서 탄소 배출량, 라이선스, 논문 링크 등 다른 모델 카드 메타데이터에 대해 자세히 알아보세요.
Update on GitHub