Transformers documentation

FLAVA

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v5.22.1).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

نُشر هذا النموذج في أوراق HF في 2021-12-08 وسُهم به في Hugging Face Transformers في 2022-05-11.

FLAVA

نظرة عامة

قُدِّم نموذج FLAVA في FLAVA: A Foundational Language And Vision Alignment Model بواسطة Amanpreet Singh وRonghang Hu وVedanuj Goswami وGuillaume Couairon وWojciech Galuba وMarcus Rohrbach وDouwe Kiela، وقد تم قبوله في مؤتمر CVPR 2022.

تهدف الورقة إلى إنشاء نموذج أساسي موحّد واحد يمكنه العمل عبر مهام الرؤية واللغة، وكذلك المهام متعددة الوسائط التي تجمع بين الرؤية واللغة.

المستخلص من الورقة البحثية هو كالتالي:

تعتمد نماذج الرؤية ونماذج الرؤية واللغة المتقدمة على التدريب المسبق على نطاق واسع على البيانات البصرية-اللغوية لتحقيق أداء جيد في مجموعة متنوعة من المهام الفرعية. بشكل عام، غالبًا ما تكون هذه النماذج إما عابرة للأبعاد (تباينية) أو متعددة الأبعاد (مع دمج مبكر) وليس كلاهما معًا؛ وغالبًا ما تستهدف أبعادًا أو مهام محددة فقط. سيكون اتجاهًا واعدًا استخدام نموذج شامل موحد واحد، بوصفه «أساسًا»، يستهدف جميع الأبعاد في آنٍ واحد — إذ ينبغي أن يكون نموذج الأساس الحقيقي للرؤية واللغة جيدًا في مهام الرؤية، ومهام اللغة، ومهام الرؤية واللغة العابرة ومتعددة الأبعاد. نقدم FLAVA كنموذج من هذا النوع، ونُظهر أداءً مثيرًا للإعجاب في نطاق واسع من 35 مهمة تغطي هذه الأبعاد المستهدفة.

تمت مساهمة هذا النموذج من قِبل aps. يمكن العثور على الكود الأصلي هنا.

FlavaConfig

فئة transformers.FlavaConfig

< >

( transformers_version: str | None = Nonearchitectures: list[str] | None = Noneoutput_hidden_states: bool | None = Falsereturn_dict: bool | None = Truedtype: str | torch.dtype | None = Nonechunk_size_feed_forward: int = 0is_encoder_decoder: bool = Falseid2label: dict[int, str] | dict[str, str] | None = Nonelabel2id: dict[str, int] | dict[str, str] | None = Noneproblem_type: Literal['regression', 'single_label_classification', 'multi_label_classification'] | None = Noneimage_config: dict[str, typing.Any] | transformers.configuration_utils.PreTrainedConfig | None = Nonetext_config: dict[str, typing.Any] | transformers.configuration_utils.PreTrainedConfig | None = Nonemultimodal_config: dict[str, typing.Any] | transformers.configuration_utils.PreTrainedConfig | None = Noneimage_codebook_config: dict[str, typing.Any] | transformers.configuration_utils.PreTrainedConfig | None = Nonehidden_size: int = 768layer_norm_eps: float = 1e-12projection_dim: int = 768init_codebook: bool = Truelogit_scale_init_value: float = 2.6592initializer_range: float = 0.02ce_ignore_index: int = -100mim_weight: float = 1.0mlm_weight: float = 1.0global_contrastive_weight: float = 1.0itm_weight: float = 1.0mmm_image_weight: float = 1.0mmm_text_weight: float = 1.0global_backprop_contrastive: bool = Trueskip_unmasked_multimodal_encoder: bool = Truereturn_loss: bool = Truetie_word_embeddings: bool = Trueinitializer_factor: float = 1.0 )

المعاملات

  • image_config (dict, اختياري) — قاموس لخيارات التهيئة المستخدمة في تهيئة FlavaImageConfig.
  • text_config (Union[dict[str, Any], ~configuration_utils.PreTrainedConfig]، اختياري) — كائن الإعداد أو قاموس العمود الفقري النصي.
  • multimodal_config (dict, اختياري) — قاموس لخيارات التهيئة المستخدمة في تهيئة FlavaMultimodalConfig.
  • image_codebook_config (dict, اختياري) — قاموس لخيارات التهيئة المستخدمة في تهيئة FlavaCodebookConfig.
  • hidden_size (int، اختياري، القيمة الافتراضية 768) — أبعاد التمثيلات المخفية.
  • layer_norm_eps (float, اختياري، القيمة الافتراضية 1e-12) — قيمة الإيبسلون المستخدمة في طبقات تطبيع الطبقة.
  • projection_dim (int، اختياري، القيمة الافتراضية 768) — أبعاد طبقات الإسقاط للنص والرؤية.
  • init_codebook (bool، اختياري، القيمة الافتراضية True) — ما إذا كان سيتم تهيئة كودبوك
  • logit_scale_init_value (float, اختياري، القيمة الافتراضية 2.6592) — القيمة الأولية لمعامل logit_scale. تُستخدم القيمة الافتراضية وفقاً للتنفيذ الأصلي لـ FLAVA/CLIP.
  • initializer_range (float، اختياري، القيمة الافتراضية 0.02) — الانحراف المعياري لـ truncated_normal_initializer المستخدم في تهيئة جميع مصفوفات الأوزان.
  • ce_ignore_index (int، اختياري، القيمة الافتراضية -100) — مؤشر إنتروبيا التبادلي الذي يجب تجاهله.
  • mim_weight (float, اختياري، القيمة الافتراضية 1.0) — الوزن الذي يُسند إلى خسارة MIM (نمذجة الصور المقنّعة) أحادية النمط
  • mlm_weight (float, اختياري، القيمة الافتراضية 1.0) — الوزن الذي يُسند إلى خسارة نمذجة اللغة المقنّعة (Masked Language Modeling) أحادية النمط
  • global_contrastive_weight (float، اختياري، القيمة الافتراضية 1.0) — الوزن المُسند إلى خسارة المحاذاة التباينية المتقاطعة العالمية.
  • itm_weight (float، اختياري، القيمة الافتراضية 1.0) — الوزن الذي يُسند إلى خسارة التطابق متعددة الوسائط بين الصورة والنص.
  • mmm_image_weight (float، اختياري، القيمة الافتراضية 1.0) — الوزن الذي يُسند إلى الجزء الخاص بالصور في دالة خسارة MMM.
  • mmm_text_weight (float, اختياري، القيمة الافتراضية 1.0) — الوزن الذي يُسند إلى الجزء النصي من دالة فقد MMM.
  • global_backprop_contrastive (bool، اختياري، القيمة الافتراضية True) — ما إذا كان سيتم استخدام التراجع العالمي (backpropagation) عبر جميع العمال في خسارة التباين (contrastive loss).
  • skip_unmasked_multimodal_encoder (bool، اختياري، القيمة الافتراضية True) — ما إذا كان سيتم تجاوز تشغيل مُشفِّر الوسائط المتعددة غير المقنّع الذي لا تُستخدم مخرجاته في خسائر FLAVA.
  • return_loss (bool، اختياري، القيمة الافتراضية True) — ما إذا كان يجب إرجاع الخسارة أم لا
  • tie_word_embeddings (bool، اختياري، القيمة الافتراضية True) — ما إذا كان يجب ربط ترميزات الأوزان (weight embeddings) وفقاً لخريطة tied_weights_keys الخاصة بالنموذج.
  • initializer_factor (float، اختياري، القيمة الافتراضية 1.0) — عامل لتجميع جميع مصفوفات الأوزان (يجب إبقاؤه عند 1، ويُستخدم داخليًا لاختبارات التهيئة).

هذه فئة الإعدادات المخزنة لإعدادات نموذج FlavaModel. تُستخدم لتوليد نموذج Flava وفقاً للحجج المحددة، مع تعريف بنية النموذج. إن إنشاء إعدادات باستخدام القيم الافتراضية سيؤدي إلى الحصول على إعدادات مشابهة لتلك الخاصة بـ facebook/flava-full

ترث كائنات التهيئة من PreTrainedConfig ويمكن استخدامها للتحكم في مخرجات النموذج. اقرأ التوثيق الخاص بـ PreTrainedConfig لمزيد من المعلومات.

مثال:

>>> from transformers import FlavaConfig, FlavaModel, FlavaForPreTraining

>>> # Initializing a FlavaConfig with style configuration
>>> configuration = FlavaConfig()

>>> # Initializing a FlavaModel and FlavaForPreTraining model (with random weights) from the style configuration
>>> model = FlavaModel(configuration)
>>> model_pre = FlavaForPreTraining(configuration)

>>> # Accessing the model configuration
>>> configuration = model.config
>>> configuration_pre = model_pre.config

FlavaTextConfig

فئة transformers.FlavaTextConfig

< >

( transformers_version: str | None = Nonearchitectures: list[str] | None = Noneoutput_hidden_states: bool | None = Falsereturn_dict: bool | None = Truedtype: str | torch.dtype | None = Nonechunk_size_feed_forward: int = 0is_encoder_decoder: bool = Falseid2label: dict[int, str] | dict[str, str] | None = Nonelabel2id: dict[str, int] | dict[str, str] | None = Noneproblem_type: Literal['regression', 'single_label_classification', 'multi_label_classification'] | None = Nonevocab_size: int = 30522type_vocab_size: int = 2max_position_embeddings: int = 512hidden_size: int = 768num_hidden_layers: int = 12num_attention_heads: int = 12intermediate_size: int = 3072hidden_act: str = 'gelu'hidden_dropout_prob: float | int = 0.0attention_probs_dropout_prob: float | int = 0.0initializer_range: float = 0.02layer_norm_eps: float = 1e-12pad_token_id: int | None = 0qkv_bias: bool = True )

المعاملات

  • vocab_size (int، اختياري، القيمة الافتراضية 30522) — حجم مفردات النموذج. يحدد عدد الرموز المختلفة التي يمكن تمثيلها بواسطة input_ids.
  • type_vocab_size (int، اختياري، القيمة الافتراضية 2) — حجم مفردات token_type_ids.
  • max_position_embeddings (int، اختياري، القيمة الافتراضية 512) — أقصى طول تسلسل قد يُستخدم مع هذا النموذج.
  • hidden_size (int، اختياري، القيمة الافتراضية 768) — أبعاد التمثيلات المخفية.
  • num_hidden_layers (int، اختياري، القيمة الافتراضية 12) — عدد الطبقات المخفية في مُفكِّك Transformer.
  • num_attention_heads (int، اختياري، القيمة الافتراضية 12) — عدد رؤوس الانتباه لكل طبقة انتباه في مُفكِّك Transformer.
  • intermediate_size (int، اختياري، القيمة الافتراضية 3072) — أبعاد تمثيلات MLP.
  • hidden_act (str، اختياري، القيمة الافتراضية gelu) — دالة التنشيط غير الخطية (دالة أو نص) في المُفكِّك. على سبيل المثال، "gelu"، "relu"، "silu"، وما إلى ذلك.
  • hidden_dropout_prob (Union[float, int]، اختياري، القيمة الافتراضية 0.0) — احتمالية الإسقاط (dropout) لجميع الطبقات المتصلة بالكامل في التضمينات، والمُشفِّر، والمُجمِّع.
  • attention_probs_dropout_prob (Union[float, int]، اختياري، القيمة الافتراضية 0.0) — نسبة الإسقاط (dropout) لاحتمالات الانتباه.
  • initializer_range (float، اختياري، القيمة الافتراضية 0.02) — الانحراف المعياري لـ truncated_normal_initializer المستخدم في تهيئة جميع مصفوفات الأوزان.
  • layer_norm_eps (float, اختياري، القيمة الافتراضية 1e-12) — قيمة الإيبسلون المستخدمة في طبقات تطبيع الطبقة.
  • pad_token_id (int، اختياري، القيمة الافتراضية 0) — معرّف الرمز المستخدم للتعبئة في المفردات.
  • qkv_bias (bool، اختياري، القيمة الافتراضية True) — ما إذا كان يجب إضافة انحياز إلى الاستعلامات والمفاتيح والقيم.

هذه فئة الإعدادات المخزنة لإعدادات نموذج FlavaModel. تُستخدم لتوليد نموذج Flava وفقاً للحجج المحددة، مع تعريف بنية النموذج. إن إنشاء إعدادات باستخدام القيم الافتراضية سيؤدي إلى الحصول على إعدادات مشابهة لتلك الخاصة بـ facebook/flava-full

ترث كائنات التهيئة من PreTrainedConfig ويمكن استخدامها للتحكم في مخرجات النموذج. اقرأ التوثيق الخاص بـ PreTrainedConfig لمزيد من المعلومات.

مثال:

>>> from transformers import FlavaTextConfig, FlavaTextModel

>>> # Initializing a FlavaTextModel with  style configuration
>>> configuration = FlavaTextConfig()

>>> # Initializing a FlavaTextModel model (with random weights) from the style configuration
>>> model = FlavaTextModel(configuration)

>>> # Accessing the model configuration
>>> configuration = model.config

FlavaImageConfig

فئة transformers.FlavaImageConfig

< >

( transformers_version: str | None = Nonearchitectures: list[str] | None = Noneoutput_hidden_states: bool | None = Falsereturn_dict: bool | None = Truedtype: str | torch.dtype | None = Nonechunk_size_feed_forward: int = 0is_encoder_decoder: bool = Falseid2label: dict[int, str] | dict[str, str] | None = Nonelabel2id: dict[str, int] | dict[str, str] | None = Noneproblem_type: Literal['regression', 'single_label_classification', 'multi_label_classification'] | None = Nonehidden_size: int = 768num_hidden_layers: int = 12num_attention_heads: int = 12intermediate_size: int = 3072hidden_act: str = 'gelu'hidden_dropout_prob: float | int = 0.0attention_probs_dropout_prob: float | int = 0.0initializer_range: float = 0.02layer_norm_eps: float = 1e-12image_size: int | list[int] | tuple[int, int] = 224patch_size: int | list[int] | tuple[int, int] = 16num_channels: int = 3qkv_bias: bool = Truemask_token: bool = Truevocab_size: int = 8192 )

المعاملات

  • hidden_size (int، اختياري، القيمة الافتراضية 768) — أبعاد التمثيلات المخفية.
  • num_hidden_layers (int، اختياري، القيمة الافتراضية 12) — عدد الطبقات المخفية في مُفكِّك Transformer.
  • num_attention_heads (int، اختياري، القيمة الافتراضية 12) — عدد رؤوس الانتباه لكل طبقة انتباه في مُفكِّك Transformer.
  • intermediate_size (int، اختياري، القيمة الافتراضية 3072) — أبعاد تمثيلات MLP.
  • hidden_act (str، اختياري، القيمة الافتراضية gelu) — دالة التنشيط غير الخطية (دالة أو نص) في المُفكِّك. على سبيل المثال، "gelu"، "relu"، "silu"، وما إلى ذلك.
  • hidden_dropout_prob (Union[float, int]، اختياري، القيمة الافتراضية 0.0) — احتمالية الإسقاط (dropout) لجميع الطبقات المتصلة بالكامل في التضمينات، والمُشفِّر، والمُجمِّع.
  • attention_probs_dropout_prob (Union[float, int]، اختياري، القيمة الافتراضية 0.0) — نسبة الإسقاط (dropout) لاحتمالات الانتباه.
  • initializer_range (float، اختياري، القيمة الافتراضية 0.02) — الانحراف المعياري لـ truncated_normal_initializer المستخدم في تهيئة جميع مصفوفات الأوزان.
  • layer_norm_eps (float, اختياري، القيمة الافتراضية 1e-12) — قيمة الإيبسلون المستخدمة في طبقات تطبيع الطبقة.
  • image_size (Union[int, list[int], tuple[int, int]]، اختياري، القيمة الافتراضية 224) — الحجم (الدقة) لكل صورة.
  • patch_size (Union[int, list[int], tuple[int, int]]، اختياري، القيمة الافتراضية 16) — حجم (دقة) كل رقعة.
  • num_channels (int، اختياري، القيمة الافتراضية 3) — عدد قنوات الإدخال.
  • qkv_bias (bool، اختياري، القيمة الافتراضية True) — ما إذا كان يجب إضافة انحياز إلى الاستعلامات والمفاتيح والقيم.
  • mask_token (bool، اختياري، القيمة الافتراضية True) — ما إذا كان سيتم استخدام رمز القناع أم لا. يُستخدم في خسارة MIM (نمذجة الصورة المقنّعة) في FLAVA.
  • vocab_size (int، اختياري، القيمة الافتراضية 8192) — حجم مفردات النموذج. يحدد عدد الرموز المختلفة التي يمكن تمثيلها بواسطة input_ids.

