Teanga Bench Blas suite

Methodology

Teanga Bench measures how well a large language model does the work of a language tutor. It has two suites.

This page says where the test items come from, how answers are marked, and what the scores can and cannot tell you.

What we publish and what we keep private

The code, the scoring rules, the build scripts and this page are public. For each test, 20 sample items are public. The full item sets are private. They stay on the machine that runs the benchmark and are never put in the repository. We do this so that the test items do not enter model training data.

Failure examples on the model pages come only from the public sample items.

Where the items come from

No answer in the benchmark was written by a language model for the benchmark. A build script copies each answer from a source file, or derives it from a source file by a rule that the script documents. Each item records its source, the licence of the source, and how strong the evidence for its answer is.

The sources are:

No human review

No person reviewed the items for this benchmark. Every item has human_checked: false. The app content is itself largely machine-authored and machine-reviewed. A score on an app-derived test therefore measures agreement with the app content. It is not a score against a standard that an expert signed off.

Each item carries an evidence label so that results can be split by it:

LabelMeaning
blas-app+bunamoThe answer is in the app content, and every word of it is a form that BÚNaMo lists.
blas-app+kaikkiThe answer is in the app content, and Kaikki lists it as a form.
blas-app-onlyThe answer is in the app content. We had no second source. All Welsh and Breton app items are in this group.
blas-app-unverifiedThe app content itself marks the sentence as not yet verified. All Cornish sentences in the translation tests are in this group.
corpus-referenceThe reference translation comes from a published parallel corpus.
distractor-derived-unverifiedThe error sentence was made by putting a wrong option from an app exercise into the sentence. See "Tutor tests".
planted-typoThe error is a doubled letter that a script planted in a clean sentence.
tonada-app-machine-reviewedThe exercise is in the Tonada app content, and the app's automated review marks it verified.
tonada-app-distractor-machine-reviewedThe error sentence was made by putting a wrong option from a Tonada exercise into the sentence.
tonada-app-answer-machine-reviewedA correct sentence from a Tonada exercise, used as a sentence with no error.
wikipedia-revision-silver-unreviewedA real edit from the English Wikipedia history. Some are changes of style and not clear errors.

A cross-check with BÚNaMo or Kaikki shows that a form exists. It does not show that the form is the right one for the question.

Licences

Each item records a licence. The app's own content is marked private-blas or private-tonada. Where the app took a sentence from another source, the item carries the licence of that source:

BÚNaMo, used for cross-checks, is under the Open Database Licence 1.0. Each public sample file has an attribution file beside it that lists its sources, licences and notices.

The tests

The table of tests on this page is generated from the build reports. It shows the number of items, the languages and the evidence counts for each test.

Grammar forms and lesson exercises

The model is asked for one form or one answer: a genitive, a verb form, a prepositional pronoun, a number, the right option in an exercise. The answer is compared with a list of accepted answers after light normalisation (case, apostrophe style and outer spaces do not matter). The list contains every alternative that the source records.

Limit: if a valid dialect or variant form is not in the source, the model is marked wrong for it. Few items have more than one accepted answer, because the sources rarely list alternatives.

Translation and round trip

In the translation test the model translates a sentence into English or from English. In the Breton corpus items the other language is French. The score is chrF++, a standard measure of character and word overlap with the reference translation.

In the round-trip test the model translates a sentence into English, and then, in a new conversation, translates its own English back. The score is chrF++ between the result and the original sentence.

Limits: an overlap measure gives a lower score to a correct translation that uses different words. Most translation items have one reference. Round-trip scores can be high when a model makes the same mistake in both directions.

Tutor tests

The model sees a learner's sentence. The sentence has one error or no error. The model must say if there is an error, give the wrong span, give the correction, give the corrected sentence and explain the error.

The headline score is marked by rule. An item is correct when the model finds the error, fixes it, and changes nothing else. For a sentence with no error, the model must say so and leave the sentence as it is. About one third of the items have no error.

The error sentences are not real learner errors. We found no corpus of real learner errors for these languages. The errors come from three places:

The Blas tutor test covers Irish, Welsh and Scottish Gaelic only. The app has too few suitable exercises for Manx, Breton and Cornish, and a test built on planted typos alone would mislead.

The explanation score

The explanation is the only part that a model marks. Two judge models from two different model families mark each explanation. The explanation passes only when both judges pass it. The same two judges mark every model, so the scores can be compared. A model from the same family as a judge gets no explanation score.

No person has checked the judges' marks. For this reason the explanation score is reported apart from the headline score, with the rate at which the two judges agreed. If a judge call fails three times, the explanation is left unscored. It is not counted as wrong.

Runs, intervals and cost

Contamination

A model may have seen some of the source text in training. Each translation item is labelled private or public-source.

Known limits

Test sets in the Blas suite

