Transformers documentation

SAM3-LiteText

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 في 12 فبراير 2026، وسُهم به في Hugging Face Transformers في 13 أبريل 2026.

SAM3-LiteText

نظرة عامة

قُدِّم SAM3-LiteText في SAM3-LiteText: An Anatomical Study of the SAM3 Text Encoder for Efficient Vision-Language Segmentation من قِبل Chengxi Zeng وYuxuan Jiang وGe Gao وShuai Wang وDuolikun Danier وBin Zhu وStevan Rudinac وDavid Bull وFan Zhang.

SAM3-LiteText هو متغير خفيف من SAM3 يستبدل مُشفِّر النص الثقيل في SAM3 (353 مليون معامل) بمُشفِّر نص مدمج مبني على MobileCLIP، مُحسَّن من خلال تقطير المعرفة. ويُحافظ على مُشفِّر الصور ViT-H الخاص بـ SAM3 كما هو. يقلل هذا من معاملات مُشفِّر النص بنسبة تصل إلى 88% مع الحفاظ على أداء تجزئة يقارب أداء النموذج الأصلي.

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

تُمكّن نماذج التقطيع المرئي-اللغوي مثل SAM3 من ترسيخ بصري مرن يقوده الإدخال النصي، لكنها ترث مشفّرات نصية كبيرة وعامة صُممت في الأصل لفهم اللغة المفتوح. عمليًا، تكون أوامر التقطيع النصية قصيرة ومنظمة ومقيّدة دلاليًا، مما يؤدي إلى توفير مفرط كبير في سعة المشفّر النصي، فضلًا عن أعباء حسابية وذاكرة مستمرة. في هذه الورقة، نُجري تحليلًا تشريحيًا واسع النطاق للإدخال النصي في التقطيع المرئي-اللغوي، يغطي 404,796 أمرًا نصيًا حقيقيًا عبر عدة معايير تقييم. تكشف تحليلاتنا عن ازدواجية شديدة: فمعظم نوافذ السياق غير مستغلة بشكل كافٍ، واستخدام المفردات شحيح للغاية، وتقع التضمينات النصية على متعددات أبعاد منخفضة رغم التمثيلات عالية الأبعاد. بدافع من هذه النتائج، نقترح SAM3-LiteText، وهو إطار عمل خفيف التشفير النصي يستبدل المشفّر النصي الأصلي في SAM3 بطالب MobileCLIP مدمج يُحسَّن عبر تقطير المعرفة. تُظهر تجارب موسّعة على معايير تقييم التقطيع للصور والفيديو أن SAM3-LiteText يقلّل من عدد معاملات المشفّر النصي بنسبة تصل إلى 88%، مما يُخفض بصمة الذاكرة الثابتة بشكل كبير، مع الحفاظ على أداء تقطيع يقارب أداء النموذج الأصلي.

يعتمد معمارية مُشفِّر النص على MobileCLIP ويتوفر بثلاثة متغيرات:

نسخةمُشفِّر النصمعلمات النصالاختزال
SAM3-LiteText-S0-16MobileCLIP-S042.54M~88%
SAM3-LiteText-S1-16MobileCLIP-S163.53M~82%
SAM3-LiteText-L-16MobileCLIP2-L123.80M~65%

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

الاستخدام

SAM3-LiteText هو بديل جاهز للاستخدام المباشر لـ SAM3 يعتمد على مُشفِّر نصوص خفيف الوزن. يستخدم المعالج نفسه (Sam3Processor) ويدعم نفس واجهة الإدخال. راجع توثيق SAM3 للحصول على أمثلة مفصّلة للاستخدام تشمل أوامر النصوص، وأوامر الصناديق، والاستدلال الدُفعي، والمزيد.

from io import BytesIO

from huggingface_hub.utils import httpx
from PIL import Image

from transformers import AutoModel, AutoProcessor


model = AutoModel.from_pretrained("yonigozlan/sam3-litetext-s0", device_map="auto")
processor = AutoProcessor.from_pretrained("yonigozlan/sam3-litetext-s0")

image_url = "http://images.cocodataset.org/val2017/000000077595.jpg"
image = Image.open(BytesIO(httpx.get(image_url).content)).convert("RGB")

inputs = processor(images=image, text="ear", return_tensors="pt").to(model.device)

