Transformers documentation

RADIO

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

Bu model, 2026-06-30 tarihinde Hugging Face Transformers'a katkıda bulunulmuştur.

FlashAttention SDPA

RADIO

RADIO (Reduce All Domains Into One), NVIDIA tarafından çoklu öğretmen damıtma (ör. CLIP, DINOv2, SAM) ile tek bir ViT omurgasına eğitilmiş bir görme temel modeli ailesidir. Hem görüntü düzeyinde summary gömme hem de yoğun uzamsal features üretir ve Cropped Position Embedding (CPE) yama üreticisi aracılığıyla değişken giriş çözünürlüklerini destekler.

Aşağıdaki örnek, RadioModel sınıfı ile görüntü özelliklerinin nasıl çıkarılacağını göstermektedir.

RadioModel
import requests
import torch
from PIL import Image

from transformers import CLIPImageProcessor, RadioModel


hf_repo = "nvidia/C-RADIOv4-H"

device = torch.accelerator.current_accelerator().type if torch.accelerator.is_available() else "cpu"

model = RadioModel.from_pretrained(hf_repo)
model.eval().to(device)

image_processor = CLIPImageProcessor(
    size={"height": 224, "width": 224}, do_resize=True, do_center_crop=False, do_normalize=False
)

url = "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/pipeline-cat-chonk.jpeg"
image = Image.open(requests.get(url, stream=True).raw).convert("RGB")
pixel_values = image_processor(images=image, return_tensors="pt").pixel_values
pixel_values = pixel_values.to(device)

with torch.no_grad():
    outputs = model(pixel_values)

summary = outputs.summary    # (1, 2560) image-level embedding
features = outputs.features   # (1, 196, 1280) dense spatial features

RadioConfig

sınıf transformers.RadioConfig

< >

( transformers_version: str | None = Nonearchitectures: list[str] | None = Noneoutput_hidden_states: bool | None = Falsereturn_dict: bool | None = Truedtype: str | torch.dtype | None = Nonechunk_size_feed_forward: int = 0is_encoder_decoder: bool = Falseid2label: dict[int, str] | dict[str, str] | None = Nonelabel2id: dict[str, int] | dict[str, str] | None = Noneproblem_type: Literal['regression', 'single_label_classification', 'multi_label_classification'] | None = Nonehidden_size: int = 1280num_hidden_layers: int = 32num_attention_heads: int = 16mlp_ratio: float = 4.0hidden_act: str = 'gelu'layer_norm_eps: float = 1e-06attention_probs_dropout_prob: float = 0.0hidden_dropout_prob: float = 0.0drop_path_rate: float = 0.0use_swiglu_ffn: bool = Falseqkv_bias: bool = Truelayerscale_value: float = 1.0num_channels: int = 3patch_size: int = 16image_size: int = 224max_img_size: int = 2048num_cls_tokens: int = 3num_registers: int = 7video_temporal_patch_size: int | None = Nonepatch_dim: int | None = Nonevideo_patch_dim: int | None = Nonesummary_idxs: list[int] | None = Nonenorm_mean: list[float] | tuple[float, float, float] = (0.48145466, 0.4578275, 0.40821073)norm_std: list[float] | tuple[float, float, float] = (0.26862954, 0.26130258, 0.27577711)initializer_range: float = 0.02 )

