From a7b6c1de78a74257ad763577ce36282cfeda260c Mon Sep 17 00:00:00 2001 From: Adrian Cowham Date: Thu, 5 Feb 2026 15:08:21 -0800 Subject: [PATCH 1/4] parsing lang from stt ctor --- agents/src/inference/stt.ts | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/agents/src/inference/stt.ts b/agents/src/inference/stt.ts index f3bf3fb13..356be9b30 100644 --- a/agents/src/inference/stt.ts +++ b/agents/src/inference/stt.ts @@ -155,9 +155,28 @@ export class STT extends BaseSTT { throw new Error('apiSecret is required: pass apiSecret or set LIVEKIT_API_SECRET'); } + // Parse language from model string if provided: "provider/model:language" + let nextModel = model; + let nextLanguage = language; + if (typeof nextModel === 'string') { + const idx = nextModel.lastIndexOf(':'); + if (idx !== -1) { + const languageFromModel = nextModel.slice(idx + 1) as STTLanguages; + if (nextLanguage && nextLanguage !== languageFromModel) { + this.#logger.warn( + '`language` is provided via both argument and model, using the one from the argument', + { language: nextLanguage, model: nextModel }, + ); + } else { + nextLanguage = languageFromModel; + } + nextModel = nextModel.slice(0, idx) as TModel; + } + } + this.opts = { - model, - language, + model: nextModel, + language: nextLanguage, encoding, sampleRate, baseURL: lkBaseURL, From bb9ad18eed5a265425bfb16fb2c2e6d4d8b642cb Mon Sep 17 00:00:00 2001 From: Adrian Cowham Date: Thu, 5 Feb 2026 15:39:39 -0800 Subject: [PATCH 2/4] using ModelWithLanguage --- agents/src/inference/stt.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/agents/src/inference/stt.ts b/agents/src/inference/stt.ts index 356be9b30..377dfbd9c 100644 --- a/agents/src/inference/stt.ts +++ b/agents/src/inference/stt.ts @@ -121,7 +121,7 @@ export class STT extends BaseSTT { #logger = log(); constructor(opts?: { - model?: TModel; + model?: ModelWithLanguage; language?: STTLanguages; baseURL?: string; encoding?: STTEncoding; From d2a22ab59976883274a63b326a179d64082a3657 Mon Sep 17 00:00:00 2001 From: Adrian Cowham Date: Tue, 10 Feb 2026 14:05:56 -0800 Subject: [PATCH 3/4] fix typing --- agents/src/inference/stt.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/agents/src/inference/stt.ts b/agents/src/inference/stt.ts index bdd959530..eb5479db6 100644 --- a/agents/src/inference/stt.ts +++ b/agents/src/inference/stt.ts @@ -236,7 +236,7 @@ export class STT extends BaseSTT { const normalizedFallback = fallback ? normalizeSTTFallback(fallback) : undefined; this.opts = { - model: nextModel, + model: nextModel as TModel, language: nextLanguage, encoding, sampleRate, From 465b52c35e0ce6615c6e7f33b50fb6a432588533 Mon Sep 17 00:00:00 2001 From: Brian Yin Date: Tue, 10 Feb 2026 14:07:17 -0800 Subject: [PATCH 4/4] Create curly-bees-shave.md --- .changeset/curly-bees-shave.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/curly-bees-shave.md diff --git a/.changeset/curly-bees-shave.md b/.changeset/curly-bees-shave.md new file mode 100644 index 000000000..0c783a700 --- /dev/null +++ b/.changeset/curly-bees-shave.md @@ -0,0 +1,5 @@ +--- +"@livekit/agents": patch +--- + +Fix parsing lang from stt ctor