outputs = model(**inputs)

results = processor.post_process_instance_segmentation(
    outputs,
    threshold=0.5,
    mask_threshold=0.5,
    target_sizes=inputs.get("original_sizes").tolist(),
)[0]

print(f"Found {len(results['masks'])} objects")

Sam3LiteTextConfig

فئة transformers.Sam3LiteTextConfig

< >

( 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 = Nonevision_config: dict | transformers.configuration_utils.PreTrainedConfig | None = Nonetext_config: dict | transformers.configuration_utils.PreTrainedConfig | None = Nonegeometry_encoder_config: dict | transformers.configuration_utils.PreTrainedConfig | None = Nonedetr_encoder_config: dict | transformers.configuration_utils.PreTrainedConfig | None = Nonedetr_decoder_config: dict | transformers.configuration_utils.PreTrainedConfig | None = Nonemask_decoder_config: dict | transformers.configuration_utils.PreTrainedConfig | None = Noneinitializer_range: float = 0.02 )

المعاملات

  • vision_config (Union[dict, ~configuration_utils.PreTrainedConfig], اختياري) — كائن الإعدادات أو قاموس العمود الفقري البصري.
  • text_config (Union[dict, ~configuration_utils.PreTrainedConfig]، اختياري) — كائن الإعدادات أو قاموس العمود الفقري النصي.
  • geometry_encoder_config (dict أو Sam3LiteTextGeometryEncoderConfig، اختياري) — إعدادات مُشفِّر الهندسة.
  • detr_encoder_config (dict أو Sam3LiteTextDETREncoderConfig، اختياري) — إعدادات مُشفِّر DETR.
  • detr_decoder_config (dict أو Sam3LiteTextDETRDecoderConfig، اختياري) — إعدادات لفك ترميز DETR.
  • mask_decoder_config (dict أو Sam3LiteTextMaskDecoderConfig، اختياري) — إعدادات لفك ترميز الأقنعة.
  • initializer_range (float، اختياري، القيمة الافتراضية 0.02) — الانحراف المعياري لـ truncated_normal_initializer المستخدم في تهيئة جميع مصفوفات الأوزان.

هذه فئة الإعدادات المخزنة لإعدادات نموذج Sam3LiteTextModel. تُستخدم لاستحداث نموذج Sam3 Lite Text وفقاً للحجج المحددة، مع تعريف بنية النموذج. إن استحداث إعدادات باستخدام القيم الافتراضية سيؤدي إلى الحصول على إعدادات مشابهة لتلك الخاصة بـ yonigozlan/sam3-litetext-s0

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

مثال:

>>> from transformers import Sam3LiteTextConfig, Sam3LiteTextModel

>>> # Initializing a SAM3_LITE_TEXT configuration
>>> configuration = Sam3LiteTextConfig()

>>> # Initializing a model from the configuration
>>> model = Sam3LiteTextModel(configuration)

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

Sam3LiteTextTextConfig

فئة transformers.Sam3LiteTextTextConfig

< >

( 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 = 49408hidden_size: int = 512intermediate_size: int = 2048projection_dim: int = 512num_hidden_layers: int = 12num_attention_heads: int = 8max_position_embeddings: int = 77hidden_act: str = 'gelu'layer_norm_eps: float = 1e-05attention_dropout: float = 0.0use_repmixer_blocks: bool = Truelayer_scale_init_value: float = 1e-05repmixer_kernel_size: int = 11 )

