Hub documentation

Model Kartları

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Model Kartları

Model Kartları Nelerdir?

Model kartları, modellerle birlikte gelen ve kullanışlı bilgiler sunan dosyalardır. Arka planda model kartları, ek meta verilere sahip basit Markdown dosyalarıdır. Model kartları keşfedilebilirlik, yeniden üretilebilirlik ve paylaşım için hayati öneme sahiptir! Herhangi bir model deposunda model kartını README.md dosyası olarak bulabilirsiniz.

Model kartı şunları açıklamalıdır:

  • model
  • kullanım amaçları ve Mitchell, 2018'de ayrıntılı olarak belirtildiği üzere önyargılar ve etik hususlar dahil olası kısıtlamaları
  • eğitim parametreleri ve deneysel bilgiler (referans olarak bir deney izleme platformuna gömebilir veya bağlantı verebilirsiniz)
  • modelinizi eğitmek için hangi veri kümelerinin kullanıldığı
  • modelin değerlendirme sonuçları

Model kartı şablonu burada mevcuttur.

Model kartının her bölümünün nasıl doldurulacağı Annotated Model Card belgesinde açıklanmıştır.

Hub'daki Model Kartları, üst üste binen bilgiler içeren iki ana bölümden oluşur:

Model kartı meta verileri

Bir model deposu, README.md dosyasını bir model kartı olarak görüntüler. Model kartı, üst kısmında modelle ilgili meta verileri içeren bir YAML bölümüne sahip bir Markdown dosyasıdır.

Model kartına eklediğiniz meta veriler, modelinizin keşfedilmesini ve daha kolay kullanılmasını destekler. Örneğin:

  • Kullanıcıların https://huggingface.co/models adresinde modelleri filtrelemesine olanak tanır.
  • Modelin lisansını görüntüleme.
  • Metadata'e veri kümeleri eklemek, model sayfanıza Datasets used to train: okuyan bir mesaj ekler ve ilgili veri kümeleri Hub'da mevcutsa onlara bağlantı verir.

Veri seti ve dil tanımlayıcıları, Datasets ve Languages sayfalarında listelenenlerdir.

Model kartınıza meta veri ekleme

Model kartınıza metadata eklemenin birkaç farklı yolu vardır:

  • Meta veri arayüzünü kullanma
  • README.md dosyasının YAML bölümünü doğrudan düzenleme
  • huggingface_hub Python kütüphanesi aracılığıyla, daha fazla ayrıntı için belgelere bakın.

Hub entegrasyonu olan birçok kütüphane, bir model yüklediğinizde model kartına otomatik olarak meta veri ekler.

Meta veri arayüzünü kullanma

Model kartınıza metadata eklemek için metadata arayüzünü kullanabilirsiniz. Metadata arayüzüne erişmek için model sayfasına gidin ve model kartının sağ üst köşesindeki Edit model card düğmesine tıklayın. Bu işlem, model kartının README.md dosyasını ve metadata düzenlemek için bir arayüzü gösteren bir editör açar.

Bu arayüz, model kartınıza anahtar meta verileri eklemenizi sağlar ve sağladığınız bilgilere dayanarak birçok alan otomatik tamamlanır. Arayüzü kullanmak, model kartınıza meta veri eklemenin en kolay yoludur ancak tüm meta veri alanlarını desteklemez. Arayüzün desteklemediği meta verileri eklemek istiyorsanız, README.md dosyasının YAML bölümünü doğrudan düzenleyebilirsiniz.

README.md dosyasının YAML bölümünü düzenleme

README.md dosyasının YAML bölümünü doğrudan düzenleyebilirsiniz. Model kartında henüz bir YAML bölümü yoksa, dosyanın en üstüne üç --- ekleyerek bir bölüm oluşturabilir, ardından ilgili tüm meta verileri ekleyip aşağıdaki örnekteki gibi başka bir --- grubuyla bölümü kapatabilirsiniz:

---
language: 
  - "List of ISO 639-1 code for your language"
  - lang1
  - lang2
thumbnail: "url to a thumbnail used in social sharing"
tags:
- tag1
- tag2
license: "any valid license identifier"
datasets:
- dataset1
- dataset2
base_model: "base model Hub identifier"
---

Detaylı model kartı meta verisi spesifikasyonunu burada bulabilirsiniz.

Bir kütüphane belirtme

