Buckets:
AutoencoderKLAllegro
تم تقديم نموذج الترميز التلقائي التبايني ثلاثي الأبعاد (VAE) مع خسارة KL المستخدم في Allegro في Allegro: Open the Black Box of Commercial-Level Video Generation Model بواسطة RhymesAI.
يمكن تحميل النموذج باستخدام مقتطف الشيفرة التالي.
from diffusers import AutoencoderKLAllegro
vae = AutoencoderKLAllegro.from_pretrained("rhymes-ai/Allegro", subfolder="vae", dtype=torch.float32).to("cuda") # or "mps", "xpu", "cpu"
AutoencoderKLAllegro[[diffusers.AutoencoderKLAllegro]]
diffusers.AutoencoderKLAllegro[[diffusers.AutoencoderKLAllegro]]
diffusers.AutoencoderKLAllegro(in_channels: int = 3, out_channels: int = 3, down_block_types: tuple[str, ...] = ('AllegroDownBlock3D', 'AllegroDownBlock3D', 'AllegroDownBlock3D', 'AllegroDownBlock3D'), up_block_types: tuple[str, ...] = ('AllegroUpBlock3D', 'AllegroUpBlock3D', 'AllegroUpBlock3D', 'AllegroUpBlock3D'), block_out_channels: tuple[int, ...] = (128, 256, 512, 512), temporal_downsample_blocks: tuple[bool, ...] = (True, True, False, False), temporal_upsample_blocks: tuple[bool, ...] = (False, True, True, False), latent_channels: int = 4, layers_per_block: int = 2, act_fn: str = 'silu', norm_num_groups: int = 32, temporal_compression_ratio: float = 4, sample_size: int = 320, scaling_factor: float = 0.13, force_upcast: bool = True)
المعاملات:
in_channels (int، القيمة الافتراضية 3) : عدد القنوات في الصورة المدخلة.
out_channels (int، القيمة الافتراضية 3) : عدد القنوات في المخرجات.
down_block_types (tuple[str, ...]، القيمة الافتراضية هي ("AllegroDownBlock3D", "AllegroDownBlock3D", "AllegroDownBlock3D", "AllegroDownBlock3D")) : مجموعة من السلاسل النصية تحدد أنواع كتل التقليل (down blocks) المستخدمة.
up_block_types (tuple[str, ...]، القيمة الافتراضية هي ("AllegroUpBlock3D", "AllegroUpBlock3D", "AllegroUpBlock3D", "AllegroUpBlock3D")) : مجموعة من السلاسل النصية تحدد أنواع كتل التوسيع (up blocks) المستخدمة.
block_out_channels (tuple[int, ...]، القيمة الافتراضية هي (128, 256, 512, 512)) : مجموعة من الأعداد الصحيحة تحدد عدد قنوات الإخراج في كل كتلة.
temporal_downsample_blocks (tuple[bool, ...]، القيمة الافتراضية هي (True, True, False, False)) : مجموعة من القيم المنطقية تحدد الكتل التي سيتم تفعيل تقليل العينات الزمنية فيها.
latent_channels (int، القيمة الافتراضية 4) : عدد القنوات في الكمونيات.
layers_per_block (int، القيمة الافتراضية 2) : عدد طبقات resnet أو attention أو temporal convolution في كل كتلة down/up.
act_fn (str، الافتراضي "silu") : دالة التنشيط المستخدمة.
norm_num_groups (int، القيمة الافتراضية 32) : عدد المجموعات المستخدمة في طبقات التطبيع.
temporal_compression_ratio (int، القيمة الافتراضية 4) : النسبة التي يتم بها ضغط البُعد الزمني للعينات.
sample_size (int، القيمة الافتراضية هي 320) : الحجم الافتراضي للكامن.
scaling_factor (float، القيمة الافتراضية 0.13235) : الانحراف المعياري المكوّن-بالمكوّن للمساحة الكامنة المدربة، المحسوب باستخدام الدفعة الأولى من مجموعة التدريب. يُستخدم هذا لتقريب المساحة الكامنة بحيث تمتلك تباينًا وحدةً عند تدريب نموذج الانتشار. يتم تقريب الكمون باستخدام الصيغة z = z * scaling_factor قبل تمريره إلى نموذج الانتشار. عند فك الترميز، يُعاد تقريب الكمون إلى المقياس الأصلي باستخدام الصيغة: z = 1 / scaling_factor * z. لمزيد من التفاصيل، راجع الأقسام 4.3.2 و D.1 من ورقة High-Resolution Image Synthesis with Latent Diffusion Models.
force_upcast (bool، الافتراضي True) : إذا تم التفعيل، سيُجبر هذا الخيار VAE على العمل بدقة float32 في خطوط الأنابيب ذات دقة الصور العالية، مثل SD-XL. يمكن ضبط VAE تدريبيًا / تدريبه على نطاق أدنى دون فقدان كبير في الدقة، وفي هذه الحالة يمكن تعيين force_upcast إلى False - انظر: https://huggingface.co/madebyollin/sdxl-vae-fp16-fix
نموذج VAE مع خسارة KL لتشفير مقاطع الفيديو إلى كامنات وفك تمثيل الكامنات إلى مقاطع فيديو. يُستخدم في Allegro.
يرث هذا النموذج من ModelMixin. راجع توثيق الفئة الأصلية لمعرفة طرقه العامة المُنفَّذة لجميع النماذج (مثل التنزيل أو الحفظ).
فك الترميز[[diffusers.AutoencoderKLAllegro.decode]]
decode(z: Tensor, return_dict: bool = True)
المعاملات:
z (torch.Tensor) : دفعة إدخال من المتجهات الكامنة.
return_dict (bool، القيمة الافتراضية True) : ما إذا كان يجب إرجاع ~models.vae.DecoderOutput بدلاً من tuple عادي.
يعيد: ~models.vae.DecoderOutput أو tuple
إذا كانت return_dict تساوي True، يُعاد ~models.vae.DecoderOutput، وإلا يُعاد tuple عادي.
فكّ ترميز دفعة من مقاطع الفيديو.
ترميز[[diffusers.AutoencoderKLAllegro.encode]]
encode(x: Tensor, return_dict: bool = True)
المعاملات:
x (torch.Tensor) : دفعة إدخال من مقاطع الفيديو.
return_dict (bool، القيمة الافتراضية True) : ما إذا كان يجب إرجاع ~models.autoencoder_kl.AutoencoderKLOutput بدلاً من tuple عادي.
يعيد:
تمثيلات الكامنة للفيديوهات المُرمّزة. إذا كان return_dict صحيحًا (True)، يُعاد ~models.autoencoder_kl.AutoencoderKLOutput، وإلا يُعاد tuple عادي.
ترميز دفعة من مقاطع الفيديو إلى كامنات.
forward[[diffusers.AutoencoderKLAllegro.forward]]
forward(sample: Tensor, sample_posterior: bool = False, return_dict: bool = True, generator: typing.Optional[torch.Generator] = None)
المعاملات:
sample (torch.Tensor) : عينة الإدخال.
sample_posterior (bool، اختياري، الافتراضي False) : ما إذا كان سيتم أخذ عينة من التوزيع اللاحق.
return_dict (bool، اختياري، الافتراضي True) : ما إذا كان يجب إرجاع DecoderOutput بدلاً من tuple عادي.
generator (torch.Generator، اختياري) : مولّد الأرقام العشوائية في PyTorch.
يعيد: ~models.vae.DecoderOutput أو tuple
إذا كان return_dict صحيحًا، يُعاد ~models.vae.DecoderOutput، وإلا يُعاد tuple عادي.
AutoencoderKLOutput[[diffusers.models.modeling_outputs.AutoencoderKLOutput]]
diffusers.models.modeling_outputs.AutoencoderKLOutput[[diffusers.models.modeling_outputs.AutoencoderKLOutput]]
diffusers.models.modeling_outputs.AutoencoderKLOutput(latent_dist: DiagonalGaussianDistribution)
المعاملات:
latent_dist (DiagonalGaussianDistribution) : المخرجات المُرمّزة لـEncoder ممثّلةً بمتوسط DiagonalGaussianDistribution ومتغيره اللوغاريتمي. تتيح DiagonalGaussianDistribution أخذ عينات من المتغيّرات الكامنة انطلاقًا من هذا التوزيع.
مخرجات طريقة الترميز encoding في AutoencoderKL.
DecoderOutput[[diffusers.models.autoencoders.vae.DecoderOutput]]
diffusers.models.autoencoders.vae.DecoderOutput[[diffusers.models.autoencoders.vae.DecoderOutput]]
diffusers.models.autoencoders.vae.DecoderOutput(sample: Tensor, commit_loss: typing.Optional[torch.FloatTensor] = None)
المعاملات:
sample (torch.Tensor من الشكل (batch_size, num_channels, height, width)) : عينة الإخراج المُفكّكة من الطبقة الأخيرة للنموذج.
مخرجات طريقة فك الترميز.
Xet Storage Details
- Size:
- 9.88 kB
- Xet hash:
- 9383c44660cff9fe2c6076f90e84e554263bdd9d1b588dbf25a38a879a570c9c
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.