المعاملات

  • vocab_size (int، اختياري، القيمة الافتراضية 49408) — حجم مفردات النموذج. يحدد عدد الرموز المختلفة التي يمكن تمثيلها بواسطة input_ids.
  • hidden_size (int، اختياري، القيمة الافتراضية 512) — أبعاد التمثيلات المخفية.
  • intermediate_size (int، اختياري، القيمة الافتراضية 2048) — بعد تمثيلات MLP.
  • projection_dim (int، اختياري، القيمة الافتراضية 512) — أبعاد طبقات الإسقاط للنص والرؤية.
  • num_hidden_layers (int، اختياري، القيمة الافتراضية 12) — عدد الطبقات المخفية في مُفكِّك Transformer.
  • num_attention_heads (int، اختياري، القيمة الافتراضية 8) — عدد رؤوس الانتباه لكل طبقة انتباه في مُفكِّك Transformer.
  • max_position_embeddings (int، اختياري، القيمة الافتراضية 77) — أقصى طول تسلسل قد يُستخدم معه هذا النموذج على الإطلاق.
  • hidden_act (str، اختياري، القيمة الافتراضية gelu) — دالة التنشيط غير الخطية (دالة أو نص) في المُفكِّك. على سبيل المثال، "gelu"، "relu"، "silu"، وما إلى ذلك.
  • layer_norm_eps (float, اختياري، القيمة الافتراضية 1e-05) — قيمة الإيبسلون المستخدمة في طبقات تطبيع الطبقة.
  • attention_dropout (float، اختياري، القيمة الافتراضية 0.0) — نسبة الإسقاط (dropout) لاحتمالات الانتباه.
  • use_repmixer_blocks (bool، اختياري، القيمة الافتراضية True) — ما إذا كان سيتم استخدام كتل RepMixer (بنمط MobileCLIP) لطبقات المُشفِّر الأولى والأخيرة. عندما تكون القيمة False، تكون جميع الطبقات من طبقات مُشفِّر Transformer القياسية.
  • layer_scale_init_value (float, اختياري، القيمة الافتراضية 1e-5) — القيمة الأولية لمعاملات مقياس الطبقة القابلة للتعلم في كتل RepMixer (الفروع المتبقية).
  • repmixer_kernel_size (int، اختياري، القيمة الافتراضية 11) — حجم النواة للتحويلات التعميقية في كتل RepMixer (مسار مزج الرموز ومسار التغذية الأمامية التحويلية).

هذه فئة الإعدادات المخزنة لإعدادات نموذج Sam3LiteTextModel. تُستخدم لاستحداث نموذج Sam3 Lite Text وفقاً للحجج المحددة، مع تعريف بنية النموذج. إن استحداث إعدادات باستخدام القيم الافتراضية سيؤدي إلى الحصول على إعدادات مشابهة لتلك الخاصة بـ yonigozlan/sam3-litetext-s0

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

Sam3LiteTextGeometryEncoderConfig

فئة transformers.Sam3LiteTextGeometryEncoderConfig

< >

( 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 = 256num_layers: int = 3num_attention_heads: int = 8intermediate_size: int = 2048dropout: float | int = 0.1hidden_act: str = 'relu'hidden_dropout: float | int = 0.0layer_norm_eps: float = 1e-06roi_size: int = 7initializer_range: float = 0.02 )

المعاملات

  • hidden_size (int، اختياري، القيمة الافتراضية 256) — أبعاد التمثيلات المخفية.
  • num_layers (int, اختياري، القيمة الافتراضية 3) — عدد الطبقات المخفية في مُفكِّك Transformer.
  • num_attention_heads (int، اختياري، القيمة الافتراضية 8) — عدد رؤوس الانتباه لكل طبقة انتباه في مُفكِّك Transformer.
  • intermediate_size (int، اختياري، القيمة الافتراضية 2048) — بعد تمثيلات MLP.
  • dropout (Union[float, int]، اختياري، القيمة الافتراضية 0.1) — النسبة لجميع طبقات dropout.
  • hidden_act (str، اختياري، القيمة الافتراضية relu) — دالة التنشيط غير الخطية (دالة أو نص) في المُفكِّك. على سبيل المثال، "gelu"، "relu"، "silu"، وغيرها.
  • hidden_dropout (Union[float, int]، اختياري، القيمة الافتراضية 0.0) — احتمالية الإسقاط (dropout) لجميع الطبقات المتصلة بالكامل في التضمينات (embeddings) والمُشفِّر (encoder) والمُجمِّع (pooler).
  • layer_norm_eps (float, اختياري، القيمة الافتراضية 1e-06) — قيمة الإيبسلون المستخدمة في طبقات تطبيع الطبقة.
  • roi_size (int، اختياري، القيمة الافتراضية 7) — حجم منطقة الاهتمام (ROI) لعمليات تجميع الصناديق.
  • initializer_range (float، اختياري، القيمة الافتراضية 0.02) — الانحراف المعياري لـ truncated_normal_initializer المستخدم في تهيئة جميع مصفوفات الأوزان.

