Transformers documentation

SLANeXt

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

and get access to the augmented documentation experience

to get started

Bu model, 2026-03-21 tarihinde Hugging Face Transformers'a katkıda bulunulmuştur.

SLANeXt

Genel Bakış

SLANeXt_wired ve SLANeXt_wireless, belgelerdeki ve doğal sahnelerdeki tablo yapılarını doğru bir şekilde tanıma odaklı, tablo yapısı tanıma için geliştirilmiş özel hafif modeller serisinin bir parçasıdır. SLANeXt serisi model hakkında daha fazla ayrıntı için resmî dokümantasyona bakın.

Model Mimarisi

SLANeXt serisi, Baidu PaddlePaddle Vision Ekibi tarafından bağımsız olarak geliştirilen yeni nesil tablo yapısı tanıma modelleridir. SLANeXt, tablo yapısı tanıma üzerine odaklanır ve kablolu ile kablosuz tablolar için ayrı ayrı özel ağırlıklar eğitir. Tüm tablo türleri için tanıma yeteneği önemli ölçüde iyileştirilmiştir, özellikle de kablolu tablolar için.

Kullanım

Tek girişli çıkarım

Aşağıdaki örnek, AutoModel kullanarak PP-OCRV5_Mobile_Det ile metin algılamanın nasıl yapılacağını göstermektedir.

AutoModel
import requests
from PIL import Image

from transformers import AutoImageProcessor, AutoModelForTableRecognition


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

image = Image.open(requests.get("https://huggingface.co/datasets/hf-internal-testing/transformers-synthetic-assets/resolve/main/images/paddle_table_recognition.jpg", stream=True).raw)
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'])

SLANeXtConfig

sınıf transformers.SLANeXtConfig

< >

( 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.models.slanext.configuration_slanext.SLANeXtVisionConfig | None = Nonepost_conv_in_channels: int = 256post_conv_out_channels: int = 512out_channels: int = 50hidden_size: int = 512max_text_length: int = 500 )

Parametreler

  • vision_config (dict veya SLANeXtVisionConfig, opsiyonel) — Görüntü kodlayıcısının yapılandırması. None ise, varsayılan bir SLANeXtVisionConfig kullanılır.
  • post_conv_in_channels (int, isteğe bağlı, varsayılan 256) — Post-encoder konvolüsyon katmanı için giriş kanal sayısı.
  • post_conv_out_channels (int, isteğe bağlı, varsayılan 512) — Post-encoder konvolüsyon katmanının çıktı kanal sayısı.
  • out_channels (int, isteğe bağlı, varsayılan 50) — Tablo yapısı token tahmin başlığı için sözlük boyutu, yani modelin tahmin edebileceği farklı yapı tokenlerinin sayısı.
  • hidden_size (int, isteğe bağlı, varsayılan 512) — Dikkat GRU hücresindeki gizli durumların ve yapı/konum tahmin başlıklarındaki boyut.
  • max_text_length (int, isteğe bağlı, varsayılan 500) — Yapı ve konum çözücü için otoregresif çözümleme adımlarının (token) maksimum sayısı.

Bu, bir SlanextModel yapılandırmasını depolamak için kullanılan yapılandırma sınıfıdır. Belirtilen argümanlara göre bir Slanext modelini örneklemek ve model mimarisini tanımlamak için kullanılır. Varsayılan değerlerle bir yapılandırma örneği oluşturmak, PaddlePaddle/SLANeXt_wired_safetensors ile benzer bir yapılandırmaya yol açar.

Yapılandırma nesneleri PreTrainedConfig sınıfından devralır ve model çıktılarını kontrol etmek için kullanılabilir. Daha fazla bilgi için PreTrainedConfig belgesini okuyun.

SLANeXtVisionConfig

sınıf transformers.SLANeXtVisionConfig

< >

