Supported Tasks
Table with columns: Task, Description| Task | Description |
|---|
| Welsh transcription | Welsh audio → Welsh text |
| English transcription | English audio (UK/Irish accents) → English text |
| Welsh→English translation (experimental) | Welsh audio → English text — limited quality, not recommended for production (see below) |
Evaluation Results
WER / CER (lower is better) on the held-out benchmark. Average across the 4 transcription test sets: WER 20.29, CER 7.33.
Welsh Transcription
English Transcription
Welsh→English Translation
The model can translate Welsh speech directly into English text (task="translate"). This capability is experimental and has not been formally evaluated; its translation quality is limited and it is not recommended for production use.
For higher-quality English, transcribe the Welsh audio with this model and translate the resulting Welsh text with a dedicated Welsh→English machine translation model.
Training Data
† Common Voice data is not redistributed here. techiaith Common Voice 23.0 data is held in private repositories, in line with the Mozilla Foundation's terms for obtaining and sharing Common Voice data. They are listed above for provenance and reproducibility, not as downloads.
The Welsh Common Voice corpus is freely available from Mozilla themselves: Mozilla Common Voice — Welsh datasets. Releases are distributed through the Mozilla Data Collective, and the datacollective package offers a programmatic download. With that in hand the rest of this pipeline is reproducible — every other dataset in the table is openly available on the Hugging Face Hub. Our thanks to Mozilla and to the Welsh speakers who contributed their voices.
Training Configuration
Table with columns: Parameter, Value| Parameter | Value |
|---|
| Base model | openai/whisper-large-v2 |
| Learning rate | 1e-05 |
| LR scheduler | cosine |
| Warmup steps | 500 |
| Max steps | 15000 |
| Weight decay | 0.01 |
| Batch size | 16 × 2 accumulation × 2 GPUs = 64 effective |
| FP16 | True |
| SpecAugment | True |
Usage
from transformers import pipeline
pipe = pipeline(
"automatic-speech-recognition",
model="techiaith/whisper-large-ft-cy-en",
)
result = pipe("welsh_audio.wav", generate_kwargs={"language": "cy", "task": "transcribe"})
result = pipe("english_audio.wav", generate_kwargs={"language": "en", "task": "transcribe"})
result = pipe("welsh_audio.wav", generate_kwargs={"language": "cy", "task": "translate"})
CTranslate2 Version
A CTranslate2 (int8 quantised) version is available at techiaith/whisper-large-ft-cy-en-ct2 for faster inference.
Acknowledgements
Developed by Uned Technolegau Iaith, Prifysgol Bangor / Language Technologies Unit, Bangor University.
Funded by the Welsh Government.