هذه فئة الإعدادات المخزنة لإعدادات نموذج Sam3LiteTextModel. تُستخدم لاستحداث نموذج Sam3 Lite Text وفقاً للحجج المحددة، مع تعريف بنية النموذج. إن استحداث إعدادات باستخدام القيم الافتراضية سيُنتج إعدادات مشابهة لتلك الخاصة بـ yonigozlan/sam3-litetext-s0

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

Sam3LiteTextDETREncoderConfig

فئة transformers.Sam3LiteTextDETREncoderConfig

< >

( 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 = 256num_layers: int = 6num_attention_heads: int = 8intermediate_size: int = 2048dropout: float | int = 0.1hidden_act: str = 'relu'hidden_dropout: float | int = 0.0layer_norm_eps: float = 1e-06initializer_range: float = 0.02 )

المعاملات

  • hidden_size (int، اختياري، القيمة الافتراضية 256) — أبعاد التمثيلات المخفية.
  • num_layers (int، اختياري، القيمة الافتراضية 6) — عدد الطبقات المخفية في مُفكِّك Transformer.
  • num_attention_heads (int، اختياري، القيمة الافتراضية 8) — عدد رؤوس الانتباه لكل طبقة انتباه في مُفكِّك Transformer.
  • intermediate_size (int، اختياري، القيمة الافتراضية 2048) — بعد تمثيلات MLP.
  • dropout (Union[float, int]، اختياري، القيمة الافتراضية 0.1) — النسبة لجميع طبقات dropout.
  • hidden_act (str، اختياري، القيمة الافتراضية relu) — دالة التنشيط غير الخطية (دالة أو نص) في المُفكِّك. على سبيل المثال، "gelu"، "relu"، "silu"، وغيرها.
  • hidden_dropout (float, اختياري، القيمة الافتراضية 0.0) — احتمالية Dropout لحالات المخفية.
  • layer_norm_eps (float, اختياري، القيمة الافتراضية 1e-06) — قيمة الإيبسلون المستخدمة في طبقات تطبيع الطبقة.
  • initializer_range (float، اختياري، القيمة الافتراضية 0.02) — الانحراف المعياري لـ truncated_normal_initializer المستخدم في تهيئة جميع مصفوفات الأوزان.

هذه فئة الإعدادات المخزنة لإعدادات نموذج Sam3LiteTextModel. تُستخدم لاستحداث نموذج Sam3 Lite Text وفقاً للحجج المحددة، مع تعريف بنية النموذج. إن استحداث إعدادات باستخدام القيم الافتراضية سيؤدي إلى الحصول على إعدادات مشابهة لتلك الخاصة بـ yonigozlan/sam3-litetext-s0

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

Sam3LiteTextDETRDecoderConfig

فئة transformers.Sam3LiteTextDETRDecoderConfig

< >

( 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 = 256num_layers: int = 6num_queries: int = 200num_attention_heads: int = 8intermediate_size: int = 2048dropout: float | int = 0.1hidden_act: str = 'relu'hidden_dropout: float | int = 0.0layer_norm_eps: float = 1e-06initializer_range: float = 0.02 )

المعاملات

  • hidden_size (int، اختياري، القيمة الافتراضية 256) — أبعاد التمثيلات المخفية.
  • num_layers (int، اختياري، القيمة الافتراضية 6) — عدد الطبقات المخفية في مُفكِّك Transformer.
  • num_queries (int، اختياري، القيمة الافتراضية 200) — عدد استعلامات الكائنات.
  • num_attention_heads (int، اختياري، القيمة الافتراضية 8) — عدد رؤوس الانتباه لكل طبقة انتباه في مُفكِّك Transformer.
  • intermediate_size (int، اختياري، القيمة الافتراضية 2048) — بعد تمثيلات MLP.
  • dropout (Union[float, int]، اختياري، القيمة الافتراضية 0.1) — النسبة لجميع طبقات dropout.
  • hidden_act (str، اختياري، القيمة الافتراضية relu) — دالة التنشيط غير الخطية (دالة أو نص) في المُفكِّك. على سبيل المثال، "gelu"، "relu"، "silu"، وغيرها.
  • hidden_dropout (Union[float, int]، اختياري، القيمة الافتراضية 0.0) — احتمالية الإسقاط (dropout) لجميع الطبقات المتصلة بالكامل في التضمينات (embeddings) والمُشفِّر (encoder) والمُجمِّع (pooler).
  • layer_norm_eps (float, اختياري، القيمة الافتراضية 1e-06) — قيمة الإيبسلون المستخدمة في طبقات تطبيع الطبقة.
  • initializer_range (float، اختياري، القيمة الافتراضية 0.02) — الانحراف المعياري لـ truncated_normal_initializer المستخدم في تهيئة جميع مصفوفات الأوزان.

