Diffusers documentation

SkyReelsV2Transformer3DModel

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v0.42.1).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

SkyReelsV2Transformer3DModel

Модель Diffusion Transformer для 3D-видеоподобных данных была представлена в SkyReels-V2 от Skywork AI.

Модель можно загрузить с помощью следующего фрагмента кода.

from diffusers import SkyReelsV2Transformer3DModel

transformer = SkyReelsV2Transformer3DModel.from_pretrained("Skywork/SkyReels-V2-DF-1.3B-540P-Diffusers", subfolder="transformer", dtype=torch.bfloat16)

SkyReelsV2Transformer3DModel

класс diffusers.SkyReelsV2Transformer3DModel

< >

( patch_size: tuple[int] = (1, 2, 2)num_attention_heads: int = 16attention_head_dim: int = 128in_channels: int = 16out_channels: int = 16text_dim: int = 4096freq_dim: int = 256ffn_dim: int = 8192num_layers: int = 32cross_attn_norm: bool = Trueqk_norm: str | None = 'rms_norm_across_heads'eps: float = 1e-06image_dim: int | None = Noneadded_kv_proj_dim: int | None = Nonerope_max_seq_len: int = 1024pos_embed_seq_len: int | None = Noneinject_sample_info: bool = Falsenum_frame_per_block: int = 1 )

Параметры

  • patch_size (tuple[int], по умолчанию (1, 2, 2)) — размеры 3D-патчей для встраивания видео (t_patch, h_patch, w_patch).
  • num_attention_heads (int, по умолчанию 16) — Фиксированная длина для текстовых эмбеддингов.
  • attention_head_dim (int, по умолчанию 128) — Количество каналов в каждой голове.
  • in_channels (int, по умолчанию 16) — Количество каналов на входе.
  • out_channels (int, по умолчанию 16) — Количество каналов на выходе.
  • text_dim (int, по умолчанию 4096) — Размерность входных векторов текстовых эмбеддингов.
  • freq_dim (int, по умолчанию 256) — Размерность для синусоидных временных эмбеддингов.
  • ffn_dim (int, по умолчанию 8192) — Промежуточное измерение в полносвязной сети.
  • num_layers (int, по умолчанию 32) — Количество блоков трансформера, которые следует использовать.
  • window_size (tuple[int], по умолчанию (-1, -1)) — Размер окна для локального внимания (-1 означает глобальное внимание).
  • cross_attn_norm (bool, по умолчанию True) — Включает нормализацию кросс-внимания.
  • qk_norm (str, необязательный, по умолчанию "rms_norm_across_heads") — Включает нормализацию query/key.
  • eps (float, по умолчанию 1e-6) — Значение эпсилона для слоёв нормализации.
  • inject_sample_info (bool, по умолчанию False) — Определяет, следует ли внедрять информацию о выборке в модель.
  • image_dim (int, необязательный) — Размерность эмбеддингов изображений.
  • added_kv_proj_dim (int, необязательный) — Размерность добавленной проекции ключей/значений.
  • rope_max_seq_len (int, по умолчанию 1024) — Максимальная длина последовательности для вращательных эмбеддингов.
  • pos_embed_seq_len (int, необязательный) — Длина последовательности для позиционных эмбеддингов.

Модель Transformer для видеоподобных данных, используемая в модели SkyReels-V2 на базе Wan.

forward

< >

( hidden_states: Tensortimestep: LongTensorencoder_hidden_states: Tensorencoder_hidden_states_image: typing.Optional[torch.Tensor] = Noneenable_diffusion_forcing: bool = Falsefps: typing.Optional[torch.Tensor] = Nonereturn_dict: bool = Trueattention_kwargs: dict[str, typing.Any] | None = None )

Параметры

  • hidden_states (torch.Tensor формы (batch_size, num_channels, num_frames, height, width)) — Входные hidden_states.
  • timestep (torch.LongTensor) — Используется для указания шага денойзинга.
  • encoder_hidden_states (torch.Tensor формы (batch_size, sequence_len, embed_dims)) — Условные эмбеддинги (эмбеддинги, вычисленные на основе входных условий, таких как промпты), которые следует использовать.
  • encoder_hidden_states_image (torch.Tensor, необязательный) — Условные эмбеддинги изображений для генерации с условием на изображение.
  • enable_diffusion_forcing (bool, необязательный, по умолчанию False) — Включает ли режим diffusion forcing (каузальное маскирование по блокам).
  • fps (torch.Tensor, необязательный) — встраивание для условия по FPS.
  • return_dict (bool, необязательный, по умолчанию True) — Определяет, следует ли возвращать ~models.transformer_2d.Transformer2DModelOutput вместо обычного кортежа.
  • attention_kwargs (dict, необязательный) — Словарь kwargs, который при указании передается в AttentionProcessor, определенный в self.processor в diffusers.models.attention_processor.

Метод forward модели SkyReelsV2Transformer3DModel.

Transformer2DModelOutput

класс diffusers.models.modeling_outputs.Transformer2DModelOutput

< >

( sample: torch.Tensor )

Параметры

  • sample (torch.Tensor формы (batch_size, num_channels, height, width) или (batch size, num_vector_embeds - 1, num_latent_pixels), если Transformer2DModel дискретный) — Выходные скрытые состояния, обусловленные входом encoder_hidden_states. Если модель дискретная, возвращает распределения вероятностей для латентных пикселей без шума.

Вывод Transformer2DModel.

Update on GitHub