m2m100_418M_fr_ewe_rel_news_ft-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

Path Precision Size
*.onnx (root) fp32 4754 MB
int8/*.onnx int8 dynamic 1201 MB

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".

Downloads last month
5
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for TigreGotico/m2m100_418M_fr_ewe_rel_news_ft-onnx

Quantized
(1)
this model