Diffusers documentation
AutoencoderOobleck
AutoencoderOobleck
Stability AI 在 Stability-AI/stable-audio-tools 和 Stable Audio Open 中引入了带有 KL 损失的 Oobleck 变分自编码器(VAE)模型。该模型在 🤗 Diffusers 中用于将音频波形编码为潜在表示,并将潜在表示解码为音频波形。
该论文的摘要如下:
开放生成模型对社区至关重要,它们支持微调,并在发布新模型时作为基线。然而,目前大多数文本转音频模型都是私有的,艺术家和研究人员无法基于这些模型进行开发。本文介绍了一个新的开放权重文本转音频模型的架构和训练过程,该模型使用 Creative Commons 数据进行训练。我们的评估表明,该模型在各项指标上的表现与当前最先进水平相当。值得注意的是,报告的 FDopenl3 结果(衡量生成内容的真实感)展示了其在 44.1kHz 下实现高质量立体声合成的潜力。
AutoencoderOobleck
class diffusers.AutoencoderOobleck
< source >( encoder_hidden_size = 128downsampling_ratios = [2, 4, 4, 8, 8]channel_multiples = [1, 2, 4, 8, 16]decoder_channels = 128decoder_input_channels = 64audio_channels = 2sampling_rate = 44100 )
参数
- encoder_hidden_size (
int,可选,默认为 128) — 编码器的中间表示维度。 - downsampling_ratios (
list[int],可选,默认为[2, 4, 4, 8, 8]) — 编码器中的下采样比例。这些比例在解码器中按相反顺序用于上采样。 - channel_multiples (
list[int],可选,默认为[1, 2, 4, 8, 16]) — 用于确定隐藏层隐藏大小的倍数。 - decoder_channels (
int,可选,默认为 128) — 解码器的中间表示维度。 - decoder_input_channels (
int,可选,默认为 64) — 解码器的输入维度。对应于潜在维度。 - audio_channels (
int,可选,默认为 2) — 音频数据的通道数。单声道为 1,立体声为 2。 - sampling_rate (
int,可选,默认为 44100) — 用于数字化音频波形的采样率,单位为赫兹(Hz)。
一种自编码器,用于将波形编码为潜在表示,并将潜在表示解码为波形。首次引入于 Stable Audio。
该模型继承自 ModelMixin。请查阅其父类文档,了解为所有模型实现的通用方法(例如下载或保存)。
decode
< source >( z: FloatTensorreturn_dict: bool = Truegenerator = None ) → ~models.vae.OobleckDecoderOutput or tuple
解码一批图像。
encode
< source >( x: Tensorreturn_dict: bool = True )
将一批图像编码为潜在表示。
forward
< source >( sample: Tensorsample_posterior: bool = Falsereturn_dict: bool = Truegenerator: typing.Optional[torch.Generator] = None ) → ~models.vae.OobleckDecoderOutput or tuple
参数
- sample (
torch.Tensor) — 输入样本。 - sample_posterior (
bool,可选,默认为False) — 是否从后验分布中采样。 - return_dict (
bool,可选,默认为True) — 是否返回OobleckDecoderOutput而不是普通元组。 - generator (
torch.Generator,可选) — 用于使采样过程确定性的torch.Generator。
返回值
~models.vae.OobleckDecoderOutput 或 tuple
如果 return_dict 为 True,则返回 ~models.vae.OobleckDecoderOutput,否则返回普通的 tuple。
OobleckDecoderOutput
class diffusers.models.autoencoders.autoencoder_oobleck.OobleckDecoderOutput
< source >( sample: Tensor )
解码方法的输出。
AutoencoderOobleckOutput
class diffusers.models.autoencoders.autoencoder_oobleck.AutoencoderOobleckOutput
< source >( latent_dist: OobleckDiagonalGaussianDistribution )
AutoencoderOobleck 编码方法的输出。