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

Model ini disumbangkan ke Hugging Face Transformers pada 2026-06-30.

FlashAttention SDPA

RADIO

RADIO (Reduce All Domains Into One) adalah keluarga model fondasi visi dari NVIDIA yang dilatih melalui distilasi multi-guru (misalnya CLIP, DINOv2, SAM) ke dalam satu backbone ViT. Model ini menghasilkan embedding summary tingkat gambar serta features spasial yang padat, dan mendukung resolusi input yang bervariasi melalui generator patch Cropped Position Embedding (CPE).

Contoh di bawah ini menunjukkan cara mengekstrak fitur gambar dengan kelas RadioModel.

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

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

Parameter

  • hidden_size (int, opsional, default 1280) — Dimensi dari representasi tersembunyi.
  • num_hidden_layers (int, opsional, default 32) — Jumlah lapisan tersembunyi dalam decoder Transformer.
  • num_attention_heads (int, opsional, default 16) — Jumlah attention head untuk setiap lapisan attention di decoder Transformer.
  • mlp_ratio (float, opsional, default 4.0) — Rasio ukuran tersembunyi (hidden size) dari MLP terhadap hidden_size.
  • hidden_act (str, opsional, defaultnya gelu) — Fungsi aktivasi non-linear (fungsi atau string) di decoder. Misalnya, "gelu", "relu", "silu", dan sebagainya.
  • layer_norm_eps (float, opsional, defaultnya 1e-06) — Epsilon yang digunakan oleh lapisan normalisasi lapisan.
  • attention_probs_dropout_prob (float, opsional, default 0.0) — Rasio dropout untuk probabilitas perhatian.
  • hidden_dropout_prob (float, opsional, default 0.0) — Probabilitas dropout untuk semua lapisan fully connected di embeddings, encoder, dan pooler.
  • drop_path_rate (float, opsional, default 0.0) — Tingkat drop path untuk fusi patch.
  • use_swiglu_ffn (bool, opsional, default False) — Apakah akan menggunakan jaringan feed-forward SwiGLU pada lapisan encoder alih-alih MLP standar.
  • qkv_bias (bool, opsional, defaultnya True) — Apakah akan menambahkan bias ke queries, keys, dan values.
  • layerscale_value (float, opsional, default 1.0) — Nilai awal untuk parameter LayerScale. C-RADIO tidak memiliki LayerScale; default 1.0 membuat LayerScale (yang diwarisi) menjadi operasi identitas.
  • num_channels (int, opsional, defaultnya 3) — Jumlah saluran input.
  • patch_size (int, opsional, defaultnya 16) — Ukuran (resolusi) dari setiap patch.
  • image_size (int, opsional, default 224) — Ukuran (resolusi) setiap gambar.
  • max_img_size (int, opsional, default 2048) — Ukuran gambar maksimum (dalam piksel) yang didukung, digunakan untuk menentukan ukuran tabel position embedding dari generator patch CPE.
  • num_cls_tokens (int, opsional, default 3) — Jumlah token kelas (ringkasan) yang dipelajari dan ditambahkan di awal urutan patch.
  • num_registers (int, opsional, default 7) — Jumlah token register yang dipelajari dan ditambahkan di depan urutan patch.
  • video_temporal_patch_size (int, opsional) — Jumlah frame yang ditumpuk secara temporal per patch. Jika diset, generator patch juga membangun video_patch_projection untuk patch video yang dikemas secara temporal; None menonaktifkan jalur video.
  • patch_dim (int, opsional) — Ukuran datar dari satu patch gambar. Diturunkan dari num_channels dan patch_size.
  • video_patch_dim (int, opsional) — Ukuran datar dari satu patch video yang dikemas secara temporal. Diturunkan dari video_temporal_patch_size dan patch_dim; None untuk checkpoint yang hanya berisi gambar.
  • summary_idxs (list[int], opsional, default [0, 1]) — Indeks dari class token yang akan dikumpulkan dan diratakan menjadi embedding output summary.
  • norm_mean (tuple[float, float, float], opsional, default OPENAI_CLIP_MEAN) — Rata-rata per kanal yang digunakan oleh input conditioner untuk menormalisasi nilai piksel.
  • norm_std (tuple[float, float, float], opsional, default OPENAI_CLIP_STD) — Standar deviasi per kanal yang digunakan oleh input conditioner untuk menormalisasi nilai piksel.
  • initializer_range (float, opsional, defaultnya 0.02) — Standar deviasi dari truncated_normal_initializer untuk menginisialisasi semua matriks bobot.

