ebible_m2o-nllb600m-control-ilo

NLLB-200-distilled-600M fine-tuned to translate Bible verses into ilo from 4 related source languages. Part of a series testing whether a pretrained multilingual model can draft Old Testament books for a language it has only seen the New Testament of โ€” the practical "no OT exists yet" scenario. Project: reproduction and extension of Sami Liedes' 2018 closed-text Bible translation experiment.

Training used New Testament verses only (ilo target, whole OT withheld); the scores below are on withheld OT material (Ruth, Jonah, Genesis 1) the model never saw in the target language. Target token ilo_Latn (existing init โ€” the token-init comparison in the experiment showed the init method makes no measurable difference at an adequate learning rate).

How to use

from transformers import AutoModelForSeq2SeqLM, AutoTokenizer

model = AutoModelForSeq2SeqLM.from_pretrained("DavidCBaines/ebible_m2o-nllb600m-control-ilo")
tokenizer = AutoTokenizer.from_pretrained("DavidCBaines/ebible_m2o-nllb600m-control-ilo")

tokenizer.src_lang = "mri_Latn"  # any source language's FLORES code
batch = tokenizer(["<a mri verse>"], return_tensors="pt")
out = model.generate(
    **batch,
    forced_bos_token_id=tokenizer.convert_tokens_to_ids("ilo_Latn"),
    num_beams=5, max_length=128,
)
print(tokenizer.batch_decode(out, skip_special_tokens=True)[0])

The forced_bos_token_id is also baked into generation_config.json, so omitting it works too.

Evaluation (withheld OT books, never seen in ilo)

chrF3, sacreBLEU conventions. The source-copy floor is the chrF3 of the best source language's own text against the ilo reference โ€” the score you would get by simply copying the closest relative. The model must beat it for the run to be publishable. Validation (250 NT verses): best chrF3 60.63.

book verses best source chrF3 spBLEU mean chrF3 over sources source-copy floor
RUT 85 tgl 62.43 36.12 55.15 29.06
JON 48 ceb 61.75 34.45 54.65 27.36
GEN 1: 31 ceb 61.11 34.51 58.44 23.42

Per-source detail:

  • RUT: chrF3 by source โ€” ceb 60.39, ind 51.35, mri 46.43, tgl 62.43
  • JON: chrF3 by source โ€” ceb 61.75, ind 47.97, mri 47.41, tgl 61.47
  • GEN 1:: chrF3 by source โ€” ceb 61.11, ind 57.45, mri 55.14, tgl 60.06

Training data and licensing

Fine-tuned on eBible-corpus translations. The base model (NLLB-200) is CC-BY-NC-4.0, so this model is non-commercial regardless of the data licences below; ShareAlike sources additionally propagate SA. Released under cc-by-nc-sa-4.0.

translation language FLORES code licence
iloulb ilo (target) โ€” by-sa
mri2012 mri mri_Latn by-nc
indayt ind ind_Latn by-nc
cebulb ceb ceb_Latn by-sa
tglulb tgl tgl_Latn by-sa

Reproducibility

  • Experiment: m2o_control_ilo, init existing, lr 0.0003, max 8000 steps, generation-based early stopping (chrF3 on a fixed 250-verse NT set, patience 3, min-delta 0.2).
  • Git commit: 423a6b234f489c111f6d44f0e45b53d621d8d720
  • Code, configs and the full 15-run comparison: the project repository and the companion results dataset.

Acknowledgement

This series of experiments is inspired by the closed-text Bible translation experiment described by Sami Liedes in his blog. The repo was created with Claude Code using Opus 4.8 and Fable 5 with no code written by hand. There may well be errors present, but I trust Claude to do a better job than I can. Please let me know of any issues.

Downloads last month
21
Safetensors
Model size
0.6B params
Tensor type
BF16
ยท
Inference Providers NEW
This model isn't deployed by any Inference Provider. ๐Ÿ™‹ Ask for provider support

Model tree for DavidCBaines/ebible_m2o-nllb600m-control-ilo

Finetuned
(336)
this model