Transformers documentation

Çekirdekler

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

and get access to the augmented documentation experience

to get started

Çekirdekler

Bu sayfa, çekirdek yapılandırma yardımcı programlarını belgelemektedir.

kernelize

transformers.kernelize

< >

( model: PreTrainedModelmode: Mode | None = None )

kernelize'in gizli çekirdek sarmalayıcılarını keşfedip değiştirebilmesi için bunları geçici olarak kaydedin.

KernelConfig

sınıf transformers.KernelConfig

< >

( kernel_mapping = Noneuse_local_kernel = Falseinherit_mapping = True )

Kernel yapılandırma sınıfı. Bu sınıf, bir model için kernel eşlemesini yapılandırmak için kullanılır.

create_compatible_mapping

< >

( modelcompile = False )

Basit bir kernel_mapping'i şu biçimde dönüştürür: { “RMSNorm”: (“kernels-community/layer_norm:LlamaRMSNorm”, {“version”: 1, “trust_remote_code”: True}), … },

veya yerel yol için:

{ “RMSNorm”: “/home/user/liger_kernels:LigerRMSNorm”, … },

iç içe bir eşlemeye:

{ “RMSNorm”: { “cuda”: { Mode.INFERENCE: LayerRepository( repo_id=“kernels-community/layer_norm”, layer_name=“LlamaRMSNorm”, version=1, trust_remote_code=True, ) } } }

veya yerel yol için:

{ “RMSNorm”: { “cuda”: { Mode.INFERENCE: LocalLayerRepository( repo_path=Path(“/home/user/liger_kernels”), layer_name=“LigerRMSNorm”, ) } } }

kernels kütüphanesiyle uyumlu olan

Cihaz, belirtilmediyse modelin parametrelerinden çıkarılır. Mod, modelin eğitim durumundan çıkarılır.

sanitize_kernel_mapping

< >

( model )

Parametreler

  • model — Kayıtlı kernel_layer_name öznitelikleri için modülleri kontrol edilen model örneği.

Yükseltilen

ValueError

  • ValueError — Bir layer_name modelde kayıtlı değilse, bir device desteklenmiyorsa veya repo_name geçerli bir ‘org/repo:layer_name’ dizesi değilse.

Şu konuları doğrulamak için kernel_mapping'i doğrular:

  1. Haritadaki her layer_name, modelde kayıtlıdır (yani model, eşleşen bir kernel_layer_name içeren bir modül içerir).
  2. Her çekirdek değeri
    • ‘org/repo:layer_name’ biçiminde bir dize veya aynı dize ile {“revision”/“version/trust_remote_code”: …} biçiminde bir sözlük içeren bir demet,
    • veya yukarıdaki gibi desteklenen cihaz türlerini bu tür değerlere eşleyen bir sözlük.
  3. Bir dict içindeki her cihaz anahtarı “cuda”, “rocm”, “xpu”, “npu”, “neuron”, “tpu” veya “mps” değerlerinden biridir.
  4. Her trust remote code anahtarı bir bool olmalıdır.
  5. Her revizyon veya sürüm anahtarı, açıkça geçirildiyse birbirinden bağımsız olarak var olmalıdır.
  6. Her repo_name, ‘org/repo:layer_name’ biçiminde (yani hem bir eğik çizgi hem de bir iki nokta üst üste içeren bir dize) geçerli bir depo ve katman adıdır.
  7. Yerel bir yol algılanırsa, biçimi ‘/abs/path:layer_name’ olmalıdır; burada mutlak yol, “/home/user/layer_norm” gibi çekirdek deposuna işaret eder.
Update on GitHub