( 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 = 768output_channels: int = 256num_hidden_layers: int = 12num_attention_heads: int = 12num_channels: int = 3image_size: int = 512patch_size: int | list[int] | tuple[int, int] = 16hidden_act: str = 'gelu'layer_norm_eps: float = 1e-06attention_dropout: float | int = 0.0initializer_range: float = 1e-10qkv_bias: bool = Trueuse_abs_pos: bool = Trueuse_rel_pos: bool = Truewindow_size: int = 14global_attn_indexes: list[int] | tuple[int, ...] = (2, 5, 8, 11)mlp_dim: int = 3072 )

Parametreler

  • hidden_size (int, isteğe bağlı, varsayılan 768) — Gizli temsillerin boyutu.
  • output_channels (int, isteğe bağlı, varsayılan 256) — Patch Encoder'da çıktı kanallarının boyutu.
  • num_hidden_layers (int, isteğe bağlı, varsayılan 12) — Transformer çözücüdeki gizli katman sayısı.
  • num_attention_heads (int, isteğe bağlı, varsayılan 12) — Transformer decoder'ındaki her dikkat katmanı için dikkat başı sayısı.
  • num_channels (int, isteğe bağlı, varsayılan 3) — Giriş kanal sayısı.
  • image_size (int, isteğe bağlı, varsayılan 512) — Her bir görüntünün boyutu (çözünürlüğü).
  • patch_size (Union[int, list[int], tuple[int, int]], isteğe bağlı, varsayılan 16) — Her yamanın boyutu (çözünürlüğü).
  • hidden_act (str, isteğe bağlı, varsayılan gelu) — Çözücüdeki doğrusal olmayan aktivasyon fonksiyonu (fonksiyon veya dize). Örneğin, "gelu", "relu", "silu" vb.
  • layer_norm_eps (float, isteğe bağlı, varsayılan 1e-06) — Katman normalizasyon katmanları tarafından kullanılan epsilon.
  • attention_dropout (Union[float, int], isteğe bağlı, varsayılan 0.0) — Dikkat olasılıkları için dropout oranı.
  • initializer_range (float, isteğe bağlı, varsayılan 1e-10) — Tüm ağırlık matrislerini başlatmak için kullanılan truncated_normal_initializer'ın standart sapması.
  • qkv_bias (bool, isteğe bağlı, varsayılan True) — Sorgulara, anahtarlara ve değerlere bir sapma eklenip eklenmeyeceği.
  • use_abs_pos (bool, isteğe bağlı, varsayılan True) — Mutlak konum gömme kullanılıp kullanılmayacağı.
  • use_rel_pos (bool, isteğe bağlı, varsayılan True) — Göreceli konum gömme kullanılıp kullanılmayacağı.
  • window_size (int, isteğe bağlı, varsayılan 14) — Göreceli konum için pencere boyutu.
  • global_attn_indexes (list[int], isteğe bağlı, varsayılan [2, 5, 8, 11]) — Küresel dikkat katmanlarının indeksleri.
  • mlp_dim (int, isteğe bağlı, varsayılan 3072) — Transformer kodlayıcısındaki MLP katmanının boyutu.

Bu, bir SlanextModel yapılandırmasını depolamak için kullanılan yapılandırma sınıfıdır. Belirtilen argümanlara göre bir Slanext modelini örneklemek ve model mimarisini tanımlamak için kullanılır. Varsayılan değerlerle bir yapılandırma örneği oluşturmak, PaddlePaddle/SLANeXt_wired_safetensors ile benzer bir yapılandırmaya yol açar.

Yapılandırma nesneleri PreTrainedConfig sınıfından devralır ve model çıktılarını kontrol etmek için kullanılabilir. Daha fazla bilgi için PreTrainedConfig belgesini okuyun.

SLANeXtForTableRecognition

sınıf transformers.SLANeXtForTableRecognition

< >

( config: SLANeXtConfig )