هذه فئة الإعدادات المخزنة لإعدادات نموذج FlavaModel. تُستخدم لتوليد نموذج Flava وفقاً للحجج المحددة، مع تعريف بنية النموذج. إن إنشاء إعدادات باستخدام القيم الافتراضية سيؤدي إلى الحصول على إعدادات مشابهة لتلك الخاصة بـ facebook/flava-full

ترث كائنات التهيئة من PreTrainedConfig ويمكن استخدامها للتحكم في مخرجات النموذج. اقرأ التوثيق الخاص بـ PreTrainedConfig لمزيد من المعلومات.

مثال:

>>> from transformers import FlavaImageConfig, FlavaImageModel

>>> # Initializing a FlavaImageModel with  style configuration
>>> configuration = FlavaImageConfig()

>>> # Initializing a FlavaImageModel model (with random weights) from the style configuration
>>> model = FlavaImageModel(configuration)

>>> # Accessing the model configuration
>>> configuration = model.config

FlavaMultimodalConfig

فئة transformers.FlavaMultimodalConfig

< >

( transformers_version: str | None = Nonearchitectures: list[str] | None = Noneoutput_hidden_states: bool | None = Falsereturn_dict: bool | None = Truedtype: str | torch.dtype | None = Nonechunk_size_feed_forward: int = 0is_encoder_decoder: bool = Falseid2label: dict[int, str] | dict[str, str] | None = Nonelabel2id: dict[str, int] | dict[str, str] | None = Noneproblem_type: Literal['regression', 'single_label_classification', 'multi_label_classification'] | None = Nonehidden_size: int = 768num_hidden_layers: int = 6num_attention_heads: int = 12intermediate_size: int = 3072hidden_act: str = 'gelu'hidden_dropout_prob: float | int = 0.0attention_probs_dropout_prob: float | int = 0.0initializer_range: float = 0.02layer_norm_eps: float = 1e-12qkv_bias: bool = Trueuse_cls_token: bool = True )

المعاملات

  • hidden_size (int، اختياري، القيمة الافتراضية 768) — أبعاد التمثيلات المخفية.
  • num_hidden_layers (int، اختياري، القيمة الافتراضية 6) — عدد الطبقات المخفية في مُفكِّك Transformer.
  • num_attention_heads (int، اختياري، القيمة الافتراضية 12) — عدد رؤوس الانتباه لكل طبقة انتباه في مُفكِّك Transformer.
  • intermediate_size (int، اختياري، القيمة الافتراضية 3072) — أبعاد تمثيلات MLP.
  • hidden_act (str، اختياري، القيمة الافتراضية gelu) — دالة التنشيط غير الخطية (دالة أو نص) في المُفكِّك. على سبيل المثال، "gelu"، "relu"، "silu"، وما إلى ذلك.
  • hidden_dropout_prob (Union[float, int]، اختياري، القيمة الافتراضية 0.0) — احتمالية الإسقاط (dropout) لجميع الطبقات المتصلة بالكامل في التضمينات، والمُشفِّر، والمُجمِّع.
  • attention_probs_dropout_prob (Union[float, int]، اختياري، القيمة الافتراضية 0.0) — نسبة الإسقاط (dropout) لاحتمالات الانتباه.
  • initializer_range (float، اختياري، القيمة الافتراضية 0.02) — الانحراف المعياري لـ truncated_normal_initializer المستخدم في تهيئة جميع مصفوفات الأوزان.
  • layer_norm_eps (float, اختياري، القيمة الافتراضية 1e-12) — قيمة الإيبسلون المستخدمة في طبقات تطبيع الطبقة.
  • qkv_bias (bool، اختياري، القيمة الافتراضية True) — ما إذا كان يجب إضافة انحياز إلى الاستعلامات والمفاتيح والقيم.
  • use_cls_token (bool، اختياري، القيمة الافتراضية True) — ما إذا كان يجب استخدام رمز CLS إضافي للإعدادات متعددة الوسائط. عادةً ما يكون مطلوبًا في نموذج FLAVA.

هذه فئة الإعدادات المخزنة لإعدادات نموذج FlavaModel. تُستخدم لتوليد نموذج Flava وفقاً للحجج المحددة، مع تعريف بنية النموذج. إن إنشاء إعدادات باستخدام القيم الافتراضية سيؤدي إلى الحصول على إعدادات مشابهة لتلك الخاصة بـ facebook/flava-full

ترث كائنات التهيئة من PreTrainedConfig ويمكن استخدامها للتحكم في مخرجات النموذج. اقرأ التوثيق الخاص بـ PreTrainedConfig لمزيد من المعلومات.

مثال:

>>> from transformers import FlavaMultimodalConfig, FlavaMultimodalModel

>>> # Initializing a FlavaMultimodalModel with  style configuration
>>> configuration = FlavaMultimodalConfig()

>>> # Initializing a FlavaMultimodalModel model (with random weights) from the style configuration
>>> model = FlavaMultimodalModel(configuration)

>>> # Accessing the model configuration
>>> configuration = model.config

FlavaImageCodebookConfig

فئة transformers.FlavaImageCodebookConfig

< >

( transformers_version: str | None = Nonearchitectures: list[str] | None = Noneoutput_hidden_states: bool | None = Falsereturn_dict: bool | None = Truedtype: str | torch.dtype | None = Nonechunk_size_feed_forward: int = 0is_encoder_decoder: bool = Falseid2label: dict[int, str] | dict[str, str] | None = Nonelabel2id: dict[str, int] | dict[str, str] | None = Noneproblem_type: Literal['regression', 'single_label_classification', 'multi_label_classification'] | None = Nonenum_groups: int = 4input_channels: int = 3num_blocks_per_group: int = 2hidden_size: int = 256vocab_size: int = 8192freeze: bool = Trueinitializer_range: float = 0.02 )

المعاملات

  • num_groups (int، اختياري، القيمة الافتراضية 4) — عدد المجموعات التي سيتم إنشاؤها. لا يؤثر هذا المعامل على النموذج حتى الآن، ويُستخدم لبعض الحسابات والتقدير الداخلي.
  • input_channels (int، اختياري، القيمة الافتراضية 3) — عدد قنوات الإدخال.
  • num_blocks_per_group (int، اختياري، القيمة الافتراضية 2) — عدد الكتل المعتمدة على الالتفاف في كل مجموعة.
  • hidden_size (int، اختياري، القيمة الافتراضية 256) — أبعاد التمثيلات المخفية.
  • vocab_size (int، اختياري، القيمة الافتراضية 8192) — حجم مفردات النموذج. يحدد عدد الرموز المختلفة التي يمكن تمثيلها بواسطة input_ids.
  • freeze (bool، القيمة الافتراضية True) — ما إذا كان سيتم تجميد أوزان النموذج.
  • initializer_range (float، اختياري، القيمة الافتراضية 0.02) — الانحراف المعياري لـ truncated_normal_initializer المستخدم في تهيئة جميع مصفوفات الأوزان.

هذه فئة الإعدادات المخزنة لإعدادات نموذج FlavaModel. تُستخدم لتوليد نموذج Flava وفقاً للحجج المحددة، مع تعريف بنية النموذج. إن إنشاء إعدادات باستخدام القيم الافتراضية سيؤدي إلى الحصول على إعدادات مشابهة لتلك الخاصة بـ facebook/flava-full

ترث كائنات التهيئة من PreTrainedConfig ويمكن استخدامها للتحكم في مخرجات النموذج. اقرأ التوثيق الخاص بـ PreTrainedConfig لمزيد من المعلومات.

مثال:

>>> from transformers import FlavaImageCodebookConfig, FlavaImageCodebook

>>> # Initializing a FlavaImageCodebook with style configuration
>>> configuration = FlavaImageCodebookConfig()

>>> # Initializing a FlavaImageCodebook model (with random weights) from the style configuration
>>> model = FlavaImageCodebook(configuration)
>>> # Accessing the model configuration
>>> configuration = model.config

FlavaProcessor

فئة transformers.FlavaProcessor

< >

( image_processor = Nonetokenizer = None**kwargs )

المعاملات

  • image_processor (FlavaImageProcessor) — معالج الصور هو مدخل إلزامي.
  • tokenizer (BertTokenizer) — مُجزِّئ الرموز هو مدخل إلزامي.

ينشئ FlavaProcessor الذي يجمع معالج الصور ومعالج الرموز في معالج واحد.

يوفر FlavaProcessor جميع وظائف FlavaImageProcessor وBertTokenizer. راجع ~FlavaImageProcessor و~BertTokenizer لمزيد من المعلومات.

__call__

< >

( images: typing.Union[ForwardRef('PIL.Image.Image'), numpy.ndarray, ForwardRef('torch.Tensor'), list['PIL.Image.Image'], list[numpy.ndarray], list['torch.Tensor'], NoneType] = Nonetext: str | list[str] | list[list[str]] | None = Nonevideos: typing.Union[list['PIL.Image.Image'], numpy.ndarray, ForwardRef('torch.Tensor'), list[numpy.ndarray], list['torch.Tensor'], list[list['PIL.Image.Image']], list[list[numpy.ndarray]], list[list['torch.Tensor']], transformers.video_utils.URL, list[transformers.video_utils.URL], list[list[transformers.video_utils.URL]], transformers.video_utils.Path, list[transformers.video_utils.Path], list[list[transformers.video_utils.Path]], NoneType] = Noneaudio: typing.Union[numpy.ndarray, ForwardRef('torch.Tensor'), collections.abc.Sequence[numpy.ndarray], collections.abc.Sequence['torch.Tensor'], NoneType] = None**kwargs: *<class 'transformers.processing_utils.ProcessingKwargs'> )

المعاملات

  • images (Union[PIL.Image.Image, numpy.ndarray, torch.Tensor, list[PIL.Image.Image], list[numpy.ndarray], list[torch.Tensor]], اختياري) — الصورة التي سيتم معالجتها مسبقًا. يتوقع صورة واحدة أو دفعة من الصور بقيم بكسل تتراوح بين 0 و255. إذا كنت تمرر صورًا بقيم بكسل بين 0 و1، فاضبط do_rescale=False.
  • text (Union[str, list[str], list[list[str]]]، اختياري) — التسلسل أو الدفعة من التسلسلات المراد ترميزها. يمكن أن يكون كل تسلسل نصاً أو قائمة من النصوص (نص مُقسَّم مسبقاً إلى رموز). إذا مرّرت مدخلاً مُقسَّماً مسبقاً إلى رموز، فعيّن is_split_into_words=True لتجنّب الغموض مع المدخلات المُجمَّعة في دفعات.
  • videos (Union[list[PIL.Image.Image], numpy.ndarray, torch.Tensor, list[numpy.ndarray], list[torch.Tensor], list[list[PIL.Image.Image]], list[list[numpy.ndarray]], list[list[torch.Tensor]], ~video_utils.URL, list[~video_utils.URL], list[list[~video_utils.URL]], ~video_utils.Path, list[~video_utils.Path], list[list[~video_utils.Path]]]، اختياري) — فيديو يُراد معالجته مسبقًا. يتوقع فيديو واحدًا أو دفعة من الفيديوهات بقيم بكسل تتراوح بين 0 و255. إذا كنت تمرر فيديوهات بقيم بكسل بين 0 و1، فاضبط do_rescale=False.
  • audio (Union[numpy.ndarray, torch.Tensor, collections.abc.Sequence[numpy.ndarray], collections.abc.Sequence[torch.Tensor]], اختياري) — الصوت أو مجموعة الأصوات التي سيتم تجهيزها. يمكن أن يكون كل صوت مصفوفة NumPy أو متجه PyTorch. في حالة استخدام مصفوفة NumPy أو متجه PyTorch، يجب أن يكون شكل كل صوت (C, T)، حيث C هو عدد القنوات، وT هو طول العينة للصوت.
  • return_tensors (str أو TensorType, اختياري) — إذا تم تعيينه، فسيُعاد تينسورات من إطار عمل محدد. القيم المقبولة هي:
    • 'pt': إرجاع كائنات torch.Tensor من PyTorch.
    • 'np': إرجاع كائنات np.ndarray من NumPy.
  • **kwargs (ProcessingKwargs، اختياري) — خيارات معالجة إضافية لكل نمط (نص، صور، مقاطع فيديو، صوت). تُدرج المعلمات الخاصة بالنموذج أعلاه؛ راجع فئة TypedDict للحصول على القائمة الكاملة للحجج المدعومة.

FlavaImageProcessor

فئة transformers.FlavaImageProcessor

< >

( **kwargs: *<class 'transformers.models.flava.image_processing_flava.FlavaImageProcessorKwargs'> )

