Diffusers documentation

AutoencoderKLMiniMaxH3Audio

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

and get access to the augmented documentation experience

to get started

AutoencoderKLMiniMaxH3Audio

MiniMax tarafından geliştirilen MiniMax-H3'te kullanılan ses otoenkoderı. Girişi ve çıkışı dalga formudur; mel ön ucu veya ayrı bir vokoder yoktur: DAC soyundan gelen, adım atmalı konvolüsyonlu bir enkoder, difüzyon gizli genişliğine doğru nedensel dikkat projeksiyonu ve bir BigVGAN dekoderı.

Encoder, 32 kHz'de 800 örnek atlar, yani saniyede 40 latent üretir; bu nedenle 800 * n örneklik bir dalga formu n latente kodlanır. Tam sayı atlamaya eşit olmayan dalga formları sağdan doldurulur.

Nedensel dikkat projeksiyonu, dikkat yönlendiricisinden geçer, bu nedenle set_attention_backend buna uygulanır; maskesi is_causal=True'dir ve bu, _native_npu hariç tüm backend'ler tarafından desteklenir; _native_npu'nin çekirdeği nedensel bir bayrak kabul etmez.

Autoencoder monodur ve skaler bir scaling_factor yerine latensleri kanal başına latents_mean / latents_std ile normalize eder. MiniMax-H3, stereo'yu iki batch öğesi olarak taşır ve her zaman posterior ortalama değerini (latent_dist.mode()) kullanır, asla bir örneklem kullanmaz.

import torch
from diffusers import AutoencoderKLMiniMaxH3Audio

audio_vae = AutoencoderKLMiniMaxH3Audio.from_pretrained(
    "MiniMaxAI/MiniMax-H3", subfolder="audio_vae", dtype=torch.float32
).to("cuda")  # or "mps", "xpu", "cpu"

AutoencoderKLMiniMaxH3Audio

sınıf diffusers.AutoencoderKLMiniMaxH3Audio

< >

( encoder_dim: int = 64encoder_rates: tuple = (2, 4, 4, 5, 5)latent_dim: int = 2048latent_channels: int = 32num_attention_heads: int = 8decoder_dim: int = 1024decoder_rates: tuple = (5, 5, 2, 2, 2, 2, 2)decoder_kernel_sizes: tuple = (9, 9, 4, 4, 4, 4, 4)resblock_kernel_sizes: tuple = (3, 7, 11)resblock_dilation_sizes: tuple = ((1, 3, 5), (1, 3, 5), (1, 3, 5))sampling_rate: int = 32000latents_mean: list[float] | None = Nonelatents_std: list[float] | None = None )

Parametreler

  • encoder_dim (int, varsayılan 64) — Kodlayıcının ilk konvolüsyonunun kanal genişliği; her alt örnekleme aşamasında iki katına çıkar.
  • encoder_rates (tuple[int], varsayılan (2, 4, 4, 5, 5)) — Encoder adımları. Bunların çarpımı (800) hop uzunluğudur, yani 32 kHz'de 40 latent/sn.
  • latent_dim (int, varsayılan 2048) — Latent projeksiyonlardan önce/sonra, kodlayıcı gövdesinin ve çözücü girdisinin genişliği.
  • latent_channels (int, varsayılan 32) — Difüzyon latentinin genişliği, yani mean_proj / logs_proj çıktı kanalları.
  • num_attention_heads (int, varsayılan 8) — pre_block nedensel dikkat projeksiyonundaki baş sayısı.
  • decoder_dim (int, varsayılan 1024) — BigVGAN başlangıç kanal sayısı; her örnekleme artırma aşamasında yarıya iner.
  • decoder_rates (tuple[int], varsayılan (5, 5, 2, 2, 2, 2, 2)) — BigVGAN örnekleme artırma oranları. Bunların çarpımı prod(encoder_rates) değerine eşit olmalıdır.
  • decoder_kernel_sizes (tuple[int], varsayılan (9, 9, 4, 4, 4, 4, 4)) — Her örnekleme aşaması için transpoze konvolüsyon çekirdek boyutu.
  • resblock_kernel_sizes (tuple[int], varsayılan (3, 7, 11)) — Her örneklem artırma aşamasındaki paralel AMP artımsal bloklarının çekirdek boyutları.
  • resblock_dilation_sizes (tuple[tuple[int]], varsayılan ((1, 3, 5), (1, 3, 5), (1, 3, 5))) — AMP bloğu başına genişlemeler.
  • sampling_rate (int, varsayılan 32000) — Dalga formu örneklem hızı.
  • latents_mean (list[float], isteğe bağlı) — Hattın latensleri normalize/normalize etmemek için kullandığı kanal başına latent ortalama.
  • latents_std (list[float], isteğe bağlı) — Hattın latensleri normalize/normalize etmemek için kullandığı kanal başına latens standart sapması.