Parametreler

  • config (SLANeXtConfig) — Modelin tüm parametrelerini içeren model yapılandırma sınıfı. Bir yapılandırma dosyasıyla başlatmak, modelle ilişkili ağırlıkları yüklemez, yalnızca yapılandırmayı yükler. Model ağırlıklarını yüklemek için from_pretrained() yöntemine bakın.

Tablo tanıma görevleri için SLANeXt Tablo Tanıma modeli. Çekirdek SLANeXtPreTrainedModel sınıfını sarmalar ve Transformers tablo tanıma API'siyle uyumlu çıktıları döndürür.

Bu model PreTrainedModel sınıfından devralır. Kütüphanenin tüm modelleri için uyguladığı genel yöntemler (indirme veya kaydetme, giriş gömme boyutlarını yeniden boyutlandırma, başları budama vb.) için üst sınıf belgelendirmesine bakın.

Bu model aynı zamanda bir PyTorch torch.nn.Module alt sınıfıdır. Bunu standart bir PyTorch Module olarak kullanın ve genel kullanım ve davranışla ilgili tüm konular için PyTorch dokümantasyonuna başvurun.

forward

< >

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

Parametreler

  • pixel_values (torch.Tensor, şekli (batch_size, num_channels, image_size, image_size)) — Girdi görüntülerine karşılık gelen tensörler. Piksel değerleri SLANeXtImageProcessor kullanılarak elde edilebilir. Ayrıntılar için SLANeXtImageProcessor.call() bölümüne bakın (processor_class, görüntüleri işlemek için SLANeXtImageProcessor kullanır).

Dönüş değeri

SLANeXtForTableRecognitionOutput veya tuple(torch.Tensor)

SLANeXtForTableRecognitionOutput veya bir torch.Tensor demeti (return_dict=False geçirildiğinde veya config.return_dict=False olduğunda), yapılandırmaya (SLANeXtConfig) ve girdilere bağlı olarak çeşitli öğelerden oluşur.

SLANeXtForTableRecognition forward metodu, __call__ özel metodunu geçersiz kılar.

İleri geçiş tarifi bu fonksiyon içinde tanımlanmalı olsa da, sonrasında bunun yerine Module örneğini çağırmak gerekir; çünkü önceki, ön ve son işleme adımlarını çalıştırmaktan sorumluyken ikincisi bunları sessizce yok sayar.

  • last_hidden_state (torch.Tensor, şekli (batch_size, sequence_length, hidden_size)) — Modelin son katmanının çıktısındaki gizli durumlar dizisi.

  • hidden_states (tuple(torch.Tensor), isteğe bağlı, output_hidden_states=True geçirildiğinde veya config.output_hidden_states=True olduğunda döndürülür) — torch.Tensor (modelin bir gömme katmanı varsa gömme katmanının çıktısı için bir tane + her katmanın çıktısı için birer tane) içeren, (batch_size, sequence_length, hidden_size) biçiminde bir demet.

    Her katmanın çıktısında modelin gizli durumları ve isteğe bağlı başlangıç gömme çıktıları.

  • attentions (tuple(torch.Tensor), isteğe bağlı, output_attentions=True geçirildiğinde veya config.output_attentions=True olduğunda döndürülür) — torch.Tensor (katman başına bir tane) içeren bir tuple, şekli (batch_size, num_heads, sequence_length, sequence_length).

    Dikkat softmax'ı sonrası dikkat ağırlıkları, öz-dikkat başlıklarında ağırlıklı ortalamanın hesaplanmasında kullanılır.

  • head_hidden_states (tuple(torch.Tensor), isteğe bağlı, output_hidden_states=True geçirildiğinde veya config.output_hidden_states=True olduğunda döndürülür) — SLANeXtSLAHead'in her tahmin adımındaki gizli durumları, erken çıkışlara bağlı olarak en fazla self.config.max_text_length duruma kadar değişir.

  • head_attentions (tuple(torch.Tensor), isteğe bağlı, output_attentions=True geçirildiğinde veya config.output_attentions=True olduğunda döndürülür) — SLANeXtSLAHead'in her tahmin adımındaki dikkatleri, erken çıkışlara bağlı olarak en fazla self.config.max_text_length dikkate kadar değişir.

