Реалізація автоматичного визначення мови (Language Detection) Автоматичне визначення мови - обов'язковий компонент мультимовних систем. Дозволяє маршрутизувати аудіо до потрібної моделі STT або оператора без ручної вказівки мови. ### Підходи до language detection Whisper-based — найбільш точний, використовує перші 30 секунд аудіо:```python
from faster_whisper import WhisperModel
model = WhisperModel("small", device="cuda") # small достаточно для LID
def detect_language(audio_path: str) -> tuple[str, float]:
_, info = model.transcribe(audio_path, language=None, task="transcribe")
return info.language, info.language_probability
**langid / langdetect** - швидше, але працює з текстом (потрібний попередній грубий STT). **Lightweight audio-based classifiers**:python
speechbrain — специализированная LID-модель
from speechbrain.pretrained import EncoderClassifier
classifier = EncoderClassifier.from_hparams( source="speechbrain/lang-id-voxlingua107-ecapa", savedir="tmp_langid" )
signal = classifier.load_audio("speech.wav") prediction = classifier.classify_batch(signal) lang_id = prediction[3][0] # ISO 639-1 confidence = float(prediction[1].exp())