المعاملات

  • do_convert_rgb (bool، kwargs، اختياري) — ما إذا كان يجب تحويل الصورة إلى RGB.
  • do_resize (bool، kwargs، اختياري، القيمة الافتراضية True) — ما إذا كان يجب تغيير حجم الصورة.
  • size (Annotated[int | list[int] | tuple[int, ...] | dict[str, int] | None, None]، kwargs، القيمة الافتراضية {'height' -- 224, 'width': 224}): يصف الأبعاد القصوى للمدخلات إلى النموذج.
  • default_to_square (bool، kwargs، اختياري، القيمة الافتراضية True) — ما إذا كان يجب افتراض صورة مربعة عند تغيير الحجم، إذا كانت قيمة size من نوع int.
  • crop_size (Annotated[int | list[int] | tuple[int, ...] | dict[str, int] | None, None]، kwargs، القيمة الافتراضية {'height' -- 224, 'width': 224}): حجم الصورة الناتجة بعد تطبيق center_crop.
  • resample (Annotated[Union[int, PILImageResampling, NoneType], None]، kwargs، القيمة الافتراضية 3) — مرشح إعادة العينة المستخدم عند تغيير حجم الصورة. يمكن أن يكون أحد قيم enum PILImageResampling. لا يؤثر إلا إذا كانت قيمة do_resize هي True.
  • do_rescale (bool، kwargs، اختياري، القيمة الافتراضية True) — ما إذا كان يجب إعادة تحجيم الصورة.
  • rescale_factor (float، kwargs، اختياري، القيمة الافتراضية 0.00392156862745098) — عامل إعادة التحجيم لإعادة تحجيم الصورة إذا كان do_rescale مضبوطًا على True.
  • do_normalize (bool، kwargs، اختياري، القيمة الافتراضية True) — ما إذا كان سيتم تطبيع الصورة.
  • image_mean (Union[float, list[float], tuple[float, ...]]، kwargs، اختياري، القيمة الافتراضية [0.48145466, 0.4578275, 0.40821073]) — متوسط الصورة المستخدم للتطبيع. لا يكون له أي تأثير إلا إذا تم ضبط do_normalize على True.
  • image_std (Union[float, list[float], tuple[float, ...]]، kwargs، اختياري، القيمة الافتراضية [0.26862954, 0.26130258, 0.27577711]) — الانحراف المعياري للصورة المستخدم للتطبيع. لا يكون له تأثير إلا إذا تم تعيين do_normalize إلى True.
  • do_pad (bool، kwargs، اختياري) — ما إذا كان سيتم توسيط الصورة. يتم التوسيط إما إلى أكبر حجم في الدفعة أو إلى حجم مربع ثابت لكل صورة. تعتمد استراتيجية التوسيط الدقيقة على النموذج.
  • pad_size (Annotated[int | list[int] | tuple[int, ...] | dict[str, int] | None, None], kwargs) — الحجم على شكل {"height": int, "width" int} الذي يجب توسيد الصور إليه. يجب أن يكون أكبر من أي حجم صورة مُقدَّم للمعالجة المسبقة. إذا لم يُقدَّم pad_size، فسيتم توسيد الصور إلى أكبر ارتفاع وعرض في الدفعة. يُطبَّق فقط عندما يكون do_pad=True.
  • do_center_crop (bool، kwargs، اختياري، القيمة الافتراضية True) — ما إذا كان سيتم قص الصورة من المنتصف.
  • data_format (Union[str, ~image_utils.ChannelDimension]، kwargs، اختياري) — يُؤمَّن دعم ChannelDimension.FIRST فقط. أُضيف من أجل التوافق مع المعالجات البطيئة.
  • input_data_format (Union[str, ~image_utils.ChannelDimension], kwargs, اختياري) — تنسيق بُعد القناة للصورة المدخلة. إذا لم يُضبط، يُستنتج تنسيق بُعد القناة من الصورة المدخلة. يمكن أن يكون أحد ما يلي:
    • "channels_first" أو ChannelDimension.FIRST: صورة بتنسيق (num_channels, height, width).
    • "channels_last" أو ChannelDimension.LAST: صورة بصيغة (الارتفاع، العرض، عدد القنوات).
    • "none" أو ChannelDimension.NONE: صورة بصيغة (الارتفاع، العرض).
  • device (Annotated[Union[str, torch.device, NoneType], None], kwargs) — الجهاز الذي تتم عليه معالجة مقاطع الفيديو. إذا لم يتم تعيينه، يُستنتج الجهاز من مقاطع الفيديو المدخلة.
  • return_tensors (Annotated[str | ~utils.generic.TensorType | None, None], kwargs) — تُرجع تينسورات مكدّسة إذا تم ضبطها على 'pt'، وإلا تُرجع قائمة من التينسورات.
  • disable_grouping (bool، kwargs، اختياري) — ما إذا كان سيتم تعطيل تجميع الصور حسب الحجم لمعالجتها بشكل فردي بدلاً من دفعات. إذا كانت القيمة None، فسيتم تعيينها إلى True إذا كانت الصور على وحدة المعالجة المركزية (CPU)، وإلا فستكون False. تستند هذه الخيارات إلى ملاحظات تجريبية، كما هو موضح هنا: https://github.com/huggingface/transformers/pull/38157
  • image_seq_length (int، kwargs، اختياري) — عدد رموز الصورة التي سيتم استخدامها لكل صورة في المدخلات. تمت إضافته من أجل التوافق مع الإصدارات السابقة، لكن ينبغي ضبطه كخاصية للمعالج في النماذج المستقبلية.
  • return_image_mask (bool، kwargs، اختياري، القيمة الافتراضية False) — ما إذا كان يجب إرجاع قناع الصورة. يمكن تجاوز ذلك عبر معامل return_image_mask في preprocess.
  • input_size_patches (int، kwargs، اختياري، القيمة الافتراضية 14) — عدد البقع في الصورة في اتجاه الارتفاع والعرض. 14x14 = 196 بقعةً إجمالاً. يمكن تجاوز هذه القيمة بواسطة معامل input_size_patches في preprocess.
  • total_mask_patches (int، kwargs، اختياري، القيمة الافتراضية 75) — إجمالي عدد البقع التي يجب إخفاؤها. يمكن تجاوزها بواسطة معامل total_mask_patches في preprocess.
  • mask_group_min_patches (int، kwargs، اختياري، القيمة الافتراضية 16) — الحد الأدنى لعدد البقع التي يجب إخفاؤها. يمكن تجاوزها بواسطة معامل mask_group_min_patches في preprocess.
  • mask_group_max_patches (int، kwargs، اختياري) — الحد الأقصى لعدد البقع التي يجب إخفاؤها. يمكن تجاوز هذا الإعداد عبر معامل mask_group_max_patches في preprocess.
  • mask_group_min_aspect_ratio (float، kwargs، اختياري، القيمة الافتراضية 0.3) — أدنى نسبة عرض إلى ارتفاع لنقطة القناع. يمكن تجاوزها بواسطة معامل mask_group_min_aspect_ratio في preprocess.
  • mask_group_max_aspect_ratio (float، kwargs، اختياري) — النسبة القصوى بين العرض والارتفاع (Aspect Ratio) لنقطة القناع. يمكن تجاوزها بواسطة معامل mask_group_max_aspect_ratio في preprocess.
  • return_codebook_pixels (bool، kwargs، اختياري، القيمة الافتراضية False) — ما إذا كان يجب إرجاع قيم بكسلات كودبوك.
  • codebook_do_resize (bool، kwargs، اختياري، القيمة الافتراضية True) — ما إذا كان يجب تغيير حجم المدخلات الخاصة بـ codebook إلى حجم معين. يمكن تجاوز ذلك عبر معامل codebook_do_resize في preprocess. codebook_size.
  • codebook_size (dict[str, *kwargs*, int]، اختياري، القيمة الافتراضية {"height" -- 224, "width": 224}): تغيير حجم المدخلات الخاصة بـ codebook إلى الحجم المحدد. يمكن تجاوز ذلك عبر معامل codebook_size في preprocess.
  • codebook_resample (PILImageResampling، kwargs، اختياري، القيمة الافتراضية PILImageResampling.LANCZOS) — مرشّح إعادة العيّنة (Resampling filter) المستخدم عند تغيير حجم صورة الكودبوك. مع torchvision < 0.27، لا يُدعم LANCZOS لمصفوفات torch، لذا يُستخدم BICUBIC كبديل أقرب. يمكن تجاوز هذا الإعداد عبر معامل codebook_resample في preprocess.
  • codebook_do_center_crop (bool، kwargs، اختياري، القيمة الافتراضية True) — ما إذا كان يجب قصّ المدخلات الخاصة بـ codebook من المنتصف. إذا كانت أبعاد المدخلات أصغر من codebook_crop_size على أي حافة، يتم ملء الصورة بأصفار ثم قصّها من المنتصف. يمكن تجاوز ذلك عبر معامل codebook_do_center_crop في preprocess.
  • codebook_crop_size (dict[str, *kwargs*, int]، اختياري، القيمة الافتراضية {"height" -- 224, "width": 224}): الحجم المطلوب للمخرجات الخاصة بمدخلات codebook عند تطبيق القص من المنتصف. يمكن تجاوز هذا الحجم عبر معامل codebook_crop_size في preprocess.
  • codebook_do_rescale (bool، kwargs، اختياري، القيمة الافتراضية True) — ما إذا كان يجب إعادة تحجيم المدخلات الخاصة بـ codebook باستخدام معامل التحجيم المحدد codebook_rescale_factor. يمكن تجاوز ذلك عبر معامل codebook_do_rescale في preprocess.
  • codebook_rescale_factor (int أو kwargs أو float، اختياري، القيمة الافتراضية 1/255) — يحدد عامل المقياس المستخدم عند إعادة مقياس صورة كودبوك. يمكن تجاوز هذا العامل عبر معامل codebook_rescale_factor في preprocess.
  • codebook_do_map_pixels (bool، kwargs، اختياري، القيمة الافتراضية True) — ما إذا كان سيتم تعيين قيم البكسلات في مدخلات codebook إلى (1 - 2e)x + e. يمكن تجاوز ذلك عبر معامل codebook_do_map_pixels في preprocess.
  • codebook_do_normalize (bool، kwargs، اختياري، القيمة الافتراضية True) — ما إذا كان سيتم تطبيع المدخلات الخاصة بـ codebook باستخدام codebook_image_mean وcodebook_image_std. يمكن تجاوز ذلك عبر معامل codebook_do_normalize في preprocess.
  • codebook_image_mean (Optional[Union[float, *kwargs*, Iterable[float]]]، اختياري، القيمة الافتراضية [0, 0, 0]) — تسلسل المتوسطات لكل قناة، يُستخدم عند تطبيع الصور الخاصة بـ codebook. يمكن تجاوز هذه القيمة عبر معامل codebook_image_mean في preprocess.
  • codebook_image_std (Optional[Union[float, *kwargs*, Iterable[float]]]، اختياري، القيمة الافتراضية [0.5, 0.5, 0.5]) — تسلسل الانحرافات المعيارية لكل قناة، يُستخدم عند تطبيع الصور الخاصة بـ codebook. يمكن تجاوزها عبر معامل codebook_image_std في preprocess.

ينشئ معالج صور FlavaImageProcessor.

preprocess

< >

( images: typing.Union[ForwardRef('PIL.Image.Image'), numpy.ndarray, ForwardRef('torch.Tensor'), list['PIL.Image.Image'], list[numpy.ndarray], list['torch.Tensor']]**kwargs: *<class 'transformers.models.flava.image_processing_flava.FlavaImageProcessorKwargs'> ) → ~image_processing_base.BatchFeature

المعاملات

  • images (Union[PIL.Image.Image, numpy.ndarray, torch.Tensor, list[PIL.Image.Image], list[numpy.ndarray], list[torch.Tensor]]) — الصورة التي سيتم معالجتها مسبقاً. يتوقع صورة واحدة أو دفعة من الصور بقيم بكسل تتراوح بين 0 و255. إذا كنت تمرر صوراً بقيم بكسل بين 0 و1، فاضبط do_rescale=False.
  • do_convert_rgb (bool، kwargs، اختياري) — ما إذا كان يجب تحويل الصورة إلى RGB.
  • do_resize (bool، kwargs، اختياري) — ما إذا كان يجب تغيير حجم الصورة.
  • size (Annotated[int | list[int] | tuple[int, ...] | dict[str, int] | None, None], kwargs) — يصف الأبعاد القصوى للمدخلات إلى النموذج.
  • default_to_square (bool، kwargs، اختياري) — ما إذا كان يجب افتراض صورة مربعة عند تغيير الحجم، إذا كانت القيمة عددًا صحيحًا.
  • crop_size (Annotated[int | list[int] | tuple[int, ...] | dict[str, int] | None, None], kwargs) — حجم الصورة الناتجة بعد تطبيق center_crop.
  • resample (Annotated[Union[int, PILImageResampling, NoneType], None], kwargs) — مرشّح إعادة العينة (Resampling filter) المستخدم عند تغيير حجم الصورة. يمكن أن يكون أحد قيم التعداد PILImageResampling. لا يكون له أي تأثير إلا إذا تم تعيين do_resize إلى True.
  • do_rescale (bool، kwargs، اختياري) — ما إذا كان يجب إعادة تحجيم الصورة.
  • rescale_factor (float، kwargs، اختياري) — معامل إعادة التحجيم لإعادة تحجيم الصورة إذا كان do_rescale مضبوطاً على True.
  • do_normalize (bool، kwargs، اختياري) — ما إذا كان سيتم تطبيع الصورة.
  • image_mean (Union[float, list[float], tuple[float, ...]]، kwargs، اختياري) — متوسط الصورة المستخدم للتطبيع. لا يكون له أي تأثير إلا إذا تم تعيين do_normalize إلى True.
  • image_std (Union[float, list[float], tuple[float, ...]]، kwargs، اختياري) — انحراف المعيار للصورة المستخدم للتطبيع. لا يكون له أي تأثير إلا إذا تم تعيين do_normalize إلى True.
  • do_pad (bool، kwargs، اختياري) — ما إذا كان سيتم توسيط الصورة. يتم التوسيط إما إلى أكبر حجم في الدفعة أو إلى حجم مربع ثابت لكل صورة. تعتمد استراتيجية التوسيط الدقيقة على النموذج.
  • pad_size (Annotated[int | list[int] | tuple[int, ...] | dict[str, int] | None, None], kwargs) — الحجم على شكل {"height": int, "width" int} الذي يجب توسيد الصور إليه. يجب أن يكون أكبر من أي حجم صورة مُقدَّم للمعالجة المسبقة. إذا لم يُقدَّم pad_size، فسيتم توسيد الصور إلى أكبر ارتفاع وعرض في الدفعة. يُطبَّق فقط عندما يكون do_pad=True.
  • do_center_crop (bool، kwargs، اختياري) — ما إذا كان يجب قص الصورة من المنتصف.
  • data_format (Union[str, ~image_utils.ChannelDimension]، kwargs، اختياري) — يُؤمَّن دعم ChannelDimension.FIRST فقط. أُضيف من أجل التوافق مع المعالجات البطيئة.
  • input_data_format (Union[str, ~image_utils.ChannelDimension], kwargs, اختياري) — تنسيق بُعد القناة للصورة المدخلة. إذا لم يُضبط، يُستنتج تنسيق بُعد القناة من الصورة المدخلة. يمكن أن يكون أحد ما يلي:
    • "channels_first" أو ChannelDimension.FIRST: صورة بتنسيق (num_channels, height, width).
    • "channels_last" أو ChannelDimension.LAST: صورة بصيغة (الارتفاع، العرض، عدد القنوات).
    • "none" أو ChannelDimension.NONE: صورة بصيغة (الارتفاع، العرض).
  • device (Annotated[Union[str, torch.device, NoneType], None], kwargs) — الجهاز الذي تتم عليه معالجة مقاطع الفيديو. إذا لم يتم تعيينه، يُستنتج الجهاز من مقاطع الفيديو المدخلة.
  • return_tensors (Annotated[str | ~utils.generic.TensorType | None, None], kwargs) — تُرجع تينسورات مكدّسة إذا تم ضبطها على 'pt'، وإلا تُرجع قائمة من التينسورات.
  • disable_grouping (bool، kwargs، اختياري) — ما إذا كان سيتم تعطيل تجميع الصور حسب الحجم لمعالجتها بشكل فردي بدلاً من دفعات. إذا كانت القيمة None، فسيتم تعيينها إلى True إذا كانت الصور على وحدة المعالجة المركزية (CPU)، وإلا فستكون False. تستند هذه الخيارات إلى ملاحظات تجريبية، كما هو موضح هنا: https://github.com/huggingface/transformers/pull/38157
  • image_seq_length (int، kwargs، اختياري) — عدد رموز الصورة التي سيتم استخدامها لكل صورة في المدخلات. تمت إضافته من أجل التوافق مع الإصدارات السابقة، لكن ينبغي ضبطه كخاصية للمعالج في النماذج المستقبلية.
  • return_image_mask (bool، kwargs، اختياري، القيمة الافتراضية False) — ما إذا كان يجب إرجاع قناع الصورة. يمكن تجاوز ذلك عبر معامل return_image_mask في preprocess.
  • input_size_patches (int، kwargs، اختياري، القيمة الافتراضية 14) — عدد البقع في الصورة في اتجاه الارتفاع والعرض. 14x14 = 196 بقعةً إجمالاً. يمكن تجاوز هذه القيمة بواسطة معامل input_size_patches في preprocess.
  • total_mask_patches (int، kwargs، اختياري، القيمة الافتراضية 75) — إجمالي عدد البقع التي يجب إخفاؤها. يمكن تجاوزها بواسطة معامل total_mask_patches في preprocess.
  • mask_group_min_patches (int، kwargs، اختياري، القيمة الافتراضية 16) — الحد الأدنى لعدد البقع التي يجب إخفاؤها. يمكن تجاوزها بواسطة معامل mask_group_min_patches في preprocess.
  • mask_group_max_patches (int، kwargs، اختياري) — الحد الأقصى لعدد البقع التي يجب إخفاؤها. يمكن تجاوز هذا الإعداد عبر معامل mask_group_max_patches في preprocess.
  • mask_group_min_aspect_ratio (float، kwargs، اختياري، القيمة الافتراضية 0.3) — أدنى نسبة عرض إلى ارتفاع لنقطة القناع. يمكن تجاوزها بواسطة معامل mask_group_min_aspect_ratio في preprocess.
  • mask_group_max_aspect_ratio (float، kwargs، اختياري) — النسبة القصوى بين العرض والارتفاع (Aspect Ratio) لنقطة القناع. يمكن تجاوزها بواسطة معامل mask_group_max_aspect_ratio في preprocess.
  • return_codebook_pixels (bool، kwargs، اختياري، القيمة الافتراضية False) — ما إذا كان يجب إرجاع قيم بكسلات كودبوك.
  • codebook_do_resize (bool، kwargs، اختياري، القيمة الافتراضية True) — ما إذا كان يجب تغيير حجم المدخلات الخاصة بـ codebook إلى حجم معين. يمكن تجاوز ذلك عبر معامل codebook_do_resize في preprocess. codebook_size.
  • codebook_size (dict[str, *kwargs*, int]، اختياري، القيمة الافتراضية {"height" -- 224, "width": 224}): تغيير حجم المدخلات الخاصة بـ codebook إلى الحجم المحدد. يمكن تجاوز ذلك عبر معامل codebook_size في preprocess.
  • codebook_resample (PILImageResampling، kwargs، اختياري، القيمة الافتراضية PILImageResampling.LANCZOS) — مرشّح إعادة العيّنة (Resampling filter) المستخدم عند تغيير حجم صورة الكودبوك. مع torchvision < 0.27، لا يُدعم LANCZOS لمصفوفات torch، لذا يُستخدم BICUBIC كبديل أقرب. يمكن تجاوز هذا الإعداد عبر معامل codebook_resample في preprocess.
  • codebook_do_center_crop (bool، kwargs، اختياري، القيمة الافتراضية True) — ما إذا كان يجب قصّ المدخلات الخاصة بـ codebook من المنتصف. إذا كانت أبعاد المدخلات أصغر من codebook_crop_size على أي حافة، يتم ملء الصورة بأصفار ثم قصّها من المنتصف. يمكن تجاوز ذلك عبر معامل codebook_do_center_crop في preprocess.
  • codebook_crop_size (dict[str, *kwargs*, int]، اختياري، القيمة الافتراضية {"height" -- 224, "width": 224}): الحجم المطلوب للمخرجات الخاصة بمدخلات codebook عند تطبيق القص من المنتصف. يمكن تجاوز هذا الحجم عبر معامل codebook_crop_size في preprocess.
  • codebook_do_rescale (bool، kwargs، اختياري، القيمة الافتراضية True) — ما إذا كان يجب إعادة تحجيم المدخلات الخاصة بـ codebook باستخدام معامل التحجيم المحدد codebook_rescale_factor. يمكن تجاوز ذلك عبر معامل codebook_do_rescale في preprocess.
  • codebook_rescale_factor (int أو kwargs أو float، اختياري، القيمة الافتراضية 1/255) — يحدد عامل المقياس المستخدم عند إعادة مقياس صورة كودبوك. يمكن تجاوز هذا العامل عبر معامل codebook_rescale_factor في preprocess.
  • codebook_do_map_pixels (bool، kwargs، اختياري، القيمة الافتراضية True) — ما إذا كان سيتم تعيين قيم البكسلات في مدخلات codebook إلى (1 - 2e)x + e. يمكن تجاوز ذلك عبر معامل codebook_do_map_pixels في preprocess.
  • codebook_do_normalize (bool، kwargs، اختياري، القيمة الافتراضية True) — ما إذا كان سيتم تطبيع المدخلات الخاصة بـ codebook باستخدام codebook_image_mean وcodebook_image_std. يمكن تجاوز ذلك عبر معامل codebook_do_normalize في preprocess.
  • codebook_image_mean (Optional[Union[float, *kwargs*, Iterable[float]]]، اختياري، القيمة الافتراضية [0, 0, 0]) — تسلسل المتوسطات لكل قناة، يُستخدم عند تطبيع الصور الخاصة بـ codebook. يمكن تجاوز هذه القيمة عبر معامل codebook_image_mean في preprocess.
  • codebook_image_std (Optional[Union[float, *kwargs*, Iterable[float]]]، اختياري، القيمة الافتراضية [0.5, 0.5, 0.5]) — تسلسل الانحرافات المعيارية لكل قناة، يُستخدم عند تطبيع الصور الخاصة بـ codebook. يمكن تجاوزها عبر معامل codebook_image_std في preprocess.

