This project demonstrates a LoRA-based fine-tuning workflow on the facebook/nllb-200-distilled-600M model using "habtew/english-amharic-translation" dataset for English → Amharic translation. The goal was to experiment with parameter-efficient fine-tuning and build a small, reproducible pipeline for evaluation and sample translations.
# LoRA finetuning NLLB en to am Model.
Model training and fine tuning using LoRA on facebook/nllb-200-distilled-600M model for English to Amharic translation.
## 📂 Models and Datasets.
- NLLB-600M-disttled-600M - Model used to train.
- Habtew-english-to-amharic-translation - Dataset for training.
## 🛠 Workflow Overview
+ Dataset Preparation
+ Sampled subsets from 173k train / 21.6k validation / 43.1k test to 10k train / 2.5k validation & test .
+ Tokenized datasets for Seq2Seq model input.
+ Sanity Check
+ Ran a 100-row RAG pipeline sanity check.
+ Ensured model outputs are consistent before full training.
+ LoRA Fine-Tuning
+ Reduced trainable parameters drastically while retaining most of the base model knowledge.
+ Trained on 10k samples with 3 epochs.
+ Batch Evaluation
+ Generated predictions on test dataset.
+ Calculated CHRF++ scores for quality evaluation.
+ Saving Results
+ Saved trained LoRA adapters and tokenizer.
+ Saved evaluation outputs and sampled datasets as JSON.
# 📊 Results
The fine-tuned model demonstrated the ability to learn from the dataset and produced reasonable translations in many cases. Below are examples:
```json
{
"source": "who gives jesus the authority to conquer?",
"reference": "ኢየሱስ ድል እንዲያደርግ ስልጣን የሰጠው ማን ነው?",
"prediction": "ኢየሱስ ድል እንዲያደርግ ሥልጣን የሰጠው ማን ነው?",
"chrf++": 83.23655149198628
}
```
Here, the model produced an accurate translation that closely matches the reference.
```json
{
"source": "\"If gun control worked, Washington, D.C., would be the beacon.",
"reference": "ይሁን እንጂ የዩናይትድ እስቴትስ ግድያ የበዛበት ዋና ከተማ ናት” ብለዋል።",
"prediction": "\"የጦር መሣሪያ ቁጥጥር ቢሰራ ዋሽንግተን ዲሲ የጦር መሣሪያ መቆጣጠሪያ ማዕከል ትሆን ነበር።",
"chrf++": 4.396984924623116
}
```
In this case, the prediction diverged significantly from the reference, resulting in a very low CHRF++ score.
Overall the model has learned with sample dataset and few epocsh and the overall valuation is:
| Metric | Score |
| ------ | ------ |
| Corpus CHRF++ (LoRA fine-tuned) | 33.03 | …