Dil tanımlama
SpeechBrain ECAPA VoxLingua107 ile konuşulan dili cihaz üzerinde tanımlayın. Swift çalışma zamanı yerel MLX ve derlenmiş Core ML'i destekler ve 107 dil etiketini sıralar.
Mimari
Ses 16 kHz'e yeniden örneklenir ve SpeechBrain ile tam uyumlu 60 bantlı log-mel ön uçtan geçirilir. Zamansal ortalama normalizasyonu ECAPA-TDNN kodlayıcısını ve 107 sınıflı sınıflandırıcıyı besler.
CLI
speech language-id recording.wav
speech language-id recording.wav --engine coreml --top 3
speech language-id recording.wav --json
Varsayılan MLX'tir. Derlenmiş model için --engine coreml, aday sayısı için --top ve makine tarafından okunabilir çıktı için --json kullanın.
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")
Uzun kayıtlar
Her model çağrısı yaklaşık 30 saniyeye kadar analiz eder. Daha uzun kayıtlar örtüşmeyen pencerelere ayrılır ve olasılıklar süreye göre ağırlıklandırılarak birleştirilir.
Model her zaman bilinen etiketlerinden birini sıralar. Güven skoru bilinmeyen dil algılayıcısı değildir. Sessizlik, müzik, dil geçişi ve desteklenmeyen diller için VAD ve kalibre edilmiş bir reddetme ilkesi ekleyin.