Hy-MT2-1.8B WMT26 — Video Subtitle Translation (zh→en)
Fine-tuned from tencent/Hy-MT2-1.8B using QLoRA on TVsub subtitle data for the WMT26 Video Subtitle Translation shared task.
Training Details
- Base model: tencent/Hy-MT2-1.8B
- Fine-tuning: 4-bit QLoRA (rank=16, alpha=32, dropout=0.05), target modules: q_proj, k_proj, v_proj, o_proj, gate_proj, up_proj, down_proj
- Trainable parameters: 19,398,656 / 1,810,479,104 (1.07%)
- Data: TVsub official processed split — 60,000 train pairs / 500 dev pairs / 500 test pairs
- Epochs: 3 (with early stopping on dev sacreBLEU, patience=2)
- Batch size: 4 (train/eval), gradient accumulation 8
- Optimizer: PagedAdamW8bit, lr=2e-4, cosine schedule with 3% warmup
- Hardware: 1× NVIDIA L4 (23.7 GB) — Lightning AI Studio
Usage
from transformers import AutoModelForCausalLM, AutoTokenizer
model = AutoModelForCausalLM.from_pretrained("aashish6969/wmt26-hymt2-finetuned")
tokenizer = AutoTokenizer.from_pretrained("aashish6969/wmt26-hymt2-finetuned")
prompt_template = (
"Translate the following text into {tgt_lang}. Note that you must ONLY "
"output the translated result without any additional explanation:\n\n{src}"
)
src = "你好,世界"
msgs = [{"role": "user", "content": prompt_template.format(tgt_lang="English", src=src)}]
prompt = tokenizer.apply_chat_template(msgs, tokenize=False, add_generation_prompt=True)
inputs = tokenizer(prompt, return_tensors="pt")
output = model.generate(**inputs, max_new_tokens=160, num_beams=4)
print(tokenizer.decode(output[0][inputs["input_ids"].shape[1]:], skip_special_tokens=True))
Performance
Final evaluation on the official TVsub test split (200 pairs):
| Metric | Value |
|---|---|
| BLEU | 38.5592 |
| sacreBLEU | 37.6311 |
| chrF | 52.7580 |
| TER | 53.9333 |
License
Apache 2.0
Model tree for aashish6969/wmt26-hymt2-finetuned
Base model
tencent/Hy-MT2-1.8B