هذه فئة الإعدادات المخزنة لإعدادات نموذج Sam3LiteTextModel. تُستخدم لاستحداث نموذج Sam3 Lite Text وفقاً للحجج المحددة، مع تعريف بنية النموذج. إن استحداث إعدادات باستخدام القيم الافتراضية سيؤدي إلى الحصول على إعدادات مشابهة لتلك الخاصة بـ yonigozlan/sam3-litetext-s0

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

Sam3LiteTextMaskDecoderConfig

فئة transformers.Sam3LiteTextMaskDecoderConfig

< >

( 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 = 256num_upsampling_stages: int = 3layer_norm_eps: float = 1e-06dropout: float | int = 0.0num_attention_heads: int = 8initializer_range: float = 0.02 )

المعاملات

  • hidden_size (int، اختياري، القيمة الافتراضية 256) — أبعاد التمثيلات المخفية.
  • num_upsampling_stages (int، اختياري، القيمة الافتراضية 3) — عدد مراحل رفع الدقة في مُفكِّك البكسل (FPN).
  • layer_norm_eps (float, اختياري، القيمة الافتراضية 1e-06) — قيمة الإيبسلون المستخدمة في طبقات تطبيع الطبقة.
  • dropout (Union[float, int]، اختياري، القيمة الافتراضية 0.0) — النسبة لجميع طبقات dropout.
  • num_attention_heads (int، اختياري، القيمة الافتراضية 8) — عدد رؤوس الانتباه لكل طبقة انتباه في مُفكِّك Transformer.
  • initializer_range (float، اختياري، القيمة الافتراضية 0.02) — الانحراف المعياري لـ truncated_normal_initializer المستخدم في تهيئة جميع مصفوفات الأوزان.

هذه فئة الإعدادات المخزنة لإعدادات نموذج Sam3LiteTextModel. تُستخدم لاستحداث نموذج Sam3 Lite Text وفقاً للحجج المحددة، مع تعريف بنية النموذج. إن استحداث إعدادات باستخدام القيم الافتراضية سيؤدي إلى الحصول على إعدادات مشابهة لتلك الخاصة بـ yonigozlan/sam3-litetext-s0

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

Sam3LiteTextTextModel

فئة transformers.Sam3LiteTextTextModel

< >

( config: Sam3LiteTextTextConfig )

المعاملات

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

مُشفِّر النصوص MobileCLIP MCT المستخدم في EfficientSAM3 LiteText.

عندما يكون config.use_repmixer_blocks بقيمة True، تكون الطبقتان الأولى والأخيرة من وحدات Sam3LiteTextRepMixerBlock؛ بينما تكون بقية الطبقات من طبقات Sam3LiteTextTextEncoderLayer القياسية.

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

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

forward

< >

( input_ids: typing.Optional[torch.LongTensor] = Noneattention_mask: typing.Optional[torch.Tensor] = None**kwargs: *<class 'transformers.utils.generic.TransformersKwargs'> ) → Sam3LiteTextTextEncoderOutput or tuple(torch.Tensor)

المعاملات

  • input_ids (torch.LongTensor بشكل (batch_size, sequence_length), اختياري) — مؤشرات رموز تسلسل الإدخال في قاموس الكلمات. سيتم تجاهل الحشو افتراضيًا.

    يمكن الحصول على الفهارس باستخدام AutoTokenizer. راجع PreTrainedTokenizer.encode() و PreTrainedTokenizer.call() للتفاصيل.

    ما هي معرّفات الإدخال؟

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

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

يعيد

Sam3LiteTextTextEncoderOutput أو tuple(torch.Tensor)

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

