| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103 |
- # 🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨
- # This file was automatically generated from src/transformers/models/slanext/modular_slanext.py.
- # Do NOT edit this file manually as any edits will be overwritten by the generation of
- # the file from the modular. If any change should be done, please apply the change to the
- # modular_slanext.py file directly. One of our CI enforces this.
- # 🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨
- # Copyright 2026 The PaddlePaddle Team and The HuggingFace Inc. team. All rights reserved.
- #
- # Licensed under the Apache License, Version 2.0 (the "License");
- # you may not use this file except in compliance with the License.
- # You may obtain a copy of the License at
- #
- # http://www.apache.org/licenses/LICENSE-2.0
- #
- # Unless required by applicable law or agreed to in writing, software
- # distributed under the License is distributed on an "AS IS" BASIS,
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- # See the License for the specific language governing permissions and
- # limitations under the License.
- from huggingface_hub.dataclasses import strict
- from ...configuration_utils import PreTrainedConfig
- from ...utils import auto_docstring
- @auto_docstring(checkpoint="PaddlePaddle/SLANeXt_wired_safetensors")
- @strict
- class SLANeXtVisionConfig(PreTrainedConfig):
- r"""
- output_channels (`int`, *optional*, defaults to 256):
- Dimensionality of the output channels in the Patch Encoder.
- use_abs_pos (`bool`, *optional*, defaults to `True`):
- Whether to use absolute position embedding.
- use_rel_pos (`bool`, *optional*, defaults to `True`):
- Whether to use relative position embedding.
- window_size (`int`, *optional*, defaults to 14):
- Window size for relative position.
- global_attn_indexes (`list[int]`, *optional*, defaults to `[2, 5, 8, 11]`):
- The indexes of the global attention layers.
- mlp_dim (`int`, *optional*, defaults to 3072):
- The dimensionality of the MLP layer in the Transformer encoder.
- """
- base_config_key = "vision_config"
- hidden_size: int = 768
- output_channels: int = 256
- num_hidden_layers: int = 12
- num_attention_heads: int = 12
- num_channels: int = 3
- image_size: int = 512
- patch_size: int | list[int] | tuple[int, int] = 16
- hidden_act: str = "gelu"
- layer_norm_eps: float = 1e-06
- attention_dropout: float | int = 0.0
- initializer_range: float = 1e-10
- qkv_bias: bool = True
- use_abs_pos: bool = True
- use_rel_pos: bool = True
- window_size: int = 14
- global_attn_indexes: list[int] | tuple[int, ...] = (2, 5, 8, 11)
- mlp_dim: int = 3072
- @auto_docstring(checkpoint="PaddlePaddle/SLANeXt_wired_safetensors")
- @strict
- class SLANeXtConfig(PreTrainedConfig):
- r"""
- vision_config (`dict` or [`SLANeXtVisionConfig`], *optional*):
- Configuration for the vision encoder. If `None`, a default [`SLANeXtVisionConfig`] is used.
- post_conv_in_channels (`int`, *optional*, defaults to 256):
- Number of input channels for the post-encoder convolution layer.
- post_conv_out_channels (`int`, *optional*, defaults to 512):
- Number of output channels for the post-encoder convolution layer.
- out_channels (`int`, *optional*, defaults to 50):
- Vocabulary size for the table structure token prediction head, i.e., the number of distinct structure
- tokens the model can predict.
- hidden_size (`int`, *optional*, defaults to 512):
- Dimensionality of the hidden states in the attention GRU cell and the structure/location prediction heads.
- max_text_length (`int`, *optional*, defaults to 500):
- Maximum number of autoregressive decoding steps (tokens) for the structure and location decoder.
- """
- model_type = "slanext"
- sub_configs = {"vision_config": SLANeXtVisionConfig}
- vision_config: dict | SLANeXtVisionConfig | None = None
- post_conv_in_channels: int = 256
- post_conv_out_channels: int = 512
- out_channels: int = 50
- hidden_size: int = 512
- max_text_length: int = 500
- def __post_init__(self, **kwargs):
- if self.vision_config is None:
- self.vision_config = SLANeXtVisionConfig()
- elif isinstance(self.vision_config, dict):
- self.vision_config = SLANeXtVisionConfig(**self.vision_config)
- super().__post_init__(**kwargs)
- __all__ = ["SLANeXtConfig"]
|