Diffusers documentation
Motif-Video
Motif-Video
Motif-Video هو نموذج تحويل انتشاري (diffusion transformer) يحتوي على 2 مليار معامل، مصمم لتوليد الفيديو من النص وتوليد الفيديو من الصورة. يتميز بهيكلية من ثلاث مراحل تتكون من 12 طبقة فك تشفير مزدوجة التدفق + 16 طبقة فك تشفير أحادية التدفق + 8 طبقات فك تشفير DDT، مع استخدام الانتباه المتقاطع المشترك (Shared Cross-Attention) لضمان محاذاة مستقرة بين النص والفيديو في تسلسلات الفيديو الطويلة، بالإضافة إلى مشفر النص T5Gemma2، وتطابق التدفق المستقيم (rectified flow matching) للتنبؤ بالسرعة.

توليد الفيديو من النص
استخدم MotifVideoPipeline لتوليد الفيديو من النص:
import torch
from diffusers import MotifVideoPipeline
from diffusers.utils import export_to_video
pipe = MotifVideoPipeline.from_pretrained(
"Motif-Technologies/Motif-Video-2B",
dtype=torch.bfloat16,
)
pipe.to("cuda") # or "mps", "xpu", "cpu"
prompt = "A woman with long brown hair and light skin smiles at another woman with long blonde hair."
negative_prompt = "worst quality, inconsistent motion, blurry, jittery, distorted"
video = pipe(
prompt=prompt,
negative_prompt=negative_prompt,
width=1280,
height=736,
num_frames=121,
num_inference_steps=50,
).frames[0]
export_to_video(video, "output.mp4", fps=24)توليد الفيديو من الصورة
استخدم MotifVideoImage2VideoPipeline لتوليد الفيديو من الصورة:
import torch
from diffusers import MotifVideoImage2VideoPipeline
from diffusers.utils import export_to_video, load_image
pipe = MotifVideoImage2VideoPipeline.from_pretrained(
"Motif-Technologies/Motif-Video-2B",
dtype=torch.bfloat16,
)
pipe.to("cuda") # or "mps", "xpu", "cpu"
image = load_image("input_image.png")
prompt = "A cinematic scene with vivid colors."
negative_prompt = "worst quality, blurry, jittery, distorted"
video = pipe(
image=image,
prompt=prompt,
negative_prompt=negative_prompt,
width=1280,
height=736,
num_frames=121,
num_inference_steps=50,
).frames[0]
export_to_video(video, "i2v_output.mp4", fps=24)الاستدلال الموفّر للذاكرة
بالنسبة للوحدات المعالجة الرسومية التي تقل ذاكرتها المخصصة (VRAM) عن 30 جيجابايت (مثل RTX 4090)، استخدم نقل النموذج إلى وحدة المعالجة المركزية (CPU offloading):
export PYTORCH_CUDA_ALLOC_CONF=expandable_segments:Trueimport torch
from diffusers import MotifVideoPipeline
from diffusers.utils import export_to_video
pipe = MotifVideoPipeline.from_pretrained(
"Motif-Technologies/Motif-Video-2B",
dtype=torch.bfloat16,
)
pipe.enable_model_cpu_offload()
prompt = "A woman with long brown hair and light skin smiles at another woman with long blonde hair."
negative_prompt = "worst quality, inconsistent motion, blurry, jittery, distorted"
video = pipe(
prompt=prompt,
negative_prompt=negative_prompt,
width=1280,
height=736,
num_frames=121,
num_inference_steps=50,
).frames[0]
export_to_video(video, "output.mp4", fps=24)MotifVideoPipeline
فئة diffusers.MotifVideoPipeline
< source >( scheduler: SchedulerMixinvae: AutoencoderKLWantext_encoder: T5Gemma2Encodertokenizer: PreTrainedTokenizerBasetransformer: MotifVideoTransformer3DModelguider: BaseGuidancefeature_extractor: typing.Optional[transformers.models.siglip.image_processing_pil_siglip.SiglipImageProcessorPil] = None )
المعاملات
- transformer (MotifVideoTransformer3DModel) — بنية Transformer شرطية لإزالة الضوضاء من كامنات الفيديو المُرمّزة.
- scheduler (SchedulerMixin) —
جدول زمني يُستخدم بالاقتران مع
transformerلإزالة الضوضاء من كامنات الفيديو المُرمّزة. يجب أن يكون مثالاً لفئة ترث منSchedulerMixin، مثل DPMSolverMultistepScheduler. إذا لم يُقدَّم، يُستخدم الجدول الزمني المرتبط بالنموذج المُدرَّب مسبقاً. - vae (AutoencoderKLWan) — نموذج الترميز التبايني التلقائي (VAE) لتشفير وفك تشفير مقاطع الفيديو إلى تمثيلات كامنة ومنها.
- text_encoder (
T5Gemma2Encoder) — المشفّر النصي الأساسي لتحويل الأوامر النصية إلى تمثيلات متجهة. - tokenizer (
PreTrainedTokenizerBase) — المُجزِّئ (Tokenizer) المقابل لمُشفِّر النص الأساسي. - guider (BaseGuidance) —
طريقة التوجيه المستخدمة. يجب أن تكون نسخة من فئة ترث من
BaseGuidance، مثل ClassifierFreeGuidance أو AdaptiveProjectedGuidance أو SkipLayerGuidance. إذا لم تُقدَّم، فتكون القيمة الافتراضيةClassifierFreeGuidance.
خط أنابيب لتوليد الفيديو من النص باستخدام Motif-Video.
يرث هذا النموذج من DiffusionPipeline. راجع توثيق الفئة الأصلية لمعرفة الطرق العامة المُنفَّذة لجميع خطوط الأنابيب (التنزيل، الحفظ، التشغيل على جهاز معين، إلخ).
__call__
< source >( prompt: typing.Union[str, typing.List[str], NoneType] = Nonenegative_prompt: typing.Union[str, typing.List[str], NoneType] = Noneheight: int = 736width: int = 1280num_frames: int = 121num_inference_steps: int = 50timesteps: typing.Optional[typing.List[int]] = Nonenum_videos_per_prompt: typing.Optional[int] = 1generator: typing.Union[torch.Generator, typing.List[torch.Generator], NoneType] = Nonelatents: typing.Optional[torch.Tensor] = Noneprompt_embeds: typing.Optional[torch.Tensor] = Noneprompt_attention_mask: typing.Optional[torch.Tensor] = Nonenegative_prompt_embeds: typing.Optional[torch.Tensor] = Nonenegative_prompt_attention_mask: typing.Optional[torch.Tensor] = Noneoutput_type: typing.Optional[str] = 'pil'return_dict: bool = Trueattention_kwargs: typing.Optional[typing.Dict[str, typing.Any]] = Nonecallback_on_step_end: typing.Union[typing.Callable[[int, int, typing.Dict], NoneType], diffusers.callbacks.PipelineCallback, diffusers.callbacks.MultiPipelineCallbacks, NoneType] = Nonecallback_on_step_end_tensor_inputs: typing.List[str] = ['latents']max_sequence_length: int = 512vae_batch_size: int | None = None ) → ~MotifVideoPipelineOutput or tuple
المعاملات
- prompt (
strأوList[str]، اختياري) — الموجّه أو الموجّهات التي توجّه توليد الفيديو. إذا لم يُعرَّف، يجب تمريرprompt_embeds. - negative_prompt (
strأوList[str]، اختياري) — الموجّه أو الموجّهات التي لا ينبغي استخدامها لتوجيه توليد الفيديو. إذا لم يُعرَّف، يجب تمريرnegative_prompt_embedsبدلاً منه. يتم تجاهله عند عدم استخدام التوجيه. - height (
int) — ارتفاع الفيديو المولّد بالبكسلات، القيمة الافتراضية736. - width (
int، القيمة الافتراضية1280) — عرض الفيديو المولّد بالبكسلات. - num_frames (
int، القيمة الافتراضية121) — عدد إطارات الفيديو التي سيتم توليدها. - num_inference_steps (
int، اختياري، القيمة الافتراضية 50) — عدد خطوات إزالة الضوضاء. تؤدي زيادة عدد خطوات إزالة الضوضاء عادةً إلى فيديو بجودة أعلى على حساب بطء الاستدلال. - timesteps (
List[int]، اختياري) — خطوات زمنية مخصصة لاستخدامها في عملية إزالة الضوضاء. - num_videos_per_prompt (
int، اختياري، القيمة الافتراضية 1) — عدد مقاطع الفيديو التي سيتم توليدها لكل موجه. - generator (
torch.GeneratorأوList[torch.Generator]، اختياري) — كائنات مولّد PyTorch للتوليد الحتمي. - latents (
torch.Tensor، اختياري) — كائنات latents ضجيجية مُولّدة مسبقًا. - prompt_embeds (
torch.Tensor، اختياري) — تضمينات نصية مُولّدة مسبقًا. - prompt_attention_mask (
torch.Tensor، اختياري) — قناع الانتباه المُولَّد مسبقًا لتضمينات النص. - negative_prompt_embeds (
torch.FloatTensor، اختياري) — تضمينات نصية سلبية مُولّدة مسبقًا. - negative_prompt_attention_mask (
torch.FloatTensor، اختياري) — قناع انتباه مُولّد مسبقًا لتضمينات النص السلبية. - output_type (
str، اختياري، الافتراضي"pil") — صيغة مخرجات الفيديو المولّد. اختر بين"pil"أو"np"أو"latent". - return_dict (
bool، اختياري، القيمة الافتراضيةTrue) — ما إذا كان يجب إرجاع ~MotifVideoPipelineOutput بدلاً من tuple عادي. - attention_kwargs (
dict، اختياري) — الحجج المُمرَّرة إلى مُعالج الانتباه. - callback_on_step_end (
Callable، اختياري) — دالة أو فئة فرعية منPipelineCallbackأوMultiPipelineCallbacksتُستدعى في نهاية كل خطوة إزالة ضوضاء. - callback_on_step_end_tensor_inputs (
List, اختياري) — قائمة مدخلات المصفوفات لدالةcallback_on_step_end. - max_sequence_length (
int، القيمة الافتراضية512) — أقصى طول للتسلسل لمُجزّئ النص. - vae_batch_size (
int, اختياري) — حجم الدفعة لفك ترميز VAE. إذا تم تقديمه وكان حجم دفعة الكمونيات أكبر، فسيتم تنفيذ فك ترميز VAE على دفعات.
يعيد
~MotifVideoPipelineOutput أو tuple
إذا كان return_dict هو True، يُعاد ~MotifVideoPipelineOutput، وإلا يُعاد tuple حيث يكون العنصر الأول قائمة بإطارات الفيديو المولّدة.
دالة الاستدعاء call لخط الأنابيب pipeline لتوليد الفيديو من النص.
أمثلة:
>>> import torch
>>> from diffusers import MotifVideoPipeline
>>> from diffusers.utils import export_to_video
>>> # Load the Motif-Video pipeline
>>> motif_video_model_id = "Motif-Technologies/Motif-Video-2B"
>>> pipe = MotifVideoPipeline.from_pretrained(motif_video_model_id, torch_dtype=torch.bfloat16)
>>> pipe.to("cuda")
>>> prompt = "A woman with long brown hair and light skin smiles at another woman with long blonde hair. The woman with brown hair wears a black jacket and has a small, barely noticeable mole on her right cheek. The camera angle is a close-up, focused on the woman with brown hair's face. The lighting is warm and natural, likely from the setting sun, casting a soft glow on the scene. The scene appears to be real-life footage"
>>> negative_prompt = "worst quality, inconsistent motion, blurry, jittery, distorted"
>>> video = pipe(
... prompt=prompt,
... negative_prompt=negative_prompt,
... width=1280,
... height=736,
... num_frames=121,
... num_inference_steps=50,
... ).frames[0]
>>> export_to_video(video, "output.mp4", fps=24)encode_prompt
< source >( prompt: typing.Union[str, typing.List[str]]negative_prompt: typing.Union[str, typing.List[str], NoneType] = Nonenum_videos_per_prompt: int = 1prompt_embeds: typing.Optional[torch.Tensor] = Nonenegative_prompt_embeds: typing.Optional[torch.Tensor] = Noneprompt_attention_mask: typing.Optional[torch.Tensor] = Nonenegative_prompt_attention_mask: typing.Optional[torch.Tensor] = Nonemax_sequence_length: int = 512device: typing.Optional[torch.device] = Nonedtype: typing.Optional[torch.dtype] = None ) → tuple[torch.Tensor, torch.Tensor, torch.Tensor, torch.Tensor]
المعاملات
- prompt (
strأوList[str]، اختياري) — الموجّه أو الموجّهات التي سيتم ترميزها. - negative_prompt (
strأوList[str]، اختياري) — الموجّه أو الموجّهات التي لا ينبغي استخدامها لتوجيه توليد الصورة. إذا لم يُعرَّف، يجب تمريرnegative_prompt_embedsبدلاً من ذلك. يتم تجاهله عند عدم استخدام التوجيه (أي يتم تجاهله إذا كانguidance_scaleأقل من1). - num_videos_per_prompt (
int، اختياري، القيمة الافتراضية 1) — عدد مقاطع الفيديو التي سيتم توليدها لكل موجه. - prompt_embeds (
torch.Tensor، اختياري) — تضمينات نصية مُولّدة مسبقًا. - negative_prompt_embeds (
torch.Tensor، اختياري) — تضمينات نصية سلبية مُولّدة مسبقًا. يمكن استخدامها لتعديل مدخلات النص بسهولة، مثلًا وزن الموجه. إذا لم تُقدَّم، فسيتم توليد negative_prompt_embeds من معامل الإدخالnegative_prompt. - prompt_attention_mask (
torch.Tensor، اختياري) — قناع الانتباه المُولَّد مسبقًا لتضمينات النص. - negative_prompt_attention_mask (
torch.Tensor، اختياري) — قناع الانتباه المُولَّد مسبقًا لتضمينات النص السلبية. - max_sequence_length (
int، القيمة الافتراضية 512) — أقصى طول للسلسلة لمُقسِّم النص. - device (
torch.device، اختياري) — الجهاز الذي سيتم وضع المصفوفات عليه. - dtype (
torch.dtype، اختياري) — نوع البيانات للمصفوفات.
يعيد
tuple[torch.Tensor, torch.Tensor, torch.Tensor, torch.Tensor]
مجموعة (tuple) تحتوي على:
prompt_embeds: تمثيلات النص الخاصة بالموجّه الإيجابيnegative_prompt_embeds: تمثيلات النص للموجّه السلبي (None إذا لم يتم استخدام التوجيه)prompt_attention_mask: قناع الانتباه للموجّه الإيجابيnegative_prompt_attention_mask: قناع الانتباه للموجبة السلبية (None إذا لم يتم استخدام التوجيه)
يقوم بتشفير الموجه إلى حالات مخفية لمشفّر النص.
MotifVideoImage2VideoPipeline
فئة diffusers.MotifVideoImage2VideoPipeline
< source >( scheduler: SchedulerMixinvae: AutoencoderKLWantext_encoder: T5Gemma2Encodertokenizer: PreTrainedTokenizerBasetransformer: MotifVideoTransformer3DModelguider: BaseGuidancefeature_extractor: SiglipImageProcessorPil )
المعاملات
- transformer (MotifVideoTransformer3DModel) — بنية Transformer شرطية لإزالة الضوضاء من كامنات الفيديو المُرمّزة.
- scheduler (SchedulerMixin) —
جدول زمني يُستخدم بالاقتران مع
transformerلإزالة الضوضاء من كامنات الفيديو المُرمّزة. يجب أن يكون مثالاً لفئة ترث منSchedulerMixin، مثل DPMSolverMultistepScheduler. إذا لم يُقدَّم، يُستخدم الجدول الزمني المرتبط بالنموذج المُدرَّب مسبقاً. - vae (AutoencoderKLWan) — نموذج الترميز التبايني التلقائي (VAE) لتشفير وفك تشفير مقاطع الفيديو إلى تمثيلات كامنة ومنها.
- text_encoder (
T5Gemma2Encoder) — المشفّر النصي الأساسي لتحويل الأوامر النصية إلى تمثيلات متجهة. - tokenizer (
PreTrainedTokenizerBase) — المُجزِّئ (Tokenizer) المقابل لمُشفِّر النص الأساسي. - feature_extractor (
SiglipImageProcessor) — معالج الصور لمُشفِّر الرؤية في SigLIP. - guider (BaseGuidance) —
طريقة التوجيه المستخدمة. يجب أن تكون نسخة من فئة ترث من
BaseGuidance، مثل ClassifierFreeGuidance أو AdaptiveProjectedGuidance أو SkipLayerGuidance. إذا لم تُقدَّم، فتكون القيمة الافتراضيةClassifierFreeGuidance.
خط أنابيب لتوليد الفيديو من الصورة باستخدام Motif-Video مع اشتراط الإطار الأول.
يرث هذا النموذج من DiffusionPipeline. راجع توثيق الفئة الأصلية لمعرفة الطرق العامة المُنفَّذة لجميع خطوط الأنابيب (التنزيل، الحفظ، التشغيل على جهاز معين، إلخ).
__call__
< source >( image: typing.Union[PIL.Image.Image, numpy.ndarray, torch.Tensor, list[PIL.Image.Image], list[numpy.ndarray], list[torch.Tensor]]prompt: typing.Union[str, typing.List[str]]negative_prompt: typing.Union[str, typing.List[str], NoneType] = Noneheight: int = 736width: int = 1280num_frames: int = 121num_inference_steps: int = 50timesteps: typing.Optional[typing.List[int]] = Nonenum_videos_per_prompt: typing.Optional[int] = 1generator: typing.Union[torch.Generator, typing.List[torch.Generator], NoneType] = Nonelatents: typing.Optional[torch.Tensor] = Noneprompt_embeds: typing.Optional[torch.Tensor] = Noneprompt_attention_mask: typing.Optional[torch.Tensor] = Nonenegative_prompt_embeds: typing.Optional[torch.Tensor] = Nonenegative_prompt_attention_mask: typing.Optional[torch.Tensor] = Noneoutput_type: typing.Optional[str] = 'pil'return_dict: bool = Trueattention_kwargs: typing.Optional[typing.Dict[str, typing.Any]] = Nonecallback_on_step_end: typing.Union[typing.Callable[[int, int, typing.Dict], NoneType], diffusers.callbacks.PipelineCallback, diffusers.callbacks.MultiPipelineCallbacks, NoneType] = Nonecallback_on_step_end_tensor_inputs: typing.List[str] = ['latents']max_sequence_length: int = 512 ) → ~MotifVideoPipelineOutput or tuple
المعاملات
- image (
PipelineImageInput) — الصورة المُدخلة التي تُستخدم كإطار أولي لتوليد الفيديو. - prompt (
strأوList[str]) — الموجّه أو الموجّهات التي تُوجّه توليد الفيديو. - negative_prompt (
strأوList[str]، اختياري) — الموجّه أو الموجّهات التي لا ينبغي استخدامها لتوجيه توليد الفيديو. - height (
int) — ارتفاع الفيديو المولّد بالبكسلات، القيمة الافتراضية736. - width (
int، القيمة الافتراضية1280) — عرض الفيديو المولّد بالبكسلات. - num_frames (
int، القيمة الافتراضية121) — عدد إطارات الفيديو التي سيتم توليدها. - num_inference_steps (
int، اختياري، القيمة الافتراضية 50) — عدد خطوات إزالة الضوضاء. - timesteps (
List[int]، اختياري) — خطوات زمنية مخصصة لاستخدامها في عملية إزالة الضوضاء. - num_videos_per_prompt (
int، اختياري، القيمة الافتراضية 1) — عدد مقاطع الفيديو التي سيتم توليدها لكل موجه. - generator (
torch.GeneratorأوList[torch.Generator]، اختياري) — كائنات مولّد PyTorch للتوليد الحتمي. - latents (
torch.Tensor، اختياري) — كائنات latents ضجيجية مُولّدة مسبقًا. - prompt_embeds (
torch.Tensor، اختياري) — تضمينات نصية مُولّدة مسبقًا. - prompt_attention_mask (
torch.Tensor، اختياري) — قناع الانتباه المُولَّد مسبقًا لتضمينات النص. - negative_prompt_embeds (
torch.FloatTensor، اختياري) — تضمينات نصية سلبية مُولّدة مسبقًا. - negative_prompt_attention_mask (
torch.FloatTensor، اختياري) — قناع انتباه مُولّد مسبقًا لتضمينات النص السلبية. - output_type (
str، اختياري، الافتراضي"pil") — صيغة مخرجات الفيديو المولّد. - return_dict (
bool، اختياري، القيمة الافتراضيةTrue) — ما إذا كان يجب إرجاع ~MotifVideoPipelineOutput بدلاً من tuple عادي. - attention_kwargs (
dict، اختياري) — الحجج المُمرَّرة إلى مُعالج الانتباه. - callback_on_step_end (
Callable، اختياري) — دالة أو فئة فرعية منPipelineCallbackتُستدعى في نهاية كل خطوة إزالة ضوضاء. - callback_on_step_end_tensor_inputs (
List, اختياري) — قائمة مدخلات المصفوفات لدالةcallback_on_step_end. - max_sequence_length (
int، القيمة الافتراضية512) — أقصى طول للتسلسل لمُجزّئ النص.
يعيد
~MotifVideoPipelineOutput أو tuple
إذا كان return_dict هو True، يُعاد ~MotifVideoPipelineOutput، وإلا يُعاد tuple حيث يكون العنصر الأول قائمة بإطارات الفيديو المولّدة.
دالة الاستدعاء call لخط الأنابيب pipeline لتوليد الفيديو من الصورة.
أمثلة:
>>> import torch
>>> from PIL import Image
>>> from diffusers import MotifVideoImage2VideoPipeline
>>> from diffusers.utils import export_to_video, load_image
>>> # Load the Motif-Video image-to-video pipeline
>>> motif_video_model_id = "Motif-Technologies/Motif-Video-2B"
>>> pipe = MotifVideoImage2VideoPipeline.from_pretrained(motif_video_model_id, torch_dtype=torch.bfloat16)
>>> pipe.to("cuda")
>>> # Load an image
>>> image = load_image(
... "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/diffusers/astronaut.png"
... )
>>> prompt = "An astronaut is walking on the moon surface, kicking up dust with each step"
>>> negative_prompt = "worst quality, inconsistent motion, blurry, jittery, distorted"
>>> video = pipe(
... image=image,
... prompt=prompt,
... negative_prompt=negative_prompt,
... width=1280,
... height=736,
... num_frames=121,
... num_inference_steps=50,
... ).frames[0]
>>> export_to_video(video, "output.mp4", fps=24)encode_prompt
< source >( prompt: typing.Union[str, typing.List[str]]negative_prompt: typing.Union[str, typing.List[str], NoneType] = Nonenum_videos_per_prompt: int = 1prompt_embeds: typing.Optional[torch.Tensor] = Nonenegative_prompt_embeds: typing.Optional[torch.Tensor] = Noneprompt_attention_mask: typing.Optional[torch.Tensor] = Nonenegative_prompt_attention_mask: typing.Optional[torch.Tensor] = Nonemax_sequence_length: int = 512device: typing.Optional[torch.device] = Nonedtype: typing.Optional[torch.dtype] = None ) → tuple[torch.Tensor, torch.Tensor, torch.Tensor, torch.Tensor]
المعاملات
- prompt (
strأوList[str]، اختياري) — الموجّه أو الموجّهات التي سيتم ترميزها. - negative_prompt (
strأوList[str]، اختياري) — الموجّه أو الموجّهات التي لا ينبغي استخدامها لتوجيه توليد الصورة. إذا لم يُعرَّف، يجب تمريرnegative_prompt_embedsبدلاً من ذلك. يتم تجاهله عند عدم استخدام التوجيه (أي يتم تجاهله إذا كانguidance_scaleأقل من1). - num_videos_per_prompt (
int، اختياري، القيمة الافتراضية 1) — عدد مقاطع الفيديو التي سيتم توليدها لكل موجه. - prompt_embeds (
torch.Tensor، اختياري) — تضمينات نصية مُولّدة مسبقًا. - negative_prompt_embeds (
torch.Tensor، اختياري) — تضمينات نصية سلبية مُولّدة مسبقًا. يمكن استخدامها لتعديل مدخلات النص بسهولة، مثلًا وزن الموجه. إذا لم تُقدَّم، فسيتم توليد negative_prompt_embeds من معامل الإدخالnegative_prompt. - prompt_attention_mask (
torch.Tensor، اختياري) — قناع الانتباه المُولَّد مسبقًا لتضمينات النص. - negative_prompt_attention_mask (
torch.Tensor، اختياري) — قناع الانتباه المُولَّد مسبقًا لتضمينات النص السلبية. - max_sequence_length (
int، القيمة الافتراضية 512) — أقصى طول للسلسلة لمُقسِّم النص. - device (
torch.device، اختياري) — الجهاز الذي سيتم وضع المصفوفات عليه. - dtype (
torch.dtype، اختياري) — نوع البيانات للمصفوفات.
يعيد
tuple[torch.Tensor, torch.Tensor, torch.Tensor, torch.Tensor]
مجموعة (tuple) تحتوي على:
prompt_embeds: تمثيلات النص الخاصة بالموجّه الإيجابيnegative_prompt_embeds: تمثيلات النص للموجّه السلبي (None إذا لم يتم استخدام التوجيه)prompt_attention_mask: قناع الانتباه للموجّه الإيجابيnegative_prompt_attention_mask: قناع الانتباه للموجبة السلبية (None إذا لم يتم استخدام التوجيه)
يقوم بتشفير الموجه إلى حالات مخفية لمشفّر النص.
MotifVideoPipelineOutput
فئة diffusers.MotifVideoPipelineOutput
< source >( frames: Tensor )
المعاملات
- frames (
torch.Tensorأوnp.ndarrayأو List[List[PIL.Image.Image]]) — قائمة مخرجات الفيديو - يمكن أن تكون قائمة متداخلة بطولbatch_size,حيث تحتوي كل قائمة فرعية على سلاسل صور PIL منزوعة الضوضاء بطولnum_frames.كما يمكن أن تكون مصفوفة NumPy أو متجه Torch من الشكل(batch_size, num_frames, channels, height, width).
فئة الإخراج لخطوط أنابيب Motif-Video.