Buckets:
AutoencoderKLPH3Image
نموذج VAE للصور الخاص بـ P-H3-Image من Pruna AI. يستخدم هذا النموذج المُشفِّر (encoder) والمساحة الكامنة (latent space) الخاصة بـ VAE الفيديو في MiniMax-H3، مع مُفكِّك (decoder) من نوع ViT يقوم بفك ترميز إطار كامن واحد إلى صورة.
يتبع اتفاقيات AutoencoderKLMiniMaxH3:
- تُمرَّر الصور كفيديوهات بإطار واحد،
(batch_size, channels, 1, height, width)، مع ضغط مكاني بمقدار 16x. - تُطبَّع القيم الكامنة (Latents) لكل قناة باستخدام
latents_mean/latents_stdبدلاً منscaling_factor. - تكون البكسلات قيم RGB مُطبَّعة وفق معايير ImageNet ضمن المجال
[0, 1]: يتوقعencodeإدخال(pixel - imagenet_mean) / imagenet_stdبينما يعيدdecodeالنتيجة في ذلك المجال. - تكون التiling المكاني مفعّلاً افتراضياً، مع بلاطات بحجم 256 بكسل وتداخل لا يقل عن 64 بكسل.
import torch
from diffusers import AutoencoderKLPH3Image
vae = AutoencoderKLPH3Image.from_pretrained("PrunaAI/P-H3-Image", subfolder="vae", dtype=torch.bfloat16).to(
"cuda"
) # or "mps", "xpu", "cpu"
تبقى إخراجات الإسقاط الخاصة بالمُشفِّر والمُفكِّك في float32 بغضّ النظر عن dtype الذي يحمّل به النموذج.
AutoencoderKLPH3Image[[diffusers.AutoencoderKLPH3Image]]
diffusers.AutoencoderKLPH3Image[[diffusers.AutoencoderKLPH3Image]]
diffusers.AutoencoderKLPH3Image(in_channels: int = 3, out_channels: int = 3, latent_channels: int = 24, block_out_channels: tuple[int, ...] = (128, 256, 256, 512, 512, 1024), layers_per_block: int = 2, spatial_downsample_factors: tuple[int, ...] = (2, 2, 2, 2, 1, 1), temporal_downsample_factors: tuple[int, ...] = (1, 2, 2, 1, 1, 1), norm_num_groups: int = 32, norm_eps: float = 1e-06, spatial_padding_mode: str = 'reflect', decoder_num_layers: int = 36, decoder_num_attention_heads: int = 32, decoder_attention_head_dim: int = 64, decoder_num_register_tokens: int = 4, decoder_ffn_mult: int = 4, decoder_rope_theta: float = 100.0, decoder_rope_dim_ratio: float = 0.75, decoder_norm_eps: float = 1e-05, latents_mean: tuple[float, ...] = (0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0), latents_std: tuple[float, ...] = (1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0))
نموذج VAE للصور الخاص بـ P-H3-Image: مُشفِّر VAE ومساحة الكمون الخاصة بـ MiniMax-H3، مع PH3ImageViTDecoder يقوم بفك ترميز إطار كمون واحد.
تُمرَّر الصور كفيديوهات بإطار واحد، (batch_size, channels, 1, height, width). وكما في AutoencoderKLMiniMaxH3، تكون البكسلات بألوان RGB مُعايرة وفق ImageNet ضمن المدى [0, 1] (متوسط (0.485, 0.456, 0.406)، وانحراف معياري (0.229, 0.224, 0.225))، ويكون التقطيع المكاني مفعّلًا افتراضيًا.
ترميز[[diffusers.AutoencoderKLPH3Image.encode]]
encode(x: Tensor, return_dict: bool = True)
المعاملات:
x (torch.Tensor) : دفعة من الصور المدخلة كمقاطع فيديو بإطار واحد، الشكل (batch_size, in_channels, 1, height, width).
return_dict (bool، اختياري، الافتراضي True) : ما إذا كان يجب إرجاع AutoencoderKLOutput بدلاً من tuple عادي.
يعيد:
توزيع الكمون للصور المُرمّزة. لاحظ أن قيم الكمون تُطبَّع باستخدام latents_mean / latents_std بعد ذلك.
ترميز دفعة من الصور إلى كامنات.
فك الترميز[[diffusers.AutoencoderKLPH3Image.decode]]
decode(z: Tensor, return_dict: bool = True)
المعاملات:
z (torch.Tensor) : دفعة المدخلات من الكمونيات، الشكل (batch_size, latent_channels, 1, height, width).
return_dict (bool، اختياري، القيمة الافتراضية True) : ما إذا كان يجب إرجاع DecoderOutput بدلاً من tuple عادي.
يعيد: DecoderOutput أو tuple
الصور المُفكَّكة، الشكل (batch_size, out_channels, 1, height, width).
فكّ تشفير دفعة من الصور الكامنة.
enable_tiling[[diffusers.AutoencoderKLPH3Image.enable_tiling]]
enable_tiling(tile_sample_min_height: int | None = None, tile_sample_min_width: int | None = None, tile_sample_min_overlap_height: int | None = None, tile_sample_min_overlap_width: int | None = None)
المعاملات:
tile_sample_min_height (int, اختياري) : ارتفاع البلاطة في فضاء البكسلات. تُقسَّم الإطارات الأطول من هذا الارتفاع على طول بُعد الارتفاع.
tile_sample_min_width (int, اختياري) : عرض البلاطة في فضاء البكسلات. تُقسَّم الإطارات الأوسع من هذا العرض على طول بُعد العرض.
tile_sample_min_overlap_height (int، اختياري) : الحد الأدنى للتداخل، بالبكسل، بين بلاطتين عموديتين متتاليتين.
tile_sample_min_overlap_width (int، اختياري) : الحد الأدنى للتداخل، بالبكسل، بين بلاطتين أفقيتين متتاليتين.
تفعيل ترميز/فك ترميز VAE المُقسّم إلى بلاطات. عند تفعيل هذا الخيار، يقوم VAE بتقسيم الإطارات إلى بلاطات، ثم يرمّز أو يفكّ ترميز كل بلاطة على حدة، وبعدها يمزج التداخلات خطياً لإعادة تجميعها. يقلّل هذا من متطلبات الذاكرة ويتيح معالجة إطارات أكبر.
forward[[diffusers.AutoencoderKLPH3Image.forward]]
forward(sample: Tensor, sample_posterior: bool = False, generator: typing.Optional[torch.Generator] = None, return_dict: bool = True)
المعاملات:
sample (torch.Tensor) : دفعة من الصور المدخلة كمقاطع فيديو بإطار واحد، الشكل (batch_size, in_channels, 1, height, width).
sample_posterior (bool، اختياري، الافتراضي False) : ما إذا كان سيتم أخذ عينة من التوزيع اللاحق بدلاً من أخذ وضعه.
generator (torch.Generator، اختياري) : المولّد المستخدم عند sample_posterior=True.
return_dict (bool، اختياري، القيمة الافتراضية True) : ما إذا كان يجب إرجاع DecoderOutput بدلاً من tuple عادي.
يعيد: DecoderOutput أو tuple
الصور المُعاد إرسالها، الشكل (batch_size, out_channels, 1, height, width).
encode ثم decode دفعة من الصور.
Xet Storage Details
- Size:
- 8.86 kB
- Xet hash:
- 160e98be89b06dec8bd376f2c8e8fc3fd5f2115dc54e82cc0b55f393e7976b8c
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.