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

Configuração de fala

Visão geral

O objeto speech permite que você configure provedores de Text-to-Speech (TTS) e Speech-to-Text (STT) diretamente no seu arquivo de configuração librechat.yaml. Isso habilita serviços de voz no lado do servidor sem exigir que os usuários configurem suas próprias chaves de API.

Campos sob speech:

  • tts - Configurações do provedor de Text-to-Speech
  • stt - Configurações do provedor de Speech-to-Text
  • speechTab - Configurações padrão da interface para recursos de fala

Notas:

  • Vários provedores podem ser configurados simultaneamente
  • Os usuários podem selecionar seu provedor preferido entre as opções disponíveis.
  • As chaves de API no arquivo de configuração devem usar referências de variáveis de ambiente por segurança

Exemplo

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

O objeto tts configura provedores de Text-to-Speech. Múltiplos provedores podem ser configurados, e os usuários podem escolher qual utilizar.

openai

Configuração do OpenAI TTS usando modelos como tts-1 ou tts-1-hd.

KeyTypeDescriptionExample
urlStringURL da API personalizada (opcional). Use para endpoints compatíveis com OpenAI.
apiKeyStringChave de API da OpenAI. Use a referência da variável de ambiente.Required
modelStringModelo TTS a ser usado (por exemplo, "tts-1", "tts-1-hd").Required
voicesArray of StringsOpções de voz disponíveis para os usuários selecionarem.Required

Exemplo:

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

azureOpenAI

Configuração do Azure OpenAI TTS.

KeyTypeDescriptionExample
instanceNameStringNome da instância do Azure OpenAI.Required
apiKeyStringChave de API do Azure OpenAI.Required
deploymentNameStringO nome da implantação para o modelo TTS.Required
apiVersionStringVersão da API do Azure OpenAI.Required
modelStringIdentificador do modelo TTS.Required
voicesArray of StringsOpções de voz disponíveis.Required

Exemplo:

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

Configuração do ElevenLabs TTS para síntese de voz de alta qualidade.

KeyTypeDescriptionExample
urlStringURL da API personalizada (opcional).
websocketUrlStringURL de WebSocket para streaming (opcional).
apiKeyStringChave de API da ElevenLabs.Required
modelStringModelo ElevenLabs (por exemplo, "eleven_multilingual_v2").Required
voicesArray of StringsIDs de voz disponíveis para seleção.Required
voice_settingsObjectConfigurações de personalização de voz (opcional).
pronunciation_dictionary_locatorsArray of StringsIDs do dicionário de pronúncia (opcional).

Sub-chaves de voice_settings:

KeyTypeDescriptionExample
similarity_boostNumberAprimoramento de similaridade de voz (0-1).
stabilityNumberEstabilidade da voz (0-1).
styleNumberExagero de estilo (0-1).
use_speaker_boostBooleanAtivar reforço de áudio.

Exemplo:

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

Configuração de TTS do LocalAI para síntese de voz auto-hospedada.

KeyTypeDescriptionExample
urlStringURL do servidor LocalAI.Required
apiKeyStringChave de API se a autenticação estiver habilitada (opcional).
voicesArray of StringsModelos de voz disponíveis.Required
backendStringBackend de TTS a ser usado (por exemplo, "piper").Required

Exemplo:

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

stt

O objeto stt configura provedores de Speech-to-Text.

openai

Configuração do OpenAI Whisper STT.

KeyTypeDescriptionExample
urlStringURL da API personalizada (opcional). Use para endpoints compatíveis com OpenAI.
apiKeyStringChave de API da OpenAI. Use a referência da variável de ambiente.Required
modelStringModelo STT a ser usado (por exemplo, "whisper-1").Required

Exemplo:

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

azureOpenAI

Configuração do Azure OpenAI Whisper STT.

KeyTypeDescriptionExample
instanceNameStringNome da instância do Azure OpenAI.Required
apiKeyStringChave de API do Azure OpenAI.Required
deploymentNameStringO nome da implantação para o modelo Whisper.Required
apiVersionStringVersão da API do Azure OpenAI.Required

Exemplo:

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

speechTab

O objeto speechTab configura as definições padrão da interface para os recursos de fala. Essas configurações controlam o que os usuários veem por padrão no painel de configurações de fala.

KeyTypeDescriptionExample
conversationModeBooleanHabilitar o modo de conversa por padrão.false
advancedModeBooleanMostrar configurações avançadas de fala por padrão.false
speechToTextBoolean or ObjectHabilitar STT por padrão ou definir configurações detalhadas de STT.false
textToSpeechBoolean or ObjectHabilitar TTS por padrão ou configurar definições detalhadas de TTS.false

speechToText (Formato de objeto)

Ao usar um objeto em vez de um booleano:

KeyTypeDescriptionExample
engineSTTStringMecanismo de STT padrão. Opções: `"openai"`, `"azureOpenAI"`.
languageSTTStringIdioma padrão para STT.
autoTranscribeAudioBooleanTranscrever automaticamente mensagens de áudio.
decibelValueNumberLimiar de decibéis para detecção de voz.
autoSendTextNumberAtraso em ms antes do envio automático do texto transcrito (0 para desativar).

textToSpeech (Formato de objeto)

Ao usar um objeto em vez de um booleano:

KeyTypeDescriptionExample
engineTTSStringMecanismo de TTS padrão. Opções: `"openai"`, `"azureOpenAI"`, `"elevenlabs"`, `"localai"`.
voiceStringSeleção de voz padrão.
languageTTSStringIdioma padrão para TTS.
automaticPlaybackBooleanReproduzir automaticamente respostas de TTS.
playbackRateNumberVelocidade de reprodução padrão (1.0 = normal). Intervalo: 0.25–4.0.
cacheTTSBooleanArmazenar em cache o áudio TTS para reprodução repetida.

Exemplo:

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

Exemplo 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

Notas

  • Sempre utilize referências de variáveis de ambiente (por exemplo, ${API_KEY}) para chaves de API em arquivos de configuração
  • Vários provedores de TTS podem ser configurados; os usuários selecionam sua opção preferida na interface.
  • As configurações speechTab definem padrões que os usuários podem substituir em suas configurações pessoais
  • Para documentação detalhada de recursos, veja Speech to Text & Text to Speech

Como está este guia?