


from typing import TYPE_CHECKING

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


_UpperCAmelCase			:  Optional[int]     ={
    """configuration_distilbert""": [
        """DISTILBERT_PRETRAINED_CONFIG_ARCHIVE_MAP""",
        """DistilBertConfig""",
        """DistilBertOnnxConfig""",
    ],
    """tokenization_distilbert""": ["""DistilBertTokenizer"""],
}

try:
						if not is_tokenizers_available():
												raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
						pass
else:
						_UpperCAmelCase			:  Any     =["""DistilBertTokenizerFast"""]

try:
						if not is_torch_available():
												raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
						pass
else:
						_UpperCAmelCase			:  int     =[
						    """DISTILBERT_PRETRAINED_MODEL_ARCHIVE_LIST""",
						    """DistilBertForMaskedLM""",
						    """DistilBertForMultipleChoice""",
						    """DistilBertForQuestionAnswering""",
						    """DistilBertForSequenceClassification""",
						    """DistilBertForTokenClassification""",
						    """DistilBertModel""",
						    """DistilBertPreTrainedModel""",
						]

try:
						if not is_tf_available():
												raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
						pass
else:
						_UpperCAmelCase			:  str     =[
						    """TF_DISTILBERT_PRETRAINED_MODEL_ARCHIVE_LIST""",
						    """TFDistilBertForMaskedLM""",
						    """TFDistilBertForMultipleChoice""",
						    """TFDistilBertForQuestionAnswering""",
						    """TFDistilBertForSequenceClassification""",
						    """TFDistilBertForTokenClassification""",
						    """TFDistilBertMainLayer""",
						    """TFDistilBertModel""",
						    """TFDistilBertPreTrainedModel""",
						]

try:
						if not is_flax_available():
												raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
						pass
else:
						_UpperCAmelCase			:  List[str]     =[
						    """FlaxDistilBertForMaskedLM""",
						    """FlaxDistilBertForMultipleChoice""",
						    """FlaxDistilBertForQuestionAnswering""",
						    """FlaxDistilBertForSequenceClassification""",
						    """FlaxDistilBertForTokenClassification""",
						    """FlaxDistilBertModel""",
						    """FlaxDistilBertPreTrainedModel""",
						]


if TYPE_CHECKING:
						from .configuration_distilbert import (
						    DISTILBERT_PRETRAINED_CONFIG_ARCHIVE_MAP,
						    DistilBertConfig,
						    DistilBertOnnxConfig,
						)
						from .tokenization_distilbert import DistilBertTokenizer

						try:
												if not is_tokenizers_available():
																		raise OptionalDependencyNotAvailable()
						except OptionalDependencyNotAvailable:
												pass
						else:
												from .tokenization_distilbert_fast import DistilBertTokenizerFast

						try:
												if not is_torch_available():
																		raise OptionalDependencyNotAvailable()
						except OptionalDependencyNotAvailable:
												pass
						else:
												from .modeling_distilbert import (
												    DISTILBERT_PRETRAINED_MODEL_ARCHIVE_LIST,
												    DistilBertForMaskedLM,
												    DistilBertForMultipleChoice,
												    DistilBertForQuestionAnswering,
												    DistilBertForSequenceClassification,
												    DistilBertForTokenClassification,
												    DistilBertModel,
												    DistilBertPreTrainedModel,
												)

						try:
												if not is_tf_available():
																		raise OptionalDependencyNotAvailable()
						except OptionalDependencyNotAvailable:
												pass
						else:
												from .modeling_tf_distilbert import (
												    TF_DISTILBERT_PRETRAINED_MODEL_ARCHIVE_LIST,
												    TFDistilBertForMaskedLM,
												    TFDistilBertForMultipleChoice,
												    TFDistilBertForQuestionAnswering,
												    TFDistilBertForSequenceClassification,
												    TFDistilBertForTokenClassification,
												    TFDistilBertMainLayer,
												    TFDistilBertModel,
												    TFDistilBertPreTrainedModel,
												)

						try:
												if not is_flax_available():
																		raise OptionalDependencyNotAvailable()
						except OptionalDependencyNotAvailable:
												pass
						else:
												from .modeling_flax_distilbert import (
												    FlaxDistilBertForMaskedLM,
												    FlaxDistilBertForMultipleChoice,
												    FlaxDistilBertForQuestionAnswering,
												    FlaxDistilBertForSequenceClassification,
												    FlaxDistilBertForTokenClassification,
												    FlaxDistilBertModel,
												    FlaxDistilBertPreTrainedModel,
												)

