



from typing import TYPE_CHECKING

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


__snake_case		:str   	=  {
    '''configuration_ernie''': ['''ERNIE_PRETRAINED_CONFIG_ARCHIVE_MAP''', '''ErnieConfig''', '''ErnieOnnxConfig'''],
}

try:
 if not is_torch_available():
  raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
 pass
else:
 __snake_case		:Union[str, Any]   	=  [
     '''ERNIE_PRETRAINED_MODEL_ARCHIVE_LIST''',
     '''ErnieForCausalLM''',
     '''ErnieForMaskedLM''',
     '''ErnieForMultipleChoice''',
     '''ErnieForNextSentencePrediction''',
     '''ErnieForPreTraining''',
     '''ErnieForQuestionAnswering''',
     '''ErnieForSequenceClassification''',
     '''ErnieForTokenClassification''',
     '''ErnieModel''',
     '''ErniePreTrainedModel''',
 ]

if TYPE_CHECKING:
 from .configuration_ernie import ERNIE_PRETRAINED_CONFIG_ARCHIVE_MAP, ErnieConfig, ErnieOnnxConfig

 try:
  if not is_torch_available():
   raise OptionalDependencyNotAvailable()
 except OptionalDependencyNotAvailable:
  pass
 else:
  from .modeling_ernie import (
      ERNIE_PRETRAINED_MODEL_ARCHIVE_LIST,
      ErnieForCausalLM,
      ErnieForMaskedLM,
      ErnieForMultipleChoice,
      ErnieForNextSentencePrediction,
      ErnieForPreTraining,
      ErnieForQuestionAnswering,
      ErnieForSequenceClassification,
      ErnieForTokenClassification,
      ErnieModel,
      ErniePreTrainedModel,
  )

else:
 import sys

 __snake_case		:Union[str, Any]   	=  _LazyModule(__name__, globals()['''__file__'''], _import_structure, module_spec=__spec__)










def   __snake_case			(    _UpperCAmelCase     ,				_UpperCAmelCase = False       ):

    if not isinstance(_UpperCAmelCase     ,				_UpperCAmelCase       ):
        __a		 =       f'Expected string as input, found {type(_UpperCAmelCase       )}'
        raise ValueError(_UpperCAmelCase       )
    if not isinstance(_UpperCAmelCase     ,				_UpperCAmelCase       ):
        __a		 =       f'Expected boolean as use_pascal parameter, found {type(_UpperCAmelCase       )}'
        raise ValueError(_UpperCAmelCase       )

    __a		 =       input_str.split('''_'''       )

    __a		 =       0 if use_pascal else 1

    __a		 =       words[start_index:]

    __a		 =       [word[0].upper() + word[1:] for word in words_to_capitalize]

    __a		 =       '''''' if use_pascal else words[0]

    return "".join([initial_word, *capitalized_words]       )


if __name__ == "__main__":
 from doctest import testmod

 testmod()





