Diffusers documentation
PAN2Transformer3DModel
PAN2Transformer3DModel
PAN 2'nin difüzyon dönüştürücüsü. Video ve metin belirteçleri üzerinde ortak dikkat (joint attention) çalıştırır; her akış için ayrı projeksiyonlar ve ileri beslemeli ağlar kullanır.
Video girişi, gürültülü latentleri, koşullandırma latentlerini ve tek kanallı koşullandırma maskesini yığar; böylece aynı model hem metinden videoya hem de görüntüden videoya üretim için kullanılır.
import torch
from diffusers import PAN2Transformer3DModel
transformer = PAN2Transformer3DModel.from_pretrained("IFM/PAN2", subfolder="transformer", dtype=torch.bfloat16)PAN2Transformer3DModel
sınıf diffusers.PAN2Transformer3DModel
< source >( patch_size: tuple[int, int, int] = (1, 2, 2)in_channels: int = 97out_channels: int = 48num_attention_heads: int = 32attention_head_dim: int = 128num_layers: int = 44num_refiner_layers: int = 4mlp_ratio: float = 8.0context_mlp_ratio: float = 4.0refiner_mlp_ratio: float = 4.0text_embed_dim: int = 4096rope_axes_dim: tuple[int, int, int] = (16, 56, 56)rope_theta: float = 256.0rope_temporal_scale: float = 0.6666666666666666 )
Parametreler
- patch_size (
tuple[int, int, int], varsayılan(1, 2, 2)) — Patch gömme (patch embedding) için(t, h, w)boyutundaki patch boyutu. - in_channels (
int, varsayılan97) — Giriş kanal sayısı: gürültülü latentler, koşullandırma latentleri ve bir koşullandırma maskesi kanalı. - out_channels (
int, varsayılan48) — Çıkış kanal sayısı. - num_attention_heads (
int, varsayılan32) — Dikkat başlarının sayısı. - attention_head_dim (
int, varsayılan128) — Her dikkat başlığındaki kanal sayısı. - num_layers (
int, varsayılan44) — Ortak dikkat bloklarının sayısı. - num_refiner_layers (
int, varsayılan4) — Metin gömlemelerine uygulanan token iyileştirme bloklarının sayısı. - mlp_ratio (
float, varsayılan8.0) — Video ileri beslemeli iç boyutunun gizli boyuta oranı. - context_mlp_ratio (
float, varsayılan4.0) — Metin ileri beslemeli iç boyutunun gizli boyuta oranı. - refiner_mlp_ratio (
float, varsayılan4.0) — Token refiner besleme ileri iç boyutunun gizli boyuta oranı. - text_embed_dim (
int, varsayılan4096) — Metin kodlayıcısı gizli durumlarının boyutu. - rope_axes_dim (
tuple[int, int, int], varsayılan(16, 56, 56)) — Döner gömmede her(t, h, w)ekseninin kanal sayısı. - rope_theta (
float, varsayılan256.0) — Döner gömme tabanı. - rope_temporal_scale (
float, varsayılan16 / 24) — Rotary gömme kare konumlarının çarpıldığı katsayı: rotary gömmenin referans kare hızının, videoların kare hızına oranı.
PAN 2'nin difüzyon dönüştürücüsü.
Yamalanmış video latentleri ile rafine edilmiş metin tokenlerinin birleştirilmesi üzerinde ortak dikkat (joint-attention) bloklarının yığını. Video girdisi, kanal ekseni boyunca yığılmış gürültülü latentleri, koşullandırma latentlerini ve bir koşullandırma maskesini taşır; böylece aynı model hem metinden videoya hem de görüntüden videoya üretim için kullanılır.
forward
< source >( hidden_states: Tensortimestep: Tensorencoder_hidden_states: Tensorattention_kwargs: dict[str, typing.Any] | None = Nonereturn_dict: bool = True ) → Transformer2DModelOutput or tuple
Parametreler
- hidden_states (
torch.Tensor, şekli(batch_size, in_channels, num_frames, height, width)) — Gürültülü latentler, koşullandırma latentleri ve koşullandırma maskesi, kanallar boyunca birleştirilmiş hali. - timestep (
torch.Tensor, şekli(batch_size,)) —[0, 1000]aralığındaki gürültü azaltma zaman adımı. - encoder_hidden_states (
torch.Tensor, şekli(batch_size, text_seq_len, text_embed_dim)) — Metin kodlayıcısının gizli durumları. - attention_kwargs (
dict, isteğe bağlı) —AttentionProcessor'a iletilen bir kwargs sözlüğü; yalnızca LoRA ölçeği için kullanılır. - return_dict (
bool, isteğe bağlı, varsayılanTrue) — Düz bir tuple yerine Transformer2DModelOutput döndürülüp döndürülmemesi.
Dönüş değeri
Transformer2DModelOutput veya tuple
(batch_size, out_channels, num_frames, height, width) biçimindeki tahmini hız.
PAN2Transformer3DModel ileri yöntemi.