MiniMax-H3'ün kullandığı ses otoenkoderi: DAC soyundan gelen konvolüsyonel bir enkoder ve BigVGAN çözücü, doğrudan mono 32 kHz dalga formları üzerinde çalışır.

Bu model ModelMixin sınıfından devralır. Kütüphanenin tüm modeller için uyguladığı genel yöntemler (indirme veya kaydetme gibi) için üst sınıf belgelendirmesine bakın.

encode

< >

( sample: Tensorreturn_dict: bool = True ) → MiniMaxH3AudioEncoderOutput or tuple

Parametreler

  • sample (torch.Tensor) — [batch_size, 1, samples] biçiminde mono dalga formu. MiniMax-H3, referans kliğin iki stereo kanalını batch_size = 2 olarak iletir.
  • return_dict (bool, varsayılan True) — Düz bir tuple yerine MiniMaxH3AudioEncoderOutput döndürülüp döndürülmemesi.

Dönüş değeri

MiniMaxH3AudioEncoderOutput veya tuple

[batch_size, latent_channels, samples / 800] üzerindeki gizli posterior.

Bir dalga formunu ses latent posterior'ına kodlayın.

Dalga formu, önce hop_length'in (800 örnek) katına sağdan dolgu yapılır. MiniMax-H3, her zaman posterior ortalama değerini (latent_dist.mode()) kullanır — logs_proj başlığı, referans hattı tarafından asla değerlendirilmez.

decode

< >

( latents: Tensorreturn_dict: bool = True ) → DecoderOutput or tuple

Parametreler

  • latents (torch.Tensor) — [batch_size, latent_channels, num_frames] biçiminde normalizasyonu kaldırılmış latents. MiniMax-H3, iki stereo kanalını batch_size = 2 olarak iletir.
  • return_dict (bool, varsayılan True) — Düz bir tuple yerine DecoderOutput döndürülüp döndürülmemesi.

Dönüş değeri

DecoderOutput veya tuple

[batch_size, 1, num_frames * 800] biçiminde, [-1, 1] aralığına sınırlanmış dalga formu.

Ses latentlerini bir dalga formuna çözümlen.

forward

< >

( sample: Tensorsample_posterior: bool = Falsereturn_dict: bool = Truegenerator: typing.Optional[torch.Generator] = None ) → DecoderOutput or tuple

Parametreler

  • sample (torch.Tensor) — [batch_size, 1, samples] biçiminde mono dalga formu.
  • sample_posterior (bool, varsayılan False) — Mod alınmak yerine posteriorun örneklenip örneklenmeyeceğini belirtir. MiniMax-H3 modu kullanır.
  • return_dict (bool, varsayılan True) — Düz bir tuple yerine DecoderOutput döndürülüp döndürülmemesi.
  • generator (torch.Generator, isteğe bağlı) — sample_posterior=True olduğunda kullanılan üreteç.

Dönüş değeri

DecoderOutput veya tuple

[batch_size, 1, num_frames * 800] biçiminde, [-1, 1] aralığına sınırlanmış gidiş-dönüş dalgası formu.

Bir dalga formunu kodlayın ardından çözümlen.

Update on GitHub