Buckets:
AnyFlowTransformer3DModel
O Transformer 3D bidirecional usado por AnyFlowPipeline. Trata-se do backbone Wan2.1 da versão v0.35.1 com uma alteração estrutural: o incorporador de passo de tempo é substituído por AnyFlowDualTimestepTextImageEmbedding, de modo que cada chamada de forward é condicionada tanto ao passo de tempo de origem t quanto ao passo de tempo de destino r. Esta é a incorporação necessária para aprender o mapa de fluxo $\Phi_{r\leftarrow t}$ introduzido em AnyFlow. Consulte a página do AnyFlowPipeline para obter o artigo, os autores e os checkpoints liberados.
Para geração autoregressiva por blocos (FAR causal), use AnyFlowFARTransformer3DModel em vez disso.
from diffusers import AnyFlowTransformer3DModel
# Bidirectional AnyFlow checkpoint (T2V):
transformer = AnyFlowTransformer3DModel.from_pretrained(
"nvidia/AnyFlow-Wan2.1-T2V-1.3B-Diffusers", subfolder="transformer"
)
AnyFlowTransformer3DModel[[diffusers.AnyFlowTransformer3DModel]]
diffusers.AnyFlowTransformer3DModel[[diffusers.AnyFlowTransformer3DModel]]
diffusers.AnyFlowTransformer3DModel(patch_size: typing.Tuple[int] = (1, 2, 2), num_attention_heads: int = 40, attention_head_dim: int = 128, in_channels: int = 16, out_channels: int = 16, text_dim: int = 4096, freq_dim: int = 256, ffn_dim: int = 13824, num_layers: int = 40, cross_attn_norm: bool = True, eps: float = 1e-06, image_dim: typing.Optional[int] = None, rope_max_seq_len: int = 1024, gate_value: float = 0.25, deltatime_type: str = 'r')
Parâmetros:
patch_size (Tuple[int], padrão (1, 2, 2)) : dimensões do patch 3D para incorporação de vídeo (t_patch, h_patch, w_patch).
num_attention_heads (int, padrão 40) : Número de cabeças de atenção.
attention_head_dim (int, padrão 128) : O número de canais em cada head.
in_channels (int, padrão 16) : O número de canais no latente de entrada.
out_channels (int, padrão 16) : O número de canais no latente de saída.
text_dim (int, padrão 4096) : Dimensão de entrada para embeddings de texto (UMT5).
freq_dim (int, padrão 256) : Dimensão para embeddings de tempo sinusoidais.
ffn_dim (int, padrão 13824) : Dimensão intermediária na rede feed-forward.
num_layers (int, padrão 40) : Número de blocos de transformer.
cross_attn_norm (bool, padrão True) : Ativa a normalização de atenção cruzada.
eps (float, padrão 1e-6) : Epsilon para as camadas de normalização.
image_dim (Optional[int], opcional, padrão None) : Dimensão do embedding de imagem para condicionamento I2V (1280 para o modelo original Wan2.1-I2V).
rope_max_seq_len (int, padrão 1024) : Comprimento máximo da sequência usado para pré-computar as frequências de posição rotativa.
gate_value (float, padrão 0.25) : Porta de mistura entre as incorporações de timestep de origem e timestep delta (o parâmetro do paper AnyFlow, fixado em 0,25 na destilação da etapa 1).
deltatime_type (str, padrão 'r') : Ou "r" (delta é o passo de tempo alvo) ou "t-r" (delta é o intervalo absoluto).
Transformador 3D bidirecional para amostragem de mapas de fluxo do AnyFlow.
A arquitetura é o backbone Wan2.1 3D DiT da v0.35.1 com uma mudança estrutural: o incorporador de passo de tempo é substituído por AnyFlowDualTimestepTextImageEmbedding para que cada chamada de encaminhamento condicione tanto no passo de tempo de origem t quanto no passo de tempo de destino r. Esta é a incorporação necessária para aprender o mapa de fluxo \Phi_{r\leftarrow t} introduzido em AnyFlow.
Para geração autoregressiva por blocos (FAR causal), use AnyFlowFARTransformer3DModel em vez disso; essa variante adiciona a máscara de bloco causal FAR e um patch embedding de quadro comprimido sobre o mesmo backbone.
forward[[diffusers.AnyFlowTransformer3DModel.forward]]
forward(hidden_states: Tensor, timestep: Tensor, r_timestep: Tensor, encoder_hidden_states: Tensor, encoder_hidden_states_image: typing.Optional[torch.Tensor] = None, attention_kwargs: typing.Optional[typing.Dict[str, typing.Any]] = None, return_dict: bool = True)
Parâmetros:
hidden_states (torch.Tensor de forma (batch_size, num_frames, num_channels, height, width)) : Latentes de vídeo de entrada.
timestep (torch.Tensor) : Passo de tempo t do fluxo-mapa de origem (mais ruidoso).
r_timestep (torch.Tensor) : Timestep r (mais limpo) do flow-map de destino; define o destino do passo do flow-map.
encoder_hidden_states (torch.Tensor de forma (batch_size, sequence_len, embed_dims)) : Embebimentos de condicionamento de texto.
encoder_hidden_states_image (torch.Tensor, opcional) : Embebimentos de condicionamento por imagem; concatenados antes dos tokens de texto quando fornecidos.
attention_kwargs (dict, opcional) : Kwargs encaminhados ao AttentionProcessor conforme definido em self.processor em diffusers.models.attention_processor.
return_dict (bool, opcional, padrão True) : Se deve retornar um [~models.transformer_2d.Transformer2DModelOutput] em vez de uma tupla simples.
Retorna:
[~models.transformer_2d.Transformer2DModelOutput] se return_dict for True, caso contrário, uma tuple cujo primeiro elemento é o tensor de velocidade previsto.
Passada direta do fluxo bidirecional de mapa de fluxo. hidden_states é organizado como (B, F, C, H, W) (latentes por quadro). A entrada é segmentada em patches com o padrão patch_embedding (kernel = stride = patch_size) e desruída com autoatenção global bidirecional sobre a sequência plana de tokens resultante.
Xet Storage Details
- Size:
- 6.25 kB
- Xet hash:
- 27a0ed36bb0415dd17be4e965dcf6f6b4cb6776fcb1369566ebb84eed88233a4
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.