else:
						import sys

						_UpperCAmelCase			:  List[Any]     =_LazyModule(__name__, globals()["""__file__"""], _import_structure, module_spec=__spec__)



_UpperCAmelCase			:  int     =frozenset(
    [
        """prompt""",
        """height""",
        """width""",
        """guidance_scale""",
        """negative_prompt""",
        """prompt_embeds""",
        """negative_prompt_embeds""",
        """cross_attention_kwargs""",
    ]
)

_UpperCAmelCase			:  List[Any]     =frozenset(["""prompt""", """negative_prompt"""])

_UpperCAmelCase			:  Dict     =frozenset([])

_UpperCAmelCase			:  int     =frozenset(["""image"""])

_UpperCAmelCase			:  Tuple     =frozenset(
    [
        """image""",
        """height""",
        """width""",
        """guidance_scale""",
    ]
)

_UpperCAmelCase			:  int     =frozenset(["""image"""])

_UpperCAmelCase			:  str     =frozenset(
    [
        """prompt""",
        """image""",
        """height""",
        """width""",
        """guidance_scale""",
        """negative_prompt""",
        """prompt_embeds""",
        """negative_prompt_embeds""",
    ]
)

_UpperCAmelCase			:  int     =frozenset(["""prompt""", """image""", """negative_prompt"""])

_UpperCAmelCase			:  Optional[int]     =frozenset(
    [
        # Text guided image variation with an image mask
        """prompt""",
        """image""",
        """mask_image""",
        """height""",
        """width""",
        """guidance_scale""",
        """negative_prompt""",
        """prompt_embeds""",
        """negative_prompt_embeds""",
    ]
)

_UpperCAmelCase			:  Optional[int]     =frozenset(["""prompt""", """image""", """mask_image""", """negative_prompt"""])

_UpperCAmelCase			:  Optional[Any]     =frozenset(
    [
        # image variation with an image mask
        """image""",
        """mask_image""",
        """height""",
        """width""",
        """guidance_scale""",
    ]
)

_UpperCAmelCase			:  Optional[Any]     =frozenset(["""image""", """mask_image"""])

_UpperCAmelCase			:  Union[str, Any]     =frozenset(
    [
        """example_image""",
        """image""",
        """mask_image""",
        """height""",
        """width""",
        """guidance_scale""",
    ]
)

_UpperCAmelCase			:  Tuple     =frozenset(["""example_image""", """image""", """mask_image"""])

_UpperCAmelCase			:  Any     =frozenset(["""class_labels"""])

_UpperCAmelCase			:  List[Any]     =frozenset(["""class_labels"""])

_UpperCAmelCase			:  int     =frozenset(["""batch_size"""])

_UpperCAmelCase			:  str     =frozenset([])

_UpperCAmelCase			:  str     =frozenset(["""batch_size"""])

_UpperCAmelCase			:  Optional[Any]     =frozenset([])

_UpperCAmelCase			:  Tuple     =frozenset(
    [
        """prompt""",
        """audio_length_in_s""",
        """guidance_scale""",
        """negative_prompt""",
        """prompt_embeds""",
        """negative_prompt_embeds""",
        """cross_attention_kwargs""",
    ]
)

_UpperCAmelCase			:  Tuple     =frozenset(["""prompt""", """negative_prompt"""])
_UpperCAmelCase			:  List[str]     =frozenset(["""input_tokens"""])

_UpperCAmelCase			:  Optional[Any]     =frozenset(["""input_tokens"""])