يعيد

~image_processing_base.BatchFeature

  • data (dict) — قاموس من القوائم/المصفوفات/الموترات التي يعيدها أسلوب call (مثل ‘pixel_values’).
  • tensor_type (Union[None, str, TensorType]، اختياري) — يمكنك تحديد tensor_type هنا لتحويل قوائم الأعداد الصحيحة إلى تينسورات PyTorch/Numpy عند التهيئة.

FlavaImageProcessorPil

فئة transformers.FlavaImageProcessorPil

< >

( **kwargs: *<class 'transformers.models.flava.image_processing_pil_flava.FlavaImageProcessorKwargs'> )

المعاملات

  • do_convert_rgb (bool، kwargs، اختياري) — ما إذا كان يجب تحويل الصورة إلى RGB.
  • do_resize (bool، kwargs، اختياري، القيمة الافتراضية True) — ما إذا كان يجب تغيير حجم الصورة.
  • size (Annotated[int | list[int] | tuple[int, ...] | dict[str, int] | None, None]، kwargs، القيمة الافتراضية {'height' -- 224, 'width': 224}): يصف الأبعاد القصوى للمدخلات إلى النموذج.
  • default_to_square (bool، kwargs، اختياري، القيمة الافتراضية True) — ما إذا كان يجب افتراض صورة مربعة عند تغيير الحجم، إذا كانت قيمة size من نوع int.
  • crop_size (Annotated[int | list[int] | tuple[int, ...] | dict[str, int] | None, None]، kwargs، القيمة الافتراضية {'height' -- 224, 'width': 224}): حجم الصورة الناتجة بعد تطبيق center_crop.
  • resample (Annotated[Union[int, PILImageResampling, NoneType], None]، kwargs، القيمة الافتراضية 3) — مرشح إعادة العينة المستخدم عند تغيير حجم الصورة. يمكن أن يكون أحد قيم enum PILImageResampling. لا يؤثر إلا إذا كانت قيمة do_resize هي True.
  • do_rescale (bool، kwargs، اختياري، القيمة الافتراضية True) — ما إذا كان يجب إعادة تحجيم الصورة.
  • rescale_factor (float، kwargs، اختياري، القيمة الافتراضية 0.00392156862745098) — عامل إعادة التحجيم لإعادة تحجيم الصورة إذا كان do_rescale مضبوطًا على True.
  • do_normalize (bool، kwargs، اختياري، القيمة الافتراضية True) — ما إذا كان سيتم تطبيع الصورة.
  • image_mean (Union[float, list[float], tuple[float, ...]]، kwargs، اختياري، القيمة الافتراضية [0.48145466, 0.4578275, 0.40821073]) — متوسط الصورة المستخدم للتطبيع. لا يكون له أي تأثير إلا إذا تم ضبط do_normalize على True.
  • image_std (Union[float, list[float], tuple[float, ...]]، kwargs، اختياري، القيمة الافتراضية [0.26862954, 0.26130258, 0.27577711]) — الانحراف المعياري للصورة المستخدم للتطبيع. لا يكون له تأثير إلا إذا تم تعيين do_normalize إلى True.
  • do_pad (bool، kwargs، اختياري) — ما إذا كان سيتم توسيط الصورة. يتم التوسيط إما إلى أكبر حجم في الدفعة أو إلى حجم مربع ثابت لكل صورة. تعتمد استراتيجية التوسيط الدقيقة على النموذج.
  • pad_size (Annotated[int | list[int] | tuple[int, ...] | dict[str, int] | None, None], kwargs) — الحجم على شكل {"height": int, "width" int} الذي يجب توسيد الصور إليه. يجب أن يكون أكبر من أي حجم صورة مُقدَّم للمعالجة المسبقة. إذا لم يُقدَّم pad_size، فسيتم توسيد الصور إلى أكبر ارتفاع وعرض في الدفعة. يُطبَّق فقط عندما يكون do_pad=True.
  • do_center_crop (bool، kwargs، اختياري، القيمة الافتراضية True) — ما إذا كان سيتم قص الصورة من المنتصف.
  • data_format (Union[str, ~image_utils.ChannelDimension]، kwargs، اختياري) — يُؤمَّن دعم ChannelDimension.FIRST فقط. أُضيف من أجل التوافق مع المعالجات البطيئة.
  • input_data_format (Union[str, ~image_utils.ChannelDimension], kwargs, اختياري) — تنسيق بُعد القناة للصورة المدخلة. إذا لم يُضبط، يُستنتج تنسيق بُعد القناة من الصورة المدخلة. يمكن أن يكون أحد ما يلي:
    • "channels_first" أو ChannelDimension.FIRST: صورة بتنسيق (num_channels, height, width).
    • "channels_last" أو ChannelDimension.LAST: صورة بصيغة (الارتفاع، العرض، عدد القنوات).
    • "none" أو ChannelDimension.NONE: صورة بصيغة (الارتفاع، العرض).
  • device (Annotated[Union[str, torch.device, NoneType], None], kwargs) — الجهاز الذي تتم عليه معالجة مقاطع الفيديو. إذا لم يتم تعيينه، يُستنتج الجهاز من مقاطع الفيديو المدخلة.
  • return_tensors (Annotated[str | ~utils.generic.TensorType | None, None], kwargs) — تُرجع تينسورات مكدّسة إذا تم ضبطها على 'pt'، وإلا تُرجع قائمة من التينسورات.
  • disable_grouping (bool، kwargs، اختياري) — ما إذا كان سيتم تعطيل تجميع الصور حسب الحجم لمعالجتها بشكل فردي بدلاً من دفعات. إذا كانت القيمة None، فسيتم تعيينها إلى True إذا كانت الصور على وحدة المعالجة المركزية (CPU)، وإلا فستكون False. تستند هذه الخيارات إلى ملاحظات تجريبية، كما هو موضح هنا: https://github.com/huggingface/transformers/pull/38157
  • image_seq_length (int، kwargs، اختياري) — عدد رموز الصورة التي سيتم استخدامها لكل صورة في المدخلات. تمت إضافته من أجل التوافق مع الإصدارات السابقة، لكن ينبغي ضبطه كخاصية للمعالج في النماذج المستقبلية.
  • return_image_mask (bool، kwargs، اختياري، القيمة الافتراضية False) — ما إذا كان يجب إرجاع قناع الصورة. يمكن تجاوز ذلك عبر معامل return_image_mask في preprocess.
  • input_size_patches (int، kwargs، اختياري، القيمة الافتراضية 14) — عدد البقع في الصورة في اتجاه الارتفاع والعرض. 14x14 = 196 بقعةً إجمالاً. يمكن تجاوز هذه القيمة بواسطة معامل input_size_patches في preprocess.
  • total_mask_patches (int، kwargs، اختياري، القيمة الافتراضية 75) — إجمالي عدد البقع التي يجب إخفاؤها. يمكن تجاوزها بواسطة معامل total_mask_patches في preprocess.
  • mask_group_min_patches (int، kwargs، اختياري، القيمة الافتراضية 16) — الحد الأدنى لعدد البقع التي يجب إخفاؤها. يمكن تجاوزها بواسطة معامل mask_group_min_patches في preprocess.
  • mask_group_max_patches (int، kwargs، اختياري) — الحد الأقصى لعدد البقع التي يجب إخفاؤها. يمكن تجاوز هذا الإعداد عبر معامل mask_group_max_patches في preprocess.
  • mask_group_min_aspect_ratio (float، kwargs، اختياري، القيمة الافتراضية 0.3) — أدنى نسبة عرض إلى ارتفاع لنقطة القناع. يمكن تجاوزها بواسطة معامل mask_group_min_aspect_ratio في preprocess.
  • mask_group_max_aspect_ratio (float، kwargs، اختياري) — النسبة القصوى بين العرض والارتفاع (Aspect Ratio) لنقطة القناع. يمكن تجاوزها بواسطة معامل mask_group_max_aspect_ratio في preprocess.
  • return_codebook_pixels (bool، kwargs، اختياري، القيمة الافتراضية False) — ما إذا كان يجب إرجاع قيم بكسلات كودبوك.
  • codebook_do_resize (bool، kwargs، اختياري، القيمة الافتراضية True) — ما إذا كان يجب تغيير حجم المدخلات الخاصة بـ codebook إلى حجم معين. يمكن تجاوز ذلك عبر معامل codebook_do_resize في preprocess. codebook_size.
  • codebook_size (dict[str, *kwargs*, int]، اختياري، القيمة الافتراضية {"height" -- 224, "width": 224}): تغيير حجم المدخلات الخاصة بـ codebook إلى الحجم المحدد. يمكن تجاوز ذلك عبر معامل codebook_size في preprocess.
  • codebook_resample (PILImageResampling، kwargs، اختياري، القيمة الافتراضية PILImageResampling.LANCZOS) — مرشّح إعادة العيّنة (Resampling filter) المستخدم عند تغيير حجم صورة الكودبوك. مع torchvision < 0.27، لا يُدعم LANCZOS لمصفوفات torch، لذا يُستخدم BICUBIC كبديل أقرب. يمكن تجاوز هذا الإعداد عبر معامل codebook_resample في preprocess.
  • codebook_do_center_crop (bool، kwargs، اختياري، القيمة الافتراضية True) — ما إذا كان يجب قصّ المدخلات الخاصة بـ codebook من المنتصف. إذا كانت أبعاد المدخلات أصغر من codebook_crop_size على أي حافة، يتم ملء الصورة بأصفار ثم قصّها من المنتصف. يمكن تجاوز ذلك عبر معامل codebook_do_center_crop في preprocess.
  • codebook_crop_size (dict[str, *kwargs*, int]، اختياري، القيمة الافتراضية {"height" -- 224, "width": 224}): الحجم المطلوب للمخرجات الخاصة بمدخلات codebook عند تطبيق القص من المنتصف. يمكن تجاوز هذا الحجم عبر معامل codebook_crop_size في preprocess.
  • codebook_do_rescale (bool، kwargs، اختياري، القيمة الافتراضية True) — ما إذا كان يجب إعادة تحجيم المدخلات الخاصة بـ codebook باستخدام معامل التحجيم المحدد codebook_rescale_factor. يمكن تجاوز ذلك عبر معامل codebook_do_rescale في preprocess.
  • codebook_rescale_factor (int أو kwargs أو float، اختياري، القيمة الافتراضية 1/255) — يحدد عامل المقياس المستخدم عند إعادة مقياس صورة كودبوك. يمكن تجاوز هذا العامل عبر معامل codebook_rescale_factor في preprocess.
  • codebook_do_map_pixels (bool، kwargs، اختياري، القيمة الافتراضية True) — ما إذا كان سيتم تعيين قيم البكسلات في مدخلات codebook إلى (1 - 2e)x + e. يمكن تجاوز ذلك عبر معامل codebook_do_map_pixels في preprocess.
  • codebook_do_normalize (bool، kwargs، اختياري، القيمة الافتراضية True) — ما إذا كان سيتم تطبيع المدخلات الخاصة بـ codebook باستخدام codebook_image_mean وcodebook_image_std. يمكن تجاوز ذلك عبر معامل codebook_do_normalize في preprocess.
  • codebook_image_mean (Optional[Union[float, *kwargs*, Iterable[float]]]، اختياري، القيمة الافتراضية [0, 0, 0]) — تسلسل المتوسطات لكل قناة، يُستخدم عند تطبيع الصور الخاصة بـ codebook. يمكن تجاوز هذه القيمة عبر معامل codebook_image_mean في preprocess.
  • codebook_image_std (Optional[Union[float, *kwargs*, Iterable[float]]]، اختياري، القيمة الافتراضية [0.5, 0.5, 0.5]) — تسلسل الانحرافات المعيارية لكل قناة، يُستخدم عند تطبيع الصور الخاصة بـ codebook. يمكن تجاوزها عبر معامل codebook_image_std في preprocess.

ينشئ معالج صور FlavaImageProcessor.

preprocess

< >

