Buckets:
AnyFlowTransformer3DModel
Двунаправленный 3D-трансформер, используемый в AnyFlowPipeline. Это базовая архитектура Wan2.1 версии v0.35.1 с одним структурным изменением: эмбеддер временных шагов заменён на AnyFlowDualTimestepTextImageEmbedding, поэтому каждый вызов forward использует в качестве условий и исходный временной шаг t, и целевой временной шаг r. Это эмбеддинг, необходимый для обучения отображению потока $\Phi_{r\leftarrow t}$, представленному в AnyFlow. См. страницу AnyFlowPipeline для информации о статье, авторах и опубликованных контрольных точках.
Для посегментной авто регрессивной генерации (FAR causal) используйте AnyFlowFARTransformer3DModel.
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')
Параметры:
patch_size (Tuple[int], по умолчанию (1, 2, 2)) : размеры 3D-патчей для встраивания видео (t_patch, h_patch, w_patch).
num_attention_heads (int, по умолчанию 40) : Количество головок внимания.
attention_head_dim (int, по умолчанию 128) : количество каналов в каждой голове.
in_channels (int, по умолчанию 16) : Количество каналов во входном латентном представлении.
out_channels (int, по умолчанию 16) : Количество каналов в выходном латентном представлении.
text_dim (int, по умолчанию 4096) : Размерность входных данных для текстовых эмбеддингов (UMT5).
freq_dim (int, по умолчанию 256) : Размерность для синусоидных временных эмбеддингов.
ffn_dim (int, по умолчанию 13824) : Промежуточное измерение в полносвязной сети.
num_layers (int, по умолчанию 40) : Количество блоков трансформера.
cross_attn_norm (bool, по умолчанию True) : Включает нормализацию кросс-внимания.
eps (float, по умолчанию 1e-6) : Эпсилон для слоёв нормализации.
image_dim (Optional[int], optional, по умолчанию None) : Размерность эмбеддинга изображения для условного формирования I2V (1280 для исходной модели Wan2.1-I2V).
rope_max_seq_len (int, по умолчанию 1024) : Максимальная длина последовательности, используемая для предварительного вычисления частот ротационных позиционных кодировок.
gate_value (float, по умолчанию 0.25) : Смешивающий гейт между эмбеддингами исходного временного шага и дельта-шага (параметр из статьи AnyFlow, зафиксированный на уровне 0.25 на этапе дистилляции первого порядка).
deltatime_type (str, по умолчанию 'r') : либо "r" (delta — целевой шаг), либо "t-r" (delta — абсолютный интервал).
Двунаправленный 3D-трансформер для выборки карт потоков AnyFlow.
Архитектура представляет собой базовый блок v0.35.1 Wan2.1 3D DiT с одним структурным изменением: встраиватель временного шага заменён на AnyFlowDualTimestepTextImageEmbedding, так что каждый вызов forward использует в качестве условия и исходный временной шаг t, и целевой временной шаг r. Это встраивание необходимо для обучения отображению потока \Phi_{r\leftarrow t}, представленному в AnyFlow.
Для покусочной авто регрессивной генерации (FAR causal) используйте AnyFlowFARTransformer3DModel; этот вариант добавляет блок-маску FAR causal и встраивание патчей сжатых кадров поверх того же бэкбона.
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)
Параметры:
hidden_states (torch.Tensor формы (batch_size, num_frames, num_channels, height, width)) : Входные латенты видео.
timestep (torch.Tensor) : исходный (более шумный) шаг временной шкалы flow-map t.
r_timestep (torch.Tensor) : целевой (более чистый) шаг временной шкалы flow-map r; определяет конечную точку шага flow-map.
encoder_hidden_states (torch.Tensor формы (batch_size, sequence_len, embed_dims)) : Встраивания текстового условия.
encoder_hidden_states_image (torch.Tensor, optional) : Встраивания для условного изображения; при наличии конкатенируются перед текстовыми токенами.
attention_kwargs (dict, optional) : Ключевые аргументы, передаваемые в AttentionProcessor, как определено в self.processor в diffusers.models.attention_processor.
return_dict (bool, optional, по умолчанию True) : Возвращать ли [~models.transformer_2d.Transformer2DModelOutput] вместо обычного кортежа.
Возвращает:
[~models.transformer_2d.Transformer2DModelOutput], если return_dict равно True, иначе tuple, первым элементом которого является тензор предсказанной скорости.
Прямой проход двунаправленной flow-карты. hidden_states имеет форму (B, F, C, H, W) (латенты для каждого кадра). Вход преобразуется в патчи с помощью стандартного patch_embedding (размер ядра = шаг = patch_size) и очищается от шума с помощью глобального двунаправленного self-attention по получившейся плоской последовательности токенов.
Xet Storage Details
- Size:
- 8.71 kB
- Xet hash:
- 4d9660c219c6dc5f754862abde15a34903884990196b2b8aed1c2ca15355c2fa
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.