LibreChat/api/server/services/Files/Audio
Mieszko Makuch f158f07ee0 feat(stt): add server-side language fallback and extraParams for OpenAI STT provider
Add two optional fields to the OpenAI STT provider config schema:

- `language`: server-side default language (ISO 639-1) sent to Whisper when
  the client doesn't provide one. Useful for non-English deployments where
  admins want to predefine the transcription language without requiring each
  user to configure it in the browser.

- `extraParams`: arbitrary key-value pairs forwarded to the STT endpoint.
  Enables self-hosted Whisper servers (e.g. Speaches, faster-whisper-server)
  to receive provider-specific parameters like `vad_filter` (Voice Activity
  Detection) which filters silence and prevents hallucinations on empty
  audio clips. These params are ignored by the official OpenAI API.

Example librechat.yaml configuration:

```yaml
speech:
  stt:
    openai:
      url: 'http://whisper-server/v1/audio/transcriptions'
      apiKey: 'none'
      model: 'whisper-large-v3-turbo'
      language: 'pl'
      extraParams:
        vad_filter: true
```
2026-03-25 11:38:57 +01:00
..
getCustomConfigSpeech.js 🔄 refactor: OAI Image Edit Proxy, Speech Settings Handling, Import Query Data Usage (#10281) 2025-10-28 09:36:03 -04:00
getVoices.js fix: use appConfig correctly in getVoices 2025-08-28 00:51:22 -04:00
index.js 🤖 feat: Custom Endpoint Agents (experimental) (#4627) 2024-11-04 12:59:04 -05:00
streamAudio.js 📦 refactor: Consolidate DB models, encapsulating Mongoose usage in data-schemas (#11830) 2026-03-21 14:28:53 -04:00
streamAudio.spec.js 📦 refactor: Consolidate DB models, encapsulating Mongoose usage in data-schemas (#11830) 2026-03-21 14:28:53 -04:00
STTService.js feat(stt): add server-side language fallback and extraParams for OpenAI STT provider 2026-03-25 11:38:57 +01:00
TTSService.js 🔊 fix: Validate language format for OpenAI STT model (#10875) 2025-12-09 22:25:45 -05:00