Desteklenen kütüphaneleri model kartı meta veri bölümünde belirtebilirsiniz. Desteklediğimiz kütüphaneler hakkında daha fazla bilgiyi burada bulabilirsiniz. Kütüphane aşağıdaki öncelik sırasına göre belirlenir:

  1. Model kartında library_name belirtmek (modeliniz bir transformers modeli değilse önerilir). Bu bilgi, metadata arayüzü üzerinden veya doğrudan model kartının YAML bölümüne eklenebilir:
library_name: flair
  1. Desteklenen bir kütüphanenin adıyla etikete sahip olmak
tags:
- flair

Belirtilmezse Hub, kütüphane türünü otomatik olarak algulamaya çalışır. Ancak bu yaklaşım önerilmez ve depo oluşturucular mümkün olduğunca açık library_name kullanmalıdır.

  1. *.nemo veya *.mlmodel gibi dosyaların varlığına bakarak Hub, bir modelin NeMo veya CoreML'den geldiğini belirleyebilir.
  2. Geçmişte, hiçbir şey algılanmadığında ve bir config.json dosyası bulunduğunda, kütüphanenin transformers olduğu varsayılırdı. Ağustos 2024'ten sonra oluşturulan model depoları için bu artık geçerli değil, bu nedenle library_name: transformers değerini açıkça belirlemeniz gerekir.

Bir temel model belirtme

Modeliniz bir temel modelin ince ayarlanmış, adaptörlü veya kuantize edilmiş bir sürümü ise, model kartı meta veri bölümünde temel modeli belirtebilirsiniz. Bu bilgi, modelinizin birden fazla mevcut modelin birleşimi olduğunu göstermek için de kullanılabilir. Dolayısıyla base_model alanı, tek bir model kimliği veya bir veya daha fazla temel modelin listesi (Hub tanımlayıcılarıyla belirtilir) olabilir.

base_model: HuggingFaceH4/zephyr-7b-beta

Bu meta veriler, model sayfasında temel modelin görüntülenmesi için kullanılacaktır. Kullanıcılar ayrıca bu bilgiyi, modelleri temel modele göre filtrelemek veya belirli bir temel modelden türetilmiş modelleri bulmak için de kullanabilir:

İnce ayarlanmış bir model için:
Bir adaptör (LoRA, PEFT, vb.) için:
Başka bir modelin kuantize edilmiş sürümü için:
İki veya daha fazla modelin birleştirilmesi için:

Birleştirme durumunda, iki veya daha fazla base_models listesini belirtirsiniz:

base_model:
- Endevor/InfinityRP-v1-7B
- l3utterfly/mistral-7b-v0.1-layla-v4

Hub, mevcut modelden temel modele olan ilişkinin türünü çıkarır ("adapter", "merge", "quantized", "finetune") ancak gerekirse bunu açıkça da belirleyebilirsiniz: örneğin base_model_relation: quantized.

Yeni bir sürüm belirtme

Hub'da modelinizin yeni bir sürümü mevcutsa, bunu new_version alanında belirtebilirsiniz.

Örneğin, l3utterfly/mistral-7b-v0.1-layla-v3 üzerinde:

new_version: l3utterfly/mistral-7b-v0.1-layla-v4

Bu meta veriler, model sayfasında modelin en son sürümüne giden bir bağlantıyı görüntülemek için kullanılacaktır. new_version içinde bağlantısı verilen modelin de bir new_version alanı varsa, her zaman en güncel sürüm görüntülenir.

Bir veri seti belirtme

Modelinizi eğitmek için kullanılan veri setlerini model kartı meta veri bölümünde belirleyebilirsiniz. Veri setleri model sayfasında görüntülenecek ve kullanıcılar modelleri veri setine göre filtreleyebilecek. Kimlik olarak, veri setinin depo adıyla aynı olan Hub veri seti kimliğini kullanmalısınız:

datasets:
- stanfordnlp/imdb
- HuggingFaceFW/fineweb

Bir varlık kovası belirtme

Model kartı meta veri bölümünde, modelinizle ilişkilendirilen depolama varillerini belirleyebilirsiniz. Variller, model sayfasında etiketler olarak gösterilecek ve ilişkilendirilen varil sayfaları da karşılıklı olarak modeli gösterecektir. Varilin depo adıyla aynı olan Hub varil tanımlayıcısını kullanmalısınız:

