| --- |
| license: apache-2.0 |
| datasets: |
| - Helsinki-NLP/tatoeba |
| - openlanguagedata/flores_plus |
| language: |
| - es |
| - ca |
| metrics: |
| - bleu |
| - comet |
| - chrf |
| pipeline_tag: translation |
| --- |
| |
| # OPUS-MT-tiny-cat-spa |
|
|
| Distilled model from a Tatoeba-MT Teacher: [Tatoeba-MT-models/itc-deu+eng+fra+por+spa/opusTCv20230926max50+bt+jhubc_transformer-big_2024-05-30](https://object.pouta.csc.fi/Tatoeba-MT-models/itc-deu+eng+fra+por+spa/opusTCv20230926max50+bt+jhubc_transformer-big_2024-05-30.zip), which has been trained on the [Tatoeba](https://github.com/Helsinki-NLP/Tatoeba-Challenge/tree/master/data) dataset. |
|
|
| We used the [OpusDistillery](https://github.com/Helsinki-NLP/OpusDistillery) to train new a new student with the tiny architecture, with a regular transformer decoder. |
| For training data, we used [Tatoeba](https://github.com/Helsinki-NLP/Tatoeba-Challenge/tree/master/data). |
| The configuration file fed into OpusDistillery can be found [here](https://github.com/Helsinki-NLP/OpusDistillery/blob/main/configs/opustranslate_hf/config.op.ca-es.yml). |
|
|
| ## How to run |
| ```python |
| from transformers import MarianMTModel, MarianTokenizer |
| model_name = "Helsinki-NLP/opus-mt_tiny_cat-spa" |
| tokenizer = MarianTokenizer.from_pretrained(model_name) |
| model = MarianMTModel.from_pretrained(model_name) |
| tok = tokenizer("El concepte prové de la Xina, on la flor del cirerer era la més apreciada.", return_tensors="pt").input_ids |
| output = model.generate(tok)[0] |
| tokenizer.decode(output, skip_special_tokens=True) |
| ``` |
|
|
| ## Benchmarks |
| ### Teacher |
| | testset | BLEU | chr-F | COMET| |
| |-----------------------|-------|-------|-------| |
| | Flores+ | 24.7 | 53.4 | 0.8264 | |
|
|
| ### Student |
|
|
| | testset | BLEU | chr-F | COMET | |
| |-----------------------|-------|-------|-------| |
| | Flores+ | 24.2 | 53.2 | 0.8484 | |
|
|
|
|
| ## Marian models |
|
|
| We also provide Marian-compatible versions of this model. To use them, compile [Marian](https://marian-nmt.github.io/quickstart/) and run decoding with `marian-decoder`, for example: |
|
|
| ```bash |
| marian-decoder \ |
| -i input.txt \ |
| -c final.model.npz.best-perplexity.npz.decoder.yml \ |
| -m final.model.npz.best-perplexity.npz \ |
| -v vocab.spm vocab.spm |
| |