SLANeXtBackbone

sınıf transformers.SLANeXtBackbone

< >

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

SLANeXtSLAHead

sınıf transformers.SLANeXtSLAHead

< >

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

SLANeXtImageProcessor

sınıf transformers.SLANeXtImageProcessor

< >

( **kwargs: *<class 'transformers.processing_utils.ImagesKwargs'> )

Parametreler

  • do_convert_rgb (bool, kwargs, opsiyonel, varsayılan True) — Görselin RGB'ye dönüştürülüp dönüştürülmemesi.
  • do_resize (bool, kwargs, isteğe bağlı, varsayılan True) — Görselin yeniden boyutlandırılıp boyutlandırılmayacağı.
  • size (Annotated[int | list[int] | tuple[int, ...] | dict[str, int] | None, None], kwargs, varsayılan {'height' -- 512, 'width': 512}): Modelin kabul ettiği maksimum giriş boyutlarını açıklar.
  • default_to_square (bool, kwargs, isteğe bağlı, varsayılan True) — size bir int ise, yeniden boyutlandırma sırasında varsayılan olarak kare bir görüntü kullanılıp kullanılmayacağı.
  • crop_size (Annotated[int | list[int] | tuple[int, ...] | dict[str, int] | None, None], kwargs) — center_crop uygulandıktan sonra çıktı görüntüsünün boyutu.
  • resample (Annotated[Union[int, PILImageResampling, NoneType], None], kwargs, varsayılan 2) — Görsel yeniden boyutlandırılıyorsa kullanılacak yeniden örnekleme filtresi. Bu, PILImageResampling enum değerlerinden biri olabilir. Yalnızca do_resize True olarak ayarlanırsa etkilidir.
  • do_rescale (bool, kwargs, isteğe bağlı, varsayılan True) — Görselin yeniden ölçeklendirilip ölçeklendirilmeyeceği.
  • rescale_factor (float, kwargs, opsiyonel, varsayılan 0.00392156862745098) — do_rescale True olarak ayarlandığında görüntüyü yeniden ölçeklemek için kullanılan yeniden ölçekleme faktörü.
  • do_normalize (bool, kwargs, opsiyonel, varsayılan True) — Görselin normalize edilip edilmeyeceği.
  • image_mean (Union[float, list[float], tuple[float, ...]], kwargs, opsiyonel, varsayılan [0.485, 0.456, 0.406]) — Normalizasyon için kullanılacak görüntü ortalaması. Yalnızca do_normalize True olarak ayarlanırsa etkilidir.
  • image_std (Union[float, list[float], tuple[float, ...]], kwargs, opsiyonel, varsayılan [0.229, 0.224, 0.225]) — Normalizasyon için kullanılacak görüntü standart sapması. Yalnızca do_normalize True olarak ayarlanırsa etkilidir.
  • do_pad (bool, kwargs, opsiyonel, varsayılan True) — Görselin dolgu (padding) uygulanıp uygulanmayacağı. Dolgu, ya batch içindeki en büyük boyuta ya da görsel başına sabit bir kare boyuta yapılır. Kesin dolgu stratejisi modele bağlıdır.
  • pad_size (Annotated[int | list[int] | tuple[int, ...] | dict[str, int] | None, None], kwargs, varsayılan {'height' -- 512, 'width': 512}): Görsellerin doldurulacağı boyut, {"height": int, "width" int} biçiminde. Ön işleme için sağlanan herhangi bir görsel boyutundan büyük olmalıdır. pad_size sağlanmazsa, görseller partideki en büyük yüksekliğe ve genişliğe doldurulur. Yalnızca do_pad=True. olduğunda uygulanır.
  • do_center_crop (bool, kwargs, opsiyonel) — Görselin ortadan kırpılıp kırpılmayacağı.
  • data_format (Union[str, ~image_utils.ChannelDimension], kwargs, isteğe bağlı) — Yalnızca ChannelDimension.FIRST desteklenir. Yavaş işleyicilerle uyumluluk için eklendi.
  • input_data_format (Union[str, ~image_utils.ChannelDimension], kwargs, isteğe bağlı) — Girdi görüntüsü için kanal boyutu biçimi. Ayarlanmazsa, kanal boyutu biçimi girdi görüntüsünden çıkarılır. Aşağıdakilerden biri olabilir:
    • "channels_first" veya ChannelDimension.FIRST: (num_channels, height, width) biçiminde görüntü.
    • "channels_last" veya ChannelDimension.LAST: (yükseklik, genişlik, kanal sayısı) biçiminde görüntü.
    • "none" veya ChannelDimension.NONE: (height, width) biçiminde görüntü.
  • device (Annotated[Union[str, torch.device, NoneType], None], kwargs) — Videoların işleneceği cihaz. Ayarlanmamışsa, cihaz girdi videolarından çıkarılır.
  • return_tensors (Annotated[str | ~utils.generic.TensorType | None, None], kwargs) — 'pt' olarak ayarlanırsa yığılmış tensörler döndürür, aksi takdirde tensör listesi döndürür.
  • disable_grouping (bool, kwargs, opsiyonel) — Görsellerin boyuta göre gruplandırılmasını devre dışı bırakıp onları toplu olarak değil, bireysel olarak işlenmesini belirtir. None ise, görseller CPU üzerindeyse True, aksi halde False olarak ayarlanır. Bu seçim, burada ayrıntılandırıldığı üzere ampirik gözlemlere dayanmaktadır: https://github.com/huggingface/transformers/pull/38157
  • image_seq_length (int, kwargs, isteğe bağlı) — Girdideki her görüntü için kullanılacak görüntü jetonlarının sayısı. Geriye dönük uyumluluk için eklendi ancak gelecekteki modellerde bu, bir işlemci özniteliği olarak ayarlanmalıdır.

