Translation
ExecuTorch
msluszniak's picture
Unpublish variants that lose on device
9ae5659 verified
|
Raw History Blame Contribute Delete
7.44 kB
---
license: other
license_name: apache-2.0-and-cc-by-4.0
license_link: LICENSE
pipeline_tag: translation
library_name: executorch
language: [en, de, es, fr]
base_model:
- Helsinki-NLP/opus-mt-en-de
- Helsinki-NLP/opus-mt-de-en
- Helsinki-NLP/opus-mt-en-es
- Helsinki-NLP/opus-mt-es-en
- Helsinki-NLP/opus-mt-en-fr
- Helsinki-NLP/opus-mt-fr-en
---
# opus-mt
This repository hosts the **opus-mt** models exported for the
[React Native ExecuTorch](https://www.npmjs.com/package/react-native-executorch)
library as ExecuTorch `.pte` programs, ready to run on device.
## Variants
| Path | Backend | Precision |
| --- | --- | --- |
| `en_de/xnnpack/opus_mt_en_de_xnnpack_int8.pte` | xnnpack | int8 |
| `de_en/xnnpack/opus_mt_de_en_xnnpack_int8.pte` | xnnpack | int8 |
| `en_es/xnnpack/opus_mt_en_es_xnnpack_int8.pte` | xnnpack | int8 |
| `es_en/xnnpack/opus_mt_es_en_xnnpack_int8.pte` | xnnpack | int8 |
| `en_fr/xnnpack/opus_mt_en_fr_xnnpack_int8.pte` | xnnpack | int8 |
| `fr_en/xnnpack/opus_mt_fr_en_xnnpack_int8.pte` | xnnpack | int8 |
## Unshipped backends
A backend directory carrying a `NOTES.md` and no `.pte` was exported and
not published. Its note records why.
- `de_en/coreml` ([why](https://huggingface.co/software-mansion/react-native-executorch-opus-mt/blob/main/de_en/coreml/NOTES.md))
- `de_en/mlx` ([why](https://huggingface.co/software-mansion/react-native-executorch-opus-mt/blob/main/de_en/mlx/NOTES.md))
- `de_en/vulkan` ([why](https://huggingface.co/software-mansion/react-native-executorch-opus-mt/blob/main/de_en/vulkan/NOTES.md))
- `en_de/coreml` ([why](https://huggingface.co/software-mansion/react-native-executorch-opus-mt/blob/main/en_de/coreml/NOTES.md))
- `en_de/mlx` ([why](https://huggingface.co/software-mansion/react-native-executorch-opus-mt/blob/main/en_de/mlx/NOTES.md))
- `en_de/vulkan` ([why](https://huggingface.co/software-mansion/react-native-executorch-opus-mt/blob/main/en_de/vulkan/NOTES.md))
- `en_es/coreml` ([why](https://huggingface.co/software-mansion/react-native-executorch-opus-mt/blob/main/en_es/coreml/NOTES.md))
- `en_es/mlx` ([why](https://huggingface.co/software-mansion/react-native-executorch-opus-mt/blob/main/en_es/mlx/NOTES.md))
- `en_es/vulkan` ([why](https://huggingface.co/software-mansion/react-native-executorch-opus-mt/blob/main/en_es/vulkan/NOTES.md))
- `en_fr/coreml` ([why](https://huggingface.co/software-mansion/react-native-executorch-opus-mt/blob/main/en_fr/coreml/NOTES.md))
- `en_fr/mlx` ([why](https://huggingface.co/software-mansion/react-native-executorch-opus-mt/blob/main/en_fr/mlx/NOTES.md))
- `en_fr/vulkan` ([why](https://huggingface.co/software-mansion/react-native-executorch-opus-mt/blob/main/en_fr/vulkan/NOTES.md))
- `es_en/coreml` ([why](https://huggingface.co/software-mansion/react-native-executorch-opus-mt/blob/main/es_en/coreml/NOTES.md))
- `es_en/mlx` ([why](https://huggingface.co/software-mansion/react-native-executorch-opus-mt/blob/main/es_en/mlx/NOTES.md))
- `es_en/vulkan` ([why](https://huggingface.co/software-mansion/react-native-executorch-opus-mt/blob/main/es_en/vulkan/NOTES.md))
- `fr_en/coreml` ([why](https://huggingface.co/software-mansion/react-native-executorch-opus-mt/blob/main/fr_en/coreml/NOTES.md))
- `fr_en/mlx` ([why](https://huggingface.co/software-mansion/react-native-executorch-opus-mt/blob/main/fr_en/mlx/NOTES.md))
- `fr_en/vulkan` ([why](https://huggingface.co/software-mansion/react-native-executorch-opus-mt/blob/main/fr_en/vulkan/NOTES.md))
## Repository structure
```
LICENSE 360 B
config.json 29 B
de_en/coreml/NOTES.md 230 B
de_en/mlx/NOTES.md 169 B
de_en/tokenizer.json 2.4 MB
de_en/vulkan/NOTES.md 218 B
de_en/xnnpack/config.json 5.5 kB
de_en/xnnpack/opus_mt_de_en_xnnpack_int8.pte 107.0 MB
en_de/coreml/NOTES.md 230 B
en_de/mlx/NOTES.md 169 B
en_de/tokenizer.json 2.4 MB
en_de/vulkan/NOTES.md 218 B
en_de/xnnpack/config.json 5.5 kB
en_de/xnnpack/opus_mt_en_de_xnnpack_int8.pte 107.0 MB
en_es/coreml/NOTES.md 230 B
en_es/mlx/NOTES.md 169 B
en_es/tokenizer.json 2.7 MB
en_es/vulkan/NOTES.md 218 B
en_es/xnnpack/config.json 5.5 kB
en_es/xnnpack/opus_mt_en_es_xnnpack_int8.pte 114.1 MB
en_fr/coreml/NOTES.md 230 B
en_fr/mlx/NOTES.md 169 B
en_fr/tokenizer.json 2.4 MB
en_fr/vulkan/NOTES.md 218 B
en_fr/xnnpack/config.json 5.5 kB
en_fr/xnnpack/opus_mt_en_fr_xnnpack_int8.pte 108.4 MB
es_en/coreml/NOTES.md 230 B
es_en/mlx/NOTES.md 169 B
es_en/tokenizer.json 2.7 MB
es_en/vulkan/NOTES.md 218 B
es_en/xnnpack/config.json 5.5 kB
es_en/xnnpack/opus_mt_es_en_xnnpack_int8.pte 114.1 MB
fr_en/coreml/NOTES.md 230 B
fr_en/mlx/NOTES.md 169 B
fr_en/tokenizer.json 2.4 MB
fr_en/vulkan/NOTES.md 218 B
fr_en/xnnpack/config.json 5.5 kB
fr_en/xnnpack/opus_mt_fr_en_xnnpack_int8.pte 108.4 MB
```
## Compatibility
These files are published for the **ExecuTorch v1.4.1** runtime. ExecuTorch
gives no forward compatibility guarantee, so an older runtime may fail to load
them.
To use them in React Native ExecuTorch, pass the model constant shipped in the
library's model registry to the corresponding task pipeline. See the
[documentation](https://docs.swmansion.com/react-native-executorch/docs/fundamentals/downloading-models).
To load these files in your own ExecuTorch runtime, read the
[compatibility note](https://github.com/pytorch/executorch/blob/main/runtime/COMPATIBILITY.md)
first.
## Upstream models and licenses
Each directory is one language pair with its own upstream model and license.
`en_de` is CC-BY 4.0 and requires attribution to Helsinki-NLP Opus-MT.
| Directory | Upstream | License |
| --- | --- | --- |
| `en_de` | [Helsinki-NLP/opus-mt-en-de](https://huggingface.co/Helsinki-NLP/opus-mt-en-de) | cc-by-4.0 |
| `de_en` | [Helsinki-NLP/opus-mt-de-en](https://huggingface.co/Helsinki-NLP/opus-mt-de-en) | apache-2.0 |
| `en_es` | [Helsinki-NLP/opus-mt-en-es](https://huggingface.co/Helsinki-NLP/opus-mt-en-es) | apache-2.0 |
| `es_en` | [Helsinki-NLP/opus-mt-es-en](https://huggingface.co/Helsinki-NLP/opus-mt-es-en) | apache-2.0 |
| `en_fr` | [Helsinki-NLP/opus-mt-en-fr](https://huggingface.co/Helsinki-NLP/opus-mt-en-fr) | apache-2.0 |
| `fr_en` | [Helsinki-NLP/opus-mt-fr-en](https://huggingface.co/Helsinki-NLP/opus-mt-fr-en) | apache-2.0 |
## Export notes
Each `.pte` has two methods: `encode` returns the cross-attention keys and
values of all decoder layers, and `decode` runs one greedy step against a
256-token self-attention cache held in the program. The tokenizer adds no
`</s>`; append it, start decoding from `<pad>` and stop at `</s>`. Only XNNPACK int8
ships: it was the fastest variant on both a Galaxy S26 Ultra and an iPhone 16.