LLMScalecanlı Hugging Face verisi

config.json çözücü — bir LLM'in yapılandırması sade dille

Hugging Face'teki her model bir config.json ile gelir — belleğini, hızını ve ne kadar uzağa okuyabildiğini belirleyen birkaç düzine alan. Bir model seç; bu sayfa o alanların yanıtladığı soruları sade dille cevaplasın ve her cevabın dosyanın hangi satırlarından geldiğini göstersin.

Config'ini okumak için bir model seç

Ya da bunlardan biriyle başla:

Bir model seçildiğinde bu sayfa şunları cevaplar:

  • Nasıl bir model?
  • Ne kadar büyük?
  • Ne kadar uzağa okuyabilir?
  • Her token bellekte neye mal olur?
  • Attention head'leri belleği nasıl paylaşıyor?
  • Mixture of experts mi?
  • Ağırlıklar hangi hassasiyette saklanıyor?
  • Kaç token biliyor?
  • Yüklemek için yazılımım neye ihtiyaç duyar?
  • Sunum hangi alanları yok sayabilir?

Config nasıl okunuyor

config.json; Hugging Face Transformers'ın, vLLM'in ve diğer motorların ağırlıkları yüklemeden önce modeli kurmak için okuduğu dosyadır. Mimariyi kaydeder — katmanlar, genişlikler, attention head'leri, uzmanlar, konumlar, kelime dağarcığı ve hassasiyet — ama ağırlıkları ve parametre sayısını kaydetmez; LLMScale parametre sayısını Hugging Face API'sinden alır.

  • token başına KV cache = 2 × katman × key-value head × head_dim × bayt
  • MLA ile = katman × (kv_lora_rank + qk_rope_head_dim) × bayt
  • maksimum context = max_position_embeddings (lineer ve YaRN ölçekleme buna özgün × çarpan ile ulaşır; Llama 3 ölçeklemesi düz çarpım değildir)
  • GQA oranı = attention head ÷ key-value head

Her cevap kullandığı alanları adlandırır ve dosyada vurgular; hesabı da altında gösterilir. Sözlüğün bilmediği alanlar tahmin edilmek yerine ham değerleriyle açıklanmamış olarak listelenir. Llama ve Gemma gibi erişimi kısıtlı repolar tarayıcıdan okunamaz; onlar için sayfa LLMScale'in yerleşik veritabanındaki mimariye döner ve bunu söyler.

Sık sorulanlar

config.json'da parametre sayısı nerede?
Orada değil. Bir config modelin şeklini anlatır, diskteki boyutunu değil. LLMScale sayıyı Hugging Face API'sindeki safetensors üst verisinden okur; sayfa onu bu yüzden config'in yanında gösterebiliyor.
num_attention_heads ile num_key_value_heads arasındaki fark ne?
num_attention_heads her katmanın çalıştırdığı query head sayısıdır; num_key_value_heads bunların paylaştığı key ve value head sayısı. İkincisi daha küçükse model grouped-query attention kullanır ve KV cache'i aynı oranda küçülür — Llama 3.1 8B, 32 query head arasında 8 key-value head paylaştırır; tam multi-head attention'ın gerektireceği önbelleğin dörtte biri.
max_position_embeddings, modelin o uzunlukta iyi çalıştığı anlamına mı gelir?
Modelin o uzunluk için yapılandırıldığı anlamına gelir. Motorlar bundan yola çıkar ama varsayılanı daha düşük olabilir — Ollama onu VRAM'inize göre seçer, vLLM de LongRoPE modellerinde özgün uzunluğu varsayar. Sınıra yakın ne kadar iyi dayandığı nasıl eğitildiğine bağlıdır; bunu config söyleyemez.
trust_remote_code neden önemli?
auto_map kaydı, reponun kendi Python model kodunu getirdiği anlamına gelir ve Transformers onu yalnızca trust_remote_code=True verdiğinizde çalıştırır. O kod sizin yetkilerinizle çalışır; ya okuyun ya da modelin Transformers'ın doğrudan desteklediği bir sürümünü tercih edin.