fix(transcribe): pass language=ar/tr to nova-2-general so Lyra answers in correct language

Without explicit language param, nova-2-general falls back to multilingual
auto-detect and often misdetects arabic audio as english (phonetic transcript
'salam alaikum' instead of 'السلام عليكم'). detectLang() then sees only
latin chars and answers in english.

Confirmed via Deepgram docs: nova-2-general accepts language=ar and language=tr
(only nova-3 rejects them with HTTP 400).
This commit is contained in:
chahinebrini 2026-05-31 01:37:11 +02:00
parent e0b4d9f530
commit 55e3cdfb26

View File

@ -95,9 +95,15 @@ export default defineEventHandler(async (event) => {
? language ? language
: "de"; : "de";
// nova-2-general unterstützt language=ar/tr (im Gegensatz zu nova-3).
// Ohne expliziten language-Param fällt nova-2 auf Auto-Detect zurück und
// misdetektiert arabisches Audio oft als Englisch (phonetisches Transcript
// wie "salam alaikum" statt "السلام عليكم") — Lyra antwortet dann nicht
// auf Arabisch. Mit language=ar wird der korrekte Acoustic-Model-Pfad
// verwendet und die Schrift bleibt arabisch.
const needsGeneralModel = ["ar", "tr"].includes(deepgramLang); const needsGeneralModel = ["ar", "tr"].includes(deepgramLang);
const deepgramUrl = needsGeneralModel const deepgramUrl = needsGeneralModel
? "https://api.deepgram.com/v1/listen?model=nova-2-general" ? `https://api.deepgram.com/v1/listen?language=${deepgramLang}&model=nova-2-general`
: `https://api.deepgram.com/v1/listen?language=${deepgramLang}&model=nova-3`; : `https://api.deepgram.com/v1/listen?language=${deepgramLang}&model=nova-3`;
console.log( console.log(