Transformers documentation

Parakeet

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, 2025-09-25 tarihinde Hugging Face Transformers'a katkıda bulunulmuştur.

SDPA

Parakeet

Genel Bakış

NVIDIA NeMo tarafından tanıtılan Parakeet modelleri, otomatik konuşma tanıma için Fast Conformer kodlayıcıyı, bağlantısal zamansal sınıflandırma (CTC), yineleyli sinir ağı transdüser (RNNT) veya token ve süre transdüser (TDT) çözücüleriyle birleştiren modellerdir.

Model Mimarisi

  • Fast Conformer Encoder: Mel-spektrogram özelliklerini işleyen ve alt örnekleme yoluyla dizi uzunluğunu azaltan, doğrusal olarak ölçeklenebilir bir Conformer mimarisi. Bu, FastSpeech2Conformer içindeki Conformer Encoder'ın daha verimli bir versiyonudur (encoder uygulaması ve ayrıntılar için ParakeetEncoder'a bakın).
  • ParakeetForCTC: hızlı bir Conformer kodlayıcı + bir CTC çözücü
    • CTC Decoder: Şu bileşenlerden oluşan basit ama etkili bir decoder:
      • Enkoder gizli boyutundan sözlük boyutuna 1D konvolüsyon projeksiyonu (optimal NeMo uyumluluğu için).
      • Eğitim için CTC kaybı hesaplama.
      • Çıkarım için açgözlü CTC çözümleme.
  • ParakeetForRNNT: hızlı Conformer kodlayıcı + RNN-T (RNN Transducer) çözücü
    • RNN-T Decoder: Standart sinir transdüser:
      • LSTM tahmin ağı, token tahminleri arasında dil bağlamını korur.
      • Ortak ağ, kodlayıcı ve çözücü çıktılarını birleştirir.
      • Çıkarım için açgözlü transducer çözümleme: boş (blank) yayılımı, kodlayıcı çerçevesini bir adım ileri taşır; boş olmayan (non-blank) yayılımı ise aynı çerçevede kalır.
  • ParakeetForTDT: hızlı bir Conformer kodlayıcı + TDT (Token Süresi Transdüsü) çözücü
    • TDT Decoder: Token'ları ve sürelerini birlikte tahmin ederek verimli çözümleme sağlar:
      • LSTM tahmin ağı, token tahminleri arasında dil bağlamını korur.
      • Ortak ağ, kodlayıcı ve çözücü çıktılarını birleştirir.
      • Duration head, atlaması gereken kare sayısını tahmin ederek hızlı çıkarımı (inference) sağlar.

Orijinal uygulama NVIDIA NeMo içinde bulunabilir. Model denetim noktaları NVIDIA organizasyonu altında yer almaktadır.

Bu model Nithin Rao Koluguri, Eustache Le Bihan, Eric Bezzam, Maksym Lypivskyi ve Hainan Xu tarafından katkıda bulunmuştur.

Kullanım

ParakeetForCTC kullanımı

Pipeline
AutoModel
from transformers import pipeline


pipe = pipeline("automatic-speech-recognition", model="nvidia/parakeet-ctc-1.1b")
out = pipe("https://huggingface.co/datasets/hf-internal-testing/dummy-audio-samples/resolve/main/bcn_weather.mp3")
print(out)
# {'text': 'yesterday it was thirty five degrees in barcelona but today the temperature will go down to minus twenty degrees'}

ParakeetForRNNT kullanımı

Pipeline
AutoModel
Zaman Damgalama

Parakeet RNN-T, CTC gibi büyük/küçük harf ve noktalama işareti olmadan transkripsiyon yapar ve model ayrıca token zaman damgalama işlevini de gerçekleştirebilir.

from transformers import pipeline

pipe = pipeline("automatic-speech-recognition", model="nvidia/parakeet-rnnt-0.6b", revision="refs/pr/4")
out = pipe("https://huggingface.co/datasets/hf-internal-testing/dummy-audio-samples/resolve/main/bcn_weather.mp3")
print(out)
# {'text': 'yesterday it was thirty five degrees in barcelona but today the temperature will go down to minus twenty degrees'}

ParakeetForTDT kullanımı

Pipeline
AutoModel
Zaman Damgalama

Parakeet TDT transkriptleri büyük/küçük harf bilgisini içerir ve model ayrıca token zaman damgalama işlemini de gerçekleştirebilir.

from transformers import pipeline

pipe = pipeline("automatic-speech-recognition", model="nvidia/parakeet-tdt-0.6b-v3")
out = pipe("https://huggingface.co/datasets/hf-internal-testing/dummy-audio-samples/resolve/main/bcn_weather.mp3")
print(out)
# {'text': 'Yesterday it was 35 degrees in Barcelona, but today the temperature will go down to minus 20 degrees.'}

Modeli Hızlandırmak

