Skip to main content
LibreChat is joining ClickHouse to power the open-source Agentic Data Stack 🎉 Learn more
LibreChat

Spraakinstellingen

Configuratie van de Speech to Text (STT) en Text to Speech (TTS) functies

Introductie van spraak

De Speech Configuration bevat instellingen voor zowel Speech-to-Text (STT) als Text-to-Speech (TTS) onder een geünificeerde speech: sectie. Daarnaast is er een nieuw speechTab menu voor gebruikersspecifieke instellingen.

Zie ook: Voor het gedetailleerde YAML-configuratieschema en alle beschikbare opties, zie de Speech Object Structure documentatie.

Omgevingsvariabelen

Wanneer je cloud-gebaseerde STT/TTS-services gebruikt, moet je API-sleutels instellen in je .env bestand:

# Speech-to-Text API key (e.g., OpenAI Whisper)
STT_API_KEY=your-stt-api-key

# Text-to-Speech API key (e.g., OpenAI TTS, ElevenLabs)
TTS_API_KEY=your-tts-api-key

Deze sleutels worden vervolgens in uw librechat.yaml configuratie verwezen met ${STT_API_KEY} en ${TTS_API_KEY}.

Tabblad Spraak (optioneel)

Het speechTab menu biedt aanpasbare opties voor conversatie- en geavanceerde modi, evenals gedetailleerde instellingen voor STT en TTS. Dit zal de standaardinstellingen voor gebruikers bepalen.

voorbeeld:

speech:
  speechTab:
    conversationMode: true
    advancedMode: false
    speechToText:
      engineSTT: "external"
      languageSTT: "English (US)"
      autoTranscribeAudio: true
      decibelValue: -45
      autoSendText: 0
    textToSpeech:
      engineTTS: "external"
      voice: "alloy"
      languageTTS: "en"
      automaticPlayback: true
      playbackRate: 1.0
      cacheTTS: true

STT (Speech-to-Text)

De Speech-to-Text (STT) functie zet gesproken woorden om in geschreven tekst. Om STT in te schakelen, klik je op de STT-knop (naast de verzendknop) of gebruik je de toetscombinatie ++Ctrl+Alt+L++ om de transcriptie te starten.

Beschikbare STT-services

  • Lokale STT
    • Browser-gebaseerd
    • Whisper (getest op LocalAI)
  • Cloud STT
    • OpenAI Whisper
    • Azure Whisper
    • Andere OpenAI-compatibele STT-services

Lokale STT configureren

  • Browser-based

    Geen configuratie vereist. Zorg ervoor dat de "Speech To Text"-schakelaar in het tabblad met spraakinstellingen is ingeschakeld en dat "Browser" is geselecteerd in de vervolgkeuzelijst voor de engine.

  • Whisper Local

    Vereist een lokale Whisper-instantie.

speech:
  stt:
    openai:
      url: 'http://host.docker.internal:8080/v1/audio/transcriptions'
      model: 'whisper'

Cloud STT configureren

speech:
  stt:
    openai:
      apiKey: '${STT_API_KEY}'
      model: 'whisper-1'
speech:
  stt:
    azureOpenAI:
      instanceName: 'instanceName'
      apiKey: '${STT_API_KEY}'
      deploymentName: 'deploymentName'
      apiVersion: 'apiVersion'

Ondersteuning voor Azure Endpoint-domeinen

Het instanceName veld ondersteunt beide Azure OpenAI domeinformaten:

  • Nieuw formaat: .cognitiveservices.azure.com (bijv. my-instance.cognitiveservices.azure.com)
  • Legacy-indeling: .openai.azure.com (bijv. my-instance.openai.azure.com)

Je kunt ofwel het volledige domein of alleen de instancenaam opgeven. Als je een volledig domein inclusief .azure.com opgeeft, wordt dit ongewijzigd gebruikt. Anders wordt het verouderde .openai.azure.com formaat toegepast voor achterwaartse compatibiliteit.

Raadpleeg de OpenAI Whisper sectie en pas de url en model naar behoefte aan.

voorbeeld

speech:
  stt:
    openai:
      url: 'http://host.docker.internal:8080/v1/audio/transcriptions'
      model: 'whisper'