تُعيد طريقة Sam3LiteTextTextModel الخاصة بالتقديم (forward) تعريف الطريقة الخاصة __call__.

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

  • last_hidden_state (torch.Tensor من الشكل (batch_size, sequence_length, hidden_size)) — تسلسل كامل لحالات الخفاء من مشفّر النص.
  • pooler_output (torch.Tensor من الشكل (batch_size, projection_dim)) — المخرجات المجمّعة عبر EOT والمُسقطة إلى projection_dim عبر الإسقاط الداخلي بنمط CLIP.
  • hidden_states (tuple(torch.Tensor)، اختياري) — مجموعة من حالات الإخفاء في كل طبقة، تُعاد عند تعيين output_hidden_states=True.
  • attentions (tuple(torch.Tensor)، اختياري) — مجموعة من أوزان الانتباه في كل طبقة من طبقات المحوّل، تُعاد عند تعيين output_attentions=True.

Sam3LiteTextModel

فئة transformers.Sam3LiteTextModel

< >

( config: Sam3LiteTextConfig )

forward

< >

( pixel_values: typing.Optional[torch.Tensor] = Nonevision_embeds: transformers.models.sam3_lite_text.modeling_sam3_lite_text.Sam3LiteTextVisionEncoderOutput | None = Noneinput_ids: typing.Optional[torch.LongTensor] = Noneattention_mask: typing.Optional[torch.Tensor] = Nonetext_embeds: typing.Optional[torch.Tensor] = Noneinput_boxes: typing.Optional[torch.Tensor] = Noneinput_boxes_labels: typing.Optional[torch.LongTensor] = None**kwargs: *<class 'transformers.utils.generic.TransformersKwargs'> ) → Sam3LiteTextImageSegmentationOutput or tuple(torch.Tensor)

المعاملات

  • pixel_values (torch.Tensor of shape (batch_size, num_channels, image_size, image_size), اختياري) — المصفوفات المقابلة للصور المدخلة. يمكن الحصول على قيم البكسل باستخدام Sam3ImageProcessor. راجع Sam3ImageProcessor.call() للتفاصيل (Sam3Processor يستخدم Sam3ImageProcessor لمعالجة الصور).
  • vision_embeds (Sam3LiteTextVisionEncoderOutput، اختياري) — تضمينات بصرية محسوبة مسبقًا. يمكن استخدامها لإعادة استخدام التضمينات البصرية بسهولة. إذا تم تقديمها، فلا ينبغي تمرير pixel_values. متعارضة مع pixel_values.
  • input_ids (torch.LongTensor بشكل (batch_size, sequence_length), اختياري) — مؤشرات رموز تسلسل الإدخال في قاموس الكلمات. سيتم تجاهل الحشو افتراضيًا.

    يمكن الحصول على الفهارس باستخدام AutoTokenizer. راجع PreTrainedTokenizer.encode() و PreTrainedTokenizer.call() للتفاصيل.

    ما هي معرّفات الإدخال؟

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

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

  • text_embeds (torch.Tensor من الشكل (batch_size, sequence_length, hidden_size)، اختياري) — تضمينات نصية محسوبة مسبقًا. يمكن استخدامها لإعادة استخدام تضمينات النص بسهولة. إذا تم تقديمها، فلا ينبغي تمرير input_ids. متعارضة مع input_ids.
  • input_boxes (torch.Tensor من الشكل (batch_size, num_boxes, 4)، اختياري) — إحداثيات صناديق مُطبَّعة ضمن النطاق [0, 1]، بصيغة (cx, cy, w, h).
  • input_boxes_labels (torch.LongTensor من الشكل (batch_size, num_boxes)، اختياري) — التسميات للمربعات: 1 (إيجابي)، 0 (سلبي).

يعيد

Sam3LiteTextImageSegmentationOutput أو tuple(torch.Tensor)

Sam3LiteTextImageSegmentationOutput أو مجموعة مرتبة من torch.Tensor (في حال تمرير return_dict=False أو عندما يكون config.return_dict=False) وتتضمن عناصر مختلفة تعتمد على الإعدادات (Sam3LiteTextConfig) والمدخلات.