Parakeet, grafik yakalama (NVIDIA GPU'larda CUDA graphs, diğer hızlandırıcılarda eşdeğer mekanizma) ile tam grafik derlemesini destekler! Bu optimizasyon, transkribe etmek istediğiniz maksimum ses uzunluğunu bildiğinizde en etkili sonucu verir. Temel fikir, yeniden derlemeyi önlemek için statik giriş biçimleri kullanmaktır. Örneğin, sesinizin 30 saniyeden kısa olacağını biliyorsanız, işlemciyi (processor) kullanarak tüm girişleri 30 saniyeye kadar doldurabilir (pad) ve tutarlı giriş özellikleri ile dikkat maskeleri (attention masks) hazırlayabilirsiniz. Aşağıdaki örneğe bakın!

import torch
from datasets import Audio, load_dataset

from transformers import AutoModelForCTC, AutoProcessor


processor = AutoProcessor.from_pretrained("nvidia/parakeet-ctc-1.1b")
model = AutoModelForCTC.from_pretrained("nvidia/parakeet-ctc-1.1b", device_map="auto")

ds = load_dataset("hf-internal-testing/librispeech_asr_dummy", "clean", split="validation")
ds = ds.cast_column("audio", Audio(sampling_rate=processor.feature_extractor.sampling_rate))
speech_samples = [el['array'] for el in ds["audio"][:5]]

# Compile the generate method with fullgraph and graph capture
model.generate = torch.compile(model.generate, fullgraph=True, mode="reduce-overhead")

# let's define processor kwargs to pad to 30 seconds
processor_kwargs = {
    "padding": "max_length",
    "max_length": 30 * processor.feature_extractor.sampling_rate,
}

# Define a timing context using accelerator events
class TimerContext:
    def __init__(self, name="Execution"):
        self.name = name
        self.start_event = None
        self.end_event = None

    def __enter__(self):
        # Use accelerator events for more accurate device timing
        self.start_event = torch.Event(enable_timing=True)
        self.end_event = torch.Event(enable_timing=True)
        self.start_event.record()
        return self

    def __exit__(self, *args):
        self.end_event.record()
        torch.accelerator.synchronize()
        elapsed_time = self.start_event.elapsed_time(self.end_event) / 1000.0
        print(f"{self.name} time: {elapsed_time:.4f} seconds")


inputs = processor(speech_samples[0], **processor_kwargs)
inputs.to(model.device, dtype=model.dtype)
print("\n" + "="*50)
print("First generation - compiling...")
# Generate with the compiled model
with TimerContext("First generation"):
    outputs = model.generate(**inputs)
print(processor.decode(outputs))

inputs = processor(speech_samples[1], **processor_kwargs)
inputs.to(model.device, dtype=model.dtype)
print("\n" + "="*50)
print("Second generation - recording graphs...")
with TimerContext("Second generation"):
    outputs = model.generate(**inputs)
print(processor.decode(outputs))

inputs = processor(speech_samples[2], **processor_kwargs)
inputs.to(model.device, dtype=model.dtype)
print("\n" + "="*50)
print("Third generation - fast !!!")
with TimerContext("Third generation"):
    outputs = model.generate(**inputs)
print(processor.decode(outputs))

inputs = processor(speech_samples[3], **processor_kwargs)
inputs.to(model.device, dtype=model.dtype)
print("\n" + "="*50)
print("Fourth generation - still fast !!!")
with TimerContext("Fourth generation"):
    outputs = model.generate(**inputs)
print(processor.decode(outputs))

CTC Eğitimi

from datasets import Audio, load_dataset
from transformers import AutoModelForCTC, AutoProcessor

model_id = "nvidia/parakeet-ctc-1.1b"
NUM_SAMPLES = 5

processor = AutoProcessor.from_pretrained(model_id)
model = AutoModelForCTC.from_pretrained(model_id, device_map="auto")
model.train()

ds = load_dataset("hf-internal-testing/librispeech_asr_dummy", "clean", split="validation")
ds = ds.cast_column("audio", Audio(sampling_rate=processor.feature_extractor.sampling_rate))
speech_samples = [el['array'] for el in ds["audio"][:NUM_SAMPLES]]
text_samples = ds["text"][:NUM_SAMPLES]

# passing `text` to the processor will prepare inputs' `labels` key
inputs = processor(audio=speech_samples, text=text_samples, sampling_rate=processor.feature_extractor.sampling_rate)
inputs.to(model.device, dtype=model.dtype)

outputs = model(**inputs)
print("Loss:", outputs.loss.item())
outputs.loss.backward()

RNN-T Eğitimi

RNN-T kaybının hesaplanması torchaudio gerektirir (pip install torchaudio).

from datasets import Audio, load_dataset
import torch
from transformers import AutoModelForRNNT, AutoProcessor

model_id = "nvidia/parakeet-rnnt-0.6b"
revision = "refs/pr/4"
NUM_SAMPLES = 4

processor = AutoProcessor.from_pretrained(model_id, revision=revision)
model = AutoModelForRNNT.from_pretrained(model_id, revision=revision,  device_map="auto")
model.train()

ds = load_dataset("hf-internal-testing/librispeech_asr_dummy", "clean", split="validation")
ds = ds.cast_column("audio", Audio(sampling_rate=processor.feature_extractor.sampling_rate))
speech_samples = [el['array'] for el in ds["audio"][:NUM_SAMPLES]]
text_samples = ds["text"][:NUM_SAMPLES]

# passing `text` to the processor will prepare inputs' `labels` key
inputs = processor(audio=speech_samples, text=text_samples, sampling_rate=processor.feature_extractor.sampling_rate)
inputs.to(model.device, dtype=model.dtype)

outputs = model(**inputs)
print("Loss:", outputs.loss.item())
outputs.loss.backward()

TDT Eğitimi

from datasets import Audio, load_dataset
import torch
from transformers import AutoModelForTDT, AutoProcessor

model_id = "nvidia/parakeet-tdt-0.6b-v3"
NUM_SAMPLES = 4

processor = AutoProcessor.from_pretrained(model_id)
model = AutoModelForTDT.from_pretrained(model_id, device_map="auto")
model.train()

ds = load_dataset("hf-internal-testing/librispeech_asr_dummy", "clean", split="validation")
ds = ds.cast_column("audio", Audio(sampling_rate=processor.feature_extractor.sampling_rate))
speech_samples = [el['array'] for el in ds["audio"][:NUM_SAMPLES]]
text_samples = ds["text"][:NUM_SAMPLES]

# passing `text` to the processor will prepare inputs' `labels` key
inputs = processor(audio=speech_samples, text=text_samples, sampling_rate=processor.feature_extractor.sampling_rate)
inputs.to(model.device, dtype=model.dtype)

outputs = model(**inputs)
print("Loss:", outputs.loss.item())
outputs.loss.backward()

ParakeetTokenizer

sınıf transformers.ParakeetTokenizer

< >

( *args**kwargs )

PreTrainedTokenizerFast sınıfından tüm yöntemleri devralır. Bu yöntemlere ilişkin daha fazla bilgi için kullanıcıların bu üst sınıfa başvurması gerekir; ancak CTC çözümlemesine uyarlamak için yeniden tanımlanan _decode yöntemi hariçtir:

  1. Arka arkaya gelen token'ları grupla
  2. Boş token'ı filtrele

ParakeetFeatureExtractor

sınıf transformers.ParakeetFeatureExtractor

< >

( feature_size = 80sampling_rate = 16000hop_length = 160n_fft = 512win_length = 400preemphasis = 0.97padding_value = 0.0**kwargs )

Parametreler

  • feature_size (int, isteğe bağlı, varsayılan 80) — Çıkarılan özelliklerin boyutu.
  • sampling_rate (int, isteğe bağlı, varsayılan 16000) — Ses dosyalarının dijitalleştirilmesi gereken örnekleme hızı, hertz (Hz) cinsinden ifade edilir.
  • hop_length (int, isteğe bağlı, varsayılan 160) — Mel Frekans katsayılarını elde etmek için kullanılan STFT'nin üst üste binen pencerelerinin uzunluğu.
  • n_fft (int, isteğe bağlı, varsayılan 512) — Fourier dönüşümünün boyutu.
  • win_length (int, isteğe bağlı, varsayılan 400) — STFT hesabı için pencere uzunluğu.
  • preemphasis (float, isteğe bağlı, varsayılan 0.97) — Ön vurgu filtresi katsayısı. 0.0, ön vurgu filtresi uygulanmadığı anlamına gelir.
  • padding_value (float, isteğe bağlı, varsayılan 0.0) — Sesin doldurulmasında kullanılan dolgu değeri. Sessizliklere karşılık gelmelidir.

Bir Parakeet özellik çıkarıcısı oluşturur.

Bu özellik çıkarıcı, ana yöntemlerin çoğunu içeren SequenceFeatureExtractor sınıfından devralır. Kullanıcıların bu yöntemler hakkında daha fazla bilgi için bu üst sınıfa başvurması gerekir.

Bu sınıf, ham konuşma verisinden mel-filtre bankası özelliklerini, pytorch'un torch.stft karşılığıyla eşleşmesi gereken özel bir numpy Short Time Fourier Transform uygulaması kullanarak çıkarır.

__call__

< >

( raw_speech: numpy.ndarray | list[float] | list[numpy.ndarray] | list[list[float]]truncation: bool = Falsepad_to_multiple_of: int | None = Nonereturn_tensors: str | transformers.utils.generic.TensorType | None = Nonereturn_attention_mask: bool | None = Nonepadding: str | None = 'longest'max_length: int | None = Nonesampling_rate: int | None = Nonedo_normalize: bool | None = Nonedevice: str | None = 'cpu'return_token_timestamps: bool | None = None**kwargs )

Parametreler

  • raw_speech (np.ndarray, list[float], list[np.ndarray], list[list[float]]) — Doldurulacak (padding) dizi veya dizi grubu. Her dizi, bir numpy dizisi, bir float değerleri listesi, bir numpy dizileri listesi veya float değerleri listeleri listesi olabilir. Tek kanallı (mono) ses olmalı, stereo değil; yani her zaman adımı için tek bir float değer içermelidir.
  • truncation (bool, isteğe bağlı, varsayılan True) — max_length'den uzun giriş dizilerini max_length değerine kısaltmak için kesme işlemini etkinleştirir.
  • pad_to_multiple_of (int, isteğe bağlı, varsayılan olarak None) — Ayarlanırsa, diziyi verilen değerin katına kadar doldurur.

    Bu, hesaplama yeteneği >= 7.5 (Volta) olan NVIDIA donanımlarında Tensor Core kullanımını etkinleştirmek veya 128'in katları olan dizi uzunluklarından faydalanan TPU'lar için özellikle faydalıdır.

  • return_attention_mask (bool, isteğe bağlı) — Dikkat maskesinin (attention mask) döndürülüp döndürülmeyeceğini belirtir. Varsayılan değer bırakılırsa, ilgili feature_extractor'ın varsayılanına göre dikkat maskesi döndürülür.

    Dikkat maskeleri nedir?

    Parakeet modelleri için, ince hatalardan kaçınmak amacıyla toplu çıkarım sırasında attention_mask her zaman iletilmelidir.

  • return_tensors (str veya TensorType, isteğe bağlı) — Belirlenirse, Python tamsayı listesi yerine tensörler döndürülür. Kabul edilen değerler şunlardır:
    • 'tf': TensorFlow tf.constant nesnelerini döndürür.
    • 'pt': PyTorch torch.Tensor nesnelerini döndürür.
    • 'np': Numpy np.ndarray nesnelerini döndürür.
  • sampling_rate (int, isteğe bağlı) — raw_speech girdisinin örneklenmiş olduğu örneklem hızı. Sessiz hataları önlemek ve otomatik konuşma tanıma hattına izin vermek için ileri çağrıda sampling_rate değerinin geçirilmesi şiddetle önerilir.
  • padding_value (float, isteğe bağlı, varsayılan 0.0) — Doldurma değerlerinin / vektörlerinin doldurulmasında kullanılan değer.
  • do_normalize (bool, isteğe bağlı, varsayılan False) — Girdinin sıfır ortalama ve birim varyansla normalize edilip edilmeyeceği. Normalizasyon, model performansını önemli ölçüde iyileştirmeye yardımcı olabilir.
  • device (str, isteğe bağlı, varsayılan 'cpu') — _torch_extract_fbank_features yönteminde ses sinyallerinin log-mel spektrogramunun hesaplanması için kullanılan cihazı belirtir. (ör. “cpu”, “cuda”)
  • return_token_timestamps (bool, isteğe bağlı, varsayılan olarak None) — Kullanımı durduruldu. Bunun yerine return_attention_mask kullanın; kare sayısı buradan çıkarılabilir.

    Girdi raw_speech'in kare sayısının döndürülüp döndürülmeyeceği. Bu num_frames değerleri, model tarafından kelime düzeyi zaman damgalarının hesaplanmasında kullanılabilir.

Bir veya birden fazla diziyi model için özniteliklendirmek ve hazırlamak için kullanılan ana yöntem. Uygulama, kullanılabilirse STFT hesabı için PyTorch'u, aksi takdirde daha yavaş bir NumPy tabanlı yöntemi kullanır.

ParakeetProcessor

sınıf transformers.ParakeetProcessor

< >

( feature_extractortokenizerblank_token = '<blank>'decoder_type = None )

Parametreler

  • feature_extractor (feature_extractor_class) — Özellik çıkarıcı zorunlu bir girdidir.
  • tokenizer (tokenizer_class) — Tokenizer zorunlu bir girdidir.
  • blank_token (str, isteğe bağlı, varsayılan "<blank>") — Transducer çözümleme için boş token.
  • decoder_type (str, isteğe bağlı) — Çözme/zaman damgası yayma modu. Olası değerler:
    • "ctc": Ardışık aynı token'lar tek bir emisyon birleştirilir.
    • "rnnt": Tekrarlanan jetonlar korunur; her jetona 1 karelik bir zaman damgası aralığı atanır.
    • "tdt": Tekrarlanan tokenler korunur; her token aralığı, tahmini süresine dayanır. Noktalama işaretleri, önceki tokene eklenir.

    None ise (eski kontrol noktaları), geriye dönük uyumluluk için decoder tipi otomatik olarak çıkarılır.

Bir özellik çıkarıcıyı ve bir belirteçleyiciyi tek bir işlemciye saran bir ParakeetProcessor oluşturur.

ParakeetProcessor, feature_extractor_class ve tokenizer_class sınıflarının tüm işlevlerini sunar. Daha fazla bilgi için ~feature_extractor_class ve ~tokenizer_class belgelerine bakın.

__call__

< >

( audio: typing.Union[numpy.ndarray, ForwardRef('torch.Tensor'), collections.abc.Sequence[numpy.ndarray], collections.abc.Sequence['torch.Tensor']]text: str | list[str] | list[list[str]] | None = Nonesampling_rate: int | None = None**kwargs: *<class 'transformers.models.parakeet.processing_parakeet.ParakeetProcessorKwargs'> )

Parametreler

  • audio (Union[numpy.ndarray, torch.Tensor, collections.abc.Sequence[numpy.ndarray], collections.abc.Sequence[torch.Tensor]]) — Hazırlanacak ses veya sesler partisi. Her ses, bir NumPy dizisi veya PyTorch tensörü olabilir. NumPy dizisi/PyTorch tensörü durumunda, her sesin şekli (C, T) olmalıdır; burada C kanal sayısı, T ise sesin örnek uzunluğudur.
  • text (Union[str, list[str], list[list[str]]], isteğe bağlı) — Kodlanacak dizi veya dizi grubu. Her dizi bir metin veya metin listesi (önceden tokenize edilmiş metin) olabilir. Önceden tokenize edilmiş bir girdi geçirirseniz, gruplu girdilerle karışıklığı önlemek için is_split_into_words=True değerini ayarlayın.
  • sampling_rate (int, isteğe bağlı) — Giriş sesinin Hz cinsinden örneklem hızı. Bu değer, özellik çıkarıcısının beklediği örneklem hızıyla eşleşmelidir (varsayılan 16000 Hz). Sağlanırsa, işleyicinin beklediği örneklem hızıyla doğrulanır ve eşleşmezse bir hata oluşturulur. Sağlanmazsa bir uyarı verilir ve varsayılan örneklem hızı kabul edilir.
  • return_tensors (str veya TensorType, isteğe bağlı) — Belirlenirse, belirli bir çerçeveye ait tensörler döndürülür. Kabul edilen değerler şunlardır:
    • 'pt': PyTorch torch.Tensor nesnelerini döndürür.
    • 'np': NumPy np.ndarray nesnelerini döndürür.
  • **kwargs (ProcessingKwargs, isteğe bağlı) — Her modalite (metin, görüntüler, videolar, ses) için ek işleme seçenekleri. Modelle ilgili parametreler yukarıda listelenmiştir; desteklenen argümanların tam listesi için TypedDict sınıfına bakın.

decode

< >

( *argsdurations = None**kwargs )

decode() fonksiyonuna argümanları iletin ve zaman damgalarını (TDT için sağlanıyorsa) NeMo kütüphanesindeki gibi son işlemleyin.

ParakeetEncoderConfig

sınıf transformers.ParakeetEncoderConfig

< >

( 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 = 1024num_hidden_layers: int = 24num_attention_heads: int = 8intermediate_size: int = 4096hidden_act: str = 'silu'attention_bias: bool = Trueconvolution_bias: bool = Trueconv_kernel_size: int = 9subsampling_factor: int = 8subsampling_conv_channels: int = 256num_mel_bins: int = 80subsampling_conv_kernel_size: int = 3subsampling_conv_stride: int = 2dropout: float | int = 0.1dropout_positions: float | int = 0.0layerdrop: float | int = 0.1activation_dropout: float | int = 0.1attention_dropout: float | int = 0.1max_position_embeddings: int = 5000scale_input: bool = Trueinitializer_range: float = 0.02 )

Parametreler

  • hidden_size (int, isteğe bağlı, varsayılan 1024) — Gizli temsillerin boyutu.
  • num_hidden_layers (int, isteğe bağlı, varsayılan 24) — Transformer çözücüdeki gizli katman sayısı.
  • num_attention_heads (int, isteğe bağlı, varsayılan 8) — Transformer decoder'ındaki her dikkat katmanı için dikkat başı sayısı.
  • intermediate_size (int, isteğe bağlı, varsayılan 4096) — MLP temsillerinin boyutu.
  • hidden_act (str, isteğe bağlı, varsayılan silu) — Çözücüdeki doğrusal olmayan aktivasyon fonksiyonu (fonksiyon veya dize). Örneğin, "gelu", "relu", "silu" vb.
  • attention_bias (bool, isteğe bağlı, varsayılan True) — Öz-dikkat sırasında sorgu, anahtar, değer ve çıktı projeksiyon katmanlarında önyargı (bias) kullanılıp kullanılmayacağı.
  • convolution_bias (bool, isteğe bağlı, varsayılan True) — Conformer'ün konvolüsyon modülündeki konvolüsyonlarda sapma (bias) kullanılıp kullanılmayacağı.
  • conv_kernel_size (int, isteğe bağlı, varsayılan 9) — Conformer bloğundaki konvolüsyon katmanlarının çekirdek boyutu.
  • subsampling_factor (int, isteğe bağlı, varsayılan 8) — Girdi dizisinin alt örneklenmesinde kullanılan çarpan.
  • subsampling_conv_channels (int, isteğe bağlı, varsayılan 256) — Alt örnekleme konvolüsyon katmanlarındaki kanal sayısı.
  • num_mel_bins (int, isteğe bağlı, varsayılan 80) — Mel özellik sayısı.
  • subsampling_conv_kernel_size (int, isteğe bağlı, varsayılan 3) — Alt örnekleme konvolüsyon katmanlarının çekirdek boyutu.
  • subsampling_conv_stride (int, isteğe bağlı, varsayılan 2) — Alt örnekleme konvolüsyon katmanlarının stride değeri.
  • dropout (Union[float, int], isteğe bağlı, varsayılan 0.1) — Tüm dropout katmanları için oran.
  • dropout_positions (float, isteğe bağlı, varsayılan 0.0) — Girdi dizisindeki konumlar için dropout oranı.
  • layerdrop (Union[float, int], isteğe bağlı, varsayılan 0.1) — LayerDrop olasılığı. Daha fazla ayrıntı için [LayerDrop makalesine](bkz. https://huggingface.co/papers/1909.11556) bakın.
  • activation_dropout (Union[float, int], isteğe bağlı, varsayılan 0.1) — Tamamen bağlı katmandaki aktivasyonlar için dropout oranı.
  • attention_dropout (Union[float, int], isteğe bağlı, varsayılan 0.1) — Dikkat olasılıkları için dropout oranı.
  • max_position_embeddings (int, isteğe bağlı, varsayılan 5000) — Bu modelin kullanılabileceği maksimum dizi uzunluğu.
  • scale_input (bool, isteğe bağlı, varsayılan True) — Girdi gömme vektörlerinin ölçeklendirilip ölçeklendirilmeyeceğini belirtir.
  • 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 ParakeetModel'in yapılandırmasını depolamak için kullanılan yapılandırma sınıfıdır. Belirtilen argümanlara göre bir Parakeet modelinin örneklenmesinde, model mimarisini tanımlamak için kullanılır. Varsayılan değerlerle bir yapılandırma örneği oluşturmak, nvidia/parakeet-ctc-1.1b ile benzer bir yapılandırmaya yol açar.

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.

Örnek:

>>> from transformers import ParakeetEncoderModel, ParakeetEncoderConfig

>>> # Initializing a `ParakeetEncoder` configuration
>>> configuration = ParakeetEncoderConfig()

>>> # Initializing a model from the configuration
>>> model = ParakeetEncoderModel(configuration)

>>> # Accessing the model configuration
>>> configuration = model.config

ParakeetCTCConfig

sınıf transformers.ParakeetCTCConfig

< >

( 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 = 1025ctc_loss_reduction: str = 'mean'ctc_zero_infinity: bool = Trueencoder_config: dict | transformers.configuration_utils.PreTrainedConfig | None = Nonepad_token_id: int | None = 1024 )

Parametreler

  • vocab_size (int, isteğe bağlı, varsayılan 1025) — Modelin sözlük boyutu. input_ids ile temsil edilebilecek farklı token sayısını belirler.
  • ctc_loss_reduction (str, isteğe bağlı, varsayılan "mean") — torch.nn.CTCLoss çıktısına uygulanacak indirgeme yöntemini belirtir. Yalnızca bir ParakeetForCTC örneği eğitilirken geçerlidir.
  • ctc_zero_infinity (bool, isteğe bağlı, varsayılan True) — torch.nn.CTCLoss için sonsuz kayıpları ve ilişkili gradyanları sıfırlayıp sıfırlamayacağı. Sonsuz kayıplar, girdilerin hedeflerle hizalanmak için çok kısa olması durumunda ortaya çıkar. Yalnızca bir ParakeetForCTC örneğinin eğitimi sırasında geçerlidir.
  • encoder_config (Union[dict, ParakeetEncoderConfig], isteğe bağlı) — Encoder'ın yapılandırma nesnesi veya sözlüğü.
  • pad_token_id (int, isteğe bağlı, varsayılan 1024) — Sözlükte dolgu için kullanılan token kimliği.

Bu, bir ParakeetModel'in yapılandırmasını depolamak için kullanılan yapılandırma sınıfıdır. Belirtilen argümanlara göre bir Parakeet modelinin örneklenmesinde, model mimarisini tanımlamak için kullanılır. Varsayılan değerlerle bir yapılandırma örneği oluşturmak, nvidia/parakeet-ctc-1.1b ile benzer bir yapılandırmaya yol açar.

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.

Örnek:

>>> from transformers import ParakeetForCTC, ParakeetCTCConfig
>>> # Initializing a Parakeet configuration
>>> configuration = ParakeetCTCConfig()
>>> # Initializing a model from the configuration
>>> model = ParakeetForCTC(configuration)
>>> # Accessing the model configuration
>>> configuration = model.config

ParakeetRNNTConfig

sınıf transformers.ParakeetRNNTConfig

< >

( 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 = 0id2label: 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 = Noneis_encoder_decoder: bool = Truevocab_size: int = 8193decoder_hidden_size: int = 640num_decoder_layers: int = 2hidden_act: str = 'relu'max_symbols_per_step: int = 10encoder_config: dict | transformers.configuration_utils.PreTrainedConfig | None = Nonepad_token_id: int = 2blank_token_id: int = 8192 )

Parametreler

  • is_encoder_decoder (bool, isteğe bağlı, varsayılan True) — Modelin bir kodlayıcı/çözücü olarak kullanılıp kullanılmadığı.
  • vocab_size (int, isteğe bağlı, varsayılan 8193) — Modelin sözlük boyutu. input_ids ile temsil edilebilecek farklı token sayısını belirler.
  • decoder_hidden_size (int, isteğe bağlı, varsayılan 640) — LSTM tahmin ağı ve ortak ağın gizli boyutu.
  • num_decoder_layers (int, isteğe bağlı, varsayılan 2) — Tahmin ağındaki LSTM katmanlarının sayısı.
  • hidden_act (str, isteğe bağlı, varsayılan relu) — Çözücüdeki doğrusal olmayan aktivasyon fonksiyonu (fonksiyon veya dize). Örneğin, "gelu", "relu", "silu" vb.
  • max_symbols_per_step (int, isteğe bağlı, varsayılan 10) — Açgözlü çözümleme sırasında her kodlayıcı zaman adımında üretilmesi gereken sembol sayısının üst sınırı.
  • encoder_config (Union[dict, ParakeetEncoderConfig], isteğe bağlı) — Encoder'ın yapılandırma nesnesi veya sözlüğü.
  • pad_token_id (int, isteğe bağlı, varsayılan 2) — Sözlükte dolgu için kullanılan token kimliği.
  • blank_token_id (int, isteğe bağlı, varsayılan 8192) — Boş token kimliği. RNN-T için pad_token_id'den farklıdır.

Bu, bir ParakeetModel'in yapılandırmasını depolamak için kullanılan yapılandırma sınıfıdır. Belirtilen argümanlara göre bir Parakeet modelinin örneklenmesi ve model mimarisinin tanımlanması için kullanılır. Varsayılan değerlerle bir yapılandırma örneği oluşturmak, nvidia/parakeet-rnnt-0.6b ile benzer bir yapılandırmaya yol açar.

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.

Örnek:

>>> from transformers import ParakeetForRNNT, ParakeetRNNTConfig

>>> # Initializing a Parakeet RNN-T configuration
>>> configuration = ParakeetRNNTConfig()

>>> # Initializing a model from the configuration
>>> model = ParakeetForRNNT(configuration)

>>> # Accessing the model configuration
>>> configuration = model.config

ParakeetTDTConfig

sınıf transformers.ParakeetTDTConfig

< >

( 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 = 0id2label: 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 = Noneis_encoder_decoder: bool = Truevocab_size: int = 8193decoder_hidden_size: int = 640num_decoder_layers: int = 2hidden_act: str = 'relu'max_symbols_per_step: int = 10encoder_config: dict | transformers.configuration_utils.PreTrainedConfig | None = Nonepad_token_id: int = 2blank_token_id: int = 8192durations: list[int] | tuple[int, ...] = (0, 1, 2, 3, 4) )

Parametreler

  • is_encoder_decoder (bool, isteğe bağlı, varsayılan True) — Modelin bir kodlayıcı/çözücü olarak kullanılıp kullanılmadığı.
  • vocab_size (int, isteğe bağlı, varsayılan 8193) — Modelin sözlük boyutu. input_ids ile temsil edilebilecek farklı token sayısını belirler.
  • decoder_hidden_size (int, isteğe bağlı, varsayılan 640) — LSTM tahmin ağı ve ortak ağın gizli boyutu.
  • num_decoder_layers (int, isteğe bağlı, varsayılan 2) — Tahmin ağındaki LSTM katmanlarının sayısı.
  • hidden_act (str, isteğe bağlı, varsayılan relu) — Çözücüdeki doğrusal olmayan aktivasyon fonksiyonu (fonksiyon veya dize). Örneğin, "gelu", "relu", "silu" vb.
  • max_symbols_per_step (int, isteğe bağlı, varsayılan 10) — Açgözlü çözümleme sırasında her kodlayıcı zaman adımında üretilmesi gereken sembol sayısının üst sınırı.
  • encoder_config (Union[dict, ParakeetEncoderConfig], isteğe bağlı) — Encoder'ın yapılandırma nesnesi veya sözlüğü.
  • pad_token_id (int, isteğe bağlı, varsayılan 2) — Sözlükte dolgu için kullanılan token kimliği.
  • blank_token_id (int, isteğe bağlı, varsayılan 8192) — Boş token kimliği. TDT için pad_token_id'den farklıdır.
  • durations (list[int], isteğe bağlı, varsayılan [0, 1, 2, 3, 4]) — Tahmin edilebilen token süre değerleri. Her değer, bir token veya boş (blank) yayılımının kaç kareyi kapsadığını temsil eder.

Bu, bir ParakeetModel'in yapılandırmasını depolamak için kullanılan yapılandırma sınıfıdır. Belirtilen argümanlara göre bir Parakeet modelinin örneklenmesi ve model mimarisinin tanımlanması için kullanılır. Varsayılan değerlerle bir yapılandırma örneği oluşturmak, nvidia/parakeet-tdt-0.6b-v3 modelinin yapılandırmasına benzer bir yapılandırma elde edilmesini sağlar.

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.

Örnek:

>>> from transformers import ParakeetForTDT, ParakeetTDTConfig

>>> # Initializing a Parakeet TDT configuration
>>> configuration = ParakeetTDTConfig()

>>> # Initializing a model from the configuration
>>> model = ParakeetForTDT(configuration)

>>> # Accessing the model configuration
>>> configuration = model.config

ParakeetEncoder

sınıf transformers.ParakeetEncoder

< >

( config: ParakeetEncoderConfig )

Parametreler

  • config (ParakeetEncoderConfig) — 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.

Fast Conformer mimarisi tabanlı Parakeet Encoder modeli.

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

< >

( input_features: Tensorattention_mask: typing.Optional[torch.Tensor] = Noneoutput_attention_mask: bool = True**kwargs: *<class 'transformers.utils.generic.TransformersKwargs'> ) → BaseModelOutput or tuple(torch.Tensor)

Parametreler

  • input_features (torch.Tensor, şekli (batch_size, sequence_length, feature_dim)) — Giriş ses özelliklerine karşılık gelen tensörler. Ses özellikleri feature_extractor_class kullanılarak elde edilebilir. Ayrıntılar için feature_extractor_class.__call__ bölümüne bakın (processor_class, sesleri işlemek için feature_extractor_class kullanır).
  • attention_mask (torch.Tensor şeklinde (batch_size, sequence_length), isteğe bağlı) — Doldurma (padding) token indekslerinde dikkat (attention) işlemi yapmaktan kaçınmak için kullanılan maske. Seçilen maske değerleri [0, 1]:
    • 1, maskelenmemiş jetonlar için,
    • maskelenmiş jetonlar için 0.

    Dikkat maskeleri nedir?

  • output_attention_mask (bool, isteğe bağlı, varsayılan True) — Çıktı dikkat maskesinin döndürülüp döndürülmeyeceğini belirtir. Yalnızca attention_mask sağlandığında etkilidir.

Dönüş değeri

BaseModelOutput veya tuple(torch.Tensor)

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

ParakeetEncoder 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.

  • last_hidden_state (torch.Tensor, şekli (batch_size, sequence_length, hidden_size)) — Modelin son katmanının çıktısındaki gizli durumlar dizisi.

  • 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 (modelin bir gömme katmanı varsa gömme katmanının çıktısı için bir tane + her katmanın çıktısı için birer 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.

Örnek:

>>> from transformers import AutoProcessor, ParakeetEncoder
>>> from datasets import load_dataset, Audio

>>> model_id = "nvidia/parakeet-ctc-1.1b"
>>> processor = AutoProcessor.from_pretrained(model_id)
>>> encoder = ParakeetEncoder.from_pretrained(model_id)

>>> ds = load_dataset("hf-internal-testing/librispeech_asr_dummy", "clean", split="validation")
>>> ds = ds.cast_column("audio", Audio(sampling_rate=processor.feature_extractor.sampling_rate))

>>> inputs = processor(ds[0]["audio"]["array"])
>>> encoder_outputs = encoder(**inputs)

>>> print(encoder_outputs.last_hidden_state.shape)

ParakeetForCTC

sınıf transformers.ParakeetForCTC

< >

( config: ParakeetCTCConfig )

Parametreler

  • config (ParakeetCTCConfig) — 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.

Bağlantılı Zaman Sınıflandırma (CTC) başlığına sahip Parakeet Kodlayıcı.

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

< >

( input_features: Tensorattention_mask: typing.Optional[torch.Tensor] = Nonelabels: typing.Optional[torch.Tensor] = None**kwargs: *<class 'transformers.utils.generic.TransformersKwargs'> ) → CausalLMOutput or tuple(torch.Tensor)

Parametreler

  • input_features (torch.Tensor, şekli (batch_size, sequence_length, feature_dim)) — Giriş ses özelliklerine karşılık gelen tensörler. Ses özellikleri feature_extractor_class kullanılarak elde edilebilir. Ayrıntılar için feature_extractor_class.__call__ bölümüne bakın (processor_class, sesleri işlemek için feature_extractor_class kullanır).
  • attention_mask (torch.Tensor şeklinde (batch_size, sequence_length), isteğe bağlı) — Doldurma (padding) token indekslerinde dikkat (attention) işlemi yapmaktan kaçınmak için kullanılan maske. Seçilen maske değerleri [0, 1]:
    • 1, maskelenmemiş jetonlar için,
    • maskelenmiş jetonlar için 0.

    Dikkat maskeleri nedir?

  • labels (torch.Tensor, şekli (batch_size, sequence_length), isteğe bağlı) — Maskeli dil modelleme kaybını hesaplamak için etiketler. Endeksler [0, ..., config.vocab_size] aralığında olmalı ya da -100 olmalı (input_ids docstring'ine bakın). Endeksleri -100 olarak ayarlanan tokenlar yok sayılır (maskelenir), kayıp yalnızca etiketleri [0, ..., config.vocab_size] aralığında olan tokenlar için hesaplanır.

Dönüş değeri

CausalLMOutput veya tuple(torch.Tensor)

Bir CausalLMOutput veya return_dict=False geçirildiğinde ya da config.return_dict=False olduğunda torch.Tensor bir demeti; yapılandırma (None) ve girdilere bağlı olarak çeşitli öğelerden oluşur.

ParakeetForCTC 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.

  • loss (torch.Tensor, şekli (1,), isteğe bağlı, labels sağlandığında döndürülür) — Dil modelleme kaybı (sonraki token tahmini için).

  • logits (torch.Tensor, şekli (batch_size, sequence_length, config.vocab_size)) — Dil modelleme başlığının tahmin puanları (SoftMax öncesi her sözlük jetonu için puanlar).

  • 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 (modelin bir gömme katmanı varsa gömme katmanının çıktısı için bir tane + her katmanın çıktısı için birer 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.

Örnek:

>>> from transformers import AutoProcessor, ParakeetForCTC
>>> from datasets import load_dataset, Audio

>>> model_id = "nvidia/parakeet-ctc-1.1b"
>>> processor = AutoProcessor.from_pretrained(model_id)
>>> model = ParakeetForCTC.from_pretrained(model_id)

>>> ds = load_dataset("hf-internal-testing/librispeech_asr_dummy", "clean", split="validation")
>>> ds = ds.cast_column("audio", Audio(sampling_rate=processor.feature_extractor.sampling_rate))

>>> inputs = processor(ds[0]["audio"]["array"], text=ds[0]["text"])
>>> outputs = model(**inputs)

>>> print(outputs.loss)

generate

< >

( input_features: Tensorattention_mask: typing.Optional[torch.Tensor] = Nonereturn_dict_in_generate: bool = Falsecompile_config: transformers.generation.configuration_utils.CompileConfig | None = None**kwargs: *<class 'transformers.utils.generic.TransformersKwargs'> )

compile_config (CompileConfig, isteğe bağlı): Sağlanırsa, torch.compile çözümleme döngüsündeki ileri çağrılara uygulanır.

Örnek:

>>> from transformers import AutoProcessor, ParakeetForCTC
>>> from datasets import load_dataset, Audio

>>> model_id = "nvidia/parakeet-ctc-1.1b"
>>> processor = AutoProcessor.from_pretrained(model_id)
>>> model = ParakeetForCTC.from_pretrained(model_id)

>>> ds = load_dataset("hf-internal-testing/librispeech_asr_dummy", "clean", split="validation")
>>> ds = ds.cast_column("audio", Audio(sampling_rate=processor.feature_extractor.sampling_rate))

>>> inputs = processor(ds[0]["audio"]["array"], text=ds[0]["text"])
>>> predicted_ids = model.generate(**inputs)
>>> transcription = processor.batch_decode(predicted_ids, skip_special_tokens=True)

>>> print(transcription)

ParakeetForRNNT

sınıf transformers.ParakeetForRNNT

< >

( config: ParakeetRNNTConfig )

Parametreler

  • config (ParakeetRNNTConfig) — 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.

RNN-T (RNN Transducer) başlığına sahip Parakeet Encoder.

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

< >

( input_features: typing.Optional[torch.Tensor] = Noneattention_mask: typing.Optional[torch.Tensor] = Nonedecoder_input_ids: typing.Optional[torch.LongTensor] = Nonedecoder_cache: transformers.models.parakeet.generation_parakeet.ParakeetRNNTDecoderCache | None = Noneuse_decoder_cache: bool | None = Noneencoder_outputs: transformers.models.parakeet.modeling_parakeet.ParakeetEncoderModelOutput | tuple[torch.Tensor] | None = Nonelabels: typing.Optional[torch.Tensor] = None**kwargs: *<class 'transformers.utils.generic.TransformersKwargs'> ) → ParakeetRNNTOutput or tuple(torch.Tensor)

Parametreler

  • input_features (torch.Tensor, şekli (batch_size, sequence_length, feature_dim), isteğe bağlı) — Giriş ses özelliklerine karşılık gelen tensörler. Ses özellikleri feature_extractor_class kullanılarak elde edilebilir. Ayrıntılar için feature_extractor_class.__call__ bölümüne bakın (processor_class, sesleri işlemek için feature_extractor_class kullanır).
  • attention_mask (torch.Tensor şeklinde (batch_size, sequence_length), isteğe bağlı) — Doldurma (padding) token indekslerinde dikkat (attention) işlemi yapmaktan kaçınmak için kullanılan maske. Seçilen maske değerleri [0, 1]:
    • 1, maskelenmemiş jetonlar için,
    • maskelenmiş jetonlar için 0.

    Dikkat maskeleri nedir?

  • decoder_input_ids (torch.LongTensor, şekli (batch_size, 1), opsiyonel) — Tek adımlı çıkarım için decoder giriş token kimlikleri.
  • decoder_cache (ParakeetRNNTDecoderCache, opsiyonel) — Decoder LSTM önbelleği. Sağlandığında ve başlatıldığında, önbelleğe alınan decoder_output (ör. boşluk atlaması sırasında) decoder'ın çalıştırılması yerine yeniden kullanılır. input_ids sağlandığında, decoder çalıştırılır ve önbellek yerinde güncellenir.
  • use_decoder_cache (bool, isteğe bağlı) — Bir decoder önbelleğinin kullanılıp kullanılmayacağını belirtir. True ve decoder_cache None olduğunda, ileri geçiş sırasında yeni bir önbellek otomatik olarak oluşturulur.
  • encoder_outputs (tuple(torch.Tensor), isteğe bağlı) — Önceden hesaplanmış kodlayıcı çıktıları (last_hidden_state, pooler_output, hidden_states, attentions, attention_mask). Bir tuple veya ParakeetEncoderModelOutput olabilir.
  • labels (torch.Tensor, şekli (batch_size, sequence_length), isteğe bağlı) — Maskeli dil modelleme kaybını hesaplamak için etiketler. Endeksler [0, ..., config.vocab_size] aralığında olmalı ya da -100 olmalı (input_ids docstring'ine bakın). Endeksleri -100 olarak ayarlanan tokenlar yok sayılır (maskelenir), kayıp yalnızca etiketleri [0, ..., config.vocab_size] aralığında olan tokenlar için hesaplanır.

Dönüş değeri

ParakeetRNNTOutput veya tuple(torch.Tensor)

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

ParakeetForRNNT 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.

  • loss (torch.Tensor, isteğe bağlı) — labels sağlandığında döndürülen RNN-T kaybı.
  • logits (torch.Tensor) — Ortak token logits. Eğitim için şekli (batch, T, U+1, vocab), tek adımlı çıkarım için ise (batch, 1, 1, vocab) şeklindedir.
  • decoder_cache (ParakeetRNNTDecoderCache, opsiyonel) — Gizli durum, hücre durumu ve son çıktıyı içeren decoder LSTM önbelleği.

Örnek:

>>> from transformers import AutoProcessor, ParakeetForRNNT
>>> from datasets import load_dataset, Audio

>>> model_id = "nvidia/parakeet-rnnt-0.6b"
>>> processor = AutoProcessor.from_pretrained(model_id)
>>> model = ParakeetForRNNT.from_pretrained(model_id)

>>> ds = load_dataset("hf-internal-testing/librispeech_asr_dummy", "clean", split="validation")
>>> ds = ds.cast_column("audio", Audio(sampling_rate=processor.feature_extractor.sampling_rate))

>>> inputs = processor(ds[0]["audio"]["array"])
>>> outputs = model(**inputs)

ParakeetForTDT

sınıf transformers.ParakeetForTDT

< >

( config: ParakeetTDTConfig )

Parametreler

  • config (ParakeetTDTConfig) — 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 göz atın.

TDT (Token Duration Transducer) başlığına sahip Parakeet Encoder.

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

< >

( input_features: typing.Optional[torch.Tensor] = Noneattention_mask: typing.Optional[torch.Tensor] = Nonedecoder_input_ids: typing.Optional[torch.LongTensor] = Nonedecoder_cache: transformers.models.parakeet.generation_parakeet.ParakeetRNNTDecoderCache | None = Noneuse_decoder_cache: bool | None = Noneencoder_outputs: transformers.models.parakeet.modeling_parakeet.ParakeetEncoderModelOutput | tuple[torch.Tensor] | None = Nonelabels: typing.Optional[torch.Tensor] = None**kwargs: *<class 'transformers.utils.generic.TransformersKwargs'> ) → ParakeetRNNTOutput or tuple(torch.Tensor)

Parametreler

  • input_features (torch.Tensor, şekli (batch_size, sequence_length, feature_dim), isteğe bağlı) — Giriş ses özelliklerine karşılık gelen tensörler. Ses özellikleri feature_extractor_class kullanılarak elde edilebilir. Ayrıntılar için feature_extractor_class.__call__ bölümüne bakın (processor_class, sesleri işlemek için feature_extractor_class kullanır).
  • attention_mask (torch.Tensor şeklinde (batch_size, sequence_length), isteğe bağlı) — Doldurma (padding) token indekslerinde dikkat (attention) işlemi yapmaktan kaçınmak için kullanılan maske. Seçilen maske değerleri [0, 1]:
    • 1, maskelenmemiş jetonlar için,
    • maskelenmiş jetonlar için 0.

    Dikkat maskeleri nedir?

  • decoder_input_ids (torch.LongTensor, şekli (batch_size, 1), opsiyonel) — Tek adımlı çıkarım için decoder giriş token kimlikleri.
  • decoder_cache (ParakeetRNNTDecoderCache, opsiyonel) — Decoder LSTM önbelleği. Sağlandığında ve başlatıldığında, önbelleğe alınan decoder_output (ör. boşluk atlaması sırasında) decoder'ın çalıştırılması yerine yeniden kullanılır. input_ids sağlandığında, decoder çalıştırılır ve önbellek yerinde güncellenir.
  • use_decoder_cache (bool, isteğe bağlı) — Bir decoder önbelleğinin kullanılıp kullanılmayacağını belirtir. True ve decoder_cache None olduğunda, ileri geçiş sırasında yeni bir önbellek otomatik olarak oluşturulur.
  • encoder_outputs (tuple(torch.Tensor), isteğe bağlı) — Önceden hesaplanmış kodlayıcı çıktıları (last_hidden_state, pooler_output, hidden_states, attentions, attention_mask). Bir tuple veya ParakeetEncoderModelOutput olabilir.
  • labels (torch.Tensor, şekli (batch_size, sequence_length), isteğe bağlı) — Maskeli dil modelleme kaybını hesaplamak için etiketler. Endeksler [0, ..., config.vocab_size] aralığında olmalı ya da -100 olmalı (input_ids docstring'ine bakın). Endeksleri -100 olarak ayarlanan tokenlar yok sayılır (maskelenir), kayıp yalnızca etiketleri [0, ..., config.vocab_size] aralığında olan tokenlar için hesaplanır.

Dönüş değeri

ParakeetRNNTOutput veya tuple(torch.Tensor)

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

ParakeetForTDT 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.

  • loss (torch.Tensor, isteğe bağlı) — labels sağlandığında döndürülen RNN-T kaybı.
  • logits (torch.Tensor) — Ortak token logits. Eğitim için şekli (batch, T, U+1, vocab), tek adımlı çıkarım için ise (batch, 1, 1, vocab) şeklindedir.
  • decoder_cache (ParakeetRNNTDecoderCache, opsiyonel) — Gizli durum, hücre durumu ve son çıktıyı içeren decoder LSTM önbelleği.

Örnek:

>>> from transformers import AutoProcessor, ParakeetForTDT
>>> from datasets import load_dataset, Audio

>>> model_id = "nvidia/parakeet-tdt-0.6b-v3"
>>> processor = AutoProcessor.from_pretrained(model_id)
>>> model = ParakeetForTDT.from_pretrained(model_id)

>>> ds = load_dataset("hf-internal-testing/librispeech_asr_dummy", "clean", split="validation")
>>> ds = ds.cast_column("audio", Audio(sampling_rate=processor.feature_extractor.sampling_rate))

>>> inputs = processor(ds[0]["audio"]["array"])
>>> outputs = model(**inputs)
Update on GitHub