Buckets:

hf-doc-build/doc / diffusers /main /tr /api /models /kandinsky6_transformer.md
mishig's picture
|
download
raw
13.4 kB

Kandinsky 6 Dönüştürücüler

Kandinsky 6, metin/görselden video ve ses üretimi için video ve ses latentlerini birlikte gürültüden arındıran çok modlu bir difüzyon dönüştürücüsü ve video süper çözünürlüğü için metinsiz bir difüzyon dönüştürücüsü kullanır.

Kandinsky6Transformer3DModel[[diffusers.Kandinsky6Transformer3DModel]]

Kandinsky6TI2VAPipeline tarafından kullanılan çok modlu dönüştürücü.

import torch
from diffusers import Kandinsky6Transformer3DModel

transformer = Kandinsky6Transformer3DModel.from_pretrained(
    "kandinskylab/Kandinsky-6.0-Pro-distill-5s-Diffusers", subfolder="transformer", torch_dtype=torch.bfloat16
)

diffusers.Kandinsky6Transformer3DModel[[diffusers.Kandinsky6Transformer3DModel]]

diffusers.Kandinsky6Transformer3DModel(in_visual_dim: int = 16, out_visual_dim: int = 16, in_text_dim: int = 3584, in_text_dim2: int = 768, time_dim: int = 1024, patch_size: tuple = (1, 2, 2), model_dim: int = 4096, ff_dim: int = 16384, num_text_blocks: int = 4, num_visual_blocks: int = 60, axes_dims: tuple = (32, 48, 48), visual_cond: bool = True, in_audio_dim: int = 20, out_audio_dim: int = 20, model_dim_a: int | None = None, time_dim_a: int | None = None, ff_dim_a: int | None = None, axes_dims_a: tuple | None = None, audio_freqs_scaling: float = 1.0, scale_factor: tuple | list[float] = (1.0, 2.0, 2.0), text_token_padding: bool = False, ca_rope: bool = False, cross_gates: bool = False, fix_modulation: bool = False, visual_token_type_num_embeddings: int = 0)

Kaynak

Parametreler:

in_visual_dim (int, optional, varsayılan 16) : Girdi video latent kanal sayısı.

out_visual_dim (int, optional, varsayılan 16) : Çıktı video latent kanal sayısı.

in_text_dim (int, optional, varsayılan 3584) : Metin token gömme boyutu.

in_text_dim2 (int, optional, varsayılan 768) : Havuzlanmış metin gömme boyutu.

time_dim (int, optional, varsayılan 1024) : Zaman gömme boyutu.

patch_size (tuple[int, int, int], opsiyonel, varsayılan (1, 2, 2)) : Video yama boyutu.

model_dim (int, optional, varsayılan 4096) : Video transformer gizli boyutu.

ff_dim (int, optional, varsayılan 16384) : Video ileri beslemeli gizli boyut.

num_text_blocks (int, optional, varsayılan 4) : Her modalite başına metin bloğu sayısı.

num_visual_blocks (int, optional, varsayılan 60) : Birleştirilmiş video/ses bloklarının sayısı.

axes_dims (tuple[int, int, int], isteğe bağlı, varsayılan (32, 48, 48)) : Video için RoPE boyutları.

visual_cond (bool, opsiyonel, varsayılan True) : Video koşullama kanallarının mevcut olup olmadığı.

in_audio_dim (int, optional, varsayılan 20) : Girdi ses latent kanal sayısı.

out_audio_dim (int, optional, varsayılan 20) : Çıktı ses latent kanal sayısı.

model_dim_a (int, optional) : Ses dönüştürücü gizli boyutu. Varsayılan olarak model_dim'dir.

time_dim_a (int, optional) : Ses zaman gömme boyutu. Varsayılan olarak time_dim'dir.

ff_dim_a (int, optional) : Ses ileri beslemeli gizli boyutu. Varsayılan değeri ff_dim'dir.

axes_dims_a (tuple[int, int, int], optional) : Ses RoPE boyutları. Varsayılan olarak axes_dims'dir.

audio_freqs_scaling (float, optional, varsayılan 1.0) : Ses RoPE frekans ölçekleme.

scale_factor (tuple[float, float, float], optional, varsayılan (1.0, 2.0, 2.0)) : Video konumlarına uygulanan eksen başına (t, h, w) RoPE frekans ölçeklendirmesi.

text_token_padding (bool, opsiyonel, varsayılan değeri False) : Referans modelin metin dizilerinin dolgu (padding) uygulanıp uygulanmadığını kaydeden checkpoint meta verisi. forward, bu bayraktan bağımsız olarak her zaman isteğe bağlı bir encoder_attention_mask kabul eder; bunun gerçekten iletilip iletilmeyeceği tamamen çağırana bağlıdır.