Generated from the build reports in data/build-reports/. Items are sampled with a fixed seed. The full sets are private; 20 items per test are published in samples/blas.

Items per test, with counts by group. Human-checked counts only items whose source records human review.

TestItemsPublicLanguageCEFR levelHuman-checked
Lesson exercises
lesson_exercises
36020Breton 60, Cornish 60, Irish 60, Manx 60, Scottish Gaelic 60, Welsh 60A1 125, A2 135, B1 73, B2 24, C1 30
Word forms
morphology
36020Breton 60, Cornish 60, Irish 60, Manx 60, Scottish Gaelic 60, Welsh 60A1 134, A2 140, B1 39, B2 16, Unspecified 310
Translation
translation
36020Breton 60, Cornish 60, Irish 60, Manx 60, Scottish Gaelic 60, Welsh 60A1 112, A2 91, B1 47, B2 30, C1 14, C2 6, Unspecified 600
Round trip
round_trip
24020Breton 40, Cornish 40, Irish 40, Manx 40, Scottish Gaelic 40, Welsh 40A1 25, A2 88, B1 79, B2 27, C1 15, C2 60
Tutor accuracy
tutor_accuracy
18020Irish 60, Scottish Gaelic 60, Welsh 60A1 22, A2 27, B1 42, B2 23, C1 10, C2 2, Unspecified 540

Evidence says how strong the gold answer is: for example whether a course answer is confirmed by a dictionary, or comes from the course alone.

Lesson exercises

Multiple-choice, word-order and fill-the-gap questions from the Blas course, marked against the course's accepted answers.

Sources
blas-app:lesson-exercises, grammar-lessons.json, item-difficulty.json, lesson-screens.json, sentences.json (inspected, not used)
Licences
private-blas 360
Evidence
blas-app+bunamo 7, blas-app+kaikki 96, blas-app-only 257
Build report
blas_lesson_exercises.json

Word forms

Give one inflected form, such as a verb tense, a plural or a prepositional pronoun, marked against a list of accepted forms.

Sources
blas-app, blas-app:Fockleyreen+Learn Manx (Culture Vannin), blas-app:LearnGaelic, blas-app:akademi-kernewek-swf+wiktionary-cornish-bos, blas-app:apertium-bre+kaikki-br, blas-app:fockleyreen, blas-app:giellalt-cor, blas-app:giellalt-cor+kaikki-kw, blas-app:kelly-manx-grammar-1859+wikipedia-manx-grammar+wiktionary-cur, blas-app:kelly-manx-grammar-1859+wikipedia-manx-grammar+wiktionary-ve, blas-app:kerlyver-kernewek, blas-app:kervarker, blas-app:learngaelic
Licences
private-blas 360
Evidence
blas-app+bunamo 11, blas-app+kaikki 176, blas-app-only 173
Shortfalls
breton, cornish, irish, manx, scots-gaelic, welsh (see the build report)
Build report
blas_morphology.json

Translation

Translate a sentence into or out of the language, scored by chrF++ similarity to one or more reference translations.

Sources
blas-app:gaelg-parallel-usage, blas-app:senedd-hansard, blas-app:tatoeba, blas-app:tatoeba-cor-eng, ofis-publik-breton-french-corpus, senedd-legislation-parallel-cym-eng
Licences
CC BY 2.0 FR (Tatoeba) 170, CC BY 4.0 40, GPL-3.0 (Gaelg corpus) 60, OGL-v3 20, OGL-v3 (Senedd Cymru) 30, private-blas 40
Evidence
blas-app+kaikki 44, blas-app-only 196, blas-app-unverified 60, corpus-reference 60
Build report
blas_translation.json

Round trip

Translate a sentence into another language, then back again in a fresh conversation, scored by chrF++ similarity to the original.

Sources
blas-app:gaelg-parallel-usage, blas-app:senedd-hansard, blas-app:sentence-bank, blas-app:tatoeba, blas-app:tatoeba-cor-eng
Licences
CC BY 2.0 FR (Tatoeba) 124, CC BY-SA 4.0 (Wiktionary via Kaikki) 7, GPL-3.0 (Gaelg corpus) 40, OGL-v3 (Senedd Cymru) 29, private-blas 40
Evidence
blas-app+kaikki 64, blas-app-only 136, blas-app-unverified 40
Build report
blas_round_trip.json

Tutor accuracy

Find and fix the error in a sentence, or leave a correct sentence alone; an item counts only when the error is found and fixed and nothing else is changed.

Sources
blas-grammar-lessons, blas-lesson-screens, blas-sentences, sealed-celtic-clean-600-v3
Licences
CC BY-SA 4.0 7, private-blas 173
Evidence
blas-app-only 60, distractor-derived-unverified 113, planted-typo 7
Build report
blas_tutor_accuracy.json