buckets:
- my-org/my-bucket
- my-org/another-bucket

Bir görev belirtme ( pipeline_tag )

Model kartı meta verilerinde pipeline_tag değerini belirtebilirsiniz. pipeline_tag, modelin hangi tür görev için tasarlandığını gösterir. Bu etiket model sayfasında görüntülenir ve kullanıcılar Hub'da modelleri göreve göre filtreleyebilir. Bu etiket, model için hangi widget'ın kullanılacağını ve arka planda hangi API'lerin kullanılacağını belirlemek için de kullanılır.

transformers modelleri için pipeline etiketi, modelin config.json dosyasından otomatik olarak çıkarılır ancak gerekirse model kartı metadata’sında bunu geçersiz kılabilirsiniz. Metadata arayüzünde bu alanı düzenlemek, pipeline etiketinin geçerli olmasını sağlar. Hub entegrasyonu olan bazı diğer kütüphaneler de pipeline etiketini model kartı metadata’sına otomatik olarak ekler.

Lisans belirtme

Lisansı, model kartı meta veri bölümünde belirtebilirsiniz. Lisans, model sayfasında görüntülenecek ve kullanıcılar modelleri lisansa göre filtreleyebilecek. Meta veri arayüzünü kullanarak en yaygın lisansların bir açılır listesini göreceksiniz.

Gerekirse, lisans değerini other olarak belirleyip metadata içinde lisansın adını ve lisansa giden bağlantıyı ekleyerek özel bir lisans da tanımlayabilirsiniz.

# Example from https://huggingface.co/coqui/XTTS-v1
---
license: other
license_name: coqui-public-model-license
license_link: https://coqui.ai/cpml
---

Lisans bir URL üzerinden erişilemiyorsa, model deposunda saklanan bir LICENSE dosyasına bağlantı verebilirsiniz.

Değerlendirme Sonuçları

Model kartı meta verilerinde modelinizin değerlendirme sonuçlarını yapılandırılmış bir şekilde belirleyebilirsiniz. Sonuçlar Hub tarafından ayrıştırılır ve model sayfasında bir widget olarak görüntülenir. bigcode/starcoder modeli için bunun nasıl göründüğüne dair bir örnek aşağıdadır:

Başlangıçtaki meta veri spesifikasyonu, Papers with code’ün model-index spesifikasyonuna dayanıyordu. Bu sayede uygun durumlarda sonuçları doğrudan Papers with code’ün liderlik tablolarına indeksleyebildik. Ayrıca, değerlendirme sonuçlarının hesaplandığı kaynağa da bağlantı verebilirdiniz.

YENİ: Değerlendirme sonuçları için yeni, daha basit bir meta veri biçimimiz var. özel doküman sayfasında inceleyebilirsiniz.

Aşağıda, 01-ai/Yi-34B'nin ARC benchmark'ındaki skorunu açıklayan bir model-index'in kısmi bir örneği yer almaktadır. Sonuç, source olarak tanımlanan Open LLM Leaderboard'dan gelmektedir:

---
model-index:
  - name: Yi-34B
    results:
      - task:
          type: text-generation
        dataset:
          name: ai2_arc
          type: ai2_arc
        metrics:
          - name: AI2 Reasoning Challenge (25-Shot)
            type: AI2 Reasoning Challenge (25-Shot)
            value: 64.59
        source:
          name: Open LLM Leaderboard
          url: https://huggingface.co/spaces/open-llm-leaderboard/open_llm_leaderboard
---

Bu verinin nasıl biçimlendirileceğine dair daha fazla ayrıntı için Model Card spesifikasyonlarını inceleyin.

CO2 Emisyonları

Model kartı, modelinizin CO2 etkisi hakkında bilgi göstermek için de harika bir yerdir. Daha fazla bilgi edinmek için CO2 emisyonlarını izleme ve raporlama kılavuzumuza göz atın.

Bir Makale Bağlama

Model kartı bir Paper sayfasına (HF'de veya Arxiv özet/PDF'sinde) bağlantı içeriyorsa, Hugging Face Hub arXiv kimliğini çıkarır ve model etiketlerine arxiv:<PAPER ID> biçiminde ekler. Etikete tıkladığınızda şunları yapabilirsiniz:

  • Paper sayfasını ziyaret edin
  • Aynı makaleyi alıntılayan Hub'daki diğer modeller için filtreleyin.