ca_rope (bool, opsiyonel, varsayılanı False) : Çapraz modlu ses RoPE'nin kullanılıp kullanılmayacağı.

cross_gates (bool, opsiyonel, varsayılanı False) : Çapraz modlu artımlı kapıların (cross-modal residual gates) kullanılıp kullanılmayacağı.

fix_modulation (bool, opsiyonel, varsayılanı False) : Sabit modülasyon varyantının kullanılıp kullanılmayacağı.

visual_token_type_num_embeddings (int, optional, varsayılan 0) : Görsel jeton türü gömme sayısı.

Kandinsky 6, metin/görselden video ve ses üretimi için çok modlu dönüştürücü.

Video ve ses, her biri kendi metin dalına (Qwen2.5-VL token'ları + CLIP havuzlanmış gömme) koşullanan füzyonlu, çapraz modallı transformer blokları aracılığıyla birlikte gürültüden arındırılır. audio_hidden_states geçirilmediğinde, video tek başına gürültüden arındırılırken füzyonlu bloğun video öz-dikkat, çapraz-dikkat ve ileri besleme aşamaları yine de çalıştırılır. Döner gömlemeler, forward içinde token ızgarasından hesaplanır.

Yayınlanan checkpoint'ler text_token_padding, ca_rope, cross_gates ve fix_modulation değerlerini True olarak ayarlar (her checkpoint'in transformer/config.json dosyasına bakın); False varsayılanları, bu repoda ağırlıkları bulunmayan bir mimari varyantını tanımlar.

forward[[diffusers.Kandinsky6Transformer3DModel.forward]]

forward(hidden_states: Tensor, encoder_hidden_states: Tensor, pooled_projections: Tensor, timestep: Tensor, audio_hidden_states: Tensor | None = None, visual_rope_pos: tuple[Tensor, Tensor, Tensor] | None = None, encoder_attention_mask: Tensor | None = None, visual_token_type_ids: Tensor | None = None, return_dict: bool = True)

Kaynak

Parametreler:

hidden_states (torch.Tensor, şekli (batch_size, num_frames, height, width, in_channels)) : (B, T, H, W, C) yerleşimindeki video latentleri. visual_cond=True olduğunda, in_channels değeri 2 * in_visual_dim + 1'dir: gürültülü latent, koşullandırma latent ve koşullandırma maskesi.

encoder_hidden_states (torch.Tensor, şekli (batch_size, sequence_length, in_text_dim)) : Video ve ses metin dalları tarafından paylaşılan metin token gömme değerleri.

pooled_projections (torch.Tensor, şekli (batch_size, in_text_dim2)) : Her iki dalın timestep gömümüne eklenen havuzlanmış metin gömümü.

timestep (torch.Tensor, şekli (batch_size,)) : Her iki modalite tarafından paylaşılan, [0, num_train_timesteps] ölçeğinde difüzyon zaman adımı.

audio_hidden_states (torch.Tensor, şekli (batch_size, audio_length, in_audio_dim), isteğe bağlı) : Ses latentleri. Atlandığında, füzyon blokları yalnızca video yolunu çalıştırır.

visual_rope_pos (tuple[torch.Tensor, torch.Tensor, torch.Tensor], isteğe bağlı) : Patch'lenmiş video token'larının eksen başına (t, h, w) döner konum indeksleri. Varsayılan olarak her eksen üzerinde arange kullanılır. Pipeline, konum 0'ı yeniden kullanan bir referans çerçevesi eklediğinde açık bir zaman indeksi geçirir.

encoder_attention_mask (torch.Tensor, şekli (batch_size, sequence_length), isteğe bağlı) : encoder_hidden_states için Boolean dolgu maskesi. Hiçbir prompt doldurulmamışsa None geçirin.

visual_token_type_ids (torch.Tensor, şekli (batch_size, num_frames), isteğe bağlı) : Kare başına token türü kimlikleri, visual_token_type_embeddings üzerinden gömülür. visual_token_type_num_embeddings > 0 gerektirir.

return_dict (bool, varsayılan True) : Düz bir tuple yerine Kandinsky6TransformerOutput döndürülüp döndürülmemesi.

Dönüş: Kandinsky6TransformerOutput veya tuple

(B, T, H, W, out_visual_dim) yerleşimindeki tahmini video hızı ve audio_hidden_states verildiğinde (B, audio_length, out_audio_dim) biçimindeki tahmini ses hızı.

Kandinsky6SRTransformer3DModel[[diffusers.Kandinsky6SRTransformer3DModel]]

Kandinsky6SRPipeline'in, ölçeklendirilmiş videonun bir karoselini birer birer iyileştirmek için kullandığı metinsiz dönüştürücü.

import torch
from diffusers import Kandinsky6SRTransformer3DModel