Parametreler

  • hidden_size (int, isteğe bağlı, varsayılan 1280) — Gizli temsillerin boyutu.
  • num_hidden_layers (int, isteğe bağlı, varsayılan 32) — Transformer çözücüdeki gizli katman sayısı.
  • num_attention_heads (int, isteğe bağlı, varsayılan 16) — Transformer decoder'ındaki her dikkat katmanı için dikkat başı sayısı.
  • mlp_ratio (float, isteğe bağlı, varsayılan 4.0) — MLP'nin gizli boyutunun hidden_size'e oranı.
  • hidden_act (str, isteğe bağlı, varsayılan gelu) — Çözücüdeki doğrusal olmayan aktivasyon fonksiyonu (fonksiyon veya dize). Örneğin, "gelu", "relu", "silu" vb.
  • layer_norm_eps (float, isteğe bağlı, varsayılan 1e-06) — Katman normalizasyon katmanları tarafından kullanılan epsilon.
  • attention_probs_dropout_prob (float, isteğe bağlı, varsayılan 0.0) — Dikkat olasılıkları için dropout oranı.
  • hidden_dropout_prob (float, isteğe bağlı, varsayılan 0.0) — Gömme, kodlayıcı ve havuzlayıcıdaki tüm tam bağlı katmanlar için dropout olasılığı.
  • drop_path_rate (float, isteğe bağlı, varsayılan 0.0) — Patch füzyonu için drop path oranı.
  • use_swiglu_ffn (bool, isteğe bağlı, varsayılan False) — Standart MLP yerine encoder katmanlarında SwiGLU ileri beslemeli ağın kullanılıp kullanılmayacağını belirtir.
  • qkv_bias (bool, isteğe bağlı, varsayılan True) — Sorgulara, anahtarlara ve değerlere bir sapma eklenip eklenmeyeceği.
  • layerscale_value (float, isteğe bağlı, varsayılan 1.0) — LayerScale parametreleri için başlangıç değeri. C-RADIO'da LayerScale yoktur; 1.0 varsayılanı, (mirastan gelen) LayerScale'i bir kimlik işlemi haline getirir.
  • num_channels (int, isteğe bağlı, varsayılan 3) — Giriş kanal sayısı.
  • patch_size (int, isteğe bağlı, varsayılan 16) — Her yamanın boyutu (çözünürlüğü).
  • image_size (int, isteğe bağlı, varsayılan 224) — Her bir görüntünün boyutu (çözünürlüğü).
  • max_img_size (int, isteğe bağlı, varsayılan 2048) — CPE yama üreticisinin konum gömme tablosunu boyutlandırmak için kullanılan, desteklenen maksimum görüntü boyutu (piksel cinsinden).
  • num_cls_tokens (int, isteğe bağlı, varsayılan 3) — Patch dizisine eklenen öğrenilmiş sınıf (özet) tokenlarının sayısı.
  • num_registers (int, isteğe bağlı, varsayılan 7) — Patch dizisine eklenen öğrenilmiş register token sayısı.
  • video_temporal_patch_size (int, isteğe bağlı) — Paket başına zaman boyutunda yığılmış kare sayısı. Ayarlandığında, paket üreticisi zaman boyutunda paketlenmiş video paketleri için ayrıca bir video_patch_projection oluşturur; None video yolunu devre dışı bırakır.
  • patch_dim (int, isteğe bağlı) — Tek bir görüntü yamasının düzleştirilmiş boyutu. num_channels ve patch_size değerlerinden türetilir.
  • video_patch_dim (int, isteğe bağlı) — Zamansal olarak paketlenmiş bir video yamasının düzleştirilmiş boyutu. video_temporal_patch_size ve patch_dim değerlerinden türetilir; yalnızca görüntü içeren kontrol noktaları için None değerini alır.
  • summary_idxs (list[int], isteğe bağlı, varsayılan [0, 1]) — summary çıktı gömümüne toplanacak ve düzleştirilecek sınıf tokenlarının dizinleri.
  • norm_mean (tuple[float, float, float], opsiyonel, varsayılan OPENAI_CLIP_MEAN) — Girdi koşullandırıcısının piksel değerlerini normalize etmek için kullandığı kanal başına ortalama.
  • norm_std (tuple[float, float, float], isteğe bağlı, varsayılan OPENAI_CLIP_STD) — Girdi koşullandırıcısının piksel değerlerini normalize etmek için kullandığı kanal başına standart sapma.
  • initializer_range (float, isteğe bağlı, varsayılan 0.02) — Tüm ağırlık matrislerini başlatmak için kullanılan truncated_normal_initializer'ın standart sapması.

Bu, bir RadioModel yapılandırmasını depolamak için kullanılan yapılandırma sınıfıdır. Belirtilen argümanlara göre bir Radio modelini örneklemek ve model mimarisini tanımlamak için kullanılır. Varsayılan değerlerle bir yapılandırma örneği oluşturmak, nvidia/C-RADIOv4-H modelinin yapılandırmasına benzer bir yapılandırma üretir.

Yapılandırma nesneleri PreTrainedConfig sınıfından devralır ve model çıktılarını kontrol etmek için kullanılabilir. Daha fazla bilgi için PreTrainedConfig belgesini okuyun.

RadioModel

sınıf transformers.RadioModel

< >

( config: RadioConfig )

