Diffusers documentation
FluxTransformer2DModel
FluxTransformer2DModel
نموذج Transformer لبيانات تشبه الصور من Flux.
FluxTransformer2DModel
فئة diffusers.FluxTransformer2DModel
< source >( patch_size: int = 1in_channels: int = 64out_channels: int | None = Nonenum_layers: int = 19num_single_layers: int = 38attention_head_dim: int = 128num_attention_heads: int = 24joint_attention_dim: int = 4096pooled_projection_dim: int = 768guidance_embeds: bool = Falseaxes_dims_rope: tuple = (16, 56, 56) )
المعاملات
- patch_size (
int، القيمة الافتراضية1) — حجم الباتش لتحويل البيانات المدخلة إلى باتشات صغيرة. - in_channels (
int)، القيمة الافتراضية64— عدد القنوات في المدخلات. - out_channels (
int، اختياري، القيمة الافتراضيةNone) — عدد القنوات في المخرجات. إذا لم يُحدد، تكون القيمة الافتراضيةin_channels. - num_layers (
int، القيمة الافتراضية19) — عدد طبقات كتل DiT ذات التدفق المزدوج التي سيتم استخدامها. - num_single_layers (
int، القيمة الافتراضية38) — عدد طبقات كتل DiT ذات التدفق الواحد التي سيتم استخدامها. - attention_head_dim (
int، القيمة الافتراضية128) — عدد الأبعاد المستخدمة لكل رأس انتباه. - num_attention_heads (
int، القيمة الافتراضية24) — عدد رؤوس الانتباه (attention heads) المستخدمة. - joint_attention_dim (
int، القيمة الافتراضية4096) — عدد الأبعاد المستخدمة للانتباه المشترك (بعد التضمين/القناة الخاص بـencoder_hidden_states). - pooled_projection_dim (
int، القيمة الافتراضية768) — عدد الأبعاد المستخدمة في الإسقاط المجمّع. - guidance_embeds (
bool، القيمة الافتراضيةFalse) — ما إذا كان سيتم استخدام تضمينات التوجيه (guidance embeddings) للنسخة المُقطَّرة بالتوجيه من النموذج. - axes_dims_rope (
tuple[int]، القيمة الافتراضية(16, 56, 56)) — الأبعاد المستخدمة للتضمينات الموضعية الدوارة.
نموذج Transformer الذي تم تقديمه في Flux.
مرجع: https://blackforestlabs.ai/announcing-black-forest-labs/
forward
< source >( hidden_states: Tensorencoder_hidden_states: Tensor = Nonepooled_projections: Tensor = Nonetimestep: LongTensor = Noneimg_ids: Tensor = Nonetxt_ids: Tensor = Noneguidance: Tensor = Nonejoint_attention_kwargs: dict[str, typing.Any] | None = Nonecontrolnet_block_samples = Nonecontrolnet_single_block_samples = Nonereturn_dict: bool = Truecontrolnet_blocks_repeat: bool = False )
المعاملات
- hidden_states (
torch.Tensorمن الشكل(batch_size, image_sequence_length, in_channels)) — مدخلاتhidden_states. - encoder_hidden_states (
torch.Tensorمن الشكل(batch_size, text_sequence_length, joint_attention_dim)) — تضمينات شرطية (تضمينات محسوبة من الشروط المدخلة مثل الأوامر النصية) للاستخدام. - pooled_projections (
torch.Tensorمن الشكل(batch_size, projection_dim)) — تمثيلات مُسقطَة من تمثيلات شروط الإدخال. - timestep (
torch.LongTensor) — يُستخدم للإشارة إلى خطوة إزالة الضوضاء. - img_ids (
torch.Tensor) — معرّفات مواضع الصور المستخدمة لحساب التضمينات الموضعية الدوارة. - txt_ids (
torch.Tensor) — معرّفات مواضع النص المستخدمة لحساب التضمينات الموضعية الدوارة. - guidance (
torch.Tensor، اختياري) — تضمين مقياس التوجيه المستخدم في النسخ المُقطّرة بالتوجيه من النموذج. - controlnet_block_samples (
listمنtorch.Tensor، اختياري) — قائمة من الموترات التي إذا تم تحديدها تُضاف إلى بقايا كتل التحوّل. - controlnet_single_block_samples (
listمنtorch.Tensor، اختياري) — قائمة من الموترات التي إذا تم تحديدها تُضاف إلى بقايا كتل التحوّل المفردة. - controlnet_blocks_repeat (
bool، اختياري، القيمة الافتراضيةFalse) — ما إذا كان يجب تكرار عينات كتل controlnet عبر جميع كتل transformer. - joint_attention_kwargs (
dict، اختياري) — قاموس kwargs يُمرَّر إلىAttentionProcessorكما هو معرَّف تحتself.processorفي diffusers.models.attention_processor إذا تمَّ تحديده. - return_dict (
bool، اختياري، القيمة الافتراضيةTrue) — ما إذا كان يجب إرجاع~models.transformer_2d.Transformer2DModelOutputبدلاً من tuple عادي.
طريقة FluxTransformer2DModel الأمامية.