Ini adalah kelas konfigurasi untuk menyimpan konfigurasi dari RadioModel. Kelas ini digunakan untuk membuat instans model Radio sesuai dengan argumen yang ditentukan, yang mendefinisikan arsitektur model. Membuat instans konfigurasi dengan nilai bawaan akan menghasilkan konfigurasi yang serupa dengan konfigurasi dari nvidia/C-RADIOv4-H

Objek konfigurasi mewarisi dari PreTrainedConfig dan dapat digunakan untuk mengontrol output model. Baca dokumentasi dari PreTrainedConfig untuk informasi lebih lanjut.

RadioModel

kelas transformers.RadioModel

< >

( config: RadioConfig )

Parameter

  • config (RadioConfig) — Kelas konfigurasi model dengan semua parameter model. Inisialisasi dengan file konfigurasi tidak memuat bobot yang terkait dengan model, hanya konfigurasinya. Lihat metode from_pretrained() untuk memuat bobot model.

Model Radio polos yang menghasilkan hidden-states mentah tanpa head spesifik di atasnya.

Model ini mewarisi dari PreTrainedModel. Periksa dokumentasi kelas induk untuk metode generik yang diimplementasikan oleh pustaka untuk semua model (seperti mengunduh atau menyimpan, mengubah ukuran embedding input, memangkas kepala, dll.)

Model ini juga merupakan subclass dari torch.nn.Module PyTorch. Gunakan sebagai PyTorch Module biasa dan merujuk ke dokumentasi PyTorch untuk semua hal yang berkaitan dengan penggunaan dan perilaku umum.

forward

< >

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

Parameter

  • pixel_values (torch.Tensor dengan bentuk (batch_size, num_channels, height, width) atau (total_patches, num_channels * patch_size**2)) — Gambar dengan satu ukuran, atau, dengan image_grid_hw, patch yang telah diratakan dari gambar-gambar dengan ukuran berbeda yang digabungkan. Setiap patch disusun dengan prioritas channel, yaitu (num_channels, patch_size, patch_size).
  • image_grid_hw (torch.LongTensor dengan bentuk (num_images, 2), opsional) — Grid patch (height, width) untuk setiap gambar dalam pixel_values yang dikemas.

Mengembalikan

RadioModelOutput atau tuple(torch.Tensor)

RadioModelOutput atau tuple dari torch.Tensor (jika return_dict=False diteruskan atau ketika config.return_dict=False) yang terdiri dari berbagai elemen tergantung pada konfigurasi (RadioConfig) dan input.

Metode forward dari RadioModel menimpa metode khusus __call__.

Meskipun resep untuk forward pass perlu didefinisikan di dalam fungsi ini, sebaiknya panggil instance Module setelahnya alih-alih fungsi ini, karena yang pertama menangani langkah-langkah pra-pemrosesan dan pasca-pemrosesan, sedangkan yang kedua mengabaikannya secara diam-diam.

  • ringkasan (torch.Tensor dengan bentuk (batch_size, num_summary_idxs * hidden_size)) — Embedding ringkasan yang diratakan, dikumpulkan dari token cls yang dipilih oleh config.summary_idxs.

  • fitur (torch.Tensor dengan bentuk (batch_size, num_patches, hidden_size)) — Fitur patch spasial padat. Untuk input yang dikemas (image_grid_hw diberikan), fitur patch dari semua gambar digabungkan, dengan bentuk (total_patches, hidden_size).

  • last_hidden_state (torch.Tensor dengan bentuk (batch_size, sequence_length, hidden_size)) — Urutan token lengkap (token prefiks + patch) dari lapisan encoder terakhir. Untuk input yang dikemas, urutan dari semua gambar yang digabungkan, dengan bentuk (total_sequence_length, hidden_size).

  • hidden_states (tuple[torch.Tensor], opsional, dikembalikan saat output_hidden_states=True dilewatkan atau saat config.output_hidden_states=True) — Tuple dari torch.Tensor (satu untuk output dari embeddings, jika model memiliki lapisan embedding, + satu untuk output dari setiap lapisan) dengan bentuk (batch_size, sequence_length, hidden_size).

    Hidden-states model pada output setiap layer ditambah output embedding awal yang opsional.

  • attentions (tuple[torch.Tensor], opsional, dikembalikan saat output_attentions=True dilewatkan atau saat config.output_attentions=True) — Tuple dari torch.Tensor (satu untuk setiap layer) dengan bentuk (batch_size, num_heads, sequence_length, sequence_length).

    Bobot perhatian setelah softmax perhatian, digunakan untuk menghitung rata-rata berbobot di kepala perhatian diri (self-attention).

Update on GitHub