Parametreler

  • config (RadioConfig) — Modelin tüm parametrelerini içeren model yapılandırma sınıfı. Bir yapılandırma dosyasıyla başlatmak, modelle ilişkili ağırlıkları yüklemez, yalnızca yapılandırmayı yükler. Model ağırlıklarını yüklemek için from_pretrained() yöntemine bakın.

Üzerinde herhangi bir özel head olmadan ham hidden-states üreten çıplak Radio Model.

Bu model PreTrainedModel sınıfından devralır. Kütüphanenin tüm modelleri için uyguladığı genel yöntemler (indirme veya kaydetme, giriş gömme boyutlarını yeniden boyutlandırma, başları budama vb.) için üst sınıf belgelendirmesine bakın.

Bu model aynı zamanda bir PyTorch torch.nn.Module alt sınıfıdır. Bunu standart bir PyTorch Module olarak kullanın ve genel kullanım ve davranışla ilgili tüm konular için PyTorch dokümantasyonuna başvurun.

forward

< >

( pixel_values: Tensorimage_grid_hw: typing.Optional[torch.LongTensor] = None**kwargs: *<class 'transformers.utils.generic.TransformersKwargs'> ) → RadioModelOutput or tuple(torch.Tensor)

Parametreler

  • pixel_values (torch.Tensor, şekli (batch_size, num_channels, height, width) veya (total_patches, num_channels * patch_size**2)) — Tek boyutta görüntüler veya image_grid_hw ile farklı boyutlardaki görüntülerin düzleştirilmiş yamalarının birleştirilmiş hali. Her yama kanal-öncelikli (channel-major) olarak yerleştirilir, yani (num_channels, patch_size, patch_size).
  • image_grid_hw (torch.LongTensor, şekli (num_images, 2), opsiyonel) — Paketlenmiş pixel_values içindeki her bir görüntünün yama ızgarası (height, width).

Dönüş değeri

RadioModelOutput veya tuple(torch.Tensor)

RadioModelOutput veya bir torch.Tensor demeti (eğer return_dict=False geçirildiyse veya config.return_dict=False ise), yapılandırmaya (RadioConfig) ve girdilere bağlı olarak çeşitli öğelerden oluşur.

RadioModel forward metodu, __call__ özel metodunu geçersiz kılar.

İleri geçiş tarifi bu fonksiyon içinde tanımlanmalı olsa da, sonrasında bunun yerine Module örneğini çağırmak gerekir; çünkü önceki, ön ve son işleme adımlarını çalıştırmaktan sorumluyken ikincisi bunları sessizce yok sayar.

  • özet (torch.Tensor, şekli (batch_size, num_summary_idxs * hidden_size)) — config.summary_idxs tarafından seçilen cls token'larından toplanmış, düzleştirilmiş özet gömme.

  • özellikler (torch.Tensor, şekli (batch_size, num_patches, hidden_size)) — Yoğun uzamsal yama özellikleri. Paketlenmiş girdiler için (image_grid_hw verildiğinde), tüm görüntülerin yama özellikleri birleştirilmiş olarak, şekli (total_patches, hidden_size).

  • last_hidden_state (torch.Tensor, şekli (batch_size, sequence_length, hidden_size)) — Son kodlayıcı katmanından tam token dizisi (önek tokenları + yamalar). Paketli girdiler için, tüm görüntülerin dizilerinin birleştirilmiş hali, şekli (total_sequence_length, hidden_size).

  • hidden_states (tuple[torch.Tensor], isteğe bağlı, output_hidden_states=True geçirildiğinde veya config.output_hidden_states=True olduğunda döndürülür) — torch.Tensor (gömme katmanı varsa gömme katmanının çıktısı için bir tane + her katmanın çıktısı için bir tane) içeren, (batch_size, sequence_length, hidden_size) biçiminde bir demet.

    Her katmanın çıktısında modelin gizli durumları ve isteğe bağlı başlangıç gömme çıktıları.

  • attentions (tuple[torch.Tensor], isteğe bağlı, output_attentions=True geçirildiğinde veya config.output_attentions=True olduğunda döndürülür) — torch.Tensor (katman başına bir tane) içeren bir tuple, şekli (batch_size, num_heads, sequence_length, sequence_length).

    Dikkat softmax'ı sonrası dikkat ağırlıkları, öz-dikkat başlıklarında ağırlıklı ortalamanın hesaplanmasında kullanılır.

Update on GitHub