تُعيد طريقة Sam3LiteTextModel الخاصة بالتقديم (forward) تعريف الطريقة الخاصة __call__.

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

  • pred_masks (torch.Tensor من الشكل (batch_size, num_queries, height, width)) — أقنعة التقطيع المتوقعة لكل استعلام.
  • pred_boxes (torch.Tensor من الشكل (batch_size, num_queries, 4)) — صناديق الحدود المتوقعة بتنسيق (x1, y1, x2, y2).
  • pred_logits (torch.Tensor of shape (batch_size, num_queries), اختياري) — درجات الثقة في التصنيف لكل استعلام، محسوبة عبر الضرب النقطي بين ميزات استعلامات المُفكِّك وميزات النص.
  • presence_logits (torch.Tensor من الشكل (batch_size, 1)، اختياري) — قيم الوجود (Presence logits) من رمز الوجود (presence token) في مُفكِّك DETR (الطبقة الأخيرة فقط). تشير هذه القيم إلى ما إذا كانت هناك كائنات موجودة في المشهد. يمكن استخدامها لحساب الدرجات النهائية عن طريق ضربها في pred_logits: final_scores = pred_logits.sigmoid() * presence_logits.sigmoid().
  • semantic_seg (torch.Tensor من الشكل (batch_size, 1, height, width)، اختياري) — مخرجات التقسيم الدلالي.
  • decoder_hidden_states (tuple[torch.Tensor]، اختياري) — مجموعة من حالات الإخفاء (hidden states) القادمة من جميع طبقات فك الترميز (decoder) في نموذج DETR. كل متجه (tensor) له الشكل (batch_size, num_queries, hidden_size).
  • decoder_reference_boxes (torch.Tensor من الشكل (num_layers, batch_size, num_queries, 4)، اختياري) — صناديق المرجع من جميع طبقات فُكّ التشفير في DETR.
  • encoder_hidden_states (tuple[torch.Tensor]، اختياري) — مجموعة من حالات الإخفاء (hidden states) القادمة من جميع طبقات مُشفِّر (encoder) نموذج DETR.
  • vision_hidden_states (tuple[torch.Tensor]، اختياري) — مجموعة من حالات الإخفاء (hidden states) القادمة من جميع طبقات مشفّر الرؤية (ViT).
  • vision_attentions (tuple[torch.Tensor]، اختياري) — أوزان الانتباه من طبقات مُشفِّر الرؤية (ViT).
  • detr_encoder_attentions (tuple[torch.Tensor]، اختياري) — أوزان الانتباه من طبقات مُشفِّر DETR.
  • detr_decoder_attentions (tuple[torch.Tensor]، اختياري) — أوزان الانتباه من طبقات فك ترميز DETR (الانتباه الذاتي والانتباه المتقاطع).
  • mask_decoder_attentions (tuple[torch.Tensor]، اختياري) — أوزان الانتباه من طبقات فك ترميز القناع.

مثال:

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

>>> model = AutoModel.from_pretrained("facebook/sam3_lite_text")
>>> processor = AutoProcessor.from_pretrained("facebook/sam3_lite_text")

>>> url = "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/transformers/model_doc/sam-car.png"
>>> with httpx.stream("GET", url) as response:
...     image = Image.open(BytesIO(response.read())).convert("RGB")
>>> text = "car"
>>> inputs = processor(images=image, text=text, return_tensors="pt")

>>> # Get segmentation output
>>> outputs = model(**inputs)
>>> pred_masks = outputs.pred_masks
>>> pred_boxes = outputs.pred_boxes

Sam3LiteTextPreTrainedModel

فئة transformers.Sam3LiteTextPreTrainedModel

< >

( config: PreTrainedConfig*inputs**kwargs )

المعاملات

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

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

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

forward

( *args**kwargs )

قيمة وهمية لمسار منقّط (مثل torch.float32): سلاسل الوصول إلى السمات، والاستدعاءات تتصرف كمُزيّنات (decorators) مرّرة، وrepr هو المسار المنقّط، وعند استخدامه كصنف أساسي يُستبدل بصنف أساسي من نوع type عادي (بموجب __mro_entries__ في PEP 560)، بحيث تحتفظ الصنوف الفرعية الحقيقية بفئة ميتا (metaclass) عادية، وتقرأ inspect.signature دالة __init__ الحقيقية الخاصة بها بدلاً من تلك الوهمية.

Update on GitHub