Diffusers documentation

MochiTransformer3DModel

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

and get access to the augmented documentation experience

to get started

MochiTransformer3DModel

تم تقديم نموذج Mochi-1 Preview من نوع Diffusion Transformer للبيانات المشابهة للفيديو ثلاثي الأبعاد بواسطة Genmo.

يمكن تحميل النموذج باستخدام مقتطف الشيفرة التالي.

from diffusers import MochiTransformer3DModel

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

MochiTransformer3DModel

فئة 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 )

المعاملات

  • patch_size (int، القيمة الافتراضية 2) — حجم البقع المستخدمة في طبقة تضمين البقع.
  • num_attention_heads (int، القيمة الافتراضية 24) — عدد الرؤوس المستخدمة في الانتباه متعدد الرؤوس.
  • attention_head_dim (int، القيمة الافتراضية 128) — عدد القنوات في كل رأس.
  • num_layers (int، القيمة الافتراضية 48) — عدد طبقات كتل Transformer المستخدمة.
  • in_channels (int)، القيمة الافتراضية 12) — عدد القنوات في المدخلات.
  • out_channels (int، اختياري، القيمة الافتراضية None) — عدد القنوات في المخرجات.
  • qk_norm (str، القيمة الافتراضية "rms_norm") — طبقة التطبيع المستخدمة.
  • text_embed_dim (int، القيمة الافتراضية 4096) — البُعد المدخل لتضمينات النص من مُشفِّر النص.
  • time_embed_dim (int، القيمة الافتراضية 256) — البُعد الناتج لتضمينات خطوات الزمن.
  • activation_fn (str، القيمة الافتراضية "swiglu") — دالة التنشيط المستخدمة في الشبكة العصبية الأمامية.
  • max_sequence_length (int، القيمة الافتراضية 256) — أقصى طول تسلسل مدعوم لتضمينات النص.

نموذج Transformer لبيانات تشبه الفيديو تم تقديمه في Mochi.

forward

< >

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

المعاملات

  • hidden_states (torch.Tensor من الشكل (batch_size, num_channels, num_frames, height, width)) — مدخلات hidden_states.
  • encoder_hidden_states (torch.Tensor من الشكل (batch_size, sequence_len, embed_dims)) — تضمينات شرطية (تضمينات محسوبة من الشروط المدخلة مثل الأوامر النصية) للاستخدام.
  • timestep (torch.LongTensor) — يُستخدم للإشارة إلى خطوة إزالة الضوضاء.
  • encoder_attention_mask (torch.Tensor) — قناع يُطبَّق على encoder_hidden_states أثناء الانتباه.
  • attention_kwargs (dict، اختياري) — قاموس kwargs يُمرَّر إلى AttentionProcessor إذا تم تحديده، كما هو معرَّف تحت self.processor في diffusers.models.attention_processor.
  • return_dict (bool، اختياري، القيمة الافتراضية True) — ما إذا كان يجب إرجاع ~models.transformer_2d.Transformer2DModelOutput بدلاً من tuple عادي.

يعيد

torch.Tensor

مصفوفة المخرجات بعد إزالة الضوضاء ذات الشكل (batch_size, out_channels, num_frames, height, width).

طريقة MochiTransformer3DModel الأمامية.

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