fix(coach): STT auf Deepgram nova-3 — fixt Arabisch/Türkisch-Transcription

nova-2 unterstützt kein ar/tr → Deepgram 400 "No such model/language/tier
combination" → leeres Transcript ("kein Text nach Speech"). nova-3 deckt alle
gelisteten Sprachen als diskrete Codes ab (de/en/tr/ar/fr/es/pt/it), ohne
Regression. Verifiziert gg. Deepgram models-languages-overview.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
chahinebrini 2026-05-29 23:45:50 +02:00
parent c3de7055a5
commit 4f788e640e

View File

@ -83,7 +83,13 @@ export default defineEventHandler(async (event) => {
buffer.length, buffer.length,
); );
// Deepgram language mapping (de/en/tr/ar direkt unterstützt) // Deepgram language mapping. WICHTIG: model=nova-3, NICHT nova-2 —
// nova-2 unterstützt weder Arabisch (ar) noch Türkisch (tr) und antwortet
// dafür mit 400 "No such model/language/tier combination" → leeres
// Transcript / Fehler beim Client ("kein Text nach Speech"). nova-3 deckt
// alle hier gelisteten Sprachen als diskrete Codes ab (inkl. ar + tr),
// ohne Regression für de/en/fr/es/pt/it. Verifiziert gg. Deepgram-Doc
// models-languages-overview (2026-05).
const deepgramLang = const deepgramLang =
language && language &&
["de", "en", "tr", "ar", "fr", "es", "pt", "it"].includes(language) ["de", "en", "tr", "ar", "fr", "es", "pt", "it"].includes(language)
@ -92,7 +98,7 @@ export default defineEventHandler(async (event) => {
try { try {
const response = await fetch( const response = await fetch(
`https://api.deepgram.com/v1/listen?language=${deepgramLang}&model=nova-2`, `https://api.deepgram.com/v1/listen?language=${deepgramLang}&model=nova-3`,
{ {
method: "POST", method: "POST",
headers: { headers: {