import datasets


__snake_case						=			'\\n@InProceedings{conneau2018xnli,\n  author = "Conneau, Alexis\n                 and Rinott, Ruty\n                 and Lample, Guillaume\n                 and Williams, Adina\n                 and Bowman, Samuel R.\n                 and Schwenk, Holger\n                 and Stoyanov, Veselin",\n  title = "XNLI: Evaluating Cross-lingual Sentence Representations",\n  booktitle = "Proceedings of the 2018 Conference on Empirical Methods\n               in Natural Language Processing",\n  year = "2018",\n  publisher = "Association for Computational Linguistics",\n  location = "Brussels, Belgium",\n}\n'

__snake_case						=			'\\nXNLI is a subset of a few thousand examples from MNLI which has been translated\ninto a 14 different languages (some low-ish resource). As with MNLI, the goal is\nto predict textual entailment (does sentence A imply/contradict/neither sentence\nB) and is a classification task (given two sentences, predict one of three\nlabels).\n'

__snake_case						=			'\nComputes XNLI score which is just simple accuracy.\nArgs:\n    predictions: Predicted labels.\n    references: Ground truth labels.\nReturns:\n    \'accuracy\': accuracy\nExamples:\n\n    >>> predictions = [0, 1]\n    >>> references = [0, 1]\n    >>> xnli_metric = datasets.load_metric("xnli")\n    >>> results = xnli_metric.compute(predictions=predictions, references=references)\n    >>> print(results)\n    {\'accuracy\': 1.0}\n'





def      lowerCAmelCase_       ( __lowerCAmelCase						,    __lowerCAmelCase  )->     Any:






      '''simple docstring'''





      return (preds == labels).mean()







@datasets.utils.file_utils.add_start_docstrings(_DESCRIPTION    ,      _KWARGS_DESCRIPTION      )
class 	__snake_case      (   datasets.Metric      ):
 def 		UpperCAmelCase__				(     self  )		->							Any:
       '''simple docstring'''





       return datasets.MetricInfo(
           description=_DESCRIPTION						,      citation=_CITATION						,      inputs_description=_KWARGS_DESCRIPTION						,      features=datasets.Features(
               {
                   '''predictions''': datasets.Value('''int64''' if self.config_name != '''sts-b''' else '''float32'''  ),
                   '''references''': datasets.Value('''int64''' if self.config_name != '''sts-b''' else '''float32'''  ),
               }  )						,      codebase_urls=[]						,      reference_urls=[]						,      format='''numpy'''						,      )






 def 		UpperCAmelCase__				(     self						,      snake_case__						,      snake_case__  )		->							Union[str, Any]:
       '''simple docstring'''





       return {"accuracy": simple_accuracy(UpperCamelCase__						,      UpperCamelCase__  )}






import os
import tempfile
import unittest

from transformers.models.marian.convert_marian_tatoeba_to_pytorch import DEFAULT_REPO, TatoebaConverter
from transformers.testing_utils import slow
from transformers.utils import cached_property




@unittest.skipUnless(os.path.exists(lowerCAmelCase__     )    ,				"""Tatoeba directory does not exist."""     )
class 		UpperCamelCase__	(unittest.TestCase     ):

    '''simple docstring'''



    @cached_property
    def     _lowercase     (    self     )     ->      int:
           lowerCamelCase   :      str			 =					tempfile.mkdtemp()
           return TatoebaConverter(save_dir=UpperCamelCase__     )







    @slow
    def     _lowercase     (    self     )     ->      List[Any]:
           self.resolver.convert_models(["heb-eng"]     )







    @slow
    def     _lowercase     (    self     )     ->      Tuple:
           lowerCamelCase ,      lowerCamelCase   :      Dict			 =					self.resolver.write_model_card("opus-mt-he-en"     ,  dry_run=UpperCamelCase__     )
           assert mmeta["long_pair"] == "heb-eng"