( images: typing.Union[ForwardRef('PIL.Image.Image'), numpy.ndarray, ForwardRef('torch.Tensor'), list['PIL.Image.Image'], list[numpy.ndarray], list['torch.Tensor']]**kwargs: *<class 'transformers.models.flava.image_processing_pil_flava.FlavaImageProcessorKwargs'> ) → ~image_processing_base.BatchFeature

المعاملات

  • images (Union[PIL.Image.Image, numpy.ndarray, torch.Tensor, list[PIL.Image.Image], list[numpy.ndarray], list[torch.Tensor]]) — الصورة التي سيتم معالجتها مسبقاً. يتوقع صورة واحدة أو دفعة من الصور بقيم بكسل تتراوح بين 0 و255. إذا كنت تمرر صوراً بقيم بكسل بين 0 و1، فاضبط do_rescale=False.
  • do_convert_rgb (bool، kwargs، اختياري) — ما إذا كان يجب تحويل الصورة إلى RGB.
  • do_resize (bool، kwargs، اختياري) — ما إذا كان يجب تغيير حجم الصورة.
  • size (Annotated[int | list[int] | tuple[int, ...] | dict[str, int] | None, None], kwargs) — يصف الأبعاد القصوى للمدخلات إلى النموذج.
  • default_to_square (bool، kwargs، اختياري) — ما إذا كان يجب افتراض صورة مربعة عند تغيير الحجم، إذا كانت القيمة عددًا صحيحًا.
  • crop_size (Annotated[int | list[int] | tuple[int, ...] | dict[str, int] | None, None], kwargs) — حجم الصورة الناتجة بعد تطبيق center_crop.
  • resample (Annotated[Union[int, PILImageResampling, NoneType], None], kwargs) — مرشّح إعادة العينة (Resampling filter) المستخدم عند تغيير حجم الصورة. يمكن أن يكون أحد قيم التعداد PILImageResampling. لا يكون له أي تأثير إلا إذا تم تعيين do_resize إلى True.
  • do_rescale (bool، kwargs، اختياري) — ما إذا كان يجب إعادة تحجيم الصورة.
  • rescale_factor (float، kwargs، اختياري) — معامل إعادة التحجيم لإعادة تحجيم الصورة إذا كان do_rescale مضبوطاً على True.
  • do_normalize (bool، kwargs، اختياري) — ما إذا كان سيتم تطبيع الصورة.
  • image_mean (Union[float, list[float], tuple[float, ...]]، kwargs، اختياري) — متوسط الصورة المستخدم للتطبيع. لا يكون له أي تأثير إلا إذا تم تعيين do_normalize إلى True.
  • image_std (Union[float, list[float], tuple[float, ...]]، kwargs، اختياري) — انحراف المعيار للصورة المستخدم للتطبيع. لا يكون له أي تأثير إلا إذا تم تعيين do_normalize إلى True.
  • do_pad (bool، kwargs، اختياري) — ما إذا كان سيتم توسيط الصورة. يتم التوسيط إما إلى أكبر حجم في الدفعة أو إلى حجم مربع ثابت لكل صورة. تعتمد استراتيجية التوسيط الدقيقة على النموذج.
  • pad_size (Annotated[int | list[int] | tuple[int, ...] | dict[str, int] | None, None], kwargs) — الحجم على شكل {"height": int, "width" int} الذي يجب توسيد الصور إليه. يجب أن يكون أكبر من أي حجم صورة مُقدَّم للمعالجة المسبقة. إذا لم يُقدَّم pad_size، فسيتم توسيد الصور إلى أكبر ارتفاع وعرض في الدفعة. يُطبَّق فقط عندما يكون do_pad=True.
  • do_center_crop (bool، kwargs، اختياري) — ما إذا كان يجب قص الصورة من المنتصف.
  • data_format (Union[str, ~image_utils.ChannelDimension]، kwargs، اختياري) — يُؤمَّن دعم ChannelDimension.FIRST فقط. أُضيف من أجل التوافق مع المعالجات البطيئة.
  • input_data_format (Union[str, ~image_utils.ChannelDimension], kwargs, اختياري) — تنسيق بُعد القناة للصورة المدخلة. إذا لم يُضبط، يُستنتج تنسيق بُعد القناة من الصورة المدخلة. يمكن أن يكون أحد ما يلي:
    • "channels_first" أو ChannelDimension.FIRST: صورة بتنسيق (num_channels, height, width).
    • "channels_last" أو ChannelDimension.LAST: صورة بصيغة (الارتفاع، العرض، عدد القنوات).
    • "none" أو ChannelDimension.NONE: صورة بصيغة (الارتفاع، العرض).
  • device (Annotated[Union[str, torch.device, NoneType], None], kwargs) — الجهاز الذي تتم عليه معالجة مقاطع الفيديو. إذا لم يتم تعيينه، يُستنتج الجهاز من مقاطع الفيديو المدخلة.
  • return_tensors (Annotated[str | ~utils.generic.TensorType | None, None], kwargs) — تُرجع تينسورات مكدّسة إذا تم ضبطها على 'pt'، وإلا تُرجع قائمة من التينسورات.
  • disable_grouping (bool، kwargs، اختياري) — ما إذا كان سيتم تعطيل تجميع الصور حسب الحجم لمعالجتها بشكل فردي بدلاً من دفعات. إذا كانت القيمة None، فسيتم تعيينها إلى True إذا كانت الصور على وحدة المعالجة المركزية (CPU)، وإلا فستكون False. تستند هذه الخيارات إلى ملاحظات تجريبية، كما هو موضح هنا: https://github.com/huggingface/transformers/pull/38157
  • image_seq_length (int، kwargs، اختياري) — عدد رموز الصورة التي سيتم استخدامها لكل صورة في المدخلات. تمت إضافته من أجل التوافق مع الإصدارات السابقة، لكن ينبغي ضبطه كخاصية للمعالج في النماذج المستقبلية.
  • return_image_mask (bool، kwargs، اختياري، القيمة الافتراضية False) — ما إذا كان يجب إرجاع قناع الصورة. يمكن تجاوز ذلك عبر معامل return_image_mask في preprocess.
  • input_size_patches (int، kwargs، اختياري، القيمة الافتراضية 14) — عدد البقع في الصورة في اتجاه الارتفاع والعرض. 14x14 = 196 بقعةً إجمالاً. يمكن تجاوز هذه القيمة بواسطة معامل input_size_patches في preprocess.
  • total_mask_patches (int، kwargs، اختياري، القيمة الافتراضية 75) — إجمالي عدد البقع التي يجب إخفاؤها. يمكن تجاوزها بواسطة معامل total_mask_patches في preprocess.
  • mask_group_min_patches (int، kwargs، اختياري، القيمة الافتراضية 16) — الحد الأدنى لعدد البقع التي يجب إخفاؤها. يمكن تجاوزها بواسطة معامل mask_group_min_patches في preprocess.
  • mask_group_max_patches (int، kwargs، اختياري) — الحد الأقصى لعدد البقع التي يجب إخفاؤها. يمكن تجاوز هذا الإعداد عبر معامل mask_group_max_patches في preprocess.
  • mask_group_min_aspect_ratio (float، kwargs، اختياري، القيمة الافتراضية 0.3) — أدنى نسبة عرض إلى ارتفاع لنقطة القناع. يمكن تجاوزها بواسطة معامل mask_group_min_aspect_ratio في preprocess.
  • mask_group_max_aspect_ratio (float، kwargs، اختياري) — النسبة القصوى بين العرض والارتفاع (Aspect Ratio) لنقطة القناع. يمكن تجاوزها بواسطة معامل mask_group_max_aspect_ratio في preprocess.
  • return_codebook_pixels (bool، kwargs، اختياري، القيمة الافتراضية False) — ما إذا كان يجب إرجاع قيم بكسلات كودبوك.
  • codebook_do_resize (bool، kwargs، اختياري، القيمة الافتراضية True) — ما إذا كان يجب تغيير حجم المدخلات الخاصة بـ codebook إلى حجم معين. يمكن تجاوز ذلك عبر معامل codebook_do_resize في preprocess. codebook_size.
  • codebook_size (dict[str, *kwargs*, int]، اختياري، القيمة الافتراضية {"height" -- 224, "width": 224}): تغيير حجم المدخلات الخاصة بـ codebook إلى الحجم المحدد. يمكن تجاوز ذلك عبر معامل codebook_size في preprocess.
  • codebook_resample (PILImageResampling، kwargs، اختياري، القيمة الافتراضية PILImageResampling.LANCZOS) — مرشّح إعادة العيّنة (Resampling filter) المستخدم عند تغيير حجم صورة الكودبوك. مع torchvision < 0.27، لا يُدعم LANCZOS لمصفوفات torch، لذا يُستخدم BICUBIC كبديل أقرب. يمكن تجاوز هذا الإعداد عبر معامل codebook_resample في preprocess.
  • codebook_do_center_crop (bool، kwargs، اختياري، القيمة الافتراضية True) — ما إذا كان يجب قصّ المدخلات الخاصة بـ codebook من المنتصف. إذا كانت أبعاد المدخلات أصغر من codebook_crop_size على أي حافة، يتم ملء الصورة بأصفار ثم قصّها من المنتصف. يمكن تجاوز ذلك عبر معامل codebook_do_center_crop في preprocess.
  • codebook_crop_size (dict[str, *kwargs*, int]، اختياري، القيمة الافتراضية {"height" -- 224, "width": 224}): الحجم المطلوب للمخرجات الخاصة بمدخلات codebook عند تطبيق القص من المنتصف. يمكن تجاوز هذا الحجم عبر معامل codebook_crop_size في preprocess.
  • codebook_do_rescale (bool، kwargs، اختياري، القيمة الافتراضية True) — ما إذا كان يجب إعادة تحجيم المدخلات الخاصة بـ codebook باستخدام معامل التحجيم المحدد codebook_rescale_factor. يمكن تجاوز ذلك عبر معامل codebook_do_rescale في preprocess.
  • codebook_rescale_factor (int أو kwargs أو float، اختياري، القيمة الافتراضية 1/255) — يحدد عامل المقياس المستخدم عند إعادة مقياس صورة كودبوك. يمكن تجاوز هذا العامل عبر معامل codebook_rescale_factor في preprocess.
  • codebook_do_map_pixels (bool، kwargs، اختياري، القيمة الافتراضية True) — ما إذا كان سيتم تعيين قيم البكسلات في مدخلات codebook إلى (1 - 2e)x + e. يمكن تجاوز ذلك عبر معامل codebook_do_map_pixels في preprocess.
  • codebook_do_normalize (bool، kwargs، اختياري، القيمة الافتراضية True) — ما إذا كان سيتم تطبيع المدخلات الخاصة بـ codebook باستخدام codebook_image_mean وcodebook_image_std. يمكن تجاوز ذلك عبر معامل codebook_do_normalize في preprocess.
  • codebook_image_mean (Optional[Union[float, *kwargs*, Iterable[float]]]، اختياري، القيمة الافتراضية [0, 0, 0]) — تسلسل المتوسطات لكل قناة، يُستخدم عند تطبيع الصور الخاصة بـ codebook. يمكن تجاوز هذه القيمة عبر معامل codebook_image_mean في preprocess.
  • codebook_image_std (Optional[Union[float, *kwargs*, Iterable[float]]]، اختياري، القيمة الافتراضية [0.5, 0.5, 0.5]) — تسلسل الانحرافات المعيارية لكل قناة، يُستخدم عند تطبيع الصور الخاصة بـ codebook. يمكن تجاوزها عبر معامل codebook_image_std في preprocess.

يعيد

~image_processing_base.BatchFeature

  • data (dict) — قاموس من القوائم/المصفوفات/الموترات التي يعيدها أسلوب call (مثل ‘pixel_values’).
  • tensor_type (Union[None, str, TensorType]، اختياري) — يمكنك تحديد tensor_type هنا لتحويل قوائم الأعداد الصحيحة إلى تينسورات PyTorch/Numpy عند التهيئة.

FlavaForPreTraining

فئة transformers.FlavaForPreTraining

< >

( config: FlavaConfigimage_codebook: typing.Optional[torch.nn.Module] = None )

المعاملات

  • config (FlavaConfig) — فئة إعدادات النموذج التي تحتوي على جميع معاملات النموذج. لا يؤدي التهيئة باستخدام ملف الإعداد إلى تحميل الأوزان المرتبطة بالنموذج، بل الإعدادات فقط. راجع طريقة from_pretrained() لتحميل أوزان النموذج.
  • image_codebook (torch.nn.Module, اختياري) — إذا تم تمريره، فسيتم تعيين كودبوك الصورة إلى هذا. وإلا، فسيتم تهيئته باستخدام image_codebook_config المعرّف في الإعدادات أولاً كالمعامل الأول.

نموذج FLAVA للتدريب المسبق الذي يُخرج الخسائر، والتضمينات، والقيم اللوجستية، ومخرجات محول اللغة.

يرث هذا النموذج من PreTrainedModel. راجع توثيق الفئة الأصلية لمعرفة الطرق العامة التي تنفذها المكتبة لجميع نماذجها (مثل التحميل أو الحفظ، وتغيير حجم تضمينات الإدخال، وقص الرؤوس، وما إلى ذلك).

هذا النموذج هو أيضًا فئة فرعية من torch.nn.Module في PyTorch. استخدمه كوحدة PyTorch عادية، وارجع إلى توثيق PyTorch لكل ما يتعلق بالاستخدام العام والسلوك.

forward

< >

( input_ids: typing.Optional[torch.LongTensor] = Noneinput_ids_masked: typing.Optional[torch.LongTensor] = Nonepixel_values: typing.Optional[torch.Tensor] = Nonecodebook_pixel_values: typing.Optional[torch.Tensor] = Noneattention_mask: typing.Optional[torch.Tensor] = Nonetoken_type_ids: typing.Optional[torch.Tensor] = Nonebool_masked_pos: typing.Optional[torch.Tensor] = Noneposition_ids: typing.Optional[torch.LongTensor] = Noneimage_attention_mask: typing.Optional[torch.Tensor] = Noneskip_unmasked_multimodal_encoder: bool | None = Nonemlm_labels: typing.Optional[torch.Tensor] = Nonemim_labels: typing.Optional[torch.Tensor] = Noneitm_labels: typing.Optional[torch.Tensor] = Noneoutput_attentions: bool | None = Noneoutput_hidden_states: bool = Truereturn_dict: bool | None = Nonereturn_loss: bool | None = None**kwargs ) → FlavaForPreTrainingOutput or tuple(torch.Tensor)

