Buckets:
| # Kandinsky 6 VAE | |
| Kandinsky 6는 비디오 초해상도에 인과적 3D K-VAE를, 동기화된 오디오 생성에는 MMAudio 멜 스펙트로그램 VAE와 별도의 BigVGAN [MMAudioVocoder](/docs/diffusers/main/ko/api/models/kandinsky6_vae#diffusers.MMAudioVocoder)를 함께 사용합니다. | |
| ## Kandinsky6SRVAE[[diffusers.Kandinsky6SRVAE]] | |
| [Kandinsky6SRPipeline](/docs/diffusers/main/ko/api/pipelines/kandinsky6#diffusers.Kandinsky6SRPipeline)에서 사용하는 인과적 3D K-VAE입니다. 유한 메모리 세그먼트로 임의의 길이의 영상을 처리하면서, 단일 비세그먼트 패스의 정확한 출력을 재현합니다. | |
| ```python | |
| import torch | |
| from diffusers import Kandinsky6SRVAE | |
| vae = Kandinsky6SRVAE.from_pretrained( | |
| "kandinskylab/Kandinsky-6.0-VSR-5s-Diffusers", subfolder="vae", torch_dtype=torch.bfloat16 | |
| ) | |
| ``` | |
| #### diffusers.Kandinsky6SRVAE[[diffusers.Kandinsky6SRVAE]] | |
| ```python | |
| diffusers.Kandinsky6SRVAE(in_channels: int = 3, out_channels: int = 3, latent_channels: int = 64, encoder_block_out_channels: tuple[int, ...] = (16, 128, 256, 512, 1024), decoder_block_out_channels: tuple[int, ...] = (16, 256, 512, 1024, 2048), layers_per_block: int = 2, temporal_compression_ratio: int = 4, temporal_compression_start_level: int = 1, scaling_factor: float = 0.910344004631042) | |
| ``` | |
| [소스](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/autoencoders/autoencoder_kandinsky6_sr.py#L516) | |
| **매개변수:** | |
| in_channels (`int`, 기본값 `3`) : 픽셀 채널 수. | |
| out_channels (`int`, 기본값 `3`) : 재구성된 픽셀 채널의 수. | |
| latent_channels (`int`, 기본값 `64`) : 잠재 채널의 수. | |
| encoder_block_out_channels (`tuple[int, ...]`, 기본값 `(16, 128, 256, 512, 1024)`) : 각 인코더 레벨에서 잔차 블록의 출력 폭입니다. 마지막 레벨을 제외한 모든 레벨은 다음 레벨로 넘어갈 때 공간 크기를 절반으로 줄이고 폭을 두 배로 늘립니다. | |
| decoder_block_out_channels (`tuple[int, ...]`, 기본값 `(16, 256, 512, 1024, 2048)`) : 각 디코더 레벨에서 잔차 블록의 출력 폭. | |
| layers_per_block (`int`, 기본값 `2`) : 인코더 레벨당 잔차 블록의 수; 디코더는 레벨당 하나 더 사용합니다. | |
| temporal_compression_ratio (`int`, 기본값 `4`) : 시간 압축 계수; `log2`개의 연속된 레벨도 시간을 압축합니다. | |
| temporal_compression_start_level (`int`, 기본값 `1`) : 시간을 압축하는 첫 번째 레벨입니다. | |
| scaling_factor (`float`, 기본값 `0.910344`) : diffusion transformer에 입력되기 전에 latents에 적용되는 스케일입니다. | |
| [Kandinsky6SRPipeline](/docs/diffusers/main/ko/api/pipelines/kandinsky6#diffusers.Kandinsky6SRPipeline)에서 비디오를 인코딩 및 디코딩하는 데 사용되는 Causal 3D K-VAE입니다. | |
| 16개의 픽셀 프레임(선행 프레임 포함)의 시간적 세그먼트로 비디오가 처리됩니다. 인과적 컨볼루션은 세그먼트 간에 패딩 상태를 유지하므로, 세그먼트화는 피크 메모리만 제한할 뿐 결과에는 영향을 미치지 않습니다. | |
| #### encode[[diffusers.Kandinsky6SRVAE.encode]] | |
| ```python | |
| encode(x: torch.Tensor, return_dict: bool = True) | |
| ``` | |
| [소스](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/autoencoders/autoencoder_kandinsky6_sr.py#L585) | |
| **매개변수:** | |
| x (`torch.Tensor`, shape `(batch_size, channels, num_frames, height, width)`) : `[-1, 1]` 범위의 픽셀 비디오. `num_frames`은 `1 + k * temporal_compression_ratio`여야 합니다. | |
| return_dict (`bool`, 기본값 `True`) : 일반 튜플 대신 [AutoencoderKLOutput](/docs/diffusers/main/ko/api/models/autoencoderkl_qwenimage#diffusers.models.modeling_outputs.AutoencoderKLOutput)을 반환할지 여부. | |
| Encode a video into its latent distribution. | |
| #### decode[[diffusers.Kandinsky6SRVAE.decode]] | |
| ```python | |
| decode(z: torch.Tensor, return_dict: bool = True) | |
| ``` | |
| [소스](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/autoencoders/autoencoder_kandinsky6_sr.py#L611) | |
| **매개변수:** | |
| z (`torch.Tensor`, shape `(batch_size, latent_channels, num_latent_frames, height, width)`) : `scaling_factor`로 이미 나뉜 Latents. | |
| return_dict (`bool`, 기본값 `True`) : 일반 튜플 대신 `~models.autoencoder_kl.DecoderOutput`를 반환할지 여부. | |
| latents를 비디오로 디코딩합니다. | |
| #### forward[[diffusers.Kandinsky6SRVAE.forward]] | |
| ```python | |
| forward(sample: torch.Tensor, sample_posterior: bool = False, return_dict: bool = True, generator: torch.Generator | None = None) | |
| ``` | |
| [소스](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/autoencoders/autoencoder_kandinsky6_sr.py#L642) | |
| **매개변수:** | |
| sample (`torch.Tensor`, shape `(batch_size, channels, num_frames, height, width)`) : `[-1, 1]` 범위의 픽셀 비디오. `num_frames`은 `1 + k * temporal_compression_ratio`여야 합니다. | |
| sample_posterior (`bool`, *선택 사항*, 기본값 `False`) : 모드의 값을 사용하는 대신 잠재적 후분포에서 샘플링할지 여부. | |
| return_dict (`bool`, *선택 사항*, 기본값 `True`) : 일반 튜플 대신 `~models.autoencoder_kl.DecoderOutput`를 반환할지 여부. | |
| generator (`torch.Generator`, *선택 사항*) : 샘플링을 결정적으로 만들기 위한 [`torch.Generator`](https://pytorch.org/docs/stable/generated/torch.Generator.html)입니다. | |
| **반환값:** `~models.autoencoder_kl.DecoderOutput` 또는 `tuple` | |
| `return_dict`가 True이면 `~models.autoencoder_kl.DecoderOutput`가 반환되고, 그렇지 않으면 일반 `tuple`이 반환됩니다. 그 `sample`은 재구성된 비디오입니다. | |
| ## MMAudioVAE[[diffusers.MMAudioVAE]] | |
| `sample_audio=True`일 때 [Kandinsky6TI2VAPipeline](/docs/diffusers/main/ko/api/pipelines/kandinsky6#diffusers.Kandinsky6TI2VAPipeline)가 사용하는 멜 스펙트로그램 VAE입니다. `decode` 출력은 멜 스펙트로그램이며, 이를 [MMAudioVocoder](/docs/diffusers/main/ko/api/models/kandinsky6_vae#diffusers.MMAudioVocoder)를 통해 전달하면 웨이브폼을 얻을 수 있습니다. | |
| 참조 구현은 [hkchengrex/MMAudio](https://github.com/hkchengrex/MMAudio)(MIT 라이선스)에서 찾을 수 있습니다. | |
| ```python | |
| import torch | |
| from diffusers import MMAudioVAE | |
| audio_vae = MMAudioVAE.from_pretrained( | |
| "kandinskylab/Kandinsky-6.0-Pro-distill-5s-Diffusers", subfolder="audio_vae", torch_dtype=torch.bfloat16 | |
| ) | |
| ``` | |
| #### diffusers.MMAudioVAE[[diffusers.MMAudioVAE]] | |
| ```python | |
| diffusers.MMAudioVAE(mel_bins: int = 128, latent_channels: int = 40, hidden_channels: int = 512, channel_multipliers: tuple[int, ...] = (1, 2, 4), layers_per_block: int = 2, sample_rate: int = 44100, n_fft: int = 2048, hop_length: int = 512, scaling_factor: float = 0.417) | |
| ``` | |
| [소스](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/autoencoders/autoencoder_mmaudio.py#L350) | |
| **매개변수:** | |
| mel_bins (`int`, 기본값 `128`) : mel bin의 수. | |
| latent_channels (`int`, 기본값 `40`) : 잠재 채널의 수. | |
| hidden_channels (`int`, 기본값 `512`) : 오토인코더의 기본 폭입니다. | |
| channel_multipliers (`tuple[int, ...]`, 기본값 `(1, 2, 4)`) : autoencoder 레벨의 폭 배율입니다. | |
| layers_per_block (`int`, 기본값 `2`) : 인코더 레벨당 잔차 블록 수; 디코더는 레벨당 하나 더 사용합니다. | |
| sample_rate (`int`, 기본값 `44100`) : 웨이브폼 샘플링 주파수. | |
| n_fft (`int`, 기본값 `2048`) : mel 프론트 엔드의 FFT 크기입니다. | |
| hop_length (`int`, 기본값 `512`) : mel 프론트 엔드의 홉 길이입니다. 이 VAE와 페어링된 [MMAudioVocoder](/docs/diffusers/main/ko/api/models/kandinsky6_vae#diffusers.MMAudioVocoder)의 총 업샘플링 계수와 일치해야 합니다. | |
| scaling_factor (`float`, 기본값 `0.417`) : diffusion transformer에 입력되기 전에 latents에 적용되는 스케일입니다. | |
| [Kandinsky6TI2VAPipeline](/docs/diffusers/main/ko/api/pipelines/kandinsky6#diffusers.Kandinsky6TI2VAPipeline)의 Audio VAE: 로그 멜 스펙트로그램에 대한 크기 보존 오토인코더(MMAudio, https://arxiv.org/abs/2412.15322). | |
| `encode`는 웨이브폼을 잠재 분포로 변환하고, `decode`는 잠재 변수를 다시 멜 스펙트로그램으로 변환합니다. 이후 [MMAudioVocoder](/docs/diffusers/main/ko/api/models/kandinsky6_vae#diffusers.MMAudioVocoder)가 이를 웨이브폼으로 변환합니다. 하나의 프레임은 `hop_length * 2`개의 샘플을 포함합니다. | |
| #### encode[[diffusers.MMAudioVAE.encode]] | |
| ```python | |
| encode(audio: torch.Tensor, return_dict: bool = True) | |
| ``` | |
| [소스](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/autoencoders/autoencoder_mmaudio.py#L403) | |
| **매개변수:** | |
| audio (`torch.Tensor`, shape `(batch_size, num_samples)`) : `sample_rate`에서 `[-1, 1]` 범위의 단일 채널 웨이브폼. | |
| return_dict (`bool`, 기본값 `True`) : 일반 튜플 대신 [AutoencoderKLOutput](/docs/diffusers/main/ko/api/models/autoencoderkl_qwenimage#diffusers.models.modeling_outputs.AutoencoderKLOutput)을 반환할지 여부. | |
| Encode a waveform into its latent distribution. | |
| #### decode[[diffusers.MMAudioVAE.decode]] | |
| ```python | |
| decode(z: torch.Tensor, return_dict: bool = True) | |
| ``` | |
| [소스](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/autoencoders/autoencoder_mmaudio.py#L420) | |
| **매개변수:** | |
| z (`torch.Tensor`, shape `(batch_size, latent_channels, num_latent_frames)`) : 이미 `scaling_factor`로 나뉜 Latents. | |
| return_dict (`bool`, 기본값 `True`) : 일반 튜플 대신 `~models.autoencoder_kl.DecoderOutput`를 반환할지 여부. | |
| **반환값:** | |
| `(batch_size, mel_bins, num_mel_frames)` 형태의 멜 스펙트로그램으로, [MMAudioVocoder](/docs/diffusers/main/ko/api/models/kandinsky6_vae#diffusers.MMAudioVocoder)에 바로 사용할 수 있는 상태입니다. | |
| latents를 mel 스펙트로그램으로 디코딩합니다. | |
| #### forward[[diffusers.MMAudioVAE.forward]] | |
| ```python | |
| forward(sample: torch.Tensor, sample_posterior: bool = False, return_dict: bool = True, generator: torch.Generator | None = None) | |
| ``` | |
| [소스](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/autoencoders/autoencoder_mmaudio.py#L439) | |
| **매개변수:** | |
| sample (`torch.Tensor`, shape `(batch_size, num_samples)`) : `sample_rate`에서 mel spectrogram으로 인코딩 및 재구성하기 위한 `[-1, 1]` 범위의 단일 채널 웨이브폼. | |
| sample_posterior (`bool`, *선택 사항*, 기본값 `False`) : 모드의 값을 사용하는 대신 잠재적 후분포에서 샘플링할지 여부. | |
| return_dict (`bool`, *선택 사항*, 기본값 `True`) : 일반 튜플 대신 `~models.autoencoder_kl.DecoderOutput`를 반환할지 여부. | |
| generator (`torch.Generator`, *선택 사항*) : 샘플링을 결정적으로 만들기 위한 [`torch.Generator`](https://pytorch.org/docs/stable/generated/torch.Generator.html)입니다. | |
| **반환값:** `~models.autoencoder_kl.DecoderOutput` 또는 `tuple` | |
| `return_dict`가 True이면 `~models.autoencoder_kl.DecoderOutput`가 반환되고, 그렇지 않으면 일반 `tuple`이 반환됩니다. 그 `sample`은 `(batch_size, mel_bins, num_mel_frames)` 모양의 재구성된 mel spectrogram입니다. | |
| ## MMAudioVocoder[[diffusers.MMAudioVocoder]] | |
| [NVIDIA/BigVGAN](https://github.com/NVIDIA/BigVGAN)(MIT 라이선스)의 BigVGAN-v2 보코더 MMAudio 번들에서 가져왔으며, [alias-free-torch](https://github.com/junjun3518/alias-free-torch)(Apache License 2.0)의 anti-aliased Snake activations를 포함합니다. | |
| #### diffusers.MMAudioVocoder[[diffusers.MMAudioVocoder]] | |
| ```python | |
| diffusers.MMAudioVocoder(num_mels: int = 128, upsample_initial_channel: int = 1536, upsample_rates: tuple[int, ...] = (8, 4, 2, 2, 2, 2), upsample_kernel_sizes: tuple[int, ...] = (16, 8, 4, 4, 4, 4), resblock_kernel_sizes: tuple[int, ...] = (3, 7, 11), resblock_dilation_sizes: tuple[tuple[int, ...], ...] = ((1, 3, 5), (1, 3, 5), (1, 3, 5))) | |
| ``` | |
| [소스](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/autoencoders/mmaudio_vocoder.py#L154) | |
| **매개변수:** | |
| num_mels (`int`, 기본값 `128`) : 입력 스펙트로그램의 멜 빈(mel bins) 수. 페어링된 [MMAudioVAE](/docs/diffusers/main/ko/api/models/kandinsky6_vae#diffusers.MMAudioVAE)의 `mel_bins`와 일치해야 합니다. | |
| upsample_initial_channel (`int`, 기본값 `1536`) : 첫 번째 레이어의 너비. | |
| upsample_rates (`tuple[int, ...]`, 기본값 `(8, 4, 2, 2, 2, 2)`) : vocoder 단계의 업샘플링 계수입니다. 이 값들의 곱은 전체 업샘플링 계수가 되며, 페어링된 [MMAudioVAE](/docs/diffusers/main/ko/api/models/kandinsky6_vae#diffusers.MMAudioVAE)의 `hop_length`와 일치해야 합니다. | |
| upsample_kernel_sizes (`tuple[int, ...]`, 기본값 `(16, 8, 4, 4, 4, 4)`) : vocoder 단계의 transposed-convolution 커널 크기입니다. | |
| resblock_kernel_sizes (`tuple[int, ...]`, 기본값 `(3, 7, 11)`) : 잔차 블록의 커널 크기입니다. | |
| resblock_dilation_sizes (`tuple[tuple[int, ...], ...]`, 기본값은 `((1, 3, 5), (1, 3, 5), (1, 3, 5))`) : 잔차 블록의 dilations입니다. | |
| MIT 라이선스의 BigVGAN-v2 보코더(https://github.com/NVIDIA/BigVGAN)와 Apache 2.0 라이선스의 https://github.com/junjun3518/alias-free-torch에 포함된 anti-aliased Snake 활성화 함수를 사용하여, [MMAudioVAE](/docs/diffusers/main/ko/api/models/kandinsky6_vae#diffusers.MMAudioVAE)가 디코딩한 멜 스펙트로그램을 [Kandinsky6TI2VAPipeline](/docs/diffusers/main/ko/api/pipelines/kandinsky6#diffusers.Kandinsky6TI2VAPipeline)의 웨이브폼으로 변환합니다. | |
| #### forward[[diffusers.MMAudioVocoder.forward]] | |
| ```python | |
| forward(mel: torch.Tensor, return_dict: bool = True) | |
| ``` | |
| [소스](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/autoencoders/mmaudio_vocoder.py#L213) | |
| **매개변수:** | |
| mel (`torch.Tensor`, shape `(batch_size, num_mels, num_mel_frames)`) : [MMAudioVAE](/docs/diffusers/main/ko/api/models/kandinsky6_vae#diffusers.MMAudioVAE)로 디코딩된 Mel spectrogram. | |
| return_dict (`bool`, 기본값 `True`) : 일반 튜플 대신 `~models.autoencoder_kl.DecoderOutput`를 반환할지 여부. | |
| **반환값:** | |
| `[-1, 1]` 범위의 `(batch_size, 1, num_samples)` 형태의 웨이브폼. | |
Xet Storage Details
- Size:
- 14.4 kB
- Xet hash:
- 227fbfbf66f54f2ea8dc0c78bad564840128304e0f67655b228d6b85f2d4da7a
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.