Diffusers documentation
AutoencoderKLLTXVideo
AutoencoderKLLTXVideo
تم تقديم نموذج الترميز التلقائي التبايني ثلاثي الأبعاد (VAE) مع خسارة KL المستخدم في LTX من قبل Lightricks.
يمكن تحميل النموذج باستخدام مقتطف الشيفرة التالي.
from diffusers import AutoencoderKLLTXVideo
vae = AutoencoderKLLTXVideo.from_pretrained("Lightricks/LTX-Video", subfolder="vae", dtype=torch.float32).to("cuda") # or "mps", "xpu", "cpu"AutoencoderKLLTXVideo
فئة diffusers.AutoencoderKLLTXVideo
< source >( in_channels: int = 3out_channels: int = 3latent_channels: int = 128block_out_channels: tuple = (128, 256, 512, 512)down_block_types: tuple = ('LTXVideoDownBlock3D', 'LTXVideoDownBlock3D', 'LTXVideoDownBlock3D', 'LTXVideoDownBlock3D')decoder_block_out_channels: tuple = (128, 256, 512, 512)layers_per_block: tuple = (4, 3, 3, 3, 4)decoder_layers_per_block: tuple = (4, 3, 3, 3, 4)spatio_temporal_scaling: tuple = (True, True, True, False)decoder_spatio_temporal_scaling: tuple = (True, True, True, False)decoder_inject_noise: tuple = (False, False, False, False, False)downsample_type: tuple = ('conv', 'conv', 'conv', 'conv')upsample_residual: tuple = (False, False, False, False)upsample_factor: tuple = (1, 1, 1, 1)timestep_conditioning: bool = Falsepatch_size: int = 4patch_size_t: int = 1resnet_norm_eps: float = 1e-06scaling_factor: float = 1.0encoder_causal: bool = Truedecoder_causal: bool = Falsespatial_compression_ratio: int = Nonetemporal_compression_ratio: int = None )
المعاملات
- in_channels (
int)، القيمة الافتراضية3— عدد قنوات الإدخال. - out_channels (
int، القيمة الافتراضية3) — عدد قنوات الإخراج. - latent_channels (
int، القيمة الافتراضية128) — عدد قنوات الكمون. - block_out_channels (
tuple[int, ...]، القيمة الافتراضية(128, 256, 512, 512)) — عدد قنوات الإخراج لكل كتلة. - spatio_temporal_scaling (
tuple[bool, ...], defaults to(True, True, True, False)` — ما إذا كان يجب أن يحتوي الكتلة على تقليص مكاني-زمني أم لا. - layers_per_block (
tuple[int, ...]، القيمة الافتراضية(4, 3, 3, 3, 4)) — عدد الطبقات في كل كتلة. - patch_size (
int، القيمة الافتراضية4) — حجم البقع المكانية. - patch_size_t (
int، القيمة الافتراضية1) — حجم البقع الزمنية. - resnet_norm_eps (
float) — القيمة الافتراضية1e-6— قيمة إبسيلون لطبقات تطبيع ResNet. - scaling_factor (
float, اختياري، القيمة الافتراضية1.0) — انحراف معياري لكل مكوّن في الفضاء الكامن المُدرَّب، محسوب باستخدام الدفعة الأولى من مجموعة التدريب. يُستخدم هذا المقياس لضبط الفضاء الكامن بحيث يكون له تباين وحدة عند تدريب نموذج الانتشار. يتم قياس الكامنات باستخدام الصيغةz = z * scaling_factorقبل تمريرها إلى نموذج الانتشار. عند فك الترميز، تُعاد الكامنات إلى المقياس الأصلي باستخدام الصيغة:z = 1 / scaling_factor * z. لمزيد من التفاصيل، راجع الأقسام 4.3.2 و D.1 من ورقة High-Resolution Image Synthesis with Latent Diffusion Models. - encoder_causal (
bool، القيمة الافتراضيةTrue) — ما إذا كان يجب أن يتصرف المُشفِّر بشكل سببي (حيث تعتمد الإطارات المستقبلية على الإطارات السابقة فقط) أم لا. - decoder_causal (
bool، القيمة الافتراضيةFalse) — ما إذا كان يجب أن يتصرف المُفكّك بشكل سببي (حيث تعتمد الإطارات المستقبلية على الإطارات السابقة فقط) أم لا.
نموذج VAE مع خسارة KL لتشفير الصور إلى كامنات وفك تمثيل الكامنات إلى صور. يُستخدم في LTX.
يرث هذا النموذج من ModelMixin. راجع توثيق الفئة الأصلية لمعرفة طرقه العامة المُنفَّذة لجميع النماذج (مثل التنزيل أو الحفظ).
decode
< source >( z: Tensortemb: typing.Optional[torch.Tensor] = Nonereturn_dict: bool = True ) → ~models.vae.DecoderOutput or tuple
المعاملات
- z (
torch.Tensor) — دفعة مدخلات من المتجهات الكامنة. - return_dict (
bool، اختياري، القيمة الافتراضيةTrue) — ما إذا كان يجب إرجاع~models.vae.DecoderOutputبدلاً من tuple عادي.
يعيد
~models.vae.DecoderOutput أو tuple
If return_dict is True, a ~models.vae.DecoderOutput is returned, otherwise a plain tuple is
returned.
فكّ تشفير دفعة من الصور.
encode
< source >( x: Tensorreturn_dict: bool = True )
ترميز دفعة من الصور إلى كامنات.
enable_tiling
< source >( tile_sample_min_height: int | None = Nonetile_sample_min_width: int | None = Nonetile_sample_min_num_frames: int | None = Nonetile_sample_stride_height: float | None = Nonetile_sample_stride_width: float | None = Nonetile_sample_stride_num_frames: float | None = None )
المعاملات
- tile_sample_min_height (
int, اختياري) — الحد الأدنى للارتفاع المطلوب حتى يتم فصل العينة إلى بلاطات عبر بُعد الارتفاع. - tile_sample_min_width (
int, اختياري) — الحد الأدنى لعرض العينة المطلوب لفصلها إلى بلاطات عبر بُعد العرض. - tile_sample_stride_height (
int, اختياري) — الحد الأدنى من التداخل بين بلاطتين عموديتين متتاليتين. يهدف هذا إلى ضمان عدم ظهور أي شوائب تخطيط عبر بُعد الارتفاع. - tile_sample_stride_width (
int, اختياري) — الخطوة بين بلاطتين أفقيتين متتاليتين. يهدف هذا إلى ضمان عدم ظهور أي شوائب ناتجة عن التقطيع عبر بُعد العرض.
تفعيل فك ترميز VAE المُجزّأ. عند تفعيل هذا الخيار، سيقوم VAE بتقسيم مصفوفة الإدخال إلى بلاطات لحساب فك الترميز والترميز على عدة خطوات. وهذا مفيد لتوفير كمية كبيرة من الذاكرة ولتيسير معالجة صور أكبر.
forward
< source >( sample: Tensortemb: typing.Optional[torch.Tensor] = Nonesample_posterior: bool = Falsereturn_dict: bool = Truegenerator: typing.Optional[torch.Generator] = None ) → ~models.vae.DecoderOutput or tuple
المعاملات
- sample (
torch.Tensor) — عينة الإدخال. - temb (
torch.Tensor، اختياري) — مصفوفة تضمين خطوة زمنية اختيارية تُستخدم لتكييف المُفكِّك. - sample_posterior (
bool، اختياري، القيمة الافتراضيةFalse) — ما إذا كان سيتم أخذ عينة من التوزيع اللاحق. - return_dict (
bool، اختياري، القيمة الافتراضيةTrue) — ما إذا كان يجب إرجاعDecoderOutputبدلاً من tuple عادي. - generator (
torch.Generator، اختياري) —torch.Generatorلجعل عملية أخذ العينات حتمية.
يعيد
~models.vae.DecoderOutput أو tuple
إذا كان return_dict صحيحًا، يُعاد ~models.vae.DecoderOutput، وإلا يُعاد tuple عادي.
tiled_decode
< source >( z: Tensortemb: typing.Optional[torch.Tensor]return_dict: bool = True ) → ~models.vae.DecoderOutput or tuple
المعاملات
- z (
torch.Tensor) — دفعة مدخلات من المتجهات الكامنة. - return_dict (
bool، اختياري، القيمة الافتراضيةTrue) — ما إذا كان يجب إرجاع~models.vae.DecoderOutputبدلاً من tuple عادي.
يعيد
~models.vae.DecoderOutput أو tuple
If return_dict is True, a ~models.vae.DecoderOutput is returned, otherwise a plain tuple is
returned.
فكّ تشفير دفعة من الصور باستخدام مُفكّك مُجزّأ.
tiled_encode
< source >( x: Tensor ) → torch.Tensor
ترميز دفعة من الصور باستخدام مُرمِّز مُقسَّم إلى بلاطات.
AutoencoderKLOutput
فئة diffusers.models.modeling_outputs.AutoencoderKLOutput
< source >( latent_dist: DiagonalGaussianDistribution )
مخرجات طريقة الترميز encoding في AutoencoderKL.
DecoderOutput
فئة diffusers.models.autoencoders.vae.DecoderOutput
< source >( sample: Tensorcommit_loss: typing.Optional[torch.FloatTensor] = None )
مخرجات طريقة فك الترميز.