transformer = Kandinsky6SRTransformer3DModel.from_pretrained(
    "kandinskylab/Kandinsky-6.0-VSR-distilled2steps-5s-Diffusers", subfolder="transformer", torch_dtype=torch.bfloat16
)
# The transformer always runs NABLA sparse attention (`nabla_threshold`, 0.8 by default) on the `flex` backend.
# Compile it, otherwise flex falls back to an eager implementation that needs far more memory at video resolutions.
transformer.compile_repeated_blocks(fullgraph=True)

diffusers.Kandinsky6SRTransformer3DModel[[diffusers.Kandinsky6SRTransformer3DModel]]

diffusers.Kandinsky6SRTransformer3DModel(in_visual_dim: int = 64, out_visual_dim: int = 640, time_dim: int = 512, patch_size: tuple[int, int, int] = (1, 1, 1), model_dim: int = 1792, ff_dim: int = 7168, num_visual_blocks: int = 32, axes_dims: tuple[int, int, int] = (16, 24, 24), scale_factor: tuple[float, float, float] = (1.0, 2.0, 2.0), nabla_threshold: float = 0.8, nabla_window: tuple[int, int, int] = (11, 7, 7), tile_sizes: tuple[tuple[int, int], ...] = ((512, 512), (512, 768), (768, 512)))

Kaynak

Parametreler:

in_visual_dim (int, varsayılan 64) : K-VAE'nin gizli kanal sayısı.

out_visual_dim (int, varsayılan 640) : Çıkış kanalı sayısı.

time_dim (int, varsayılan 512) : Zaman adımı gömme boyutu.

patch_size (tuple[int, int, int], varsayılan (1, 1, 1)) : (temporal, height, width) olarak yama boyutu.

model_dim (int, varsayılan 1792) : Transformer'ın gizli boyutu.

ff_dim (int, varsayılan 7168) : Beslemeli ileri (feed-forward) ağların iç boyutu.

num_visual_blocks (int, varsayılan 32) : Transformer bloklarının sayısı.

axes_dims (tuple[int, int, int], varsayılan (16, 24, 24)) : (t, h, w) eksenleri için RoPE boyutları; toplamı dikkat başı boyutudur.

scale_factor (tuple[float, float, float], varsayılan (1.0, 2.0, 2.0)) : Token konumlarına uygulanan eksen başına RoPE frekans ölçeklendirmesi.

nabla_threshold (float, varsayılan 0.8) : NABLA blok seçiminin kümülatif dikkat eşiği.

nabla_window (tuple[int, int, int], varsayılan (11, 7, 7)) : Her 8x8 token bloğunun her zaman dikkat ettiği kayan karot (sliding-tile) öncelinin tek sayılı (t, h, w) boyutları.

tile_sizes (tuple[tuple[int, int], ...], varsayılan ((512, 512), (512, 768), (768, 512))) : Modelin eğitiminde kullanılan video karolarının piksel (height, width) boyutları. Kandinsky6SRPipeline, her karoyu, girdi videosunun en yakın en-boy oranına sahip boyutta iyileştirir.

Kandinsky 6 video süper çözünürlüğü için metinsiz difüzyon dönüştürücüsü.

Model, K-VAE gizli videosunun karolarını gürültüden arındırır. Girdisi, süper çözünürlüğü koşullandıran gürültülü gizli durumu, çapa gizli durumu ve çapa maskesini birleştirir (2 * in_visual_dim + 1 kanal) ve çıktısı out_visual_dim kanal içerir: düz bir hız kontrol noktası için in_visual_dim veya PiflowScheduler damıtılmış kontrol noktaları için genişletilmiş n_grid * in_visual_dim. Video öz-dikkati, flex dikkat arka ucunda NABLA seyrek blok deseninden geçer; bunun için jeton ızgarasının (patch_size sonrası height ve width) 8'e bölünebilir olması gerekir.

forward[[diffusers.Kandinsky6SRTransformer3DModel.forward]]

forward(hidden_states: Tensor, timestep: Tensor, return_dict: bool = True)

Kaynak

Parametreler:

hidden_states (torch.Tensor, şekli (batch_size, num_frames, height, width, 2 * in_visual_dim + 1)) : (B, T, H, W, C) yerleşimindeki latent karolar: kanal ekseni boyunca birleştirilmiş gürültülü latent, çapa latent ve çapa maskesi.

timestep (torch.Tensor, şekli (batch_size,)) : [0, num_train_timesteps] ölçeğinde difüzyon zaman adımı.

return_dict (bool, varsayılan True) : Düz bir tuple yerine Transformer2DModelOutput döndürülüp döndürülmemesi.

Dönüş: Transformer2DModelOutput veya tuple

Şekil (batch_size, num_frames, height, width, out_visual_dim) tahmini.

Xet Storage Details

Size:
13.4 kB
·
Xet hash:
0f848bd89abdd3aba748a547a9e22e07583bce241be46ea39f577091bd328a0f

Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.