Paper sayfaları hakkında daha fazla bilgi için buraya bakın.

Model Kartı metni

Model kartının insan tarafından okunabilir kısmının nasıl doldurulacağına dair ayrıntılar, Annotated Model Card içinde mevcuttur.

SSS

Model etiketleri nasıl belirlenir?

Her model sayfası, model adının altında, sayfa başlığında modelin tüm etiketlerini listeler. Bunlar esas olarak model kartı meta verisinden hesaplanır; ancak bazıları Widget Etkinleştirme bölümünde açıklandığı gibi otomatik olarak eklenir.

Modelime özel etiketler ekleyebilir miyim?

Evet, model kartı metadata'sındaki tags alanına ekleyerek modelinize özel etiketler ekleyebilirsiniz. Metadata arayüzü bazı popüler etiketleri önerir, ancak istediğiniz herhangi bir etiketi ekleyebilirsiniz. Örneğin, modelinizin finansa odaklandığını belirtmek için bir finance etiketi ekleyebilirsiniz.

Modelimin tüm kitleler için uygun olmadığını nasıl belirtirim

Model kartı metaverilerinize not-for-all-audiences etiketi ekleyebilirsiniz. Bu etiket mevcut olduğunda, modelin herkese uygun olmadığına dair bir mesaj model sayfasında görüntülenir. Kullanıcılar bu mesajın üzerinden tıklayarak model kartını görüntüleyebilir.

Koyu ve açık mod için farklı görüntüler nasıl görüntülenir?

Her tema için optimize edilmiş farklı sürümlerde bir görüntü görüntüleyebilirsiniz. Bu, açık ve koyu modlarda görünürlüğü ve estetiği korumak için farklı renk şemalarına ihtiyaç duyan logolar, diyagramlar veya ekran görüntüleri için özellikle faydalıdır. Bu özelliği kullanmak için görüntünüzün her iki sürümünü de sağlamanız gerekir.

Markdown düzenleyicisi üzerinden yüklenen görüntüler için

Markdown düzenleyiciden bir görüntüyü doğrudan yüklediğinizde (sürükle-bırak kullanarak), görüntünün hangi temada görüntülenmesi gerektiğini belirtmek için görüntü URL’sinin sonuna #hf-light-mode-only veya #hf-dark-mode-only URI parçasını ekleyin:

Image only displays when viewing in light mode
![Logo](/static-proxy?url=https%3A%2F%2Fcdn-uploads.huggingface.co%2Fproduction%2Fuploads%2Flogo-light.png%23hf-light-mode-only%3C%2Fspan%3E)

Image only displays when viewing in dark mode
![Logo](/static-proxy?url=https%3A%2F%2Fcdn-uploads.huggingface.co%2Fproduction%2Fuploads%2Flogo-dark.png%23hf-dark-mode-only%3C%2Fspan%3E)%3C!----%3E%3C%2Fpre%3E%3C%2Fdiv%3E%3C!----%3E 

Zaten barındırılan görseller için

Zaten barındırılan görselleri yeniden yüklemeye gerek kalmadan referans almak istiyorsanız, hangi temada görüntülenmesi gerektiğini belirtmek için aşağıdaki Tailwind CSS sınıflarını içeren HTML <img> etiketlerini kullanın:

// Image only displays when viewing in dark mode
<img class="hidden dark:block" src="https://hf.co/logo-dark.png" alt="Logo" />

// Image only displays when viewing in light mode
<img class="dark:hidden" src="https://hf.co/logo-light.png" alt="Logo" />

Model kartımda LaTeX yazabilir miyim?

Evet! Hub, Markdown'ı ayrıştırmadan önce matematik formüllerini sunucu tarafında görüntülemek için KaTeX matematik dizgi kütüphanesini kullanır.

Aşağıdaki ayraçları kullanmanız gerekir:

  • gösterim modu için $$ ... $$
  • Satır içi mod için \\(...\\) (eğik çizgiler ve parantezler arasında boşluk yok).

Ardından şunu yazabilirsiniz: LaTeX \LaTeX MSE=(1n)∑i=1n(yi−xi)2 \mathrm{MSE} = \left(\frac{1}{n}\right)\sum_{i=1}^{n}(y_{i} - x_{i})^{2} E=mc2 E=mc^2

Update on GitHub