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](/docs/diffusers/main/tr/api/pipelines/kandinsky6#diffusers.Kandinsky6TI2VAPipeline) tarafından kullanılan çok modlu dönüştürücü.
```python
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]]
```python
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](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/transformers/transformer_kandinsky6.py#L591)
**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]]
```python
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](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/transformers/transformer_kandinsky6.py#L739)
**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](/docs/diffusers/main/tr/api/pipelines/kandinsky6#diffusers.Kandinsky6SRPipeline)'in, ölçeklendirilmiş videonun bir karoselini birer birer iyileştirmek için kullandığı metinsiz dönüştürücü.
```python
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]]
```python
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](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/transformers/transformer_kandinsky6_sr.py#L412)
**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](/docs/diffusers/main/tr/api/pipelines/kandinsky6#diffusers.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](/docs/diffusers/main/tr/api/schedulers/piflow#diffusers.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]]
```python
forward(hidden_states: Tensor, timestep: Tensor, return_dict: bool = True)
```
[Kaynak](https://github.com/huggingface/diffusers/blob/main/src/diffusers/models/transformers/transformer_kandinsky6_sr.py#L496)
**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](/docs/diffusers/main/tr/api/models/cogview3plus_transformer2d#diffusers.models.modeling_outputs.Transformer2DModelOutput) döndürülüp döndürülmemesi.
**Dönüş:** [Transformer2DModelOutput](/docs/diffusers/main/tr/api/models/cogview3plus_transformer2d#diffusers.models.modeling_outputs.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.