

"""simple docstring"""






from ..utils import DummyObject, requires_backends


lowerCamelCase__				:  Any													=  None
def       UpperCamelCase					(			*_lowerCAmelCase     :						Optional[int],  **_lowerCAmelCase     :						int )				->			Optional[int]:
	requires_backends(_lowerCAmelCase,  ["""sentencepiece""", """tokenizers"""] )








"""simple docstring"""






from typing import TYPE_CHECKING

from ...utils import (
    OptionalDependencyNotAvailable,
    _LazyModule,
    is_tf_available,
    is_tokenizers_available,
    is_torch_available,
)


lowerCamelCase__				:  Union[str, Any]													=  {
    '''configuration_dpr''': ['''DPR_PRETRAINED_CONFIG_ARCHIVE_MAP''', '''DPRConfig'''],
    '''tokenization_dpr''': [
        '''DPRContextEncoderTokenizer''',
        '''DPRQuestionEncoderTokenizer''',
        '''DPRReaderOutput''',
        '''DPRReaderTokenizer''',
    ],
}


try:
						if not is_tokenizers_available():
												raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
						pass
else:
						lowerCamelCase__				:  List[Any]													=  [
						    '''DPRContextEncoderTokenizerFast''',
						    '''DPRQuestionEncoderTokenizerFast''',
						    '''DPRReaderTokenizerFast''',
						]

try:
						if not is_torch_available():
												raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
						pass
else:
						lowerCamelCase__				:  Dict													=  [
						    '''DPR_CONTEXT_ENCODER_PRETRAINED_MODEL_ARCHIVE_LIST''',
						    '''DPR_QUESTION_ENCODER_PRETRAINED_MODEL_ARCHIVE_LIST''',
						    '''DPR_READER_PRETRAINED_MODEL_ARCHIVE_LIST''',
						    '''DPRContextEncoder''',
						    '''DPRPretrainedContextEncoder''',
						    '''DPRPreTrainedModel''',
						    '''DPRPretrainedQuestionEncoder''',
						    '''DPRPretrainedReader''',
						    '''DPRQuestionEncoder''',
						    '''DPRReader''',
						]

try:
						if not is_tf_available():
												raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
						pass
else:
						lowerCamelCase__				:  Any													=  [
						    '''TF_DPR_CONTEXT_ENCODER_PRETRAINED_MODEL_ARCHIVE_LIST''',
						    '''TF_DPR_QUESTION_ENCODER_PRETRAINED_MODEL_ARCHIVE_LIST''',
						    '''TF_DPR_READER_PRETRAINED_MODEL_ARCHIVE_LIST''',
						    '''TFDPRContextEncoder''',
						    '''TFDPRPretrainedContextEncoder''',
						    '''TFDPRPretrainedQuestionEncoder''',
						    '''TFDPRPretrainedReader''',
						    '''TFDPRQuestionEncoder''',
						    '''TFDPRReader''',
						]


if TYPE_CHECKING:
						from .configuration_dpr import DPR_PRETRAINED_CONFIG_ARCHIVE_MAP, DPRConfig
						from .tokenization_dpr import (
						    DPRContextEncoderTokenizer,
						    DPRQuestionEncoderTokenizer,
						    DPRReaderOutput,
						    DPRReaderTokenizer,
						)

						try:
												if not is_tokenizers_available():
																		raise OptionalDependencyNotAvailable()
						except OptionalDependencyNotAvailable:
												pass
						else:
												from .tokenization_dpr_fast import (
												    DPRContextEncoderTokenizerFast,
												    DPRQuestionEncoderTokenizerFast,
												    DPRReaderTokenizerFast,
												)

						try:
												if not is_torch_available():
																		raise OptionalDependencyNotAvailable()
						except OptionalDependencyNotAvailable:
												pass
						else:
												from .modeling_dpr import (
												    DPR_CONTEXT_ENCODER_PRETRAINED_MODEL_ARCHIVE_LIST,
												    DPR_QUESTION_ENCODER_PRETRAINED_MODEL_ARCHIVE_LIST,
												    DPR_READER_PRETRAINED_MODEL_ARCHIVE_LIST,
												    DPRContextEncoder,
												    DPRPretrainedContextEncoder,
												    DPRPreTrainedModel,
												    DPRPretrainedQuestionEncoder,
												    DPRPretrainedReader,
												    DPRQuestionEncoder,
												    DPRReader,
												)

						try:
												if not is_tf_available():
																		raise OptionalDependencyNotAvailable()
						except OptionalDependencyNotAvailable:
												pass
						else:
												from .modeling_tf_dpr import (
												    TF_DPR_CONTEXT_ENCODER_PRETRAINED_MODEL_ARCHIVE_LIST,
												    TF_DPR_QUESTION_ENCODER_PRETRAINED_MODEL_ARCHIVE_LIST,
												    TF_DPR_READER_PRETRAINED_MODEL_ARCHIVE_LIST,
												    TFDPRContextEncoder,
												    TFDPRPretrainedContextEncoder,
												    TFDPRPretrainedQuestionEncoder,
												    TFDPRPretrainedReader,
												    TFDPRQuestionEncoder,
												    TFDPRReader,
												)

else:
						import sys

						lowerCamelCase__				:  Optional[Any]													=  _LazyModule(__name__, globals()['''__file__'''], _import_structure, module_spec=__spec__)