المعاملات

  • input_ids (torch.LongTensor من الشكل (batch_size, text_seq_len)) — فهارس رموز تسلسل الإدخال في قاموس الكلمات. يمكن الحصول على الفهارس باستخدام AutoTokenizer. راجع PreTrainedTokenizer.encode() و PreTrainedTokenizer.call() للتفاصيل. ما هي معرّفات الإدخال؟
  • input_ids_masked (torch.LongTensor of shape (batch_size, text_seq_len)) — فهارس رموز تسلسل الإدخال في قاموس الكلمات. هذه هي النسخة المقنّعة من المهمة الأصلية المُستخدَمة مع MLM. يمكن الحصول على الفهارس باستخدام AutoTokenizer مع DataCollatorForMaskedLanguageModeling. راجع PreTrainedTokenizer.encode() و PreTrainedTokenizer.call() للتفاصيل. ما هي معرّفات الإدخال؟
  • pixel_values (torch.Tensor من الشكل (batch_size, num_channels, image_size, image_size)، اختياري) — المصفوفات المقابلة للصور المدخلة. يمكن الحصول على قيم البكسلات باستخدام FlavaImageProcessor. راجع FlavaImageProcessor.call() للتفاصيل (FlavaProcessor يستخدم FlavaImageProcessor لمعالجة الصور).
  • codebook_pixel_values (torch.Tensor من الشكل (batch_size, num_image_patches, patch_size, patch_size, 3)، اختياري) — قيم البكسلات لبقع الصورة المستخدمة لحساب تسميات كودبوك الصورة لنمذجة الصور المقنّعة.
  • attention_mask (torch.Tensor بشكل (batch_size, sequence_length), اختياري) — قناع لتجنب تنفيذ الانتباه على فهارس رموز الحشو. القيم المختارة للقناع هي [0, 1]:
    • 1 للرموز التي لم تُقنَّع،
    • 0 للرموز التي تم إخفاؤها.

    ما هي أقنعة الانتباه؟

  • token_type_ids (torch.LongTensor بشكل (batch_size, text_seq_len), اختياري) — مؤشرات رموز المقاطع لتحديد الجزء الأول والثاني من المدخلات. يتم اختيار المؤشرات من [0, 1]:
  • bool_masked_pos (torch.BoolTensor من الشكل (batch_size, image_num_patches)) — مواضع مقنّعة من نوع منطقي. تُظهر أيّ البقع مقنّعة (1) وأيّها غير مقنّع (0).
  • position_ids (torch.LongTensor بشكل (batch_size, sequence_length), اختياري) — مؤشرات مواضع رموز كل تسلسل إدخال في تضمينات المواضع. يتم اختيارها ضمن النطاق [0, config.n_positions - 1].

    ما هي معرّفات المواقع؟

  • image_attention_mask (torch.Tensor بشكل (batch_size, image_num_patches), اختياري) — قناع لتجنب تنفيذ الانتباه على فهارس رموز الحشو الخاصة بالصور تحديدًا. قيم القناع المختارة في [0, 1]:
  • skip_unmasked_multimodal_encoder (*bool*, اختياري) — تخطي أي حسابات لمُشفِّر الوسائط المتعددة للمدخلات غير المقنّعة. لا يحتاج تدريب FLAVA المسبق حاليًا إلى تمثيلات أو مخرجات وسائط متعددة غير مقنّعة.
  • mlm_labels (torch.LongTensor من الشكل (batch_size, text_seq_len)، اختياري) — التسميات لحساب خسارة نمذجة الأقنعة اللغوية متعددة الوسائط من اليسار إلى اليمين (توقع الكلمة التالية). يجب أن تكون الفهارس ضمن [-100, 0, ..., text_config.vocab_size - 1] (انظر input_ids docstring). يتم تجاهل الرموز ذات الفهارس المضبوطة على -100 (مقنّعة)، ولا تُحسب الخسارة إلا للرموز التي تتراوح تسمياتها بين [0, ..., text_config.vocab_size - 1].
  • mim_labels (torch.LongTensor من الشكل (batch_size, image_num_patches)، اختياري) — التسميات لحساب خسارة النمذجة المقنّعة للصور والنماذج متعددة الوسائط. يجب أن تكون الفهارس ضمن [-100, 0, ..., image_config.vocab_size - 1]. يتم تجاهل الرموز التي تكون فهارسها مضبوطة على -100 (مقنّعة)، ولا تُحسب الخسارة إلا للرموز التي تسمياتها ضمن [0, ..., image_config.vocab_size - 1]. إذا لم تُمرَّر، يتم توليدها تلقائيًا باستخدام كودبوك الصور المُسند إلى النموذج. افتراضيًا، يستخدم FlavaImageCodebook. راجع FlavaImageCodebook لفهم كيفية توليد mim_labels.
  • itm_labels (torch.LongTensor من الشكل (batch_size, 1)، اختياري) — التسميات لحساب خسارة مطابقة الصورة والنص. القيمة 0 تعني أن الأزواج غير متطابقة، والقيمة 1 تعني أنها متطابقة. ستُتخطى الأزواج ذات القيمة 0 أيضًا عند حساب خسائر MMM والتباينية الشاملة.
  • output_attentions (bool، اختياري) — ما إذا كان يجب إرجاع تensors الانتباه لجميع طبقات الانتباه أم لا. راجع attentions ضمن tensors المُرجعة لمزيد من التفاصيل.
  • output_hidden_states (bool، اختياري، القيمة الافتراضية True) — ما إذا كان يجب إرجاع حالات الطبقات المخفية لجميع الطبقات. راجع hidden_states ضمن الموترات المُرجعة للحصول على مزيد من التفاصيل.
  • return_dict (bool، اختياري) — ما إذا كان يجب إرجاع ModelOutput بدلاً من tuple عادي.
  • return_loss (bool، اختياري، القيمة الافتراضية None) — ما إذا كان يجب إرجاع الخسارة المحسوبة أم لا.

يعيد

FlavaForPreTrainingOutput أو tuple(torch.Tensor)

FlavaForPreTrainingOutput أو مجموعة مرتبة من torch.Tensor (إذا تم تمرير return_dict=False أو عندما يكون config.return_dict=False) وتتضمن عناصر مختلفة تعتمد على التهيئة (FlavaConfig) والمدخلات.

تتجاوز طريقة FlavaForPreTraining الخاصة بالتقديم (forward) الطريقة الخاصة __call__.

على الرغم من أنه يجب تعريف وصفة المرور الأمامي داخل هذه الدالة، إلا أنه ينبغي استدعاء كائن Module بدلاً من هذه الدالة، لأن الكائن يتولى تنفيذ خطوات المعالجة المسبقة والمعالجة اللاحقة، بينما تتجاهل الدالة هذه الخطوات بصمت.

  • loss (torch.Tensor، اختياري، يُعاد عندما يكون return_loss صحيحًا) — إجمالي الخسارة المحسوبة لهذا النموذج.
  • loss_info (~models.flava.modeling_flava.FlavaLosses، اختياري) — معلومات تفصيلية عن خسائر تدريب FLAVA المسبق. راجع وصف فئة FlavaLosses لمعرفة المعلومات المتعلقة بالمفاتيح.
  • image_embeddings (torch.Tensor من الشكل (batch_size, output_dim)، اختياري، يُعاد عند وجود pixel_values) — تمثيلات الصور، وهي في الأساس المخرجات المجمعة لنموذج FlavaImageModel.
  • image_output (BaseModelOutputWithPooling، اختياري، يُعاد عند وجود pixel_values) — مخرجات FlavaImageModel.
  • text_embeddings (torch.Tensor من الشكل (batch_size, output_dim)، اختياري، يُعاد عند وجود input_ids) — تمثيلات النص، وهي في الأساس المخرجات المجمعة لنموذج FlavaTextModel.
  • text_output (BaseModelOutputWithPooling، اختياري، يُعاد عند وجود input_ids) — مخرجات FlavaTextModel.
  • multimodal_embeddings (torch.Tensor من الشكل (batch_size, output_dim)، اختياري، يُعاد عند وجود input_ids وpixel_values وعندما يكون skip_unmasked_multimodal_encoder إما None أو False) — التضمينات متعددة الوسائط، وهي في الأساس المخرجات المجمعة لنموذج FlavaTextModel.
  • multimodal_output (BaseModelOutputWithPooling، يُعاد عند وجود input_ids وpixel_values وعند أن يكون skip_unmasked_multimodal_encoder هو None أو False) — مخرجات FlavaMultimodalModel.
  • image_masked_embeddings (torch.Tensor من الشكل (batch_size, output_dim)، اختياري، يُعاد عند وجود pixel_values) — تمثيلات الصور التي هي في الأساس المخرجات المجمعة لـ FlavaImageModel. يستخدم bool_masked_pos لإنشاء صور مقنّعة.
  • image_masked_output (BaseModelOutputWithPooling، اختياري، يُعاد عند وجود pixel_values) — مخرجات FlavaImageModel. يستخدم bool_masked_pos لإنشاء صور مقنّعة.
  • text_masked_embeddings (torch.Tensor من الشكل (batch_size, output_dim)، اختياري، يُعاد عند وجود input_ids_masked) — تمثيلات النص، وهي في الأساس المخرجات المجمعة لـ FlavaTextModel.
  • text_masked_output (BaseModelOutputWithPooling، اختياري، يُعاد عند وجود input_ids_masked) — مخرجات FlavaTextModel.
  • multimodal_masked_embeddings (torch.Tensor من الشكل (batch_size, output_dim)، اختياري، يُعاد عند وجود input_ids وpixel_values) — التضمينات متعددة الوسائط، وهي في الأساس المخرجات المجمعة لنموذج FlavaTextModel.
  • multimodal_masked_output (BaseModelOutputWithPooling، اختياري، يُعاد عند وجود input_ids_masked وpixel_values) — مخرجات FlavaMultimodalModel.
  • mim_logits (torch.Tensor من الشكل (batch_size, num_image_patches, image_vocab_size) أو من الشكل (total_masked_patches, image_vocab_size) ، اختياري، يُعاد عند وجود pixel_values وعدم وجود input_ids_masked) — القيم اللوجستية لفقد MIM أحادي النمط. يستخدم bool_masked_pos للحصول على البقع المقنّعة. يُعاد المخرج المسطّح عندما تكون بعض البقع مقنّعة في bool_masked_pos.
  • mlm_logits (torch.Tensor من الشكل (batch_size, text_seq_length, text_vocab_size) أو من الشكل (total_masked_seq_length, text_vocab_size)، اختياري، يُعاد عند وجود input_ids_masked وعدم وجود pixel_values) — القيم اللوجستية لخسارة MLM أحادية النمط. يُعاد المخرج المسطّح عندما يكون لدى input_ids_masked بعض الرموز المقنّعة.
  • itm_logits (torch.Tensor من الشكل (batch_size, 2)، اختياري، يُعاد عند وجود input_ids_masked وpixel_values) — القيم اللوجستية لخسارة ITM. لاحظ أن خسارة ITM تُحسب على الأزواج المقنّعة في FLAVA.
  • contrastive_logits_per_image (torch.Tensor من الشكل (image_batch_size, text_batch_size)) — درجات ضرب النقط المُقيّسة بين image_embeddings وtext_embeddings لكن بعد تمريرها عبر طبقتي image_projection وtext_projection في FLAVA على التوالي. يمثل هذا درجات التشابه بين الصورة والنص. يتم حساب ذلك على الصور والنصوص غير المقنّعة.
  • contrastive_logits_per_text (torch.Tensor من الشكل (text_batch_size, image_batch_size)) — درجات ضرب النقط المُقيّسة بين text_embeddings وimage_embeddings لكن بعد تمريرها عبر طبقتي text_projection وimage_projection في FLAVA على التوالي. يتم حساب هذا على الصور والنصوص غير المقنّعة.
  • mmm_image_logits (torch.Tensor من الشكل (batch_size, num_image_patches, image_vocab_size) أو من الشكل(total_masked_patches, image_vocab_size)، اختياري، يُعاد عند وجود pixel_values وinput_ids_masked) — القيم اللوجستية لفقدان MMM متعدد الوسائط للصور. يستخدم bool_masked_pos للحصول على البقع المقنّعة. يُعاد المخرج المسطّح عندما تكون بعض البقع مقنّعة في bool_masked_pos.
  • mmm_text_logits (torch.Tensor من الشكل (batch_size, text_seq_length, text_vocab_size) أو من الشكل (total_masked_seq_length, text_vocab_size)، اختياري، يُعاد عند وجود pixel_values وinput_ids_masked) — القيم اللوجستية لفقد MMM النصي متعدد الوسائط. يُعاد المخرج المسطّح عندما يكون لدى input_ids_masked بعض الرموز مقنّعة.

أمثلة:

>>> from PIL import Image
>>> from huggingface_hub.utils import httpx
>>> from io import BytesIO
>>> from transformers import FlavaForPreTraining, AutoProcessor

>>> url = "http://images.cocodataset.org/val2017/000000039769.jpg"
>>> with httpx.stream("GET", url) as response:
...     image = Image.open(BytesIO(response.read()))

>>> model = FlavaForPreTraining.from_pretrained("facebook/flava-full")
>>> processor = AutoProcessor.from_pretrained("facebook/flava-full")

>>> text = ["a photo of a cat"]

>>> inputs = processor(
...     images=[image],
...     text=text,
...     return_masks=True,
...     return_codebook_pixels=True,
...     padding=True,
...     max_length=77,
...     return_tensors="pt",
... )


>>> output = model(**inputs)

FlavaModel

فئة transformers.FlavaModel

< >

( config: FlavaConfig )

المعاملات

  • config (FlavaConfig) — فئة إعدادات النموذج التي تحتوي على جميع معاملات النموذج. لا يؤدي التهيئة باستخدام ملف الإعداد إلى تحميل الأوزان المرتبطة بالنموذج، بل الإعدادات فقط. راجع طريقة from_pretrained() لتحميل أوزان النموذج.

نموذج Flava الأساسي الذي يُخرج حالات مخفية خام دون أي رأس محدد في الأعلى.

يرث هذا النموذج من PreTrainedModel. راجع توثيق الفئة الأصلية لمعرفة الطرق العامة التي تنفذها المكتبة لجميع نماذجها (مثل التحميل أو الحفظ، وتغيير حجم تضمينات الإدخال، وقص الرؤوس، وما إلى ذلك).

هذا النموذج هو أيضًا فئة فرعية من torch.nn.Module في PyTorch. استخدمه كوحدة PyTorch عادية، وارجع إلى توثيق PyTorch لكل ما يتعلق بالاستخدام العام والسلوك.

forward

< >

( input_ids: typing.Optional[torch.LongTensor] = Nonepixel_values: typing.Optional[torch.Tensor] = Noneattention_mask: typing.Optional[torch.Tensor] = Nonetoken_type_ids: typing.Optional[torch.Tensor] = Nonebool_masked_pos: typing.Optional[torch.Tensor] = Noneposition_ids: typing.Optional[torch.LongTensor] = Noneimage_attention_mask: typing.Optional[torch.Tensor] = Noneskip_multimodal_encoder: bool | None = Noneoutput_attentions: bool | None = Noneoutput_hidden_states: bool = Truereturn_dict: bool | None = None**kwargs ) → FlavaModelOutput or tuple(torch.Tensor)

المعاملات

  • input_ids (torch.LongTensor من الشكل (batch_size, image_num_patches + text_seq_len)) — فهارس رموز تسلسل الإدخال في قاموس الكلمات. يمكن الحصول على الفهارس باستخدام AutoTokenizer. راجع PreTrainedTokenizer.encode() و PreTrainedTokenizer.call() للتفاصيل. ما هي معرّفات الإدخال؟
  • pixel_values (torch.Tensor من الشكل (batch_size, num_channels, image_size, image_size)، اختياري) — المصفوفات المقابلة للصور المدخلة. يمكن الحصول على قيم البكسلات باستخدام FlavaImageProcessor. راجع FlavaImageProcessor.call() للتفاصيل (FlavaProcessor يستخدم FlavaImageProcessor لمعالجة الصور).
  • attention_mask (torch.Tensor بشكل (batch_size, sequence_length), اختياري) — قناع لتجنب تنفيذ الانتباه على فهارس رموز الحشو. القيم المختارة للقناع هي [0, 1]:
    • 1 للرموز التي لم تُقنَّع،
    • 0 للرموز التي تم إخفاؤها.

    ما هي أقنعة الانتباه؟

  • token_type_ids (torch.LongTensor بشكل (batch_size, image_num_patches + text_seq_len), اختياري) — مؤشرات رموز المقاطع لتحديد الجزء الأول والثاني من المدخلات. يتم اختيار المؤشرات من [0, 1]:
  • bool_masked_pos (torch.BoolTensor من الشكل (batch_size, image_num_patches)) — مواضع مقنّعة من نوع منطقي. تُظهر أيّ البقع مقنّعة (1) وأيّها غير مقنّع (0).
  • position_ids (torch.LongTensor بشكل (batch_size, sequence_length), اختياري) — مؤشرات مواضع رموز كل تسلسل إدخال في تضمينات المواضع. يتم اختيارها ضمن النطاق [0, config.n_positions - 1].

    ما هي معرّفات المواقع؟

  • image_attention_mask (torch.Tensor بشكل (batch_size, image_num_patches), اختياري) — قناع لتجنب تنفيذ الانتباه على قيم البكسلات المعبأة في مدخلات الصور. قيم القناع المختارة من [0, 1]:
    • 1 للقيم البكسلية الحقيقية (أي غير المقنّعة)،
    • 0 لقيم البكسلات التي تمثل الحشو (أي المقنّعة).
  • skip_multimodal_encoder (*bool*, اختياري) — تخطي أي عمليات حسابية لمُشفِّر الوسائط المتعددة. مفيد إذا لم يتم استخدام ترميز الوسائط المتعددة.
  • output_attentions (bool، اختياري) — ما إذا كان يجب إرجاع تensors الانتباه لجميع طبقات الانتباه أم لا. راجع attentions ضمن tensors المُرجعة لمزيد من التفاصيل.
  • output_hidden_states (bool، اختياري، القيمة الافتراضية True) — ما إذا كان يجب إرجاع حالات الطبقات المخفية لجميع الطبقات. راجع hidden_states ضمن الموترات المُرجعة للحصول على مزيد من التفاصيل.
  • return_dict (bool، اختياري) — ما إذا كان يجب إرجاع ModelOutput بدلاً من tuple عادي.