SLANeXtImageProcessor görüntü işleyicisi oluşturur.

init_decoder

< >

( )

Tablo yapısı tanıma için decoder sözlüğünü başlatın.

HTML tablo yapı belirteçlerini (ör. <thead>, <tr>, <td>, colspan/ rowspan öznitelikleri) tamsayı indekslerine eşleyen bir karakter sözlüğü oluşturur. Sözlük, özel "sos" (dizinin başlangıcı) ve "eos" (dizinin sonu) belirteçlerini içerir. Uygulanabilir durumlarda, tek başına <td> belirteçleri yerine birleştirilmiş <td></td> belirteçleri kullanılır.

post_process_table_recognition

< >

( outputs ) → dict

Parametreler

  • outputs (SLANeXtForTableRecognitionOutput) — SLANeXt modelinden gelen ham çıktılar. last_hidden_state alanı, her çözümleme adımında yapı sözlüğü üzerindeki tahmini olasılık dağıtımlarını, (batch_size, max_text_length, num_classes) biçiminde içerir.

Dönüş değeri

dict

Şu içeriğe sahip bir sözlük:

  • yapı (list[str]): <html>, <body> ve <table> etiketleriyle sarılmış, token listesine dönüştürülmüş tahmin edilen HTML tablo yapısı.
  • structure_score (float): Tahmin edilen tüm jetonlar için ortalama güven skoru.

Ham model çıktılarını işleyerek tahmin edilen tablo yapısını bir HTML token dizisine çözümlen.

Modelin yapı sözlüğü üzerindeki tahmini olasılık dağıtımlarını, tablo yapısını temsil eden bir HTML token dizisine dönüştürür. Çözümlenen tokenler, tam bir HTML tablo yapısı oluşturmak için <html>, <body> ve <table> etiketleriyle sarılır.

Update on GitHub