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

Configurazione vocale

Panoramica

L'oggetto speech ti consente di configurare i provider di sintesi vocale (TTS) e di riconoscimento vocale (STT) direttamente nel tuo file di configurazione librechat.yaml. Ciò abilita i servizi vocali lato server senza richiedere agli utenti di configurare le proprie chiavi API.

Campi sotto speech:

  • tts - Configurazioni del provider Text-to-Speech
  • stt - Configurazioni del provider Speech-to-Text
  • speechTab - Impostazioni predefinite dell'interfaccia utente per le funzionalità vocali

Note:

  • È possibile configurare più provider contemporaneamente
  • Gli utenti possono selezionare il loro provider preferito tra le opzioni disponibili
  • Le API key nel file di configurazione dovrebbero utilizzare riferimenti a variabili d'ambiente per motivi di sicurezza

Esempio

speech:
  tts:
    openai:
      apiKey: "${TTS_API_KEY}"
      model: "tts-1"
      voices: ["alloy", "echo", "fable", "onyx", "nova", "shimmer"]
    elevenlabs:
      apiKey: "${ELEVENLABS_API_KEY}"
      model: "eleven_multilingual_v2"
      voices: ["voice-id-1", "voice-id-2"]
  stt:
    openai:
      apiKey: "${STT_API_KEY}"
      model: "whisper-1"
  speechTab:
    conversationMode: true
    advancedMode: false
    speechToText: true
    textToSpeech: true

tts

L'oggetto tts configura i provider di sintesi vocale (Text-to-Speech). È possibile configurare più provider e gli utenti possono scegliere quale utilizzare.

openai

Configurazione OpenAI TTS utilizzando modelli come tts-1 o tts-1-hd.

KeyTypeDescriptionExample
urlStringURL API personalizzato (opzionale). Da utilizzare per endpoint compatibili con OpenAI.
apiKeyStringChiave API OpenAI. Utilizzare il riferimento alla variabile d'ambiente.Required
modelStringModello TTS da utilizzare (ad es. "tts-1", "tts-1-hd").Required
voicesArray of StringsOpzioni vocali disponibili selezionabili dagli utenti.Required

Esempio:

tts:
  openai:
    apiKey: "${TTS_API_KEY}"
    model: "tts-1"
    voices: ["alloy", "echo", "fable", "onyx", "nova", "shimmer"]

azureOpenAI

Configurazione di Azure OpenAI TTS.

KeyTypeDescriptionExample
instanceNameStringNome dell'istanza Azure OpenAI.Required
apiKeyStringChiave API di Azure OpenAI.Required
deploymentNameStringIl nome della distribuzione per il modello TTS.Required
apiVersionStringVersione API di Azure OpenAI.Required
modelStringIdentificatore del modello TTS.Required
voicesArray of StringsOpzioni vocali disponibili.Required

Esempio:

tts:
  azureOpenAI:
    instanceName: "my-azure-instance"
    apiKey: "${AZURE_TTS_API_KEY}"
    deploymentName: "tts-deployment"
    apiVersion: "2024-02-15-preview"
    model: "tts-1"
    voices: ["alloy", "echo", "nova"]

elevenlabs

Configurazione ElevenLabs TTS per la sintesi vocale di alta qualità.

KeyTypeDescriptionExample
urlStringURL API personalizzato (opzionale).
websocketUrlStringURL WebSocket per lo streaming (opzionale).
apiKeyStringChiave API di ElevenLabs.Required
modelStringModello ElevenLabs (es. "eleven_multilingual_v2").Required
voicesArray of StringsID vocali disponibili per la selezione.Required
voice_settingsObjectImpostazioni di personalizzazione vocale (opzionale).
pronunciation_dictionary_locatorsArray of StringsID del dizionario di pronuncia (opzionale).

Sotto-chiavi di voice_settings:

KeyTypeDescriptionExample
similarity_boostNumberMiglioramento della somiglianza vocale (0-1).
stabilityNumberStabilità vocale (0-1).
styleNumberEsagerazione dello stile (0-1).
use_speaker_boostBooleanAbilita il potenziamento dell'altoparlante.

Esempio:

tts:
  elevenlabs:
    apiKey: "${ELEVENLABS_API_KEY}"
    model: "eleven_multilingual_v2"
    voices: ["21m00Tcm4TlvDq8ikWAM", "AZnzlk1XvdvUeBnXmlld"]
    voice_settings:
      stability: 0.5
      similarity_boost: 0.75
      use_speaker_boost: true

localai

Configurazione TTS di LocalAI per la sintesi vocale self-hosted.

KeyTypeDescriptionExample
urlStringURL del server LocalAI.Required
apiKeyStringChiave API se l'autenticazione è abilitata (opzionale).
voicesArray of StringsModelli vocali disponibili.Required
backendStringBackend TTS da utilizzare (ad es. "piper").Required

Esempio:

tts:
  localai:
    url: "http://localhost:8080"
    voices: ["en-us-amy-low", "en-us-danny-low"]
    backend: "piper"

stt

L'oggetto stt configura i provider di Speech-to-Text.

openai

Configurazione OpenAI Whisper STT.

KeyTypeDescriptionExample
urlStringURL API personalizzato (opzionale). Da utilizzare per endpoint compatibili con OpenAI.
apiKeyStringChiave API OpenAI. Utilizzare il riferimento alla variabile d'ambiente.Required
modelStringModello STT da utilizzare (ad es. "whisper-1").Required

Esempio:

stt:
  openai:
    apiKey: "${STT_API_KEY}"
    model: "whisper-1"

azureOpenAI

Configurazione Azure OpenAI Whisper STT.

KeyTypeDescriptionExample
instanceNameStringNome dell'istanza Azure OpenAI.Required
apiKeyStringChiave API di Azure OpenAI.Required
deploymentNameStringIl nome della distribuzione per il modello Whisper.Required
apiVersionStringVersione API di Azure OpenAI.Required

Esempio:

stt:
  azureOpenAI:
    instanceName: "my-azure-instance"
    apiKey: "${AZURE_STT_API_KEY}"
    deploymentName: "whisper-deployment"
    apiVersion: "2024-02-15-preview"

speechTab

L'oggetto speechTab configura le impostazioni predefinite dell'interfaccia utente per le funzionalità vocali. Queste impostazioni controllano ciò che gli utenti vedono per impostazione predefinita nel pannello delle impostazioni vocali.

KeyTypeDescriptionExample
conversationModeBooleanAbilita la modalità conversazione per impostazione predefinita.false
advancedModeBooleanMostra le impostazioni vocali avanzate per impostazione predefinita.false
speechToTextBoolean or ObjectAbilita STT per impostazione predefinita o configura le impostazioni dettagliate di STT.false
textToSpeechBoolean or ObjectAbilita TTS per impostazione predefinita o configura impostazioni TTS dettagliate.false

speechToText (Formato oggetto)

Quando si utilizza un oggetto invece di un booleano:

KeyTypeDescriptionExample
engineSTTStringMotore STT predefinito. Opzioni: `"openai"`, `"azureOpenAI"`.
languageSTTStringLingua predefinita per STT.
autoTranscribeAudioBooleanTrascrivi automaticamente i messaggi audio.
decibelValueNumberSoglia di decibel per il rilevamento vocale.
autoSendTextNumberRitardo in ms prima dell'invio automatico del testo trascritto (0 per disabilitare).

textToSpeech (Formato oggetto)

Quando si utilizza un oggetto invece di un booleano:

KeyTypeDescriptionExample
engineTTSStringMotore TTS predefinito. Opzioni: `"openai"`, `"azureOpenAI"`, `"elevenlabs"`, `"localai"`.
voiceStringSelezione vocale predefinita.
languageTTSStringLingua predefinita per TTS.
automaticPlaybackBooleanRiproduci automaticamente le risposte TTS.
playbackRateNumberVelocità di riproduzione predefinita (1.0 = normale). Intervallo: 0.25–4.0.
cacheTTSBooleanMemorizza nella cache l'audio TTS per la riproduzione ripetuta.

Esempio:

speechTab:
  conversationMode: false
  advancedMode: false
  speechToText:
    engineSTT: "openai"
    autoTranscribeAudio: true
    decibelValue: -45
  textToSpeech:
    engineTTS: "openai"
    voice: "nova"
    automaticPlayback: false
    playbackRate: 1.0
    cacheTTS: true

Esempio completo

version: 1.3.10
cache: true

speech:
  tts:
    openai:
      apiKey: "${TTS_API_KEY}"
      model: "tts-1-hd"
      voices: ["alloy", "echo", "fable", "onyx", "nova", "shimmer"]
    elevenlabs:
      apiKey: "${ELEVENLABS_API_KEY}"
      model: "eleven_multilingual_v2"
      voices: ["21m00Tcm4TlvDq8ikWAM", "AZnzlk1XvdvUeBnXmlld"]
      voice_settings:
        stability: 0.5
        similarity_boost: 0.75
  stt:
    openai:
      apiKey: "${STT_API_KEY}"
      model: "whisper-1"
  speechTab:
    conversationMode: false
    advancedMode: false
    speechToText: true
    textToSpeech:
      engineTTS: "openai"
      voice: "nova"
      automaticPlayback: false

Note

  • Utilizzare sempre riferimenti a variabili d'ambiente (ad esempio, ${API_KEY}) per le chiavi API nei file di configurazione
  • È possibile configurare più provider TTS; gli utenti selezionano la loro opzione preferita nell'interfaccia utente.
  • Le impostazioni speechTab definiscono i valori predefiniti che gli utenti possono sovrascrivere nelle loro impostazioni personali
  • Per una documentazione dettagliata delle funzionalità, consulta Speech to Text & Text to Speech

Com’è questa guida?