Transformers documentation

Paylaşma

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v5.22.2).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Paylaşma

Hugging Face Hub, her türden ve boyuttan modelleri paylaşmak, keşfetmek ve kullanmak için bir platformdur. Herkes için açık kaynak makine öğrenmesini ileriye taşımak adına modelinizi Hub'da paylaşmanızı şiddetle öneririz!

Bu kılavuz, bir modelin Transformers üzerinden Hub'a nasıl paylaşılacağını gösterecektir.

Kurulum

Bir modeli Hub'a paylaşmak için bir Hugging Face hesabınız olmalıdır. Bir User Access Token oluşturun (varsayılan olarak cache'te saklanır) ve hesabınıza komut satırından veya notebook'tan giriş yapın.

huggingface-CLI
notebook
hf auth login

Depo özellikleri

Her model deposu sürümleme, commit geçmişi ve diff görselleştirme özelliklerine sahiptir.

Sürümleme, Git ve Git Large File Storage (LFS) üzerine kuruludur ve bir commit hash, etiket veya dal ile model sürümünü belirtme yolu olan revizyonları destekler.

Örneğin, bir commit hash'ten belirli bir model sürümünü yüklemek için from_pretrained() içinde revision parametresini kullanın.

model = AutoModel.from_pretrained(
    "julien-c/EsperBERTo-small", revision="4c77982"
)

Bir dal veya etiketten yükleme, o çağrıdaki her dosyayı tek bir commit'e sabitler ve ardından tüm dosyaları o commit'ten getirir.

O pin yalnızca çağrı süresince geçerlidir. Çalıştırmalar arasında tekrarlanabilirlik için, sabit kabul ettiğiniz açık bir commit hash'i veya etiket geçirin. Çalıştırmalar arasında sabit kalacağına güvenerek main veya başka bir hareketli dalı kullanmayın.

Model depoları, bir modele kimlerin erişebileceğini kontrol etmek için gating (erişim kısıtlaması) desteği de sunar. Gating, bir araştırma modeli herkese açılmadan önce seçilmiş bir kullanıcı grubunun ön izleme yapmasına izin vermek için yaygın olarak kullanılır.

Bir model deposu, kullanıcıların Hub'da bir modelle doğrudan etkileşime geçebilmesi için bir çıkarım widget'ı da içerir.

Daha fazla bilgi için Hub Modeller belgesine göz atın.

Bir model yüklemek

İş akışı tercihlerinize bağlı olarak bir modeli Hub'a yüklemenin birkaç yolu vardır. Bir modeli Trainer ile yükleyebilir, bir model üzerinde doğrudan push_to_hub() çağrısı yapabilir veya Hub web arayüzünü kullanabilirsiniz.

Trainer

Trainer, eğitimden sonra modeli doğrudan Hub'a yükleyebilir. TrainingArguments içinde push_to_hub=True değerini ayarlayın ve bunu Trainer nesnesine iletin. Eğitim tamamlandığında, modeli yüklemek için push_to_hub() fonksiyonunu çağırın.

push_to_hub(), model kartına eğitim hiperparametreleri ve sonuçlar gibi faydalı bilgileri otomatik olarak ekler.

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()

Modeli özel bir depoya yüklemek için TrainingArguments içinde hub_private_repo=True değerini ayarlayın. Depo henüz oluşturulmadıysa (örneğin TrainingArguments içinde push_to_hub=False ise), bunun yerine push_to_hub() fonksiyonuna private=True parametresini de iletebilirsiniz. private argümanı yalnızca depo oluşturulurken etki eder; bu nedenle mevcut bir deponun görünürlüğünü değiştirmez.

trainer.push_to_hub(private=True)

PushToHubMixin

PushToHubMixin, bir model veya tokenizer'ı Hub'a gönderme işlevselliği sağlar.

Bir modelde doğrudan push_to_hub() çağırarak onu Hub'a yükleyebilirsiniz. Bu, push_to_hub() içinde belirtilen model adıyla ad alanınız altında bir depo oluşturur.

model.push_to_hub("my-awesome-model")

Tokenizer gibi diğer nesneler de aynı şekilde Hub'a itilir.

tokenizer.push_to_hub("my-awesome-model")

Hugging Face profilinizde artık yeni oluşturulan model deposu görünüyor olmalıdır. Yüklenen tüm dosyaları görmek için Files sekmesine gidin.

Dosyaları Hub'a gönderme hakkında daha fazla bilgi için Upload files to the Hub kılavuzuna bakın.

Hub web arayüzü

Hub web arayüzü, bir model yüklemek için kod gerektirmeyen bir yaklaşımdır.

  1. Yeni Model seçeneğini seçerek yeni bir depo oluşturun.

Modeliniz hakkında bazı bilgiler ekleyin:

  • Deponun sahibini seçin. Bu, kendiniz veya üye olduğunuz organizasyonlardan biri olabilir.
  • Modeliniz için bir ad seçin; bu ad aynı zamanda depoyu adınız olacaktır.
  • Modelinizin herkese açık mı yoksa özel mi olacağını seçin.
  • Lisans kullanımını ayarlayın.
  1. Model deposunu oluşturmak için Model oluştur öğesine tıklayın.

  2. Files sekmesini seçin ve dosyanızı deponuza sürükleyip bırakmak için Add file düğmesine tıklayın. Bir commit mesajı ekleyin ve dosyayı commitlemek için Commit changes to main düğmesine tıklayın.

Model kartı

Model kartları, bir modelin performansını, sınırlamalarını, olası önyargılarını ve etik hususlarını kullanıcılara bildirir. Deponuza bir model kartı eklemeniz şiddetle önerilir!

Bir model kartı, deposunuzdaki bir README.md dosyasıdır. Bu dosyayı şu şekilde ekleyin:

  • README.md dosyasını manuel olarak oluşturup yüklemek
  • depozitodaki Model kartını düzenle düğmesine tıklayarak

Model kartında nelerin yer alması gerektiğine dair bir örnek için Llama 3.1 model kartına göz atın.

Model kartı metadata'sının (karbon emisyonları, lisans, makale bağlantısı vb.) diğer özellikleri hakkında daha fazla bilgi için Model Cards kılavuzuna göz atın.

Update on GitHub