from ...configuration_utils import PretrainedConfig
from ...utils import logging


_lowercase:	List[Any]       			=		logging.get_logger(__name__)

_lowercase:	int       			=		{
    '''alibaba-damo/mgp-str-base''': '''https://huggingface.co/alibaba-damo/mgp-str-base/resolve/main/config.json''',
}



class        lowerCamelCase__				(   UpperCAmelCase				):
			UpperCamelCase__    							="mgp-str"





			def __init__(       self	:	int  ,  lowercase__	:	List[Any]=[32, 1_28]  ,  lowercase__	:	str=4  ,  lowercase__	:	List[str]=3  ,  lowercase__	:	Tuple=27  ,  lowercase__	:	Optional[Any]=38  ,  lowercase__	:	Optional[Any]=5_02_57  ,  lowercase__	:	Dict=3_05_22  ,  lowercase__	:	Dict=7_68  ,  lowercase__	:	Tuple=12  ,  lowercase__	:	int=12  ,  lowercase__	:	int=4.0  ,  lowercase__	:	Tuple=True  ,  lowercase__	:	List[Any]=False  ,  lowercase__	:	int=1e-5  ,  lowercase__	:	int=0.0  ,  lowercase__	:	Optional[Any]=0.0  ,  lowercase__	:	List[Any]=0.0  ,  lowercase__	:	Union[str, Any]=False  ,  lowercase__	:	str=0.0_2  ,  **lowercase__	:	Optional[int]  ,  ):
										super().__init__(**lowercase__						)

										_lowerCAmelCase							=							image_size
										_lowerCAmelCase							=							patch_size
										_lowerCAmelCase							=							num_channels
										_lowerCAmelCase							=							max_token_length
										_lowerCAmelCase							=							num_character_labels
										_lowerCAmelCase							=							num_bpe_labels
										_lowerCAmelCase							=							num_wordpiece_labels
										_lowerCAmelCase							=							hidden_size
										_lowerCAmelCase							=							num_hidden_layers
										_lowerCAmelCase							=							num_attention_heads
										_lowerCAmelCase							=							mlp_ratio
										_lowerCAmelCase							=							distilled
										_lowerCAmelCase							=							layer_norm_eps
										_lowerCAmelCase							=							drop_rate
										_lowerCAmelCase							=							qkv_bias
										_lowerCAmelCase							=							attn_drop_rate
										_lowerCAmelCase							=							drop_path_rate
										_lowerCAmelCase							=							output_aa_attentions
										_lowerCAmelCase							=							initializer_range







from typing import TYPE_CHECKING

from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_tf_available, is_torch_available


_lowercase:	Any       			=		{'''configuration_swin''': ['''SWIN_PRETRAINED_CONFIG_ARCHIVE_MAP''', '''SwinConfig''', '''SwinOnnxConfig''']}


try:
				if not is_torch_available():
								raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
				pass
else:
				_lowercase:	str       			=		[
				    '''SWIN_PRETRAINED_MODEL_ARCHIVE_LIST''',
				    '''SwinForImageClassification''',
				    '''SwinForMaskedImageModeling''',
				    '''SwinModel''',
				    '''SwinPreTrainedModel''',
				    '''SwinBackbone''',
				]

try:
				if not is_tf_available():
								raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
				pass
else:
				_lowercase:	str       			=		[
				    '''TF_SWIN_PRETRAINED_MODEL_ARCHIVE_LIST''',
				    '''TFSwinForImageClassification''',
				    '''TFSwinForMaskedImageModeling''',
				    '''TFSwinModel''',
				    '''TFSwinPreTrainedModel''',
				]

if TYPE_CHECKING:
				from .configuration_swin import SWIN_PRETRAINED_CONFIG_ARCHIVE_MAP, SwinConfig, SwinOnnxConfig

				try:
								if not is_torch_available():
												raise OptionalDependencyNotAvailable()
				except OptionalDependencyNotAvailable:
								pass
				else:
								from .modeling_swin import (
								    SWIN_PRETRAINED_MODEL_ARCHIVE_LIST,
								    SwinBackbone,
								    SwinForImageClassification,
								    SwinForMaskedImageModeling,
								    SwinModel,
								    SwinPreTrainedModel,
								)

				try:
								if not is_tf_available():
												raise OptionalDependencyNotAvailable()
				except OptionalDependencyNotAvailable:
								pass
				else:
								from .modeling_tf_swin import (
								    TF_SWIN_PRETRAINED_MODEL_ARCHIVE_LIST,
								    TFSwinForImageClassification,
								    TFSwinForMaskedImageModeling,
								    TFSwinModel,
								    TFSwinPreTrainedModel,
								)

else:
				import sys

				_lowercase:	Tuple       			=		_LazyModule(__name__, globals()['''__file__'''], _import_structure, module_spec=__spec__)






