From 567450b51e01b4213cbc6bb18149c5eb64488b8b Mon Sep 17 00:00:00 2001 From: ifedan-ed Date: Mon, 30 Mar 2026 13:28:49 +0000 Subject: [PATCH] Fix LiteLLM STT default: use whisper-1 instead of vertex_ai/chirp vertex_ai/chirp does not work via LiteLLM's audio transcription proxy. Changed default LITELLM_STT_MODEL from vertex_ai/chirp to whisper-1. Updated .env.example documentation to match. --- .env.example | 7 ++++--- src/routes/transcribe.js | 5 ++++- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/.env.example b/.env.example index e8e9079..16b6f50 100644 --- a/.env.example +++ b/.env.example @@ -42,10 +42,11 @@ OPENROUTER_API_KEY=sk-or-v1-your-key # LITELLM_API_KEY=sk-litellm-your-key # Admin can discover available models via the admin panel # -# LiteLLM Speech-to-Text (auto-enabled when LITELLM_API_BASE is set) +# LiteLLM Speech-to-Text # TRANSCRIBE_PROVIDER=litellm -# LiteLLM STT: NOT supported for Vertex AI Chirp via LiteLLM proxy. -# Use TRANSCRIBE_PROVIDER=google for Vertex AI / Gemini STT. +# LITELLM_STT_MODEL=whisper-1 # model_name alias in LiteLLM config +# NOTE: vertex_ai/chirp does NOT work via LiteLLM audio proxy. +# For Vertex AI speech, use TRANSCRIBE_PROVIDER=google (Gemini inline audio). # # LiteLLM TTS: WORKS — use the model_name alias from your LiteLLM model_list # TTS_PROVIDER=litellm (auto-detected when LITELLM_API_BASE set) diff --git a/src/routes/transcribe.js b/src/routes/transcribe.js index f8a93f7..3e26994 100644 --- a/src/routes/transcribe.js +++ b/src/routes/transcribe.js @@ -78,7 +78,10 @@ router.post('/transcribe', authMiddleware, upload.single('audio'), async (req, r if (provider === 'litellm') { if (!process.env.LITELLM_API_BASE) return res.status(400).json({ error: 'LITELLM_API_BASE not set.' }); - var sttModel = process.env.LITELLM_STT_MODEL || 'vertex_ai/chirp'; + // Default to whisper-1 — vertex_ai/chirp does NOT work via LiteLLM audio proxy. + // User should set LITELLM_STT_MODEL to their configured whisper alias, or + // use TRANSCRIBE_PROVIDER=google for Vertex AI / Gemini transcription instead. + var sttModel = process.env.LITELLM_STT_MODEL || 'whisper-1'; var FormData = require('form-data'); var axios = require('axios'); var form = new FormData();