Buckets:
Tiny AutoEncoder
طُرِح مُرمِّز-المُفكِّك التلقائي الصغير لاستقرار التوليد (TAESD) في madebyollin/taesd بواسطة أولين بوهر بوهان. وهو نسخة مصغّرة مُقطَّرة من VAE الخاص بـ Stable Diffusion، قادرة على فكّ ترميز الكمونيات في StableDiffusionPipeline أو StableDiffusionXLPipeline بسرعة فائقة.
للاستخدام مع Stable Diffusion v-2.1:
import torch
from diffusers import DiffusionPipeline, AutoencoderTiny
pipe = DiffusionPipeline.from_pretrained(
"stabilityai/stable-diffusion-2-1-base", dtype=torch.float16
)
pipe.vae = AutoencoderTiny.from_pretrained("madebyollin/taesd", dtype=torch.float16)
pipe = pipe.to("cuda") # or "mps", "xpu", "cpu"
prompt = "slice of delicious New York-style berry cheesecake"
image = pipe(prompt, num_inference_steps=25).images[0]
image
للاستخدام مع Stable Diffusion XL 1.0
import torch
from diffusers import DiffusionPipeline, AutoencoderTiny
pipe = DiffusionPipeline.from_pretrained(
"stabilityai/stable-diffusion-xl-base-1.0", dtype=torch.float16
)
pipe.vae = AutoencoderTiny.from_pretrained("madebyollin/taesdxl", dtype=torch.float16)
pipe = pipe.to("cuda") # or "mps", "xpu", "cpu"
prompt = "slice of delicious New York-style berry cheesecake"
image = pipe(prompt, num_inference_steps=25).images[0]
image
AutoencoderTiny[[diffusers.AutoencoderTiny]]
diffusers.AutoencoderTiny[[diffusers.AutoencoderTiny]]
diffusers.AutoencoderTiny(in_channels: int = 3, out_channels: int = 3, encoder_block_out_channels: tuple[int, ...] = (64, 64, 64, 64), decoder_block_out_channels: tuple[int, ...] = (64, 64, 64, 64), act_fn: str = 'relu', upsample_fn: str = 'nearest', latent_channels: int = 4, upsampling_scaling_factor: int = 2, num_encoder_blocks: tuple[int, ...] = (1, 3, 3, 3), num_decoder_blocks: tuple[int, ...] = (3, 3, 3, 1), latent_magnitude: int = 3, latent_shift: float = 0.5, force_upcast: bool = False, scaling_factor: float = 1.0, shift_factor: float = 0.0)
المعاملات:
in_channels (int، اختياري، القيمة الافتراضية 3) : عدد القنوات في الصورة المدخلة.
out_channels (int، اختياري، القيمة الافتراضية 3) : عدد القنوات في المخرجات.
encoder_block_out_channels (tuple[int]، اختياري، القيمة الافتراضية (64, 64, 64, 64)) : مجموعة من الأعداد الصحيحة تمثل عدد قنوات الإخراج لكل كتلة مشفّرة. يجب أن يكون طول المجموعة مساويًا لعدد الكتل المشفّرة.
decoder_block_out_channels (tuple[int]، اختياري، القيمة الافتراضية (64, 64, 64, 64)) : مجموعة من الأعداد الصحيحة تمثل عدد قنوات الإخراج لكل كتلة فك ترميز. يجب أن يكون طول المجموعة مساويًا لعدد كتل فك الترميز.
act_fn (str، اختياري، القيمة الافتراضية "relu") : دالة التنشيط المستخدمة في جميع أنحاء النموذج.
latent_channels (int، اختياري، القيمة الافتراضية 4) : عدد القنوات في التمثيل الكامن. يعمل الفضاء الكامن كتمثيل مضغوط للصورة المدخلة.
upsampling_scaling_factor (int، اختياري، القيمة الافتراضية 2) : معامل التوسيع في المُفكِّك. يحدد حجم الصورة الناتجة أثناء عملية التوسيع.
num_encoder_blocks (tuple[int]، اختياري، القيمة الافتراضية (1, 3, 3, 3)) : مجموعة من الأعداد الصحيحة تمثل عدد كتل المُشفِّر في كل مرحلة من مراحل عملية التشفير. يجب أن يكون طول المجموعة مساويًا لعدد المراحل في المُشفِّر. لكل مرحلة عدد مختلف من كتل المُشفِّر.
num_decoder_blocks (tuple[int]، اختياري، القيمة الافتراضية (3, 3, 3, 1)) : مجموعة من الأعداد الصحيحة تمثل عدد كتل فك الترميز في كل مرحلة من مراحل عملية فك الترميز. يجب أن يكون طول المجموعة مساويًا لعدد المراحل في فك الترميز. لكل مرحلة عدد مختلف من كتل فك الترميز.
latent_magnitude (float، اختياري، القيمة الافتراضية 3.0) : مقدار التمثيل الكامن. يقوم هذا المعامل بمقياس قيم التمثيل الكامن للتحكم في مدى الحفاظ على المعلومات.
latent_shift (float, اختياري, القيمة الافتراضية 0.5) : الإزاحة المطبّقة على التمثيل الكامن. يتحكم هذا المعامل في مركز الفضاء الكامن.
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. ومع ذلك، لم يُستخدم أي عامل تقريب من هذا النوع لهذا المُشفِّر-المفكِّك التلقائي، ومن هنا جاءت القيمة 1.0 كقيمة افتراضية.
force_upcast (bool، اختياري، الافتراضي False) : إذا تم تفعيله، سيُجبر هذا الخيار VAE على العمل بدقة float32 في خطوط الأنابيب ذات دقة الصور العالية، مثل SD-XL. يمكن ضبط VAE الدقيق / تدريبه على نطاق أدنى دون فقدان كبير في الدقة، وفي هذه الحالة يمكن تعيين force_upcast إلى False (انظر هذا AutoEncoder المتوافق مع fp16).
نموذج VAE مُصغَّر مُقطَّر لتشفير الصور إلى تمثيلات كامنة وفك تشفير التمثيلات الكامنة إلى صور.
AutoencoderTiny هو غلاف حول التنفيذ الأصلي لـ TAESD.
يرث هذا النموذج من ModelMixin. راجع توثيق الفئة الأصلية لمعرفة طرقها العامة المُنفَّذة لجميع النماذج (مثل التنزيل أو الحفظ).
forward[[diffusers.AutoencoderTiny.forward]]
forward(sample: Tensor, return_dict: bool = True)
المعاملات:
sample (torch.Tensor) : عينة الإدخال.
return_dict (bool، اختياري، الافتراضي True) : ما إذا كان يجب إرجاع DecoderOutput بدلاً من tuple عادي.
يعيد: DecoderOutput أو tuple
إذا كان return_dict صحيحًا، يُعاد DecoderOutput، وإلا يُعاد tuple عادي.
scale_latents[[diffusers.AutoencoderTiny.scale_latents]]
scale_latents(x: Tensor)
القيم الكامنة الخام -> [0, 1]
unscale_latents[[diffusers.AutoencoderTiny.unscale_latents]]
unscale_latents(x: Tensor)
[0, 1] -> الكامنات الخام
AutoencoderTinyOutput[[diffusers.models.autoencoders.autoencoder_tiny.AutoencoderTinyOutput]]
diffusers.models.autoencoders.autoencoder_tiny.AutoencoderTinyOutput[[diffusers.models.autoencoders.autoencoder_tiny.AutoencoderTinyOutput]]
diffusers.models.autoencoders.autoencoder_tiny.AutoencoderTinyOutput(latents: Tensor)
المعاملات:
latents (torch.Tensor) : المخرجات المُرمّزة من Encoder.
مخرجات طريقة الترميز encoding في AutoencoderTiny.
Xet Storage Details
- Size:
- 9.65 kB
- Xet hash:
- 6543ba74e6b27a7b32c79bfd356dc206430b2c0a911d951d27af6e41af9e055f
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.