يعيد

FlavaModelOutput أو tuple(torch.Tensor)

FlavaModelOutput أو مجموعة مرتبة من torch.Tensor (إذا تم تمرير return_dict=False أو عندما يكون config.return_dict=False) وتتضمن عناصر مختلفة تعتمد على التهيئة (FlavaConfig) والمدخلات.

تتجاوز طريقة FlavaModel الخاصة بالتقديم (forward) الطريقة الخاصة __call__.

على الرغم من أنه يجب تعريف وصفة المرور الأمامي داخل هذه الدالة، إلا أنه ينبغي استدعاء كائن Module بدلاً من هذه الدالة، لأن الكائن يتولى تنفيذ خطوات المعالجة المسبقة والمعالجة اللاحقة، بينما تتجاهل الدالة هذه الخطوات بصمت.

  • image_embeddings (torch.Tensor من الشكل (batch_size, output_dim)، اختياري، يُعاد عند وجود pixel_values) — تمثيلات الصور، وهي في الأساس المخرجات المجمعة لنموذج FlavaImageModel.
  • image_output (BaseModelOutputWithPooling، اختياري، يُعاد عند وجود pixel_values) — مخرجات FlavaImageModel.
  • text_embeddings (torch.Tensor من الشكل (batch_size, output_dim)، اختياري، يُعاد عند وجود input_ids) — تمثيلات النص، وهي في الأساس المخرجات المجمعة لنموذج FlavaTextModel.
  • text_output (BaseModelOutputWithPooling، اختياري، يُعاد عند وجود input_ids) — مخرجات FlavaTextModel.
  • multimodal_embeddings (torch.Tensor من الشكل (batch_size, output_dim)، اختياري، يُعاد عند وجود input_ids وpixel_values وعندما يكون skip_multimodal_encoder هو None أو False) — التضمينات متعددة الوسائط، وهي في الأساس المخرجات المجمعة لـ FlavaTextModel.
  • multimodal_output (BaseModelOutputWithPooling، يُعاد عند وجود input_ids وpixel_values وعند أن يكون skip_multimodal_encoder إما None أو False) — مخرجات FlavaMultimodalModel.

أمثلة:

>>> from PIL import Image
>>> from huggingface_hub.utils import httpx
>>> from io import BytesIO
>>> from transformers import AutoProcessor, FlavaModel

>>> model = FlavaModel.from_pretrained("facebook/flava-full")
>>> processor = AutoProcessor.from_pretrained("facebook/flava-full")

>>> url = "http://images.cocodataset.org/val2017/000000039769.jpg"
>>> with httpx.stream("GET", url) as response:
...     image = Image.open(BytesIO(response.read()))

>>> inputs = processor(text=["a photo of a cat"], images=image, return_tensors="pt", padding=True)

>>> outputs = model(**inputs)

>>> image_embeddings = outputs.image_embeddings
>>> text_embeddings = outputs.text_embeddings
>>> multimodal_embeddings = outputs.multimodal_embeddings

>>> outputs.image_embeddings.shape
torch.Size([1, 197, 768])

>>> text_embeddings.shape
torch.Size([1, 7, 768])

>>> multimodal_embeddings.shape
torch.Size([1, 205, 768])

get_text_features

< >

( input_ids: Tensorattention_mask: typing.Optional[torch.Tensor] = Nonetoken_type_ids: typing.Optional[torch.Tensor] = Noneposition_ids: typing.Optional[torch.Tensor] = None**kwargs: *<class 'transformers.utils.generic.TransformersKwargs'> ) → BaseModelOutputWithPooling or tuple(torch.Tensor)

المعاملات

  • input_ids (torch.LongTensor من الشكل (batch_size, text_seq_length)) — فهارس رموز تسلسل الإدخال في قاموس الكلمات. يمكن الحصول على الفهارس باستخدام AutoTokenizer. راجع PreTrainedTokenizer.encode() و PreTrainedTokenizer.call() للتفاصيل. ما هي معرّفات الإدخال؟
  • attention_mask (torch.Tensor بشكل (batch_size, sequence_length), اختياري) — قناع لتجنب تنفيذ الانتباه على فهارس رموز الحشو. القيم المختارة للقناع هي [0, 1]:
    • 1 للرموز التي لم تُقنَّع،
    • 0 للرموز التي تم إخفاؤها.

    ما هي أقنعة الانتباه؟

  • token_type_ids (torch.LongTensor بشكل (batch_size, text_seq_length), اختياري) — مؤشرات رموز المقاطع لتحديد الجزء الأول والثاني من المدخلات. يتم اختيار المؤشرات من [0, 1]:
  • position_ids (torch.Tensor بشكل (batch_size, sequence_length), اختياري) — مؤشرات مواضع رموز كل تسلسل إدخال في تضمينات المواضع. يتم اختيارها ضمن النطاق [0, config.n_positions - 1].

    ما هي معرّفات المواقع؟

يعيد

BaseModelOutputWithPooling أو tuple(torch.Tensor)

BaseModelOutputWithPooling أو مجموعة (tuple) من torch.Tensor (إذا تم تمرير return_dict=False أو عندما يكون config.return_dict=False) وتتضمن عناصر مختلفة تعتمد على الإعداد (FlavaConfig) والمدخلات.

  • last_hidden_state (torch.Tensor من الشكل (batch_size, sequence_length, hidden_size)) — تسلسل حالات مخفية عند مخرج الطبقة الأخيرة من النموذج.

  • pooler_output (torch.Tensor من الشكل (batch_size, hidden_size)) — حالة الطبقة المخفية الأخيرة للرمز الأول من التسلسل (رمز التصنيف) بعد المعالجة الإضافية عبر الطبقات المستخدمة في مهمة ما قبل التدريب المساعدة. على سبيل المثال، بالنسبة لعائلة نماذج BERT، تُرجع هذه الخاصية رمز التصنيف بعد معالجته عبر طبقة خطية ودالة تفعيل tanh. تُدرَّب أوزان الطبقة الخطية من هدف التنبؤ بالجملة التالية (التصنيف) أثناء ما قبل التدريب.

  • hidden_states (tuple(torch.Tensor)، اختياري، يُعاد عند تمرير output_hidden_states=True أو عند تعيين config.output_hidden_states=True) — مجموعة من torch.Tensor (واحدة لإخراج الطبقات المضمنة، إذا كان النموذج يحتوي على طبقة تضمين، + واحدة لإخراج كل طبقة) من الشكل (batch_size, sequence_length, hidden_size).

    حالات النموذج المخفية عند مخرج كل طبقة بالإضافة إلى مخرجات التضمين الأولي الاختيارية.

  • attentions (tuple(torch.Tensor)، اختياري، يُعاد عند تمرير output_attentions=True أو عند تعيين config.output_attentions=True) — مجموعة من torch.Tensor (واحدة لكل طبقة) بأبعاد (batch_size, num_heads, sequence_length, sequence_length).

    أوزان الانتباه بعد تطبيق دالة softmax على الانتباه، وتُستخدم لحساب المتوسط الموزون في رؤوس الانتباه الذاتي.

أمثلة:

>>> import torch
>>> from transformers import AutoProcessor, FlavaModel

>>> model = FlavaModel.from_pretrained("{0}")
>>> processor = AutoProcessor.from_pretrained("{0}")

>>> inputs = processor(
...     text=["a photo of a cat", "a photo of a dog"], max_length=77, padding="max_length", return_tensors="pt"
... )
>>> with torch.inference_mode():
...     text_features = model.get_text_features(**inputs)

get_image_features

< >

( pixel_values: Tensorbool_masked_pos: typing.Optional[torch.BoolTensor] = Noneinterpolate_pos_encoding: bool | None = Noneattention_mask: typing.Optional[torch.Tensor] = None**kwargs: *<class 'transformers.utils.generic.TransformersKwargs'> ) → BaseModelOutputWithPooling or tuple(torch.Tensor)

المعاملات

  • pixel_values (torch.Tensor من الشكل (batch_size, num_channels, image_size, image_size)) — المصفوفات المقابلة لصور الإدخال. يمكن الحصول على قيم البكسل باستخدام FlavaImageProcessor. راجع FlavaImageProcessor.call() للتفاصيل (يستخدم FlavaProcessor FlavaImageProcessor لمعالجة الصور).
  • bool_masked_pos (torch.BoolTensor من الشكل (batch_size, image_num_patches)) — مواضع مقنّعة من نوع منطقي. تُظهر أيّ البقع مقنّعة (1) وأيّها غير مقنّع (0).
  • interpolate_pos_encoding (bool, اختياري) — ما إذا كان سيتم استيفاء ترميزات المواقع المُدرَّبة مسبقًا.
  • attention_mask (torch.Tensor بشكل (batch_size, sequence_length), اختياري) — قناع لتجنب تنفيذ الانتباه على فهارس رموز الحشو. القيم المختارة للقناع هي [0, 1]:
    • 1 للرموز التي لم تُقنَّع،
    • 0 للرموز التي تم إخفاؤها.

    ما هي أقنعة الانتباه؟

يعيد

BaseModelOutputWithPooling أو tuple(torch.Tensor)

BaseModelOutputWithPooling أو مجموعة (tuple) من torch.Tensor (إذا تم تمرير return_dict=False أو عندما يكون config.return_dict=False) وتتضمن عناصر مختلفة تعتمد على الإعداد (FlavaConfig) والمدخلات.

  • last_hidden_state (torch.Tensor من الشكل (batch_size, sequence_length, hidden_size)) — تسلسل حالات مخفية عند مخرج الطبقة الأخيرة من النموذج.

  • pooler_output (torch.Tensor من الشكل (batch_size, hidden_size)) — حالة الطبقة المخفية الأخيرة للرمز الأول من التسلسل (رمز التصنيف) بعد المعالجة الإضافية عبر الطبقات المستخدمة في مهمة ما قبل التدريب المساعدة. على سبيل المثال، بالنسبة لعائلة نماذج BERT، تُرجع هذه الخاصية رمز التصنيف بعد معالجته عبر طبقة خطية ودالة تفعيل tanh. تُدرَّب أوزان الطبقة الخطية من هدف التنبؤ بالجملة التالية (التصنيف) أثناء ما قبل التدريب.

  • hidden_states (tuple(torch.Tensor)، اختياري، يُعاد عند تمرير output_hidden_states=True أو عند تعيين config.output_hidden_states=True) — مجموعة من torch.Tensor (واحدة لإخراج الطبقات المضمنة، إذا كان النموذج يحتوي على طبقة تضمين، + واحدة لإخراج كل طبقة) من الشكل (batch_size, sequence_length, hidden_size).

    حالات النموذج المخفية عند مخرج كل طبقة بالإضافة إلى مخرجات التضمين الأولي الاختيارية.

  • attentions (tuple(torch.Tensor)، اختياري، يُعاد عند تمرير output_attentions=True أو عند تعيين config.output_attentions=True) — مجموعة من torch.Tensor (واحدة لكل طبقة) بأبعاد (batch_size, num_heads, sequence_length, sequence_length).

    أوزان الانتباه بعد تطبيق دالة softmax على الانتباه، وتُستخدم لحساب المتوسط الموزون في رؤوس الانتباه الذاتي.

أمثلة:

>>> import torch
>>> from transformers import AutoProcessor, FlavaModel
>>> from transformers.image_utils import load_image

>>> model = FlavaModel.from_pretrained("{0}")
>>> processor = AutoProcessor.from_pretrained("{0}")

>>> url = "http://images.cocodataset.org/val2017/000000039769.jpg"
>>> image = load_image(url)

>>> inputs = processor(images=image, return_tensors="pt")

>>> with torch.inference_mode():
...     image_features = model.get_image_features(**inputs)

FlavaImageCodebook

فئة transformers.FlavaImageCodebook

< >

( config: FlavaImageCodebookConfig**kwargs: Any )

المعاملات

  • config (FlavaImageCodebookConfig) — فئة إعدادات النموذج التي تحتوي على جميع معاملات النموذج. لا يؤدي التهيئة باستخدام ملف الإعدادات إلى تحميل الأوزان المرتبطة بالنموذج، بل الإعدادات فقط. راجع طريقة from_pretrained() لتحميل أوزان النموذج.

يستلهم نموذج FLAVA الخاص بكودبوك الصور من المُشفِّر الأصلي في DALL-E. يُخرج حالات مخفية خام ويمكن استخدامه لتوليد رموز صورة لصورة معينة بناءً على قاموس DALL-E. يُستخدم لتوليد تسميات لـ MIM. استخدم get_codebook_indices للحصول على رموز الصورة لصورة معينة.

يرث هذا النموذج من PreTrainedModel. راجع توثيق الفئة الأصلية لمعرفة الطرق العامة التي تنفذها المكتبة لجميع نماذجها (مثل التحميل أو الحفظ، وتغيير حجم تضمينات الإدخال، وقص الرؤوس، وما إلى ذلك).

هذا النموذج هو أيضًا فئة فرعية من torch.nn.Module في PyTorch. استخدمه كوحدة PyTorch عادية، وارجع إلى توثيق PyTorch لكل ما يتعلق بالاستخدام العام والسلوك.

forward

< >

( pixel_values: Tensor**kwargs )

get_codebook_indices

< >

( pixel_values: Tensor )

get_codebook_probs

< >

( pixel_values: Tensor )

FlavaTextModel

فئة transformers.FlavaTextModel

< >

( config: FlavaTextConfigadd_pooling_layer: bool = True )

المعاملات

  • config (FlavaTextConfig) — فئة إعدادات النموذج التي تحتوي على جميع معاملات النموذج. لا يؤدي التهيئة باستخدام ملف الإعدادات إلى تحميل الأوزان المرتبطة بالنموذج، بل الإعدادات فقط. راجع طريقة from_pretrained() لتحميل أوزان النموذج.
  • add_pooling_layer (bool، اختياري، القيمة الافتراضية True) — ما إذا كان يجب إضافة طبقة تجميع

نموذج Flava Text الخام الذي يُخرج حالات مخفية خام دون أي رأس محدد في الأعلى.

يرث هذا النموذج من PreTrainedModel. راجع توثيق الفئة الأصلية لمعرفة الطرق العامة التي تنفذها المكتبة لجميع نماذجها (مثل التحميل أو الحفظ، وتغيير حجم تضمينات الإدخال، وقص الرؤوس، وما إلى ذلك).

هذا النموذج هو أيضًا فئة فرعية من torch.nn.Module في PyTorch. استخدمه كوحدة PyTorch عادية، وارجع إلى توثيق PyTorch لكل ما يتعلق بالاستخدام العام والسلوك.

forward

< >

( input_ids: typing.Optional[torch.Tensor] = Noneattention_mask: typing.Optional[torch.Tensor] = Nonetoken_type_ids: typing.Optional[torch.Tensor] = Noneposition_ids: typing.Optional[torch.Tensor] = Noneoutput_attentions: bool | None = Noneoutput_hidden_states: bool | None = Nonereturn_dict: bool | None = None**kwargs ) → BaseModelOutputWithPooling or tuple(torch.Tensor)

