



import unittest

from transformers import load_tool
from transformers.utils import is_torch_available


if is_torch_available():
    import torch

from transformers.testing_utils import require_torch

from .test_tools_common import ToolTesterMixin





@require_torch
class 		UpperCAmelCase						(						unittest.TestCase       ,snake_case_				):





   def 	__lowerCAmelCase							(	self			):
         _lowerCAmelCase 			=  load_tool('''text-to-speech'''			)
         self.tool.setup()





   def 	__lowerCAmelCase							(	self			):
         # SpeechT5 isn't deterministic
         torch.manual_seed(0			)
         _lowerCAmelCase 			=  self.tool('''hey'''			)
         _lowerCAmelCase 			=  result.to_raw()
         self.assertTrue(
             torch.allclose(
                 resulting_tensor[:3]       ,     torch.tensor([-0.0_005_966_668_832_115_829, -0.0_003_657_640_190_795_064, -0.00_013_439_502_799_883_485]			)       ,     )			)





   def 	__lowerCAmelCase							(	self			):
         # SpeechT5 isn't deterministic
         torch.manual_seed(0			)
         _lowerCAmelCase 			=  self.tool('''hey'''			)
         _lowerCAmelCase 			=  result.to_raw()
         self.assertTrue(
             torch.allclose(
                 resulting_tensor[:3]       ,     torch.tensor([-0.0_005_966_668_832_115_829, -0.0_003_657_640_190_795_064, -0.00_013_439_502_799_883_485]			)       ,     )			)




from ...utils import (
    OptionalDependencyNotAvailable,
    is_torch_available,
    is_transformers_available,
    is_transformers_version,
)


try:
    if not (is_transformers_available() and is_torch_available()):
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
    from ...utils.dummy_torch_and_transformers_objects import ShapEPipeline
else:
    from .camera import create_pan_cameras
    from .pipeline_shap_e import ShapEPipeline
    from .pipeline_shap_e_img2img import ShapEImgaImgPipeline
    from .renderer import (
        BoundingBoxVolume,
        ImportanceRaySampler,
        MLPNeRFModelOutput,
        MLPNeRSTFModel,
        ShapEParamsProjModel,
        ShapERenderer,
        StratifiedRaySampler,
        VoidNeRFModel,
    )