pip install -r requirements.txt
pip install -e .Set up API keys:
cp .env.example .env
# Add your API keys to .envGenerate synthetic training data:
python scripts/generate_synthetic_data.py \
--input data/ende_dev.jsonl \
--output data/synthetic/synthetic_ende.jsonl \
--target-lang de --mode multiFilter and train:
python scripts/filter_synthetic_data.py --input data/synthetic/synthetic_ende.jsonl --threshold 0.86
python trainer.py --data-files data/processed/filtered_*.jsonl| Lang | Mode | BLEU | chrF2++ | Proper SR | Random SR |
|---|---|---|---|---|---|
| DE | proper | 48.06 | 70.74 | 0.98 | 0.73 |
| ES | proper | 58.51 | 76.08 | 0.99 | 0.78 |
| RU | proper | 35.80 | 63.57 | 0.98 | 0.72 |
Full results in paper.
@inproceedings{jaswal-2025-takes,
title = "It Takes Two: A Dual Stage Approach for Terminology-Aware Translation",
author = "Jaswal, Akshat",
editor = "Haddow, Barry and Kocmi, Tom and Koehn, Philipp and Monz, Christof",
booktitle = "Proceedings of the Tenth Conference on Machine Translation",
month = nov,
year = "2025",
address = "Suzhou, China",
publisher = "Association for Computational Linguistics",
url = "https://aclanthology.org/2025.wmt-1.112/",
doi = "10.18653/v1/2025.wmt-1.112",
pages = "1344--1350"
}