المعاملات

  • input_ids (torch.LongTensor من الشكل (batch_size, text_seq_length)) — فهارس رموز تسلسل الإدخال في قاموس الكلمات. يمكن الحصول على الفهارس باستخدام AutoTokenizer. راجع PreTrainedTokenizer.encode() و PreTrainedTokenizer.call() للتفاصيل. ما هي معرّفات الإدخال؟
  • attention_mask (torch.Tensor بشكل (batch_size, sequence_length), اختياري) — قناع لتجنب تنفيذ الانتباه على فهارس رموز الحشو. القيم المختارة للقناع هي [0, 1]:
    • 1 للرموز التي لم تُقنَّع،
    • 0 للرموز التي تم إخفاؤها.

    ما هي أقنعة الانتباه؟

  • token_type_ids (torch.LongTensor بشكل (batch_size, text_seq_length), اختياري) — مؤشرات رموز المقاطع لتحديد الجزء الأول والثاني من المدخلات. يتم اختيار المؤشرات من [0, 1]:
  • position_ids (torch.Tensor بشكل (batch_size, sequence_length), اختياري) — مؤشرات مواضع رموز كل تسلسل إدخال في تضمينات المواضع. يتم اختيارها ضمن النطاق [0, config.n_positions - 1].

    ما هي معرّفات المواقع؟

  • output_attentions (bool، اختياري) — ما إذا كان يجب إرجاع تensors الانتباه لجميع طبقات الانتباه أم لا. راجع attentions ضمن tensors المُرجعة لمزيد من التفاصيل.
  • output_hidden_states (bool، اختياري) — ما إذا كان يجب إرجاع حالات الطبقات المخفية لجميع الطبقات. راجع hidden_states ضمن الموترات المُرجعة للحصول على مزيد من التفاصيل.
  • return_dict (bool، اختياري) — ما إذا كان يجب إرجاع ModelOutput بدلاً من tuple عادي.

يعيد

BaseModelOutputWithPooling أو tuple(torch.Tensor)

BaseModelOutputWithPooling أو مجموعة (tuple) من torch.Tensor (إذا تم تمرير return_dict=False أو عندما يكون config.return_dict=False) وتتضمن عناصر مختلفة تعتمد على الإعداد (FlavaConfig) والمدخلات.

تتجاوز طريقة FlavaTextModel الخاصة بالتقديم (forward) الطريقة الخاصة __call__.

على الرغم من أنه يجب تعريف وصفة المرور الأمامي داخل هذه الدالة، إلا أنه ينبغي استدعاء كائن Module بدلاً من هذه الدالة، لأن الكائن يتولى تنفيذ خطوات المعالجة المسبقة والمعالجة اللاحقة، بينما تتجاهل الدالة هذه الخطوات بصمت.

  • last_hidden_state (torch.Tensor من الشكل (batch_size, sequence_length, hidden_size)) — تسلسل حالات مخفية عند مخرج الطبقة الأخيرة من النموذج.

  • pooler_output (torch.Tensor من الشكل (batch_size, hidden_size)) — حالة الطبقة المخفية الأخيرة للرمز الأول من التسلسل (رمز التصنيف) بعد المعالجة الإضافية عبر الطبقات المستخدمة في مهمة ما قبل التدريب المساعدة. على سبيل المثال، بالنسبة لعائلة نماذج BERT، تُرجع هذه الخاصية رمز التصنيف بعد معالجته عبر طبقة خطية ودالة تفعيل tanh. تُدرَّب أوزان الطبقة الخطية من هدف التنبؤ بالجملة التالية (التصنيف) أثناء ما قبل التدريب.

  • hidden_states (tuple(torch.Tensor)، اختياري، يُعاد عند تمرير output_hidden_states=True أو عند تعيين config.output_hidden_states=True) — مجموعة من torch.Tensor (واحدة لإخراج الطبقات المضمنة، إذا كان النموذج يحتوي على طبقة تضمين، + واحدة لإخراج كل طبقة) من الشكل (batch_size, sequence_length, hidden_size).

    حالات النموذج المخفية عند مخرج كل طبقة بالإضافة إلى مخرجات التضمين الأولي الاختيارية.

  • attentions (tuple(torch.Tensor)، اختياري، يُعاد عند تمرير output_attentions=True أو عند تعيين config.output_attentions=True) — مجموعة من torch.Tensor (واحدة لكل طبقة) بأبعاد (batch_size, num_heads, sequence_length, sequence_length).

    أوزان الانتباه بعد تطبيق دالة softmax على الانتباه، وتُستخدم لحساب المتوسط الموزون في رؤوس الانتباه الذاتي.

FlavaImageModel

فئة transformers.FlavaImageModel

< >

( config: FlavaImageConfigadd_pooling_layer: bool = True )

المعاملات

  • config (FlavaImageConfig) — فئة إعدادات النموذج التي تحتوي على جميع معاملات النموذج. لا يؤدي التهيئة باستخدام ملف الإعداد إلى تحميل الأوزان المرتبطة بالنموذج، بل الإعدادات فقط. راجع طريقة from_pretrained() لتحميل أوزان النموذج.
  • add_pooling_layer (bool، اختياري، القيمة الافتراضية True) — ما إذا كان يجب إضافة طبقة تجميع

نموذج Flava الأساسي الذي يُخرج حالات مخفية خام دون أي رأس محدد في الأعلى.

يرث هذا النموذج من PreTrainedModel. راجع توثيق الفئة الأصلية لمعرفة الطرق العامة التي تنفذها المكتبة لجميع نماذجها (مثل التحميل أو الحفظ، وتغيير حجم تضمينات الإدخال، وقص الرؤوس، وما إلى ذلك).

هذا النموذج هو أيضًا فئة فرعية من torch.nn.Module في PyTorch. استخدمه كوحدة PyTorch عادية، وارجع إلى توثيق PyTorch لكل ما يتعلق بالاستخدام العام والسلوك.

forward

< >

( pixel_values: typing.Optional[torch.Tensor] = Nonebool_masked_pos: typing.Optional[torch.BoolTensor] = Noneinterpolate_pos_encoding: bool | None = Noneattention_mask: typing.Optional[torch.Tensor] = Noneoutput_attentions: bool | None = Noneoutput_hidden_states: bool | None = Nonereturn_dict: bool | None = None**kwargs ) → BaseModelOutputWithPooling or tuple(torch.Tensor)

المعاملات

  • pixel_values (torch.Tensor من الشكل (batch_size, num_channels, image_size, image_size)، اختياري) — المصفوفات المقابلة للصور المدخلة. يمكن الحصول على قيم البكسلات باستخدام FlavaImageProcessor. راجع FlavaImageProcessor.call() للتفاصيل (FlavaProcessor يستخدم FlavaImageProcessor لمعالجة الصور).
  • bool_masked_pos (torch.BoolTensor من الشكل (batch_size, image_num_patches)) — مواضع مقنّعة من نوع منطقي. تُظهر أيّ البقع مقنّعة (1) وأيّها غير مقنّع (0).
  • interpolate_pos_encoding (bool, اختياري) — ما إذا كان سيتم استيفاء ترميزات المواقع المُدرَّبة مسبقًا.
  • attention_mask (torch.Tensor بشكل (batch_size, sequence_length), اختياري) — قناع لتجنب تنفيذ الانتباه على فهارس رموز الحشو. القيم المختارة للقناع هي [0, 1]:
    • 1 للرموز التي لم تُقنَّع،
    • 0 للرموز التي تم إخفاؤها.

    ما هي أقنعة الانتباه؟

  • output_attentions (bool، اختياري) — ما إذا كان يجب إرجاع تensors الانتباه لجميع طبقات الانتباه أم لا. راجع attentions ضمن tensors المُرجعة لمزيد من التفاصيل.
  • output_hidden_states (bool، اختياري) — ما إذا كان يجب إرجاع حالات الطبقات المخفية لجميع الطبقات. راجع hidden_states ضمن الموترات المُرجعة للحصول على مزيد من التفاصيل.
  • return_dict (bool، اختياري) — ما إذا كان يجب إرجاع ModelOutput بدلاً من tuple عادي.

يعيد

BaseModelOutputWithPooling أو tuple(torch.Tensor)

BaseModelOutputWithPooling أو مجموعة (tuple) من torch.Tensor (إذا تم تمرير return_dict=False أو عندما يكون config.return_dict=False) وتتضمن عناصر مختلفة تعتمد على الإعداد (FlavaConfig) والمدخلات.

تتجاوز طريقة FlavaImageModel الخاصة بالتقديم (forward) الطريقة الخاصة __call__.

على الرغم من أنه يجب تعريف وصفة المرور الأمامي داخل هذه الدالة، إلا أنه ينبغي استدعاء كائن Module بدلاً من هذه الدالة، لأن الكائن يتولى تنفيذ خطوات المعالجة المسبقة والمعالجة اللاحقة، بينما تتجاهل الدالة هذه الخطوات بصمت.

  • last_hidden_state (torch.Tensor من الشكل (batch_size, sequence_length, hidden_size)) — تسلسل حالات مخفية عند مخرج الطبقة الأخيرة من النموذج.

  • pooler_output (torch.Tensor من الشكل (batch_size, hidden_size)) — حالة الطبقة المخفية الأخيرة للرمز الأول من التسلسل (رمز التصنيف) بعد المعالجة الإضافية عبر الطبقات المستخدمة في مهمة ما قبل التدريب المساعدة. على سبيل المثال، بالنسبة لعائلة نماذج BERT، تُرجع هذه الخاصية رمز التصنيف بعد معالجته عبر طبقة خطية ودالة تفعيل tanh. تُدرَّب أوزان الطبقة الخطية من هدف التنبؤ بالجملة التالية (التصنيف) أثناء ما قبل التدريب.

  • hidden_states (tuple(torch.Tensor)، اختياري، يُعاد عند تمرير output_hidden_states=True أو عند تعيين config.output_hidden_states=True) — مجموعة من torch.Tensor (واحدة لإخراج الطبقات المضمنة، إذا كان النموذج يحتوي على طبقة تضمين، + واحدة لإخراج كل طبقة) من الشكل (batch_size, sequence_length, hidden_size).

    حالات النموذج المخفية عند مخرج كل طبقة بالإضافة إلى مخرجات التضمين الأولي الاختيارية.

  • attentions (tuple(torch.Tensor)، اختياري، يُعاد عند تمرير output_attentions=True أو عند تعيين config.output_attentions=True) — مجموعة من torch.Tensor (واحدة لكل طبقة) بأبعاد (batch_size, num_heads, sequence_length, sequence_length).

    أوزان الانتباه بعد تطبيق دالة softmax على الانتباه، وتُستخدم لحساب المتوسط الموزون في رؤوس الانتباه الذاتي.

FlavaMultimodalModel

فئة transformers.FlavaMultimodalModel

< >

( config: FlavaMultimodalConfigadd_pooling_layer = True )

المعاملات

  • config (FlavaMultimodalConfig) — فئة إعدادات النموذج التي تحتوي على جميع معاملات النموذج. لا يؤدي التهيئة باستخدام ملف الإعدادات إلى تحميل الأوزان المرتبطة بالنموذج، بل الإعدادات فقط. راجع طريقة from_pretrained() لتحميل أوزان النموذج.
  • add_pooling_layer (bool، اختياري، القيمة الافتراضية True) — ما إذا كان يجب إضافة طبقة تجميع

نموذج Flava الأساسي الذي يُخرج حالات مخفية خام دون أي رأس محدد في الأعلى.

يرث هذا النموذج من PreTrainedModel. راجع توثيق الفئة الأصلية لمعرفة الطرق العامة التي تنفذها المكتبة لجميع نماذجها (مثل التحميل أو الحفظ، وتغيير حجم تضمينات الإدخال، وقص الرؤوس، وما إلى ذلك).

هذا النموذج هو أيضًا فئة فرعية من torch.nn.Module في PyTorch. استخدمه كوحدة PyTorch عادية، وارجع إلى توثيق PyTorch لكل ما يتعلق بالاستخدام العام والسلوك.

forward

< >

( hidden_states: Tensorattention_mask: typing.Optional[torch.Tensor] = Noneoutput_attentions: bool | None = Noneoutput_hidden_states: bool | None = Nonereturn_dict: bool | None = None**kwargs ) → BaseModelOutputWithPooling or tuple(torch.Tensor)

المعاملات

  • hidden_states (torch.Tensor من الشكل (batch_size, image_num_patches + text_seq_len, hidden_size)) — حالات المخفية المدمجة لمشفّرات النمط الواحد.
  • attention_mask (torch.Tensor بشكل (batch_size, sequence_length), اختياري) — قناع لتجنب تنفيذ الانتباه على فهارس رموز الحشو. القيم المختارة للقناع هي [0, 1]:
    • 1 للرموز التي لم تُقنَّع،
    • 0 للرموز التي تم إخفاؤها.

    ما هي أقنعة الانتباه؟

  • output_attentions (bool، اختياري) — ما إذا كان يجب إرجاع تensors الانتباه لجميع طبقات الانتباه أم لا. راجع attentions ضمن tensors المُرجعة لمزيد من التفاصيل.
  • output_hidden_states (bool، اختياري) — ما إذا كان يجب إرجاع حالات الطبقات المخفية لجميع الطبقات. راجع hidden_states ضمن الموترات المُرجعة للحصول على مزيد من التفاصيل.
  • return_dict (bool، اختياري) — ما إذا كان يجب إرجاع ModelOutput بدلاً من tuple عادي.

يعيد

BaseModelOutputWithPooling أو tuple(torch.Tensor)

BaseModelOutputWithPooling أو مجموعة (tuple) من torch.Tensor (إذا تم تمرير return_dict=False أو عندما يكون config.return_dict=False) وتتضمن عناصر مختلفة تعتمد على الإعداد (FlavaConfig) والمدخلات.

تتجاوز طريقة FlavaMultimodalModel الخاصة بالتقديم (forward) الطريقة الخاصة __call__.

على الرغم من أنه يجب تعريف وصفة المرور الأمامي داخل هذه الدالة، إلا أنه ينبغي استدعاء كائن Module بدلاً من هذه الدالة، لأن الكائن يتولى تنفيذ خطوات المعالجة المسبقة والمعالجة اللاحقة، بينما تتجاهل الدالة هذه الخطوات بصمت.

  • last_hidden_state (torch.Tensor من الشكل (batch_size, sequence_length, hidden_size)) — تسلسل حالات مخفية عند مخرج الطبقة الأخيرة من النموذج.

  • pooler_output (torch.Tensor من الشكل (batch_size, hidden_size)) — حالة الطبقة المخفية الأخيرة للرمز الأول من التسلسل (رمز التصنيف) بعد المعالجة الإضافية عبر الطبقات المستخدمة في مهمة ما قبل التدريب المساعدة. على سبيل المثال، بالنسبة لعائلة نماذج BERT، تُرجع هذه الخاصية رمز التصنيف بعد معالجته عبر طبقة خطية ودالة تفعيل tanh. تُدرَّب أوزان الطبقة الخطية من هدف التنبؤ بالجملة التالية (التصنيف) أثناء ما قبل التدريب.

  • hidden_states (tuple(torch.Tensor)، اختياري، يُعاد عند تمرير output_hidden_states=True أو عند تعيين config.output_hidden_states=True) — مجموعة من torch.Tensor (واحدة لإخراج الطبقات المضمنة، إذا كان النموذج يحتوي على طبقة تضمين، + واحدة لإخراج كل طبقة) من الشكل (batch_size, sequence_length, hidden_size).

    حالات النموذج المخفية عند مخرج كل طبقة بالإضافة إلى مخرجات التضمين الأولي الاختيارية.

  • attentions (tuple(torch.Tensor)، اختياري، يُعاد عند تمرير output_attentions=True أو عند تعيين config.output_attentions=True) — مجموعة من torch.Tensor (واحدة لكل طبقة) بأبعاد (batch_size, num_heads, sequence_length, sequence_length).

    أوزان الانتباه بعد تطبيق دالة softmax على الانتباه، وتُستخدم لحساب المتوسط الموزون في رؤوس الانتباه الذاتي.

Update on GitHub