Diffusers documentation
GlmImageTransformer2DModel
GlmImageTransformer2DModel
نموذج Diffusion Transformer للبيانات ثنائية الأبعاد من [GlmImageTransformer2DModel] (TODO).
GlmImageTransformer2DModel
فئة diffusers.GlmImageTransformer2DModel
< source >( patch_size: int = 2in_channels: int = 16out_channels: int = 16num_layers: int = 30attention_head_dim: int = 40num_attention_heads: int = 64text_embed_dim: int = 1472time_embed_dim: int = 512condition_dim: int = 256prior_vq_quantizer_codebook_size: int = 16384 )
المعاملات
- patch_size (
int، القيمة الافتراضية2) — حجم البقع المستخدمة في طبقة تضمين البقع. - in_channels (
int)، القيمة الافتراضية16— عدد القنوات في المدخلات. - num_layers (
int، القيمة الافتراضية30) — عدد طبقات كتل Transformer المستخدمة. - attention_head_dim (
int، القيمة الافتراضية40) — عدد القنوات في كل رأس. - num_attention_heads (
int، القيمة الافتراضية64) — عدد الرؤوس المستخدمة في الانتباه متعدد الرؤوس. - out_channels (
int، القيمة الافتراضية16) — عدد القنوات في المخرجات. - text_embed_dim (
int، القيمة الافتراضية1472) — البُعد المدخل لتضمينات النص من مُشفِّر النص. - time_embed_dim (
int، القيمة الافتراضية512) — البُعد الناتج لتضمينات خطوات الزمن. - condition_dim (
int، القيمة الافتراضية256) — أبعاد التضمين (embedding) لشروط الدقة بنمط SDXL المدخلة (original_size، target_size، crop_coords). - pos_embed_max_size (
int, القيمة الافتراضية128) — أقصى دقة للتضمينات الموضعية، حيث تُؤخذ منها مقاطع ذات الشكلH x Wوتُضاف إلى الكمونيات المُرقّعة المدخلة، حيثHوWهما ارتفاع وعرض الكمون على التوالي. تعني القيمة 128 أن أقصى ارتفاع وعرض مدعومين لتوليد الصور هو128 * vae_scale_factor * patch_size => 128 * 8 * 2 => 2048. - sample_size (
int، القيمة الافتراضية128) — الدقة الأساسية للكائنات الكامنة المدخلة. إذا لم يتم تقديم الارتفاع/العرض أثناء التوليد، تُستخدم هذه القيمة لتحديد الدقة على النحو التالي:sample_size * vae_scale_factor => 128 * 8 => 1024
forward
< source >( hidden_states: Tensorencoder_hidden_states: Tensorprior_token_id: Tensorprior_token_drop: Tensortimestep: LongTensortarget_size: Tensorcrop_coords: Tensorattention_kwargs: dict[str, typing.Any] | None = Nonereturn_dict: bool = Trueattention_mask: typing.Optional[torch.Tensor] = Nonekv_caches: diffusers.models.transformers.transformer_glm_image.GlmImageKVCache | None = Noneimage_rotary_emb: tuple[torch.Tensor, torch.Tensor] | list[tuple[torch.Tensor, torch.Tensor]] | None = None )
المعاملات
- hidden_states (
torch.Tensorمن الشكل(batch_size, in_channels, height, width)) — مدخلاتhidden_states. - encoder_hidden_states (
torch.Tensorمن الشكل(batch_size, sequence_len, embed_dims)) — تضمينات شرطية (تضمينات محسوبة من الشروط المدخلة مثل الأوامر النصية) للاستخدام. - prior_token_id (
torch.Tensor) — معرّفات الرموز (Token ids) للبحث في التضمين السابق. - prior_token_drop (
torch.Tensor) — قناع منطقي (Boolean mask) يُحدد أيّ من التضمينات السابقة يجب إسقاطها (تصفيرها). - timestep (
torch.LongTensor) — يُستخدم للإشارة إلى خطوة إزالة الضوضاء. - target_size (
torch.Tensor) — حجم الصورة المستهدفة للشروط. - crop_coords (
torch.Tensor) — إحداثيات القص الشرطية. - attention_kwargs (
dict، اختياري) — قاموس kwargs يُمرَّر إلىAttentionProcessorإذا تم تحديده، كما هو معرَّف تحتself.processorفي diffusers.models.attention_processor. - return_dict (
bool، اختياري، القيمة الافتراضيةTrue) — ما إذا كان يجب إرجاع~models.transformer_2d.Transformer2DModelOutputبدلاً من tuple عادي. - attention_mask (
torch.Tensor، اختياري) — قناع يُطبَّق على درجات الانتباه. - kv_caches (
GlmImageKVCache، اختياري) — مخازن مفاتيح/قيم محسوبة مسبقًا تُستخدم لتسريع الاستدلال. - image_rotary_emb (
tupleمنtorch.Tensor، اختياري) — تضمينات موضعية دوّارة محسوبة مسبقًا.
طريقة GlmImageTransformer2DModel الأمامية.