TigreGotico/m2m100_418M_fr_ewe_rel_news_ft-onnx
m2m100418Mfrewerelnewsft-onnx
ONNX export of `masakhane/m2m100_418M_fr_ewe_rel_news_ft`.
Translation direction: French (fr) -> Ewe (ewe).
Attribution
The original model was trained by Masakhane (masakhane-io/lafand-mt) as part of MAFAND-MT (Adelani et al., NAACL 2022, "A Few Thousand Translations Go a Long Way!"). It is a fine-tune of facebook/m2m100_418M on JW300 plus the MAFAND news corpus. Licence: AFL-3.0, as declared by the original repository. This repository only converts the weights to ONNX. All credit for the model belongs to Masakhane.
Export
optimum-cli export onnx --model masakhane/m2m100_418M_fr_ewe_rel_news_ft \
--task text2text-generation-with-past --no-post-process <outdir>Files
Encoder, decoder and decoder-with-past are separate graphs (--no-post-process); the merged decoder is not produced because merging exhausts memory on this model.
Parity
8 sentences from the MAFAND-MT fr-ewe test split, PyTorch original vs ONNX, num_beams=4, max_new_tokens=64, exact string match:
- fp32: 100%
- int8: 38% (reported, not gated)
Selecting the language
This is a single-direction model. The target language is already fixed in config.json via forced_bos_token_id, so you do not set it yourself. You must set the source language on the tokenizer:
tokenizer.src_lang = "fr"Masakhane reused existing M2M100 language tokens as stand-ins for languages M2M100 does not cover, so src_lang is "fr" here, which is not the ISO code of French. Using a different value silently degrades output.
Usage
from transformers import AutoTokenizer
from optimum.onnxruntime import ORTModelForSeq2SeqLM
tok = AutoTokenizer.from_pretrained("TigreGotico/m2m100_418M_fr_ewe_rel_news_ft-onnx")
tok.src_lang = "fr"
model = ORTModelForSeq2SeqLM.from_pretrained("TigreGotico/m2m100_418M_fr_ewe_rel_news_ft-onnx")
enc = tok("Côte d'Ivoire: Ahmed, l'éléphant buveur d'alcool, s'est encore échappé et fait des dégts.", return_tensors="pt")
out = model.generate(**enc, num_beams=4, max_new_tokens=64)
print(tok.batch_decode(out, skip_special_tokens=True)[0])
# -> Le Côte d'Ivoire: Ahmed si nye ahanomunɔtɔ la menɔ anyi haɖe o eye wogblẽe ɖi .For the int8 build, pass subfolder="int8".
