



'''simple docstring'''

from typing import TYPE_CHECKING

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


_A					:     Any      ={
    '''configuration_retribert''': ['''RETRIBERT_PRETRAINED_CONFIG_ARCHIVE_MAP''', '''RetriBertConfig'''],
    '''tokenization_retribert''': ['''RetriBertTokenizer'''],
}

try:
		if not is_tokenizers_available():
				raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
		pass
else:
		_A					:     Tuple      =['''RetriBertTokenizerFast''']

try:
		if not is_torch_available():
				raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
		pass
else:
		_A					:     Optional[Any]      =[
		    '''RETRIBERT_PRETRAINED_MODEL_ARCHIVE_LIST''',
		    '''RetriBertModel''',
		    '''RetriBertPreTrainedModel''',
		]


if TYPE_CHECKING:
		from .configuration_retribert import RETRIBERT_PRETRAINED_CONFIG_ARCHIVE_MAP, RetriBertConfig
		from .tokenization_retribert import RetriBertTokenizer

		try:
				if not is_tokenizers_available():
						raise OptionalDependencyNotAvailable()
		except OptionalDependencyNotAvailable:
				pass
		else:
				from .tokenization_retribert_fast import RetriBertTokenizerFast

		try:
				if not is_torch_available():
						raise OptionalDependencyNotAvailable()
		except OptionalDependencyNotAvailable:
				pass
		else:
				from .modeling_retribert import (
				    RETRIBERT_PRETRAINED_MODEL_ARCHIVE_LIST,
				    RetriBertModel,
				    RetriBertPreTrainedModel,
				)

else:
		import sys

		_A					:     int      =_LazyModule(__name__, globals()['''__file__'''], _import_structure, module_spec=__spec__)





'''simple docstring'''

import torch

from transformers import PreTrainedModel

from .custom_configuration import CustomConfig, NoSuperInitConfig



class 		lowerCamelCase__   (    A  ):




					'''simple docstring'''



					A_         =    CustomConfig




					def __init__(	self					:						int  ,	UpperCamelCase_					:						List[str]       )	->							int:



						'''simple docstring'''





						super().__init__(UpperCamelCase_       )
						_lowercase       :							List[Any]  	=		torch.nn.Linear(config.hidden_size  ,	config.hidden_size       )




					def     __UpperCAmelCase  (	self					:						Optional[int]  ,	UpperCamelCase_					:						Any       )	->							Union[str, Any]:



						'''simple docstring'''





						return self.linear(UpperCamelCase_       )




					def     __UpperCAmelCase  (	self					:						Optional[int]  ,	UpperCamelCase_					:						Optional[Any]       )	->							str:



						'''simple docstring'''





						pass






class 		lowerCamelCase__   (    A  ):




					'''simple docstring'''



					A_         =    NoSuperInitConfig




					def __init__(	self					:						Optional[int]  ,	UpperCamelCase_					:						Dict       )	->							Optional[Any]:



						'''simple docstring'''





						super().__init__(UpperCamelCase_       )
						_lowercase       :							List[str]  	=		torch.nn.Linear(config.attribute  ,	config.attribute       )




					def     __UpperCAmelCase  (	self					:						Optional[Any]  ,	UpperCamelCase_					:						Optional[int]       )	->							List[Any]:



						'''simple docstring'''





						return self.linear(UpperCamelCase_       )




					def     __UpperCAmelCase  (	self					:						Optional[Any]  ,	UpperCamelCase_					:						int       )	->							List[str]:



						'''simple docstring'''





						pass
