Diffusers documentation

MochiTransformer3DModel

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

MochiTransformer3DModel

Model Diffusion Transformer untuk data video 3D diperkenalkan dalam Mochi-1 Preview oleh Genmo.

Model dapat dimuat dengan potongan kode berikut.

from diffusers import MochiTransformer3DModel

transformer = MochiTransformer3DModel.from_pretrained("genmo/mochi-1-preview", subfolder="transformer", dtype=torch.float16).to("cuda")  # or "mps", "xpu", "cpu"

MochiTransformer3DModel

kelas diffusers.MochiTransformer3DModel

< >

( patch_size: int = 2num_attention_heads: int = 24attention_head_dim: int = 128num_layers: int = 48pooled_projection_dim: int = 1536in_channels: int = 12out_channels: int | None = Noneqk_norm: str = 'rms_norm'text_embed_dim: int = 4096time_embed_dim: int = 256activation_fn: str = 'swiglu'max_sequence_length: int = 256 )

Parameter

  • patch_size (int, defaultnya 2) — Ukuran patch yang akan digunakan di lapisan patch embedding.
  • num_attention_heads (int, defaultnya 24) — Jumlah head yang digunakan untuk multi-head attention.
  • attention_head_dim (int, defaultnya 128) — Jumlah saluran di setiap head.
  • num_layers (int, defaultnya 48) — Jumlah lapisan blok Transformer yang akan digunakan.
  • in_channels (int, defaultnya 12) — Jumlah channel pada input.
  • out_channels (int, opsional, defaultnya None) — Jumlah channel pada output.
  • qk_norm (str, default "rms_norm") — Lapisan normalisasi yang digunakan.
  • text_embed_dim (int, defaultnya 4096) — Dimensi input dari text embeddings yang berasal dari text encoder.
  • time_embed_dim (int, defaultnya 256) — Dimensi output dari embedding timestep.
  • activation_fn (str, defaultnya "swiglu") — Fungsi aktivasi yang digunakan dalam feed-forward.
  • max_sequence_length (int, defaultnya 256) — Panjang maksimum sekuens untuk embedding teks yang didukung.

Model Transformer untuk data mirip video yang diperkenalkan dalam Mochi.

forward

< >

( hidden_states: Tensorencoder_hidden_states: Tensortimestep: LongTensorencoder_attention_mask: Tensorattention_kwargs: dict[str, typing.Any] | None = Nonereturn_dict: bool = True ) → torch.Tensor

Parameter

  • hidden_states (torch.Tensor dengan bentuk (batch_size, num_channels, num_frames, height, width)) — hidden_states masukan.
  • encoder_hidden_states (torch.Tensor dengan bentuk (batch_size, sequence_len, embed_dims)) — Embedding kondisional (embedding yang dihitung dari kondisi input seperti prompt) yang akan digunakan.
  • timestep (torch.LongTensor) — Digunakan untuk menunjukkan langkah denoising.
  • encoder_attention_mask (torch.Tensor) — Mask yang diterapkan pada encoder_hidden_states selama attention.
  • 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.
  • return_dict (bool, opsional, default True) — Apakah akan mengembalikan ~models.transformer_2d.Transformer2DModelOutput alih-alih tuple biasa.

Mengembalikan

torch.Tensor

Tensor output yang telah didenoise dengan bentuk (batch_size, out_channels, num_frames, height, width).

Metode forward dari MochiTransformer3DModel.

Transformer2DModelOutput

kelas 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 latent pixels yang tidak berisik.

Output dari Transformer2DModel.

Update on GitHub