





from typing import TYPE_CHECKING

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


_UpperCAmelCase				:       int	   =				{"""configuration_speech_encoder_decoder""": ["""SpeechEncoderDecoderConfig"""]}

try:
    if not is_torch_available():
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
    pass
else:
    _UpperCAmelCase				:       Tuple	   =				["""SpeechEncoderDecoderModel"""]

try:
    if not is_flax_available():
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
    pass
else:
    _UpperCAmelCase				:       int	   =				["""FlaxSpeechEncoderDecoderModel"""]

if TYPE_CHECKING:
    from .configuration_speech_encoder_decoder import SpeechEncoderDecoderConfig

    try:
        if not is_torch_available():
            raise OptionalDependencyNotAvailable()
    except OptionalDependencyNotAvailable:
        pass
    else:
        from .modeling_speech_encoder_decoder import SpeechEncoderDecoderModel

    try:
        if not is_flax_available():
            raise OptionalDependencyNotAvailable()
    except OptionalDependencyNotAvailable:
        pass
    else:
        from .modeling_flax_speech_encoder_decoder import FlaxSpeechEncoderDecoderModel

else:
    import sys

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













"""simple docstring"""
from torch import nn

def 				snake_case      (   A__						):
			if act_fn in ["swish", "silu"]:
						return nn.SiLU()
			elif act_fn == "mish":
						return nn.Mish()
			elif act_fn == "gelu":
						return nn.GELU()
			else:
						raise ValueError(F"""Unsupported activation function: {act_fn}"""						)



