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


lowerCAmelCase__     						=			logging.get_logger(__name__)

lowerCAmelCase__     						=			{
    'google/canine-s': 'https://huggingface.co/google/canine-s/resolve/main/config.json',
    # See all CANINE models at https://huggingface.co/models?filter=canine
}
class     a_			(						SCREAMING_SNAKE_CASE						):






 '''simple docstring'''






 UpperCAmelCase_     			= 'canine'




 def __init__(      self :  Union[str, Any]      ,   lowercase__ :  List[str]=768      ,   lowercase__ :  Any=12      ,   lowercase__ :  Dict=12      ,   lowercase__ :  Optional[Any]=3_072      ,   lowercase__ :  List[Any]="gelu"      ,   lowercase__ :  Optional[Any]=0.1      ,   lowercase__ :  Optional[Any]=0.1      ,   lowercase__ :  Dict=16_384      ,   lowercase__ :  List[str]=16      ,   lowercase__ :  Union[str, Any]=0.02      ,   lowercase__ :  Dict=1e-12      ,   lowercase__ :  int=0      ,   lowercase__ :  str=0xE000      ,   lowercase__ :  Optional[Any]=0xE001      ,   lowercase__ :  Any=4      ,   lowercase__ :  Union[str, Any]=4      ,   lowercase__ :  Optional[int]=8      ,   lowercase__ :  Dict=16_384      ,   lowercase__ :  Union[str, Any]=128      ,   **lowercase__ :  Tuple      ,   ):







        '''simple docstring'''



        super().__init__(pad_token_id=lowercase__      ,   bos_token_id=lowercase__      ,   eos_token_id=lowercase__      ,   **lowercase__)

        lowerCAmelCase__					     = max_position_embeddings
        lowerCAmelCase__					     = hidden_size
        lowerCAmelCase__					     = num_hidden_layers
        lowerCAmelCase__					     = num_attention_heads
        lowerCAmelCase__					     = intermediate_size
        lowerCAmelCase__					     = hidden_act
        lowerCAmelCase__					     = hidden_dropout_prob
        lowerCAmelCase__					     = attention_probs_dropout_prob
        lowerCAmelCase__					     = initializer_range
        lowerCAmelCase__					     = type_vocab_size
        lowerCAmelCase__					     = layer_norm_eps

        # Character config:
        lowerCAmelCase__					     = downsampling_rate
        lowerCAmelCase__					     = upsampling_kernel_size
        lowerCAmelCase__					     = num_hash_functions
        lowerCAmelCase__					     = num_hash_buckets
        lowerCAmelCase__					     = local_transformer_stride

from typing import TYPE_CHECKING

from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_torch_available


lowerCAmelCase__     						=			{
    'configuration_x_clip': [
        'XCLIP_PRETRAINED_CONFIG_ARCHIVE_MAP',
        'XCLIPConfig',
        'XCLIPTextConfig',
        'XCLIPVisionConfig',
    ],
    'processing_x_clip': ['XCLIPProcessor'],
}

try:
    if not is_torch_available():
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
    pass
else:
    lowerCAmelCase__     						=			[
        'XCLIP_PRETRAINED_MODEL_ARCHIVE_LIST',
        'XCLIPModel',
        'XCLIPPreTrainedModel',
        'XCLIPTextModel',
        'XCLIPVisionModel',
    ]

if TYPE_CHECKING:
    from .configuration_x_clip import (
        XCLIP_PRETRAINED_CONFIG_ARCHIVE_MAP,
        XCLIPConfig,
        XCLIPTextConfig,
        XCLIPVisionConfig,
    )
    from .processing_x_clip import XCLIPProcessor

    try:
        if not is_torch_available():
            raise OptionalDependencyNotAvailable()
    except OptionalDependencyNotAvailable:
        pass
    else:
        from .modeling_x_clip import (
            XCLIP_PRETRAINED_MODEL_ARCHIVE_LIST,
            XCLIPModel,
            XCLIPPreTrainedModel,
            XCLIPTextModel,
            XCLIPVisionModel,
        )

else:
    import sys

    lowerCAmelCase__     						=			_LazyModule(__name__, globals()['__file__'], _import_structure, module_spec=__spec__)
