Home / Models / translate-windy-core

Multilingual translation model translate-windy-core

One CTranslate2 INT8 model for many language directions, fine-tuned by Windstorm Labs from facebook/m2m100_1.2B.

Task
Translation (multilingual)
Lineage
M2M-100
Format
CTranslate2 (INT8)
Hugging Face
WindyWord/translate-windy-core
Last updated on HF
2026-07-27

Quality (as published in the model card)

FLORES-200 devtest, 1012 sentences per pair, beam 4. These numbers come from the Hugging Face model card; this site has not re-measured them, and they use a different setup from our pair screening (devtest, 1,012 sentences, spBLEU and chrF), so do not compare them directly with pair scores.

PairspBLEUchrF
English → Spanish29.3753.61
English → French49.5667.72
English → German41.3062.54
English → Italian31.9356.29
English → Portuguese50.1968.54
English → Russian36.0555.85
English → Chinese27.3629.68
English → Japanese23.1135.10
English → Korean19.0132.57
English → Arabic20.5742.28
English → Hindi29.2451.42
English → Swahili28.1955.32
Spanish → English30.4656.90
French → English44.9366.08
Chinese → English27.5254.56
Japanese → English26.1953.38
Mean32.1952.62

Covers 74 of the 76 languages in the Windy translation set. Telugu and Basque are not covered.

How to run

Shell
pip install ctranslate2 transformers sentencepiece huggingface_hub
Python
import ctranslate2
from huggingface_hub import snapshot_download
from transformers import AutoTokenizer

path = snapshot_download("WindyWord/translate-windy-core")
tok = AutoTokenizer.from_pretrained(path)   # the tokenizer ships in the repo
translator = ctranslate2.Translator(path, device="cpu", compute_type="int8")

tok.src_lang = "en"
source = tok.convert_ids_to_tokens(tok.encode("Where is the train station?"))
target_prefix = [tok.convert_ids_to_tokens(tok.get_lang_id("es"))]
result = translator.translate_batch([source], target_prefix=[target_prefix], beam_size=4)
print(tok.decode(tok.convert_tokens_to_ids(result[0].hypotheses[0][1:])))

Tested: Pattern run on 2026-10-01 against WindyWord/translate-windy-nano with ctranslate2 4.8.2 and transformers 5.18.0 on CPU. Same code path as translate-windy-core. Not run on every model individually.

Licence and attribution

Licence
MIT
Upstream
facebook/m2m100_1.2B
Upstream licence
MIT
Attribution
Based on facebook/m2m100_1.2B (M2M-100) by Meta Platforms, Inc. Licensed MIT.

Copy this into your NOTICE file (or equivalent) when you ship the model:

NOTICE
This product uses the model WindyWord/translate-windy-core
(https://huggingface.co/WindyWord/translate-windy-core), published by Windstorm Labs (https://windstormlabs.com).
Based on facebook/m2m100_1.2B (M2M-100) by Meta Platforms, Inc. Licensed MIT.
Windstorm Labs modified the upstream weights; the model card describes what was changed.
Licensed under the MIT License: https://opensource.org/license/mit

This is a convenience, not legal advice. See Licensing.