https://github.com/facebookresearch/fairseq — Facebook AI Research Sequence-to-Sequence Toolkit written in Python.
https://github.com/facebookresearch/fairseq/tree/main/examples/mms — The Massively Multilingual Speech (MMS): Scaling Speech Technology to 1000+ languages.
Базовые модели для дообучения:
- Модель, HuggingFace — 300 млн параметров.
- Модель, HuggingFace — 1 млрд параметров.
Скрипт для дообучения слоев адаптера
Перекодирование на частоту дискретизации 16 кгц:
ffmpeg -y -i ./audio_samples/audio.mp3 -ar 16000 ./audio_samples/audio.wavЗапуск распознавания
python examples/mms/asr/infer/mms_infer.py \
--model "../mms1b_fl102.pt" \
--lang "eng" \
--audio "./audio_samples/audio.wav"from datasets import Audio, load_dataset
from transformers import pipeline
data_path = "mozilla-foundation/common_voice_13_0"
data_lang = "sah"
dataset = load_dataset(data_path, name=data_lang, split="test")
datatype = Audio(sampling_rate=16000)
dataset = dataset.cast_column("audio", datatype)
sample = next(iter(dataset))
model_id = "facebook/mms-1b-all"
pipe = pipeline(task="automatic-speech-recognition", model=model_id)
lang_id = "sah"
pipe.model.load_adapter(lang_id)
pipe.tokenizer.set_target_lang(lang_id)
transcript = pipe(sample)
print(transcript)В данный момент используется готовая модель MMS-1B-all обученная на 1162 языка.
Модель занимает 13 ± 0.5 Гб в ОЗУ.
Набор данных: Mozilla CommonVoice 13.0 для якутского языка.
CER: 0.067, WER: 0.321.