TTS (Text-to-Speech)

De Text-to-Speech (TTS) functie zet geschreven tekst om in gesproken woorden. Er zijn verschillende TTS-services beschikbaar:

Beschikbare TTS-services

  • Lokale TTS
    • Browser-gebaseerd
    • Piper (getest op LocalAI)
    • Coqui (getest op LocalAI)
  • Cloud TTS
    • OpenAI TTS
    • Azure OpenAI
    • ElevenLabs
    • Andere OpenAI/ElevenLabs-compatibele TTS-services

Lokale TTS configureren

Geen configuratie vereist. Zorg ervoor dat de "Text To Speech" schakelaar in het tabblad spraakinstellingen is ingeschakeld en dat "Browser" is geselecteerd in het dropdownmenu voor de engine.

Vereist een lokale Piper-instantie.

speech:
  tts:
    localai:
      url: "http://host.docker.internal:8080/tts"
      apiKey: "EMPTY"
      voices: [
        "en-us-amy-low.onnx",
        "en-us-danny-low.onnx",
        "en-us-libritts-high.onnx",
        "en-us-ryan-high.onnx",
      ]
      backend: "piper"

Vereist een lokale Coqui-instantie.

speech:
  tts:
    localai:
      url: 'http://localhost:8080/v1/audio/synthesize'
      voices: ['tts_models/en/ljspeech/glow-tts', 'tts_models/en/ljspeech/tacotron2', 'tts_models/en/ljspeech/waveglow']
      backend: 'coqui'

Cloud TTS configureren

speech:
  tts:
    openai:
      apiKey: '${TTS_API_KEY}'
      model: 'tts-1'
      voices: ['alloy', 'echo', 'fable', 'onyx', 'nova', 'shimmer']
speech:
  tts:
    azureOpenAI:
      instanceName: ''
      apiKey: '${TTS_API_KEY}'
      deploymentName: ''
      apiVersion: ''
      model: 'tts-1'
      voices: ['alloy', 'echo', 'fable', 'onyx', 'nova', 'shimmer']

Ondersteuning voor Azure Endpoint-domeinen

Het instanceName veld ondersteunt beide Azure OpenAI domeinformaten:

  • Nieuw formaat: .cognitiveservices.azure.com (bijv. my-instance.cognitiveservices.azure.com)
  • Legacy-indeling: .openai.azure.com (bijv. my-instance.openai.azure.com)

Je kunt ofwel het volledige domein of alleen de instancenaam opgeven. Als je een volledig domein inclusief .azure.com opgeeft, wordt dit ongewijzigd gebruikt. Anders wordt het verouderde .openai.azure.com formaat toegepast voor achterwaartse compatibiliteit.

speech:
  tts:
    elevenlabs:
      apiKey: '${TTS_API_KEY}'
      model: 'eleven_multilingual_v2'
      voices: ['202898wioas09d2', 'addwqr324tesfsf', '3asdasr3qrq44w', 'adsadsa']

Aanvullende ElevenLabs-specifieke parameters kunnen als volgt worden toegevoegd:

      voice_settings:
        similarity_boost: '' # number
        stability: '' # number
        style: '' # number
        use_speaker_boost: # boolean
      pronunciation_dictionary_locators: [''] # list of strings (array)

Raadpleeg de OpenAI TTS sectie en pas de url variabele aan waar nodig

voorbeeld:

speech:
  tts:
    openai:
      url: 'http://host.docker.internal:8080/v1/audio/synthesize'
      apiKey: '${TTS_API_KEY}'
      model: 'tts-1'
      voices: ['alloy', 'echo', 'fable', 'onyx', 'nova', 'shimmer']

Raadpleeg de ElevenLabs sectie en pas de url variabele aan waar nodig

voorbeeld:

speech:
  tts:
    elevenlabs:
      url: 'http://host.docker.internal:8080/v1/audio/synthesize'
      apiKey: '${TTS_API_KEY}'
      model: 'eleven_multilingual_v2'
      voices: ['202898wioas09d2', 'addwqr324tesfsf', '3asdasr3qrq44w', 'adsadsa']

Hoe is deze gids?