Traduzione automatica · Originale inglese
Identificazione linguistica
Identificare la lingua parlata sul dispositivo con SpeechBrain ECAPA VoxLingua107. Il runtime Swift supporta nativo MLX e compilato Core ML e classifica 107 etichette di lingua.
Architettura
L'audio viene rispedito a 16 kHz e convertito da un frontend speechBrain con log-mel a 60-bin. La normalizzazione media temporale alimenta un encoder ECAPA-TDNN e il suo classificatore di classe 107.
CLI
speech language-id recording.wav
speech language-id recording.wav --engine coreml --top 3
speech language-id recording.wav --json
MLX è l'impostazione predefinita. Utilizzare --engine coreml per il modello compilato, --top per scegliere il numero di candidati, e --json in uscita leggibile dalla macchina.
Swift API
import SpeechLanguageID
let identifier = try await SpeechLanguageIdentifier.fromPretrained(engine: .mlx)
let result = try identifier.identify(
audio: samples,
sampleRate: sampleRate,
topK: 5
)
print(result.best?.label.code ?? "unknown")
Registrazioni lunghe
Ogni chiamata modello analizza fino a circa 30 secondi. Le registrazioni più lunghe sono divise in finestre non sovrapposte e le loro probabilità sono combinate con la ponderazione della durata.
La sua fiducia non è un rivelatore di lingua sconosciuta. Aggiungi VAD e una politica di rifiuto calibrata per il silenzio, la musica, il codice di commutazione e le lingue non supportate.