Diffusers documentation

MotifVideoTransformer3DModel

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

MotifVideoTransformer3DModel

تم تقديم نموذج Diffusion Transformer لبيانات الفيديو ثلاثية الأبعاد في Motif-Video من قبل فريق Motif Technologies.

يستخدم النموذج معمارية من ثلاث مراحل تتكون من 12 طبقة فك تشفير مزدوجة التدفق + 16 طبقة فك تشفير أحادية التدفق + 8 طبقات فك تشفير DDT، مع تضمينات موضعية دوّارة (RoPE) لتوليد الفيديو.

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

from diffusers import MotifVideoTransformer3DModel

transformer = MotifVideoTransformer3DModel.from_pretrained("Motif-Technologies/Motif-Video-2B", subfolder="transformer", dtype=torch.bfloat16)

MotifVideoTransformer3DModel

فئة diffusers.MotifVideoTransformer3DModel

< >

( in_channels: int = 33out_channels: int = 16num_attention_heads: int = 24attention_head_dim: int = 128num_layers: int = 20num_single_layers: int = 40num_decoder_layers: int = 0mlp_ratio: float = 4.0patch_size: int = 2patch_size_t: int = 1qk_norm: str = 'rms_norm'norm_type: str = 'layer_norm'text_embed_dim: int = 4096image_embed_dim: int | None = Nonerope_theta: float = 256.0rope_axes_dim: typing.Tuple[int, ...] = (16, 56, 56)enable_text_cross_attention_dual: bool = Falseenable_text_cross_attention_single: bool = False )

المعاملات

  • in_channels (int)، القيمة الافتراضية 33 — عدد القنوات في المدخلات.
  • out_channels (int، القيمة الافتراضية 16) — عدد القنوات في المخرجات.
  • num_attention_heads (int، القيمة الافتراضية 24) — عدد الرؤوس المستخدمة في الانتباه متعدد الرؤوس.
  • attention_head_dim (int، القيمة الافتراضية 128) — عدد القنوات في كل رأس.
  • num_layers (int، القيمة الافتراضية 20) — عدد طبقات كتل التدفق المزدوج المستخدمة.
  • num_single_layers (int، القيمة الافتراضية 40) — عدد طبقات كتل التدفق الأحادي التي سيتم استخدامها.
  • num_decoder_layers (int، القيمة الافتراضية 0) — عدد طبقات المُفكِّك في الكتل أحادية التدفق.
  • mlp_ratio (float، القيمة الافتراضية 4.0) — نسبة حجم الطبقة المخفية إلى حجم الإدخال في الشبكة الأمامية.
  • patch_size (int، القيمة الافتراضية 2) — حجم البقع المكانية المستخدمة في طبقة تضمين البقع.
  • patch_size_t (int، القيمة الافتراضية 1) — حجم البقع الزمنية (temporal patches) المستخدمة في طبقة تضمين البقع (patch embedding).
  • qk_norm (str، القيمة الافتراضية rms_norm) — طريقة التطبيع المستخدمة لإسقاطات الاستعلام والمفتاح في طبقات الانتباه.
  • text_embed_dim (int، القيمة الافتراضية 4096) — البُعد المدخل لتضمينات النص من مُشفِّر النص.
  • image_embed_dim (int, اختياري) — البُعد المدخل لتضمينات الصور من مُشفِّر الرؤية. إذا تم تقديمه، يُفعِّل تكييف الصورة.
  • rope_theta (float، القيمة الافتراضية 256.0) — قيمة ثيتا المستخدمة في طبقة RoPE.
  • rope_axes_dim (Tuple[int]، القيمة الافتراضية (16, 56, 56)) — أبعاد المحاور المستخدمة في طبقة RoPE.

نموذج Transformer لبيانات تشبه الفيديو يُستخدم في نموذج Motif-Video.

forward

< >

( hidden_states: Tensortimestep: LongTensorencoder_hidden_states: Tensorencoder_attention_mask: typing.Optional[torch.Tensor] = Noneimage_embeds: typing.Optional[torch.Tensor] = Noneattention_kwargs: typing.Optional[typing.Dict[str, typing.Any]] = Nonereturn_dict: bool = True ) → Transformer2DModelOutput or tuple

المعاملات

  • hidden_states (torch.Tensor) — مصفوفة كامنة (latent tensor) للإدخال ذات الشكل (batch_size, channels, num_frames, height, width).
  • timestep (torch.LongTensor) — خطوات الانتشار (Diffusion timesteps) ذات الشكل (batch_size,).
  • encoder_hidden_states (torch.Tensor) — شرط النص ذو الشكل (batch_size, sequence_length, embed_dim).
  • encoder_attention_mask (torch.Tensor) — قناع لتكييف النص ذو الشكل (batch_size, sequence_length).
  • image_embeds (torch.Tensor، اختياري) — تضمينات الصور من مُشفِّر الرؤية (vision encoder) بأبعاد (batch_size, num_tokens, embed_dim).
  • attention_kwargs (dict, اختياري) — حجج إضافية لمعالجات الانتباه.
  • return_dict (bool، القيمة الافتراضية True) — ما إذا كان يجب إرجاع Transformer2DModelOutput.

يعيد

Transformer2DModelOutput أو tuple

العينات المتوقعة.

المرور الأمامي لنموذج MotifVideoTransformer3DModel.

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