






'''simple docstring'''

import unittest

from transformers import is_torch_available
from transformers.testing_utils import require_sentencepiece, require_tokenizers, require_torch, slow


if is_torch_available():
      import torch

      from transformers import XLMRobertaModel




@require_sentencepiece
@require_tokenizers
@require_torch
class      A     (   unittest.TestCase    ):






 """simple docstring"""





 @slow
 def 	_UpperCAmelCase							(				self			):
       UpperCamelCase_					: Dict            =				XLMRobertaModel.from_pretrained("""xlm-roberta-base"""			)
       UpperCamelCase_					: List[Any]            =				torch.tensor([[0, 5_81, 1_02_69, 83, 9_99_42, 1_36, 6_07_42, 23, 70, 8_05_83, 1_82_76, 2]]			)
       # The dog is cute and lives in the garden house

       UpperCamelCase_					: Tuple            =				torch.Size((1, 12, 7_68)			)  # batch_size, sequence_length, embedding_vector_dim
       UpperCamelCase_					: Any            =				torch.tensor(
           [[-0.01_01, 0.12_18, -0.08_03, 0.08_01, 0.13_27, 0.07_76, -0.12_15, 0.23_83, 0.33_38, 0.31_06, 0.03_00, 0.02_52]]			)
       #  xlmr = torch.hub.load('pytorch/fairseq', 'xlmr.base')
       #  xlmr.eval()
       #  expected_output_values_last_dim = xlmr.extract_features(input_ids[0])[:, :, -1]
       with torch.no_grad():
             UpperCamelCase_					: Optional[Any]            =				model(__lowerCAmelCase			)["""last_hidden_state"""].detach()
       self.assertEqual(output.shape      ,  __lowerCAmelCase			)
       # compare the actual values for a slice of last dim
       self.assertTrue(torch.allclose(output[:, :, -1]      ,  __lowerCAmelCase      ,  atol=1E-3			)			)





 @slow
 def 	_UpperCAmelCase							(				self			):
       UpperCamelCase_					: List[Any]            =				XLMRobertaModel.from_pretrained("""xlm-roberta-large"""			)
       UpperCamelCase_					: int            =				torch.tensor([[0, 5_81, 1_02_69, 83, 9_99_42, 1_36, 6_07_42, 23, 70, 8_05_83, 1_82_76, 2]]			)
       # The dog is cute and lives in the garden house

       UpperCamelCase_					: List[str]            =				torch.Size((1, 12, 10_24)			)  # batch_size, sequence_length, embedding_vector_dim
       UpperCamelCase_					: int            =				torch.tensor(
           [[-0.06_99, -0.03_18, 0.07_05, -0.12_41, 0.09_99, -0.05_20, 0.10_04, -0.18_38, -0.47_04, 0.14_37, 0.08_21, 0.01_26]]			)
       #  xlmr = torch.hub.load('pytorch/fairseq', 'xlmr.large')
       #  xlmr.eval()
       #  expected_output_values_last_dim = xlmr.extract_features(input_ids[0])[:, :, -1]
       with torch.no_grad():
             UpperCamelCase_					: Tuple            =				model(__lowerCAmelCase			)["""last_hidden_state"""].detach()
       self.assertEqual(output.shape      ,  __lowerCAmelCase			)
       # compare the actual values for a slice of last dim
       self.assertTrue(torch.allclose(output[:, :, -1]      ,  __lowerCAmelCase      ,  atol=1E-3			)			)














'''simple docstring'''

import unittest

from transformers import load_tool

from .test_tools_common import ToolTesterMixin


UpperCamelCase      					="\nHugging Face was founded in 2016 by French entrepreneurs Clément Delangue, Julien Chaumond, and Thomas Wolf originally as a company that developed a chatbot app targeted at teenagers.[2] After open-sourcing the model behind the chatbot, the company pivoted to focus on being a platform for machine learning.\n\nIn March 2021, Hugging Face raised $40 million in a Series B funding round.[3]\n\nOn April 28, 2021, the company launched the BigScience Research Workshop in collaboration with several other research groups to release an open large language model.[4] In 2022, the workshop concluded with the announcement of BLOOM, a multilingual large language model with 176 billion parameters.[5]\n"




class      A     (   unittest.TestCase, SCREAMING_SNAKE_CASE__    ):






 """simple docstring"""





 def 	_UpperCAmelCase							(				self			):
       UpperCamelCase_					: Optional[Any]            =				load_tool("""text-question-answering"""			)
       self.tool.setup()
       UpperCamelCase_					: List[str]            =				load_tool("""text-question-answering"""      ,  remote=__lowerCAmelCase			)
 def 	_UpperCAmelCase							(				self			):
       UpperCamelCase_					: Union[str, Any]            =				self.tool(__lowerCAmelCase      ,  """What did Hugging Face do in April 2021?"""			)
       self.assertEqual(__lowerCAmelCase      ,  """launched the BigScience Research Workshop"""			)
 def 	_UpperCAmelCase							(				self			):
       UpperCamelCase_					: Optional[Any]            =				self.remote_tool(__lowerCAmelCase      ,  """What did Hugging Face do in April 2021?"""			)
       self.assertEqual(__lowerCAmelCase      ,  """launched the BigScience Research Workshop"""			)
 def 	_UpperCAmelCase							(				self			):
       UpperCamelCase_					: List[Any]            =				self.tool(text=__lowerCAmelCase      ,  question="""What did Hugging Face do in April 2021?"""			)
       self.assertEqual(__lowerCAmelCase      ,  """launched the BigScience Research Workshop"""			)





 def 	_UpperCAmelCase							(				self			):
       UpperCamelCase_					: Dict            =				self.remote_tool(text=__lowerCAmelCase      ,  question="""What did Hugging Face do in April 2021?"""			)
       self.assertEqual(__lowerCAmelCase      ,  """launched the BigScience Research Workshop"""			)






