Transformers documentation

SLANet

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

تمت مساهمة هذا النموذج في Hugging Face Transformers في 2026-04-22.

SLANet

نظرة عامة

يُعدّ SLANet وSLANet_plus جزءًا من سلسلة من النماذج الخفيفة المخصصة لتعرف بنية الجداول، مع التركيز على التعرف الدقيق على بنية الجداول في المستندات والمناظر الطبيعية. لمزيد من التفاصيل حول سلسلة نماذج SLANet، يُرجى الرجوع إلى التوثيق الرسمي.

بنية النموذج

نموذج SLANet هو نموذج لتعرف بنية الجداول طوّره فريق Baidu PaddlePaddle Vision Team. يحسّن النموذج دقة تعرف بنية الجداول وسرعة الاستدلال بشكل كبير من خلال تبنّي شبكة هيكلية خفيفة الوزن صديقة لوحدة المعالجة المركزية PP-LCNet، ووحدة دمج ميزات عالية ومنخفضة المستوى CSP-PAN، ووحدة فك ترميز الميزات SLA Head التي تُحاكي المعلومات الهيكلية والموقعية.

الاستخدام

الاستدلال على مدخل واحد

يُبيّن المثال أدناه كيفية اكتشاف النص باستخدام SLANet من خلال AutoModel.

AutoModel
from io import BytesIO

from huggingface_hub.utils import httpx
from PIL import Image

from transformers import AutoImageProcessor, AutoModelForTableRecognition


model_path="PaddlePaddle/SLANet_plus_safetensors"
model = AutoModelForTableRecognition.from_pretrained(model_path, device_map="auto")
image_processor = AutoImageProcessor.from_pretrained(model_path)

image = Image.open(BytesIO(httpx.get(image_url).content))
inputs = image_processor(images=image, return_tensors="pt").to(model.device)
outputs = model(**inputs)

results = image_processor.post_process_table_recognition(outputs)

print(result['structure'])
print(result['structure_score'])

SLANetConfig

فئة transformers.SLANetConfig

< >

( 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 = Nonepost_conv_out_channels: int = 96out_channels: int = 50hidden_size: int = 256max_text_length: int = 500backbone_config: dict | transformers.configuration_utils.PreTrainedConfig | None = Nonehidden_act: str = 'hardswish'csp_kernel_size: int = 5csp_num_blocks: int = 1 )

المعاملات

  • post_conv_out_channels (int، اختياري، القيمة الافتراضية 96) — عدد قنوات الإخراج لطبقة الالتفاف بعد المُشفِّر.
  • out_channels (int، اختياري، القيمة الافتراضية 50) — حجم المفردات لرأس التنبؤ برموز بنية الجدول، أي عدد رموز البنية المميزة التي يمكن للنموذج التنبؤ بها.
  • hidden_size (int، اختياري، القيمة الافتراضية 256) — أبعاد الحالات المخفية في خلية GRU الانتباه ورؤوس التنبؤ بالبنية/الموقع.
  • max_text_length (int، اختياري، القيمة الافتراضية 500) — الحد الأقصى لعدد خطوات فك الترميز التوليدي الذاتي (الرموز) لمفكك البنية والموقع.
  • backbone_config (Union[dict, ~configuration_utils.PreTrainedConfig], اختياري) — إعدادات نموذج الهيكل العظمي.
  • hidden_act (str، اختياري، القيمة الافتراضية hardswish) — دالة التنشيط غير الخطية (دالة أو نص) في المُفكِّك. على سبيل المثال، "gelu"، "relu"، "silu"، وغيرها.
  • csp_kernel_size (int، اختياري، القيمة الافتراضية 5) — حجم النواة (kernel) لطبقة Cross Stage Partial (CSP).
  • csp_num_blocks (int، اختياري، القيمة الافتراضية 1) — عدد الكتل داخل طبقة Cross Stage Partial (CSP).

هذه فئة الإعدادات المخزنة لإعدادات نموذج SlanetModel. تُستخدم لتوليد نموذج Slanet وفقاً للحجج المحددة، مع تعريف بنية النموذج. إن إنشاء إعدادات باستخدام القيم الافتراضية سيؤدي إلى الحصول على إعدادات مشابهة لتلك الخاصة بـ PaddlePaddle/SLANet_plus_safetensors

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

SLANetForTableRecognition

فئة transformers.SLANetForTableRecognition

< >

( config: SLANetConfig )

المعاملات

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

نموذج SLANet Table Recognition لمهام التعرف على الجداول. يغلّف النموذج الأساسي SLANetPreTrainedModel ويعيد مخرجات متوافقة مع واجهة API للتعرف على الجداول في Transformers.

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

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

forward

< >

( pixel_values: Tensor**kwargs: *<class 'transformers.utils.generic.TransformersKwargs'> ) → SLANetForTableRecognitionOutput or tuple(torch.Tensor)

المعاملات

  • pixel_values (torch.Tensor من الشكل (batch_size, num_channels, image_size, image_size)) — المصفوفات المقابلة للصور المدخلة. يمكن الحصول على قيم البكسل باستخدام SLANeXtImageProcessor. راجع SLANeXtImageProcessor.call() للتفاصيل (processor_class يستخدم SLANeXtImageProcessor لمعالجة الصور).

يعيد

SLANetForTableRecognitionOutput أو tuple(torch.Tensor)

أُكْجَة SLANetForTableRecognitionOutput أو مجموعة مرتبة من torch.Tensor (في حال تمرير return_dict=False أو عندما يكون config.return_dict=False) وتتضمن عناصر مختلفة اعتمادًا على الإعداد (SLANetConfig) والمدخلات.

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

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

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

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

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

  • head_hidden_states (tuple(torch.Tensor)، اختياري، يُعاد عند تمرير output_hidden_states=True أو عند تعيين config.output_hidden_states=True) — حالات الإخفاء (Hidden-states) الخاصة بـ SLANetSLAHead في كل خطوة من خطوات التنبؤ، وتتراوح حتى حد أقصى قدره self.config.max_text_length حالة (اعتماداً على عمليات الخروج المبكر).

  • head_attentions (tuple(torch.Tensor)، اختياري، يُعاد عند تمرير output_attentions=True أو عند تعيين config.output_attentions=True) — انتباه SLANetSLAHead في كل خطوة تنبؤ، يتغير حتى الحد الأقصى self.config.max_text_length انتباه (اعتمادًا على المخرجات المبكرة).

SLANetBackbone

فئة transformers.SLANetBackbone

< >

( config: SLANetConfig )

forward

< >

( hidden_states: Tensor**kwargs: *<class 'transformers.utils.generic.TransformersKwargs'> ) → BaseModelOutputWithNoAttention or tuple(torch.Tensor)

المعاملات

  • hidden_states (torch.Tensor) — مدخلات الطبقة ذات الشكل `(batch, seq_len, embed_dim)`

يعيد

BaseModelOutputWithNoAttention أو tuple(torch.Tensor)

A BaseModelOutputWithNoAttention or a tuple of torch.Tensor (if return_dict=False is passed or when config.return_dict=False) comprising various elements depending on the configuration (SLANetConfig) and inputs.

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

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

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

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

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

SLANetSLAHead

فئة transformers.SLANetSLAHead

< >

( config: dict | None = None**kwargs )

Update on GitHub