


"""simple docstring"""




lowerCAmelCase	=							{
    'Pillow': 'Pillow',
    'accelerate': 'accelerate>=0.11.0',
    'compel': 'compel==0.1.8',
    'black': 'black~=23.1',
    'datasets': 'datasets',
    'filelock': 'filelock',
    'flax': 'flax>=0.4.1',
    'hf-doc-builder': 'hf-doc-builder>=0.3.0',
    'huggingface-hub': 'huggingface-hub>=0.13.2',
    'requests-mock': 'requests-mock==1.10.0',
    'importlib_metadata': 'importlib_metadata',
    'invisible-watermark': 'invisible-watermark',
    'isort': 'isort>=5.5.4',
    'jax': 'jax>=0.2.8,!=0.3.2',
    'jaxlib': 'jaxlib>=0.1.65',
    'Jinja2': 'Jinja2',
    'k-diffusion': 'k-diffusion>=0.0.12',
    'torchsde': 'torchsde',
    'note_seq': 'note_seq',
    'librosa': 'librosa',
    'numpy': 'numpy',
    'omegaconf': 'omegaconf',
    'parameterized': 'parameterized',
    'protobuf': 'protobuf>=3.20.3,<4',
    'pytest': 'pytest',
    'pytest-timeout': 'pytest-timeout',
    'pytest-xdist': 'pytest-xdist',
    'ruff': 'ruff>=0.0.241',
    'safetensors': 'safetensors',
    'sentencepiece': 'sentencepiece>=0.1.91,!=0.1.92',
    'scipy': 'scipy',
    'onnx': 'onnx',
    'regex': 'regex!=2019.12.17',
    'requests': 'requests',
    'tensorboard': 'tensorboard',
    'torch': 'torch>=1.4',
    'torchvision': 'torchvision',
    'transformers': 'transformers>=4.25.1',
    'urllib3': 'urllib3<=2.0.0',
}






import unittest

from transformers import is_torch_available
from transformers.testing_utils import require_torch


if is_torch_available():
			import torch

			from transformers.activations import gelu_new, gelu_python, get_activation


@require_torch
class 	_a							(      unittest.TestCase      ):

							def 				lowerCamelCase_			(							self:     Dict							)      ->       Any:





									"""simple docstring"""







									lowercase__						=				torch.tensor([-100, -1, -0.1, 0, 0.1, 1.0, 100]							)
									lowercase__						=				get_activation('''gelu'''							)
									self.assertTrue(torch.allclose(gelu_python(UpperCamelCase_							)   ,						torch_builtin(UpperCamelCase_							)							)							)
									self.assertFalse(torch.allclose(gelu_python(UpperCamelCase_							)   ,						gelu_new(UpperCamelCase_							)							)							)

							def 				lowerCamelCase_			(							self:     Optional[int]							)      ->       str:





									"""simple docstring"""







									lowercase__						=				torch.tensor([-100, -1, -0.1, 0, 0.1, 1.0, 100]							)
									lowercase__						=				get_activation('''gelu'''							)
									lowercase__						=				get_activation('''gelu_10'''							)

									lowercase__						=				torch_builtin(UpperCamelCase_							)
									lowercase__						=				geluaa(UpperCamelCase_							)

									lowercase__						=				torch.where(y_gelu_aa < 10.0   ,						1   ,						0							)

									self.assertTrue(torch.max(UpperCamelCase_							).item() == 10.0							)
									self.assertTrue(torch.allclose(y_gelu * clipped_mask   ,						y_gelu_aa * clipped_mask							)							)

							def 				lowerCamelCase_			(							self:     Union[str, Any]							)      ->       Tuple:





									"""simple docstring"""







									get_activation('''gelu'''							)
									get_activation('''gelu_10'''							)
									get_activation('''gelu_fast'''							)
									get_activation('''gelu_new'''							)
									get_activation('''gelu_python'''							)
									get_activation('''gelu_pytorch_tanh'''							)
									get_activation('''linear'''							)
									get_activation('''mish'''							)
									get_activation('''quick_gelu'''							)
									get_activation('''relu'''							)
									get_activation('''sigmoid'''							)
									get_activation('''silu'''							)
									get_activation('''swish'''							)
									get_activation('''tanh'''							)
									with self.assertRaises(UpperCamelCase_							):
											get_activation('''bogus'''							)
									with self.assertRaises(UpperCamelCase_							):
											get_activation(UpperCamelCase_							)


							def 				lowerCamelCase_			(							self:     Tuple							)      ->       int:





									"""simple docstring"""







									lowercase__						=				get_activation('''gelu'''							)
									lowercase__						=				1
									lowercase__						=				get_activation('''gelu'''							)
									self.assertEqual(acta.a   ,						1							)
									with self.assertRaises(UpperCamelCase_							):
											lowercase__						=				acta.a


