Buckets:
WanAnimateTransformer3DModel
Model Diffusion Transformer untuk data video 3D diperkenalkan dalam Wan Animate oleh Alibaba Wan Team.
Model dapat dimuat dengan potongan kode berikut.
from diffusers import WanAnimateTransformer3DModel
transformer = WanAnimateTransformer3DModel.from_pretrained("Wan-AI/Wan2.2-Animate-14B-Diffusers", subfolder="transformer", dtype=torch.bfloat16)
WanAnimateTransformer3DModel[[diffusers.WanAnimateTransformer3DModel]]
diffusers.WanAnimateTransformer3DModel[[diffusers.WanAnimateTransformer3DModel]]
diffusers.WanAnimateTransformer3DModel(patch_size: tuple[int] = (1, 2, 2), num_attention_heads: int = 40, attention_head_dim: int = 128, in_channels: int | None = 36, latent_channels: int | None = 16, out_channels: int | None = 16, text_dim: int = 4096, freq_dim: int = 256, ffn_dim: int = 13824, num_layers: int = 40, cross_attn_norm: bool = True, qk_norm: str | None = 'rms_norm_across_heads', eps: float = 1e-06, image_dim: int | None = 1280, added_kv_proj_dim: int | None = None, rope_max_seq_len: int = 1024, pos_embed_seq_len: int | None = None, motion_encoder_channel_sizes: dict[str, int] | None = None, motion_encoder_size: int = 512, motion_style_dim: int = 512, motion_dim: int = 20, motion_encoder_dim: int = 512, face_encoder_hidden_dim: int = 1024, face_encoder_num_heads: int = 4, inject_face_latents_blocks: int = 5, motion_encoder_batch_size: int = 8)
Parameter:
patch_size (tuple[int], defaultnya (1, 2, 2)) : dimensi patch 3D untuk embedding video (t_patch, h_patch, w_patch).
num_attention_heads (int, defaultnya 40) : Panjang tetap untuk embedding teks.
attention_head_dim (int, defaultnya 128) : Jumlah channel di setiap head.
in_channels (int, defaultnya 16) : Jumlah channel pada input.
out_channels (int, defaultnya 16) : Jumlah channel pada output.
text_dim (int, defaultnya 512) : Dimensi input untuk embedding teks.
freq_dim (int, defaultnya 256) : Dimensi untuk penanaman waktu sinusoidal.
ffn_dim (int, defaultnya 13824) : Dimensi perantara dalam jaringan feed-forward.
num_layers (int, defaultnya 40) : Jumlah lapisan blok transformer yang akan digunakan.
window_size (tuple[int], defaultnya (-1, -1)) : Ukuran jendela untuk perhatian lokal (-1 menunjukkan perhatian global).
cross_attn_norm (bool, defaultnya True) : Aktifkan normalisasi cross-attention.
qk_norm (bool, defaultnya True) : Aktifkan normalisasi query/key.
eps (float, defaultnya 1e-6) : Nilai epsilon untuk lapisan normalisasi.
image_dim (int, opsional, defaultnya 1280) : Jumlah saluran yang digunakan untuk embedding gambar. Jika None, tidak ada proyeksi yang digunakan.
added_kv_proj_dim (int, opsional, defaultnya 5120) : Jumlah channel yang digunakan untuk proyeksi key dan value yang ditambahkan. Jika None, tidak ada proyeksi yang digunakan.
Model Transformer untuk data mirip video yang digunakan dalam model WanAnimate.
forward[[diffusers.WanAnimateTransformer3DModel.forward]]
forward(hidden_states: Tensor, timestep: LongTensor, encoder_hidden_states: Tensor, encoder_hidden_states_image: typing.Optional[torch.Tensor] = None, pose_hidden_states: typing.Optional[torch.Tensor] = None, face_pixel_values: typing.Optional[torch.Tensor] = None, motion_encode_batch_size: int | None = None, return_dict: bool = True, attention_kwargs: dict[str, typing.Any] | None = None)
Parameter:
hidden_states (torch.Tensor dengan bentuk (B, 2C + 4, T + 1, H, W)) : Input latens video berisik dengan bentuk (B, 2C + 4, T + 1, H, W), di mana B adalah ukuran batch, C adalah jumlah kanal latens (16 untuk Wan VAE), T adalah jumlah frame latens dalam segmen inferensi, H adalah tinggi latens, dan W adalah lebar latens.
timestep : (torch.LongTensor): Langkah waktu saat ini dalam loop denoising.
encoder_hidden_states (torch.Tensor) : Embedding teks dari text encoder (umT5 untuk Wan Animate).
encoder_hidden_states_image (torch.Tensor) : fitur visual CLIP dari gambar referensi (karakter).
pose_hidden_states (torch.Tensor dengan bentuk (B, C, T, H, W)) : Laten video pose. TODO: deskripsi
face_pixel_values (torch.Tensor dengan bentuk (B, C', S, H', W')) : Video wajah dalam ruang piksel (bukan ruang laten). Biasanya C' = 3 dan H' serta W' adalah tinggi/lebar video wajah dalam piksel. Di sini S adalah panjang segmen inferensi, biasanya diatur ke 77.
motion_encode_batch_size (int, opsional) : Ukuran batch untuk pengkodean batch video wajah melalui motion encoder. Akan menggunakan self.config.motion_encoder_batch_size secara default jika tidak diatur.
return_dict (bool, opsional, defaultnya True) : Apakah mengembalikan output sebagai dict atau tuple.
attention_kwargs (dict, opsional) : Kamus kwargs yang jika ditentukan akan diteruskan ke AttentionProcessor seperti yang didefinisikan di bawah self.processor dalam diffusers.models.attention_processor.
Mengembalikan: ~models.transformer_2d.Transformer2DModelOutput atau tuple
Jika return_dict bernilai True, sebuah ~models.transformer_2d.Transformer2DModelOutput yang sample-nya adalah latent video yang telah didenoise akan dikembalikan, selain itu sebuah tuple biasa yang elemen pertamanya adalah tensor tersebut akan dikembalikan.
Forward pass dari model transformer Wan2.2-Animate.
Transformer2DModelOutput[[diffusers.models.modeling_outputs.Transformer2DModelOutput]]
diffusers.models.modeling_outputs.Transformer2DModelOutput[[diffusers.models.modeling_outputs.Transformer2DModelOutput]]
diffusers.models.modeling_outputs.Transformer2DModelOutput(sample: torch.Tensor)
Parameter:
sample (torch.Tensor dengan bentuk (batch_size, num_channels, height, width) atau (batch size, num_vector_embeds - 1, num_latent_pixels) jika Transformer2DModel bersifat diskrit) : Output hidden states yang dikondisikan pada input encoder_hidden_states. Jika diskrit, mengembalikan distribusi probabilitas untuk piksel laten yang tidak berisik.
Output dari Transformer2DModel.
Xet Storage Details
- Size:
- 6.77 kB
- Xet hash:
- 88ba7fd90532ef97828ef683c99ca83f123e3c43d167da3006f0f661f4828552
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.