Transformers documentation
CLAP
Model ini dipublikasikan di HF papers pada 2022-11-12 dan disumbangkan ke Hugging Face Transformers pada 2023-02-16.
CLAP
CLAP (Contrastive Language-Audio Pretraining) adalah model multimodal yang menggabungkan data audio dengan deskripsi bahasa alami melalui pembelajaran kontras.
Itu mengintegrasikan fusi fitur dan augmentasi kata kunci ke caption untuk memproses input audio dengan panjang variabel dan meningkatkan kinerja. CLAP tidak memerlukan data pelatihan khusus tugas dan dapat mempelajari representasi audio yang bermakna melalui bahasa alami.
Anda dapat menemukan semua checkpoint CLAP asli di bawah koleksi CLAP.
Model ini disumbangkan oleh ybelkada dan ArthurZ.
Klik pada model CLAP di bilah sisi kanan untuk melihat lebih banyak contoh cara menerapkan CLAP ke berbagai tugas pengambilan dan klasifikasi audio.
Contoh di bawah ini menunjukkan cara mengekstrak embedding teks dengan kelas AutoModel.
import torch
from transformers import AutoModel, AutoTokenizer
model = AutoModel.from_pretrained("laion/clap-htsat-unfused", device_map="auto")
tokenizer = AutoTokenizer.from_pretrained("laion/clap-htsat-unfused")
texts = ["the sound of a cat", "the sound of a dog", "music playing"]
inputs = tokenizer(texts, padding=True, return_tensors="pt").to(model.device)
with torch.no_grad():
text_features = model.get_text_features(**inputs)
print(f"Text embeddings shape: {text_features.shape}")
print(f"Text embeddings: {text_features}")ClapConfig
kelas transformers.ClapConfig
< source >( 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 = Nonetext_config: dict | transformers.configuration_utils.PreTrainedConfig | None = Noneaudio_config: dict | transformers.configuration_utils.PreTrainedConfig | None = Nonelogit_scale_init_value: float = 14.285714285714285projection_dim: int = 512projection_hidden_act: str = 'relu'initializer_factor: float = 1.0 )
Parameter
- text_config (
Union[dict, ~configuration_utils.PreTrainedConfig], opsional) — Objek config atau dictionary dari text backbone. - audio_config (
Union[dict, ~configuration_utils.PreTrainedConfig], opsional) — Objek config atau dictionary dari audio backbone. - logit_scale_init_value (
float, opsional, defaultnya14.285714285714285) — Nilai awal dari parameter logit_scale. - projection_dim (
int, opsional, defaultnya512) — Dimensi dari lapisan proyeksi teks dan visi. - projection_hidden_act (
str, opsional, defaultnyarelu) — Fungsi aktivasi yang digunakan oleh proyektor multimodal. - initializer_factor (
float, opsional, default1.0) — Faktor untuk menginisialisasi semua matriks bobot (sebaiknya dipertahankan pada 1, digunakan secara internal untuk pengujian inisialisasi).
Ini adalah kelas konfigurasi untuk menyimpan konfigurasi dari ClapModel. Kelas ini digunakan untuk membuat instans model Clap berdasarkan argumen yang ditentukan, yang mendefinisikan arsitektur model. Membuat instans konfigurasi dengan nilai bawaan akan menghasilkan konfigurasi yang serupa dengan konfigurasi dari laion/clap-htsat-fused
Objek konfigurasi mewarisi dari PreTrainedConfig dan dapat digunakan untuk mengontrol output model. Baca dokumentasi dari PreTrainedConfig untuk informasi lebih lanjut.
Contoh:
>>> from transformers import ClapConfig, ClapModel
>>> # Initializing a ClapConfig with laion-ai/base style configuration
>>> configuration = ClapConfig()
>>> # Initializing a ClapModel (with random weights) from the laion-ai/base style configuration
>>> model = ClapModel(configuration)
>>> # Accessing the model configuration
>>> configuration = model.config
>>> # We can also initialize a ClapConfig from a ClapTextConfig and a ClapAudioConfig
>>> from transformers import ClapTextConfig, ClapAudioConfig
>>> # Initializing a ClapText and ClapAudioConfig configuration
>>> config_text = ClapTextConfig()
>>> config_audio = ClapAudioConfig()
>>> config = ClapConfig(text_config=config_text, audio_config=config_audio)ClapTextConfig
kelas transformers.ClapTextConfig
< source >( 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 = Nonevocab_size: int = 50265hidden_size: int = 768num_hidden_layers: int = 12num_attention_heads: int = 12intermediate_size: int = 3072hidden_act: str = 'gelu'hidden_dropout_prob: float | int = 0.1attention_probs_dropout_prob: float | int = 0.1max_position_embeddings: int = 514type_vocab_size: int = 1initializer_factor: float = 1.0layer_norm_eps: float = 1e-12projection_dim: int = 512pad_token_id: int | None = 1bos_token_id: int | None = 0eos_token_id: int | list[int] | None = 2projection_hidden_act: str = 'relu' )
Parameter
- vocab_size (
int, opsional, default50265) — Ukuran kosakata model. Menentukan jumlah token berbeda yang dapat direpresentasikan olehinput_ids. - hidden_size (
int, opsional, default768) — Dimensi dari representasi tersembunyi. - num_hidden_layers (
int, opsional, default12) — Jumlah lapisan tersembunyi dalam decoder Transformer. - num_attention_heads (
int, opsional, default12) — Jumlah attention head untuk setiap lapisan attention di decoder Transformer. - intermediate_size (
int, opsional, default3072) — Dimensi representasi MLP. - hidden_act (
str, opsional, defaultnyagelu) — Fungsi aktivasi non-linear (fungsi atau string) di decoder. Misalnya,"gelu","relu","silu", dan sebagainya. - hidden_dropout_prob (
Union[float, int], opsional, default0.1) — Probabilitas dropout untuk semua lapisan fully connected di embeddings, encoder, dan pooler. - attention_probs_dropout_prob (
Union[float, int], opsional, default0.1) — Rasio dropout untuk probabilitas perhatian. - max_position_embeddings (
int, opsional, default514) — Panjang maksimum urutan yang mungkin digunakan dengan model ini. - type_vocab_size (
int, opsional, default1) — Ukuran kosakata daritoken_type_ids. - initializer_factor (
float, opsional, default1.0) — Faktor untuk menginisialisasi semua matriks bobot (sebaiknya dipertahankan pada 1, digunakan secara internal untuk pengujian inisialisasi). - layer_norm_eps (
float, opsional, defaultnya1e-12) — Epsilon yang digunakan oleh lapisan normalisasi lapisan. - projection_dim (
int, opsional, defaultnya512) — Dimensi dari lapisan proyeksi teks dan visi. - pad_token_id (
int, opsional, default1) — ID token yang digunakan untuk padding dalam kosakata. - bos_token_id (
int, opsional, default0) — ID token yang digunakan untuk awal aliran (beginning-of-stream) dalam kosakata. - eos_token_id (
Union[int, list[int]], opsional, default2) — ID token yang digunakan untuk end-of-stream dalam kosakata. - projection_hidden_act (
str, opsional, defaultnyarelu) — Fungsi aktivasi yang digunakan oleh proyektor multimodal.
Ini adalah kelas konfigurasi untuk menyimpan konfigurasi dari ClapModel. Kelas ini digunakan untuk membuat instans model Clap berdasarkan argumen yang ditentukan, yang mendefinisikan arsitektur model. Membuat instans konfigurasi dengan nilai bawaan akan menghasilkan konfigurasi yang serupa dengan konfigurasi dari laion/clap-htsat-fused
Objek konfigurasi mewarisi dari PreTrainedConfig dan dapat digunakan untuk mengontrol output model. Baca dokumentasi dari PreTrainedConfig untuk informasi lebih lanjut.
Contoh:
>>> from transformers import ClapTextConfig, ClapTextModel
>>> # Initializing a CLAP text configuration
>>> configuration = ClapTextConfig()
>>> # Initializing a model (with random weights) from the configuration
>>> model = ClapTextModel(configuration)
>>> # Accessing the model configuration
>>> configuration = model.configClapAudioConfig
kelas transformers.ClapAudioConfig
< source >( 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 = Nonewindow_size: int = 8num_mel_bins: int = 64spec_size: int = 256hidden_act: str = 'gelu'patch_size: int | list[int] | tuple[int, int] = 4patch_stride: int | list[int] | tuple[int, ...] = (4, 4)num_classes: int = 527hidden_size: int = 768projection_dim: int = 512depths: list[int] | tuple[int, ...] = (2, 2, 6, 2)num_attention_heads: list[int] | tuple[int, ...] = (4, 8, 16, 32)enable_fusion: bool = Falsehidden_dropout_prob: float | int = 0.1fusion_type: str | None = Nonepatch_embed_input_channels: int = 1flatten_patch_embeds: bool = Truepatch_embeds_hidden_size: int = 96enable_patch_layer_norm: bool = Truedrop_path_rate: float | int = 0.0attention_probs_dropout_prob: float | int = 0.0qkv_bias: bool = Truemlp_ratio: float = 4.0aff_block_r: int = 4num_hidden_layers: int = 4projection_hidden_act: str = 'relu'layer_norm_eps: float = 1e-05initializer_factor: float = 1.0 )
Parameter
- window_size (
int, opsional, defaultnya 8) — Ukuran gambar dari spektrogram - num_mel_bins (
int, opsional, default64) — Jumlah fitur mel yang digunakan per frame input. Seharusnya sesuai dengan nilai yang digunakan di kelasAutoFeatureExtractor. - spec_size (
int, opsional, default 256) — Ukuran input spekrogram yang diinginkan dan didukung oleh model. Nilainya dapat berbeda dari outputClapFeatureExtractor, di mana fitur input akan di-resize. Bersesuaian denganimage_sizedari model audio. - hidden_act (
str, opsional, defaultnyagelu) — Fungsi aktivasi non-linear (fungsi atau string) di decoder. Misalnya,"gelu","relu","silu", dan sebagainya. - patch_size (
Union[int, list[int], tuple[int, int]], opsional, defaultnya4) — Ukuran (resolusi) dari setiap patch. - patch_stride (
list, opsional, defaultnya[4, 4]) — Patch stride untuk spektrogram audio - num_classes (
int, opsional, defaultnya 527) — Jumlah kelas yang digunakan untuk pelatihan head - hidden_size (
int, opsional, default768) — Dimensi dari representasi tersembunyi. - projection_dim (
int, opsional, defaultnya512) — Dimensi dari lapisan proyeksi teks dan visi. - depths (
Union[list[int], tuple[int, ...]], opsional, default(2, 2, 6, 2)) — Kedalaman setiap layer dalam Transformer. - num_attention_heads (
Union[list[int], tuple[int, ...]], opsional, default(4, 8, 16, 32)) — Jumlah attention head untuk setiap lapisan attention di decoder Transformer. - enable_fusion (
bool, opsional, defaultFalse) — Apakah akan mengaktifkan patch fusion. Ini adalah kontribusi utama para penulis, dan seharusnya memberikan hasil terbaik. - hidden_dropout_prob (
Union[float, int], opsional, default0.1) — Probabilitas dropout untuk semua lapisan fully connected di embeddings, encoder, dan pooler. - fusion_type (
[type], opsional) — Jenis fusion yang digunakan untuk patch fusion. - patch_embed_input_channels (
int, opsional, default 1) — Jumlah channel yang digunakan untuk spektrogram input - flatten_patch_embeds (
bool, opsional, defaultnyaTrue) — Apakah akan meratakan patch embeddings atau tidak - patch_embeds_hidden_size (
int, opsional, default 96) — Ukuran tersembunyi dari patch embeddings. Digunakan sebagai jumlah saluran output. - enable_patch_layer_norm (
bool, opsional, defaultTrue) — Apakah layer normalization untuk patch embeddings diaktifkan atau tidak - drop_path_rate (
Union[float, int], opsional, defaultnya0.0) — Tingkat drop path untuk fusi patch. - attention_probs_dropout_prob (
Union[float, int], opsional, default0.0) — Rasio dropout untuk probabilitas perhatian. - qkv_bias (
bool, opsional, defaultnyaTrue) — Apakah akan menambahkan bias ke queries, keys, dan values. - mlp_ratio (
float, opsional, default4.0) — Rasio dimensi tersembunyi MLP terhadap dimensi embedding. - aff_block_r (
int, opsional, default 4) — downsize_ratio yang digunakan dalam blok AudioFF - num_hidden_layers (
int, opsional, default4) — Jumlah lapisan tersembunyi dalam decoder Transformer. - projection_hidden_act (
str, opsional, defaultnyarelu) — Fungsi aktivasi yang digunakan oleh proyektor multimodal. - layer_norm_eps (
float, opsional, defaultnya1e-05) — Epsilon yang digunakan oleh lapisan normalisasi lapisan. - initializer_factor (
float, opsional, default1.0) — Faktor untuk menginisialisasi semua matriks bobot (sebaiknya dipertahankan pada 1, digunakan secara internal untuk pengujian inisialisasi).
Ini adalah kelas konfigurasi untuk menyimpan konfigurasi dari ClapModel. Kelas ini digunakan untuk membuat instans model Clap berdasarkan argumen yang ditentukan, yang mendefinisikan arsitektur model. Membuat instans konfigurasi dengan nilai bawaan akan menghasilkan konfigurasi yang serupa dengan konfigurasi dari laion/clap-htsat-fused
Objek konfigurasi mewarisi dari PreTrainedConfig dan dapat digunakan untuk mengontrol output model. Baca dokumentasi dari PreTrainedConfig untuk informasi lebih lanjut.
Contoh:
>>> from transformers import ClapAudioConfig, ClapAudioModel
>>> # Initializing a ClapAudioConfig with laion/clap-htsat-fused style configuration
>>> configuration = ClapAudioConfig()
>>> # Initializing a ClapAudioModel (with random weights) from the laion/clap-htsat-fused style configuration
>>> model = ClapAudioModel(configuration)
>>> # Accessing the model configuration
>>> configuration = model.configClapFeatureExtractor
kelas transformers.ClapFeatureExtractor
< source >( feature_size = 64sampling_rate = 48000hop_length = 480max_length_s = 10fft_window_size = 1024padding_value = 0.0return_attention_mask = Falsefrequency_min: float = 0frequency_max: float = 14000top_db: int | None = Nonetruncation: str = 'fusion'padding: str = 'repeatpad'**kwargs )
Parameter
- feature_size (
int, opsional, default 64) — Dimensi fitur dari spektrogram Mel yang diekstrak. Ini sesuai dengan jumlah filter mel (n_mels). - sampling_rate (
int, opsional, default 48000) — Laju sampling di mana file audio harus didigitalisasi, dinyatakan dalam hertz (Hz). Ini hanya berfungsi untuk memperingatkan pengguna jika audio yang diberikan ke feature extractor tidak memiliki laju sampling yang sama. - hop_length (
int,opsional, default 480) — Panjang jendela yang tumpang tindih untuk STFT yang digunakan untuk mendapatkan Mel Spectrogram. Audio akan dipecah menjadiframesyang lebih kecil dengan langkahhop_lengthdi antara setiap frame. - max_length_s (
int, opsional, default 10) — Panjang maksimum input model dalam detik. Ini digunakan untuk mengisi (padding) audio. - fft_window_size (
int, opsional, default 1024) — Ukuran jendela (dalam sampel) tempat transformasi Fourier diterapkan. Ini mengontrol resolusi frekuensi dari spektrogram. 400 berarti transformasi Fourier dihitung pada jendela berukuran 400 sampel. - padding_value (
float, opsional, default 0.0) — Nilai padding yang digunakan untuk mengisi audio. Seharusnya sesuai dengan bagian hening. - return_attention_mask (
bool, opsional, defaultFalse) — Apakah model harus mengembalikan attention mask yang sesuai dengan input. - frequency_min (
float, opsional, defaultnya 0) — Frekuensi terendah yang menjadi perhatian. STFT tidak akan dihitung untuk nilai di bawah ini. - frequency_max (
float, opsional, defaultnya 14000) — Frekuensi tertinggi yang menjadi perhatian. STFT tidak akan dihitung untuk nilai di atas ini. - top_db (
float, opsional) — Nilai desibel tertinggi yang digunakan untuk mengonversi spektrogram mel ke skala log. Untuk detail lebih lanjut, lihat fungsiaudio_utils.power_to_db - truncation (
str, opsional, defaultnya"fusion") — Pola pemotongan untuk input audio panjang. Dua pola tersedia:fusionakan menggunakan_random_mel_fusion, yang menumpuk 3 crop acak dari mel spectrogram dan versi downsampled dari seluruh mel spectrogram. Jikaconfig.fusiondiatur ke True, audio yang lebih pendek juga perlu mengembalikan 4 mels, yang hanya akan menjadi salinan dari mel asli yang diperoleh dari audio yang di-pad.rand_truncakan memilih crop acak dari mel spectrogram.
- padding (
str, opsional, defaultnya"repeatpad") — Pola padding untuk input audio yang lebih pendek. Tiga pola yang awalnya diimplementasikan:repeatpad: audio diulang, lalu dipadatkan agar sesuai denganmax_length.repeat: audio diulang lalu dipotong agar sesuai denganmax_lengthpad: audio di-pad.
Membangun ekstraktor fitur CLAP.
Feature extractor ini mewarisi dari SequenceFeatureExtractor yang berisi sebagian besar metode utama. Pengguna harus merujuk ke superclass ini untuk informasi lebih lanjut mengenai metode-metode tersebut.
Kelas ini mengekstrak fitur bank filter mel dari ucapan mentah menggunakan implementasi numpy kustom dari Short Time Fourier Transform (STFT) yang seharusnya sesuai dengan ekuivalen torch.stft dari pytorch.
to_dict
< source >( ) → dict[str, Any]
Mengembalikan
dict[str, Any]
Kamus dari semua atribut yang membentuk instance konfigurasi ini, kecuali untuk mel filter banks, yang tidak perlu disimpan atau dicetak karena terlalu panjang.
Menserialisasi instance ini ke dalam kamus Python.
ClapProcessor
kelas transformers.ClapProcessor
< source >( feature_extractortokenizer )
Membangun ClapProcessor yang membungkus feature extractor dan tokenizer menjadi satu processor.
ClapProcessor menyediakan semua fungsionalitas dari ClapFeatureExtractor dan RobertaTokenizer. Lihat ~ClapFeatureExtractor dan ~RobertaTokenizer untuk informasi lebih lanjut.
__call__
< source >( images: typing.Union[ForwardRef('PIL.Image.Image'), numpy.ndarray, ForwardRef('torch.Tensor'), list['PIL.Image.Image'], list[numpy.ndarray], list['torch.Tensor'], NoneType] = Nonetext: str | list[str] | list[list[str]] | None = Nonevideos: typing.Union[list['PIL.Image.Image'], numpy.ndarray, ForwardRef('torch.Tensor'), list[numpy.ndarray], list['torch.Tensor'], list[list['PIL.Image.Image']], list[list[numpy.ndarray]], list[list['torch.Tensor']], transformers.video_utils.URL, list[transformers.video_utils.URL], list[list[transformers.video_utils.URL]], transformers.video_utils.Path, list[transformers.video_utils.Path], list[list[transformers.video_utils.Path]], NoneType] = Noneaudio: typing.Union[numpy.ndarray, ForwardRef('torch.Tensor'), collections.abc.Sequence[numpy.ndarray], collections.abc.Sequence['torch.Tensor'], NoneType] = None**kwargs: *<class 'transformers.processing_utils.ProcessingKwargs'> )
Parameter
- images (
Union[PIL.Image.Image, numpy.ndarray, torch.Tensor, list[PIL.Image.Image], list[numpy.ndarray], list[torch.Tensor]], opsional) — Gambar yang akan dipreprocess. Mengharapkan satu gambar atau batch gambar dengan nilai piksel berkisar dari 0 hingga 255. Jika mengirimkan gambar dengan nilai piksel antara 0 dan 1, aturdo_rescale=False. - text (
Union[str, list[str], list[list[str]]], opsional) — Sequens atau batch dari sequens yang akan dienkod. Setiap sequens dapat berupa string atau daftar string (string yang sudah dipretokenisasi). Jika Anda memasukkan input yang sudah dipretokenisasi, aturis_split_into_words=Trueuntuk menghindari ambiguitas dengan input yang di-batch. - videos (
Union[list[PIL.Image.Image], numpy.ndarray, torch.Tensor, list[numpy.ndarray], list[torch.Tensor], list[list[PIL.Image.Image]], list[list[numpy.ndarray]], list[list[torch.Tensor]], ~video_utils.URL, list[~video_utils.URL], list[list[~video_utils.URL]], ~video_utils.Path, list[~video_utils.Path], list[list[~video_utils.Path]]], opsional) — Video yang akan dipreprocess. Mengharapkan satu video atau batch video dengan nilai piksel berkisar dari 0 hingga 255. Jika mengirimkan video dengan nilai piksel antara 0 dan 1, aturdo_rescale=False. - audio (
Union[numpy.ndarray, torch.Tensor, collections.abc.Sequence[numpy.ndarray], collections.abc.Sequence[torch.Tensor]], opsional) — Audio atau batch audio yang akan disiapkan. Setiap audio dapat berupa array NumPy atau tensor PyTorch. Jika berupa array NumPy/tensor PyTorch, setiap audio harus memiliki bentuk (C, T), di mana C adalah jumlah channel, dan T adalah panjang sampel dari audio tersebut. - return_tensors (
stratau TensorType, opsional) — Jika diset, akan mengembalikan tensor dari framework tertentu. Nilai yang dapat diterima adalah:'pt': Mengembalikan objek PyTorchtorch.Tensor.'np': Mengembalikan objek NumPynp.ndarray.
- **kwargs (ProcessingKwargs, opsional) — Opsi pemrosesan tambahan untuk setiap modalitas (teks, gambar, video, audio). Parameter spesifik model tercantum di atas; lihat kelas TypedDict untuk daftar lengkap argumen yang didukung.
ClapModel
kelas transformers.ClapModel
< source >( config: ClapConfig )
Parameter
- config (ClapConfig) — 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 Clap 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
< source >( input_ids: typing.Optional[torch.LongTensor] = Noneinput_features: typing.Optional[torch.Tensor] = Noneis_longer: typing.Optional[torch.BoolTensor] = Noneattention_mask: typing.Optional[torch.Tensor] = Noneposition_ids: typing.Optional[torch.LongTensor] = Nonereturn_loss: bool | None = None**kwargs: *<class 'transformers.utils.generic.TransformersKwargs'> ) → ClapOutput or tuple(torch.Tensor)
Parameter
- input_ids (
torch.LongTensordengan bentuk(batch_size, sequence_length), opsional) — Indeks token dari urutan input dalam kosakata. Padding akan diabaikan secara default.Indeks dapat diperoleh menggunakan AutoTokenizer. Lihat PreTrainedTokenizer.encode() dan PreTrainedTokenizer.call() untuk detailnya.
- input_features (
torch.Tensordengan bentuk(batch_size, sequence_length, feature_dim), opsional) — Tensor yang sesuai dengan fitur audio input. Fitur audio dapat diperoleh menggunakan ClapFeatureExtractor. LihatClapFeatureExtractor.__call__()untuk detailnya (ClapProcessor menggunakan ClapFeatureExtractor untuk memproses audio). - is_longer (
torch.Tensor, dengan bentuk(batch_size, 1), opsional) — Apakah klip audio lebih panjang darimax_length. JikaTrue, fusi fitur akan diaktifkan untuk meningkatkan fitur. - attention_mask (
torch.Tensordengan bentuk(batch_size, sequence_length), opsional) — Mask untuk menghindari eksekusi attention pada indeks token padding. Nilai mask dipilih dari[0, 1]:- 1 untuk token yang tidak dimasker,
- 0 untuk token yang dimasker.
- position_ids (
torch.LongTensordengan bentuk(batch_size, sequence_length), opsional) — Indeks posisi token dari setiap urutan input dalam position embeddings. Dipilih dalam rentang[0, config.n_positions - 1]. - return_loss (
bool, opsional) — Apakah akan mengembalikan kerugian kontras (contrastive loss).
Mengembalikan
ClapOutput atau tuple(torch.Tensor)
ClapOutput atau tuple dari
torch.Tensor (jika return_dict=False diteruskan atau ketika config.return_dict=False) yang terdiri dari berbagai
elemen tergantung pada konfigurasi (ClapConfig) dan input.
Metode forward dari ClapModel menimpa metode khusus __call__.
Meskipun resep untuk forward pass perlu didefinisikan di dalam fungsi ini, sebaiknya panggil instance
Modulesetelahnya alih-alih fungsi ini, karena yang pertama menangani langkah-langkah pra-pemrosesan dan pasca-pemrosesan, sedangkan yang kedua mengabaikannya secara diam-diam.
- loss (
torch.Tensordengan bentuk(1,), opsional, dikembalikan ketikareturn_lossbernilaiTrue) — Loss kontrastif untuk kemiripan audio-teks. - logits_per_audio (
torch.Tensordengan bentuk(audio_batch_size, text_batch_size)) — Skor produk titik berskala antaraaudio_embedsdantext_embeds. Ini mewakili skor kemiripan audio-teks. - logits_per_text (
torch.Tensordengan bentuk(text_batch_size, audio_batch_size)) — Skor hasil perkalian titik berskala antaratext_embedsdanaudio_embeds. Ini mewakili skor kemiripan teks- audio. - text_embeds (
torch.Tensordengan bentuk(batch_size, output_dim) — Embedding teks yang diperoleh dengan menerapkan lapisan proyeksi ke output terpool dari ClapTextModel. - audio_embeds (
torch.Tensordengan bentuk(batch_size, output_dim) — Embedding audio yang diperoleh dengan menerapkan lapisan proyeksi ke output terpool dari ClapAudioModel. - text_model_output (
~modeling_outputs.BaseModelOutputWithPooling, opsional) — Output dari ClapTextModel. - audio_model_output (
~modeling_outputs.BaseModelOutputWithPooling, opsional) — Output dari ClapAudioModel.
Contoh:
>>> from datasets import load_dataset
>>> from transformers import AutoProcessor, ClapModel
>>> dataset = load_dataset("hf-internal-testing/ashraq-esc50-1-dog-example")
>>> audio_sample = dataset["train"]["audio"][0]["array"]
>>> model = ClapModel.from_pretrained("laion/clap-htsat-unfused")
>>> processor = AutoProcessor.from_pretrained("laion/clap-htsat-unfused")
>>> input_text = ["Sound of a dog", "Sound of vacuum cleaner"]
>>> inputs = processor(text=input_text, audio=audio_sample, return_tensors="pt", padding=True)
>>> outputs = model(**inputs)
>>> logits_per_audio = outputs.logits_per_audio # this is the audio-text similarity score
>>> probs = logits_per_audio.softmax(dim=-1) # we can take the softmax to get the label probabilitiesget_text_features
< source >( input_ids: Tensorattention_mask: typing.Optional[torch.Tensor] = Noneposition_ids: typing.Optional[torch.Tensor] = None**kwargs: *<class 'transformers.utils.generic.TransformersKwargs'> ) → BaseModelOutputWithPooling or tuple(torch.Tensor)
Parameter
- input_ids (
torch.Tensordengan bentuk(batch_size, sequence_length)) — Indeks token dari urutan input dalam kosakata. Padding akan diabaikan secara default. Indeks dapat diperoleh menggunakan AutoTokenizer. Lihat PreTrainedTokenizer.encode() dan PreTrainedTokenizer.call() untuk detailnya. Apa itu input ID?Indeks dapat diperoleh menggunakan AutoTokenizer. Lihat PreTrainedTokenizer.encode() dan PreTrainedTokenizer.call() untuk detailnya.
- attention_mask (
torch.Tensordengan bentuk(batch_size, sequence_length), opsional) — Mask untuk menghindari eksekusi attention pada indeks token padding. Nilai mask dipilih dari[0, 1]:- 1 untuk token yang tidak dimasker,
- 0 untuk token yang dimasker.
- position_ids (
torch.Tensordengan bentuk(batch_size, sequence_length), opsional) — Indeks posisi token dari setiap urutan input dalam position embeddings. Dipilih dalam rentang[0, config.n_positions - 1].
Mengembalikan
BaseModelOutputWithPooling atau tuple(torch.Tensor)
A BaseModelOutputWithPooling atau tuple dari
torch.Tensor (jika return_dict=False dilewatkan atau ketika config.return_dict=False) yang terdiri dari berbagai
elemen tergantung pada konfigurasi (ClapConfig) dan input.
last_hidden_state (
torch.Tensordengan bentuk(batch_size, sequence_length, hidden_size)) — Urutan hidden-states pada keluaran lapisan terakhir model.pooler_output (
torch.Tensordengan bentuk(batch_size, hidden_size)) — Hidden-state lapisan terakhir dari token pertama dalam urutan (token klasifikasi) setelah diproses lebih lanjut melalui lapisan yang digunakan untuk tugas pra-pelatihan tambahan. Misalnya, untuk keluarga model BERT, ini mengembalikan token klasifikasi setelah diproses melalui lapisan linear dan fungsi aktivasi tanh. Bobot lapisan linear dilatih dari tujuan prediksi kalimat berikutnya (klasifikasi) selama pra-pelatihan.hidden_states (
tuple(torch.Tensor), opsional, dikembalikan saatoutput_hidden_states=Truedilewatkan atau saatconfig.output_hidden_states=True) — Tuple daritorch.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 saatoutput_attentions=Truedilewatkan atau saatconfig.output_attentions=True) — Tuple daritorch.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).
Contoh:
>>> import torch
>>> from transformers import AutoTokenizer, ClapModel
>>> model = ClapModel.from_pretrained("laion/clap-htsat-unfused")
>>> tokenizer = AutoTokenizer.from_pretrained("laion/clap-htsat-unfused")
>>> inputs = tokenizer(["the sound of a cat", "the sound of a dog"], padding=True, return_tensors="pt")
>>> with torch.inference_mode():
... text_features = model.get_text_features(**inputs)get_audio_features
< source >( input_features: Tensoris_longer: typing.Optional[torch.Tensor] = Noneattention_mask: typing.Optional[torch.Tensor] = None**kwargs: *<class 'transformers.utils.generic.TransformersKwargs'> ) → BaseModelOutputWithPooling or tuple(torch.Tensor)
Parameter
- input_features (
torch.Tensordengan bentuk(batch_size, sequence_length, feature_dim)) — Tensor yang sesuai dengan fitur audio input. Fitur audio dapat diperoleh menggunakan ClapFeatureExtractor. LihatClapFeatureExtractor.__call__()untuk detailnya (ClapProcessor menggunakan ClapFeatureExtractor untuk memproses audio). - is_longer (
torch.Tensor, dengan bentuk(batch_size, 1), opsional) — Apakah klip audio lebih panjang darimax_length. JikaTrue, fusi fitur akan diaktifkan untuk meningkatkan fitur. - attention_mask (
torch.Tensordengan bentuk(batch_size, sequence_length), opsional) — Mask untuk menghindari eksekusi attention pada indeks token padding. Nilai mask dipilih dari[0, 1]:- 1 untuk token yang tidak dimasker,
- 0 untuk token yang dimasker.
Mengembalikan
BaseModelOutputWithPooling atau tuple(torch.Tensor)
A BaseModelOutputWithPooling atau tuple dari
torch.Tensor (jika return_dict=False dilewatkan atau ketika config.return_dict=False) yang terdiri dari berbagai
elemen tergantung pada konfigurasi (ClapConfig) dan input.
last_hidden_state (
torch.Tensordengan bentuk(batch_size, sequence_length, hidden_size)) — Urutan hidden-states pada keluaran lapisan terakhir model.pooler_output (
torch.Tensordengan bentuk(batch_size, hidden_size)) — Hidden-state lapisan terakhir dari token pertama dalam urutan (token klasifikasi) setelah diproses lebih lanjut melalui lapisan yang digunakan untuk tugas pra-pelatihan tambahan. Misalnya, untuk keluarga model BERT, ini mengembalikan token klasifikasi setelah diproses melalui lapisan linear dan fungsi aktivasi tanh. Bobot lapisan linear dilatih dari tujuan prediksi kalimat berikutnya (klasifikasi) selama pra-pelatihan.hidden_states (
tuple(torch.Tensor), opsional, dikembalikan saatoutput_hidden_states=Truedilewatkan atau saatconfig.output_hidden_states=True) — Tuple daritorch.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 saatoutput_attentions=Truedilewatkan atau saatconfig.output_attentions=True) — Tuple daritorch.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).
Contoh:
>>> import torch
>>> from transformers import AutoFeatureExtractor, ClapModel
>>> model = ClapModel.from_pretrained("laion/clap-htsat-unfused")
>>> feature_extractor = AutoFeatureExtractor.from_pretrained("laion/clap-htsat-unfused")
>>> random_audio = torch.rand((16_000))
>>> inputs = feature_extractor(random_audio, return_tensors="pt")
>>> with torch.inference_mode():
... audio_features = model.get_audio_features(**inputs)ClapTextModel
kelas transformers.ClapTextModel
< source >( config: ClapTextConfigadd_pooling_layer = True )
Parameter
- config (ClapTextConfig) — 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.
- add_pooling_layer (
bool, opsional, defaultTrue) — Apakah akan menambahkan lapisan pooling
Model dapat berperilaku sebagai encoder (dengan hanya self-attention) maupun decoder, di mana dalam kasus ini, lapisan cross-attention ditambahkan di antara lapisan self-attention, mengikuti arsitektur yang dijelaskan dalam Attention is all you need_ oleh Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N. Gomez, Lukasz Kaiser, dan Illia Polosukhin.
Untuk berperilaku sebagai decoder, model perlu diinisialisasi dengan argumen is_decoder dari konfigurasi yang diatur ke True. Untuk digunakan dalam model Seq2Seq, model perlu diinisialisasi dengan argumen is_decoder dan add_cross_attention yang diatur ke True; sebuah encoder_hidden_states kemudian diharapkan sebagai input untuk forward pass.
.. _Perhatian adalah satu-satunya yang Anda butuhkan: https://huggingface.co/papers/1706.03762
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
< source >( input_ids: typing.Optional[torch.Tensor] = Noneattention_mask: typing.Optional[torch.Tensor] = Nonetoken_type_ids: typing.Optional[torch.Tensor] = Noneposition_ids: typing.Optional[torch.Tensor] = Noneinputs_embeds: typing.Optional[torch.Tensor] = None**kwargs: *<class 'transformers.utils.generic.TransformersKwargs'> ) → BaseModelOutputWithPooling or tuple(torch.Tensor)
Parameter
- input_ids (
torch.Tensordengan bentuk(batch_size, sequence_length), opsional) — Indeks token dari urutan input dalam kosakata. Padding akan diabaikan secara default.Indeks dapat diperoleh menggunakan AutoTokenizer. Lihat PreTrainedTokenizer.encode() dan PreTrainedTokenizer.call() untuk detailnya.
- attention_mask (
torch.Tensordengan bentuk(batch_size, sequence_length), opsional) — Mask untuk menghindari eksekusi attention pada indeks token padding. Nilai mask dipilih dari[0, 1]:- 1 untuk token yang tidak dimasker,
- 0 untuk token yang dimasker.
- token_type_ids (
torch.Tensordengan bentuk(batch_size, sequence_length), opsional) — Indeks token segmen untuk menunjukkan bagian pertama dan kedua dari input. Indeks dipilih dari[0, 1]:- 0 sesuai dengan token sentence A,
- 1 sesuai dengan token sentence B.
- position_ids (
torch.Tensordengan bentuk(batch_size, sequence_length), opsional) — Indeks posisi token dari setiap urutan input dalam position embeddings. Dipilih dalam rentang[0, config.n_positions - 1]. - inputs_embeds (
torch.Tensordengan bentuk(batch_size, sequence_length, hidden_size), opsional) — Secara opsional, alih-alih meneruskaninput_ids, Anda dapat memilih untuk langsung meneruskan representasi tertanam. Hal ini berguna jika Anda ingin memiliki kendali lebih atas cara mengonversi indeksinput_idsmenjadi vektor terkait, dibandingkan dengan matriks pencarian penanaman internal model.
Mengembalikan
BaseModelOutputWithPooling atau tuple(torch.Tensor)
A BaseModelOutputWithPooling atau tuple dari
torch.Tensor (jika return_dict=False dilewatkan atau ketika config.return_dict=False) yang terdiri dari berbagai
elemen tergantung pada konfigurasi (ClapConfig) dan input.
Metode forward dari ClapTextModel menimpa metode khusus __call__.
Meskipun resep untuk forward pass perlu didefinisikan di dalam fungsi ini, sebaiknya panggil instance
Modulesetelahnya alih-alih fungsi ini, karena yang pertama menangani langkah-langkah pra-pemrosesan dan pasca-pemrosesan, sedangkan yang kedua mengabaikannya secara diam-diam.
last_hidden_state (
torch.Tensordengan bentuk(batch_size, sequence_length, hidden_size)) — Urutan hidden-states pada keluaran lapisan terakhir model.pooler_output (
torch.Tensordengan bentuk(batch_size, hidden_size)) — Hidden-state lapisan terakhir dari token pertama dalam urutan (token klasifikasi) setelah diproses lebih lanjut melalui lapisan yang digunakan untuk tugas pra-pelatihan tambahan. Misalnya, untuk keluarga model BERT, ini mengembalikan token klasifikasi setelah diproses melalui lapisan linear dan fungsi aktivasi tanh. Bobot lapisan linear dilatih dari tujuan prediksi kalimat berikutnya (klasifikasi) selama pra-pelatihan.hidden_states (
tuple(torch.Tensor), opsional, dikembalikan saatoutput_hidden_states=Truedilewatkan atau saatconfig.output_hidden_states=True) — Tuple daritorch.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 saatoutput_attentions=Truedilewatkan atau saatconfig.output_attentions=True) — Tuple daritorch.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).
ClapTextModelWithProjection
kelas transformers.ClapTextModelWithProjection
< source >( config: ClapTextConfig )
Parameter
- config (ClapTextConfig) — 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 Clap dengan lapisan proyeksi di atasnya (lapisan linear di atas output yang dipooling).
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
< source >( input_ids: typing.Optional[torch.Tensor] = Noneattention_mask: typing.Optional[torch.Tensor] = Noneposition_ids: typing.Optional[torch.Tensor] = None**kwargs: *<class 'transformers.utils.generic.TransformersKwargs'> ) → ClapTextModelOutput or tuple(torch.Tensor)
Parameter
- input_ids (
torch.Tensordengan bentuk(batch_size, sequence_length), opsional) — Indeks token dari urutan input dalam kosakata. Padding akan diabaikan secara default.Indeks dapat diperoleh menggunakan AutoTokenizer. Lihat PreTrainedTokenizer.encode() dan PreTrainedTokenizer.call() untuk detailnya.
- attention_mask (
torch.Tensordengan bentuk(batch_size, sequence_length), opsional) — Mask untuk menghindari eksekusi attention pada indeks token padding. Nilai mask dipilih dari[0, 1]:- 1 untuk token yang tidak dimasker,
- 0 untuk token yang dimasker.
- position_ids (
torch.Tensordengan bentuk(batch_size, sequence_length), opsional) — Indeks posisi token dari setiap urutan input dalam position embeddings. Dipilih dalam rentang[0, config.n_positions - 1].
Mengembalikan
ClapTextModelOutput atau tuple(torch.Tensor)
ClapTextModelOutput atau tuple dari
torch.Tensor (jika return_dict=False diteruskan atau ketika config.return_dict=False) yang terdiri dari berbagai
elemen tergantung pada konfigurasi (ClapConfig) dan input.
Metode forward dari ClapTextModelWithProjection menimpa metode khusus __call__.
Meskipun resep untuk forward pass perlu didefinisikan di dalam fungsi ini, sebaiknya panggil instance
Modulesetelahnya alih-alih fungsi ini, karena yang pertama menangani langkah-langkah pra-pemrosesan dan pasca-pemrosesan, sedangkan yang kedua mengabaikannya secara diam-diam.
text_embeds (
torch.Tensordengan bentuk(batch_size, output_dim)opsional dikembalikan saat model diinisialisasi denganwith_projection=True) — Embedding teks yang diperoleh dengan menerapkan lapisan proyeksi ke pooler_output.last_hidden_state (
torch.Tensordengan bentuk(batch_size, sequence_length, hidden_size), opsional) — Urutan hidden-states pada keluaran lapisan terakhir model.hidden_states (
tuple[torch.Tensor, ...], opsional, dikembalikan ketikaoutput_hidden_states=Truedilewatkan atau ketikaconfig.output_hidden_states=True) — Tuple daritorch.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 saatoutput_attentions=Truedilewatkan atau saatconfig.output_attentions=True) — Tuple daritorch.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).
Contoh:
>>> from transformers import AutoTokenizer, ClapTextModelWithProjection
>>> model = ClapTextModelWithProjection.from_pretrained("laion/clap-htsat-unfused")
>>> tokenizer = AutoTokenizer.from_pretrained("laion/clap-htsat-unfused")
>>> inputs = tokenizer(["a sound of a cat", "a sound of a dog"], padding=True, return_tensors="pt")
>>> outputs = model(**inputs)
>>> text_embeds = outputs.text_embedsClapAudioModel
forward
< source >( input_features: typing.Optional[torch.Tensor] = Noneis_longer: typing.Optional[torch.BoolTensor] = None**kwargs: *<class 'transformers.utils.generic.TransformersKwargs'> ) → BaseModelOutputWithPooling or tuple(torch.Tensor)
Parameter
- input_features (
torch.Tensordengan bentuk(batch_size, sequence_length, feature_dim), opsional) — Tensor yang sesuai dengan fitur audio input. Fitur audio dapat diperoleh menggunakan ClapFeatureExtractor. LihatClapFeatureExtractor.__call__()untuk detailnya (ClapProcessor menggunakan ClapFeatureExtractor untuk memproses audio). - is_longer (
torch.Tensor, dengan bentuk(batch_size, 1), opsional) — Apakah klip audio lebih panjang darimax_length. JikaTrue, fusi fitur akan diaktifkan untuk meningkatkan fitur.
Mengembalikan
BaseModelOutputWithPooling atau tuple(torch.Tensor)
A BaseModelOutputWithPooling atau tuple dari
torch.Tensor (jika return_dict=False dilewatkan atau ketika config.return_dict=False) yang terdiri dari berbagai
elemen tergantung pada konfigurasi (ClapConfig) dan input.
Metode forward dari ClapAudioModel menimpa metode khusus __call__.
Meskipun resep untuk forward pass perlu didefinisikan di dalam fungsi ini, sebaiknya panggil instance
Modulesetelahnya alih-alih fungsi ini, karena yang pertama menangani langkah-langkah pra-pemrosesan dan pasca-pemrosesan, sedangkan yang kedua mengabaikannya secara diam-diam.
last_hidden_state (
torch.Tensordengan bentuk(batch_size, sequence_length, hidden_size)) — Urutan hidden-states pada keluaran lapisan terakhir model.pooler_output (
torch.Tensordengan bentuk(batch_size, hidden_size)) — Hidden-state lapisan terakhir dari token pertama dalam urutan (token klasifikasi) setelah diproses lebih lanjut melalui lapisan yang digunakan untuk tugas pra-pelatihan tambahan. Misalnya, untuk keluarga model BERT, ini mengembalikan token klasifikasi setelah diproses melalui lapisan linear dan fungsi aktivasi tanh. Bobot lapisan linear dilatih dari tujuan prediksi kalimat berikutnya (klasifikasi) selama pra-pelatihan.hidden_states (
tuple(torch.Tensor), opsional, dikembalikan saatoutput_hidden_states=Truedilewatkan atau saatconfig.output_hidden_states=True) — Tuple daritorch.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 saatoutput_attentions=Truedilewatkan atau saatconfig.output_attentions=True) — Tuple daritorch.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).
Contoh:
>>> from datasets import load_dataset
>>> from transformers import AutoProcessor, ClapAudioModel
>>> dataset = load_dataset("hf-internal-testing/ashraq-esc50-1-dog-example")
>>> audio_sample = dataset["train"]["audio"][0]["array"]
>>> model = ClapAudioModel.from_pretrained("laion/clap-htsat-fused")
>>> processor = AutoProcessor.from_pretrained("laion/clap-htsat-fused")
>>> inputs = processor(audio=audio_sample, return_tensors="pt")
>>> outputs = model(**inputs)
>>> last_hidden_state = outputs.last_hidden_stateClapAudioModelWithProjection
kelas transformers.ClapAudioModelWithProjection
< source >( config: ClapAudioConfig )
Parameter
- config (ClapAudioConfig) — 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 Clap dengan lapisan proyeksi di atasnya (lapisan linear di atas output yang dipooling).
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
< source >( input_features: typing.Optional[torch.Tensor] = Noneis_longer: typing.Optional[torch.BoolTensor] = None**kwargs: *<class 'transformers.utils.generic.TransformersKwargs'> ) → ClapAudioModelOutput or tuple(torch.Tensor)
Parameter
- input_features (
torch.Tensordengan bentuk(batch_size, sequence_length, feature_dim), opsional) — Tensor yang sesuai dengan fitur audio input. Fitur audio dapat diperoleh menggunakan ClapFeatureExtractor. LihatClapFeatureExtractor.__call__()untuk detailnya (ClapProcessor menggunakan ClapFeatureExtractor untuk memproses audio). - is_longer (
torch.Tensor, dengan bentuk(batch_size, 1), opsional) — Apakah klip audio lebih panjang darimax_length. JikaTrue, fusi fitur akan diaktifkan untuk meningkatkan fitur.
Mengembalikan
ClapAudioModelOutput atau tuple(torch.Tensor)
ClapAudioModelOutput atau tuple dari
torch.Tensor (jika return_dict=False dilewatkan atau ketika config.return_dict=False) yang terdiri dari berbagai
elemen tergantung pada konfigurasi (ClapConfig) dan input.
Metode forward dari ClapAudioModelWithProjection menimpa metode khusus __call__.
Meskipun resep untuk forward pass perlu didefinisikan di dalam fungsi ini, sebaiknya panggil instance
Modulesetelahnya alih-alih fungsi ini, karena yang pertama menangani langkah-langkah pra-pemrosesan dan pasca-pemrosesan, sedangkan yang kedua mengabaikannya secara diam-diam.
audio_embeds (
torch.Tensordengan bentuk(batch_size, hidden_size)) — Embedding Audio yang diperoleh dengan menerapkan lapisan proyeksi ke pooler_output.last_hidden_state (
torch.Tensordengan bentuk(batch_size, sequence_length, hidden_size), opsional) — Urutan hidden-states pada keluaran lapisan terakhir model.hidden_states (
tuple[torch.Tensor, ...], opsional, dikembalikan ketikaoutput_hidden_states=Truedilewatkan atau ketikaconfig.output_hidden_states=True) — Tuple daritorch.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 saatoutput_attentions=Truedilewatkan atau saatconfig.output_attentions=True) — Tuple daritorch.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).
Contoh:
>>> from datasets import load_dataset
>>> from transformers import ClapAudioModelWithProjection, ClapProcessor
>>> model = ClapAudioModelWithProjection.from_pretrained("laion/clap-htsat-fused")
>>> processor = ClapProcessor.from_pretrained("laion/clap-htsat-fused")
>>> dataset = load_dataset("hf-internal-testing/ashraq-esc50-1-dog-example")
>>> audio_sample = dataset["train"]["audio"][0]["array"]
>>> inputs = processor(audio=audio_sample, return_tensors="pt")
>>> outputs = model(**inputs)
>>> audio_embeds = outputs.audio_embeds