


'''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     lowercase__  (						unittest.TestCase					):





							'''simple docstring'''


							@slow
							def UpperCAmelCase_	(    self  ):
											_SCREAMING_SNAKE_CASE :       Optional[int]     		=      XLMRobertaModel.from_pretrained("""xlm-roberta-base"""  )
											_SCREAMING_SNAKE_CASE :       Union[str, Any]     		=      torch.tensor([[0, 581, 1_0269, 83, 9_9942, 136, 6_0742, 23, 70, 8_0583, 1_8276, 2]]  )
											# The dog is cute and lives in the garden house

											_SCREAMING_SNAKE_CASE :       Dict     		=      torch.Size((1, 12, 768)  )  # batch_size, sequence_length, embedding_vector_dim
											_SCREAMING_SNAKE_CASE :       Optional[int]     		=      torch.tensor(
											    [[-0.0101, 0.1218, -0.0803, 0.0801, 0.1327, 0.0776, -0.1215, 0.2383, 0.3338, 0.3106, 0.0300, 0.0252]]  )
											#  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():
															_SCREAMING_SNAKE_CASE :       Union[str, Any]     		=      model(__snake_case  )["""last_hidden_state"""].detach()
											self.assertEqual(output.shape    ,					__snake_case  )
											# compare the actual values for a slice of last dim
											self.assertTrue(torch.allclose(output[:, :, -1]    ,					__snake_case    ,					atol=1e-3  )  )






							@slow
							def UpperCAmelCase_	(    self  ):
											_SCREAMING_SNAKE_CASE :       Optional[Any]     		=      XLMRobertaModel.from_pretrained("""xlm-roberta-large"""  )
											_SCREAMING_SNAKE_CASE :       int     		=      torch.tensor([[0, 581, 1_0269, 83, 9_9942, 136, 6_0742, 23, 70, 8_0583, 1_8276, 2]]  )
											# The dog is cute and lives in the garden house

											_SCREAMING_SNAKE_CASE :       Dict     		=      torch.Size((1, 12, 1024)  )  # batch_size, sequence_length, embedding_vector_dim
											_SCREAMING_SNAKE_CASE :       Optional[int]     		=      torch.tensor(
											    [[-0.0699, -0.0318, 0.0705, -0.1241, 0.0999, -0.0520, 0.1004, -0.1838, -0.4704, 0.1437, 0.0821, 0.0126]]  )
											#  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():
															_SCREAMING_SNAKE_CASE :       Optional[int]     		=      model(__snake_case  )["""last_hidden_state"""].detach()
											self.assertEqual(output.shape    ,					__snake_case  )
											# compare the actual values for a slice of last dim
											self.assertTrue(torch.allclose(output[:, :, -1]    ,					__snake_case    ,					atol=1e-3  )  )








'''simple docstring'''


def 			snake_case_   (  SCREAMING_SNAKE_CASE__     ):







				"""simple docstring"""





				_SCREAMING_SNAKE_CASE :       str     		=      0
				for ch in input_str:
								_SCREAMING_SNAKE_CASE :       Optional[Any]     		=      ord(SCREAMING_SNAKE_CASE__     )
								_SCREAMING_SNAKE_CASE :       Union[str, Any]     		=      pow(2							,      SCREAMING_SNAKE_CASE__     )

								# If we already turned on bit for current character's unicode
								if bitmap >> ch_unicode & 1 == 1:
												return False
								bitmap |= ch_bit_index_on
				return True


if __name__ == "__main__":
				import doctest

				doctest.testmod()




