---
language:
- multilingual
- en
- fr
- es
- zh
- ru
- ar
- ja
- ko
- it
- pt
- de
- hi
- id
- tr
- vi
- pl
- uk
- ro
- sv
- nl
license: apache-2.0
library_name: transformers
pipeline_tag: translation
tags:
- translation
- multilingual
- mt5
- machine-translation
- whirlwindai
---
---
# The Idea
# The Idea
Translate‑25T is a multilingual translation model fine‑tuned from **google/mt5‑small** on the **OPUS‑100** dataset. It supports translation between **English and 18+ other languages** in both directions, making it a practical tool for research, education, and lightweight multilingual applications.
The focus is on **balance**: delivering solid translation quality while keeping inference fast and the model compact enough to run in resource‑constrained environments.
---
# Quick Start
```python
from transformers import MT5ForConditionalGeneration, AutoTokenizer
model = MT5ForConditionalGeneration.from_pretrained("WhirlwindAI/Translate-25L")
tokenizer = AutoTokenizer.from_pretrained("WhirlwindAI/Translate-25L")
def translate(text, src, tgt):
prompt = f"translate {src} to {tgt}: {text}"
inputs = tokenizer(prompt, return_tensors="pt", truncation=True)
outputs = model.generate(**inputs, max_new_tokens=128, num_beams=4)
return tokenizer.decode(outputs[0], skip_special_tokens=True)
print(translate("Hello, how are you?", "en", "fr"))
```
---
# Supported Languages
# Supported Languages
Translate‑25T covers a diverse set of languages, including many high‑resource European languages, as well as several Asian and Middle Eastern languages.
| Code | Language | Code | Language |
|------|----------|------|----------|
| 🇬🇧 en | English | 🇩🇪 de | German |
| 🇫🇷 fr | French | 🇪🇸 es | Spanish |
| 🇷🇺 ru | Russian | 🇨🇳 zh | Chinese |
| 🇯🇵 ja | Japanese | 🇰🇷 ko | Korean |
| 🇸🇦 ar | Arabic | 🇮🇹 it | Italian |
| 🇵🇹 pt | Portuguese | 🇳🇱 nl | Dutch |
| 🇮🇳 hi | Hindi | 🇮🇩 id | Indonesian |
| 🇹🇷 tr | Turkish | 🇻🇳 vi | Vietnamese |
| 🇵🇱 pl | Polish | 🇺🇦 uk | Ukrainian |
| 🇷🇴 ro | Romanian | 🇸🇪 sv | Swedish |
---
# Evaluation
We evaluated Translate‑25T on the **OPUS‑100 test set** using **50 samples per language pair**. The results below show BLEU scores, inference speed, and a combined radar view.
### BLEU Scores

### Inference Speed

### Radar Comparison

---
# Sample Translation (French → English)
| Input (French) | Output (English) |
|----------------|------------------|
| `Bonjour, comment allez‑vous aujourd'hui ?` | `Hello, how are you here now?` |
---
# Model Details
| Property | Value |
|-----------|-------|
| Base Model | google/mt5-small |
| Parameters | 300 Million |
| Architecture | mT5 (Encoder‑Decoder) |
| Training Data | OPUS-100 |
| Languages | 18+ |
| Framework | Hugging Face Transformers |
| License | Apache 2.0 |
---
# Highlights
- **Multilingual**: translate between English and 18+ languages.
- **Efficient**: ~300M parameters – lightweight enough for many production scenarios.
- **Fast**: average inference speed of **52.2 tokens/second** on a T4 GPU.
- **Research‑friendly**: open weights and Apache 2.0 license.
- **Practical**: trained on a diverse set of parallel sentences from OPUS‑100.
---
# Limitations
- Performance varies across language pairs; high‑resource languages (e.g., English–French) achieve the best BLEU scores.
- The model may struggle with domain‑specific terminology, slang, or very long documents.
- Low‑resource languages are not covered; additional fine‑tuning is recommended for specialised use cases.
---
# Acknowledgements
Built by **WhirlwindAI**. We thank the Hugging Face team for their ecosystem, and the OPUS project for providing the training data.
---
# License
This model is released under the **Apache 2.0** license.
---
### 🌪️ WhirlwindAI
*Practical AI, built with care.*