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

音声設定

Speech to Text (STT) および Text to Speech (TTS) 機能の設定

音声機能の導入

Speech Configurationには、音声認識(STT)と音声合成(TTS)の両方の設定が、統合された speech: セクションの下に含まれています。さらに、ユーザー固有の設定用に新しい speechTab メニューが追加されました。

関連項目: YAML設定スキーマの詳細および利用可能なすべてのオプションについては、Speech Object Structureのドキュメントを参照してください。

環境変数

クラウドベースのSTT/TTSサービスを使用する場合は、.envファイルにAPIキーを設定する必要があります:

# 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

これらのキーは、librechat.yaml 設定内で ${STT_API_KEY} および ${TTS_API_KEY} を使用して参照されます。

Speech タブ (オプション)

speechTab メニューでは、会話モードや高度なモードのカスタマイズオプションに加え、STTおよびTTSの詳細設定が可能です。ここで設定した内容が、ユーザーのデフォルト設定となります。

例:

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)

Speech-to-Text (STT) 機能は、話した言葉をテキストに変換します。STTを有効にするには、STTボタン(送信ボタンの近く)をクリックするか、キーボードショートカット ++Ctrl+Alt+L++ を使用して文字起こしを開始してください。

利用可能なSTTサービス

  • ローカル STT
    • ブラウザベース
    • Whisper (LocalAIでテスト済み)
  • クラウド STT
    • OpenAI Whisper
    • Azure Whisper
    • その他のOpenAI互換STTサービス

ローカルSTTの設定

  • Browser-based

    セットアップは不要です。音声設定タブの「Speech To Text」スイッチが有効になっていること、およびエンジン設定のドロップダウンで「Browser」が選択されていることを確認してください。

  • Whisper Local

    ローカルのWhisperインスタンスが必要です。

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

Cloud STTの設定

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

Azure エンドポイントドメインのサポート

instanceName フィールドは、以下の両方の Azure OpenAI ドメイン形式をサポートしています:

  • 新しい形式: .cognitiveservices.azure.com (例: my-instance.cognitiveservices.azure.com)
  • レガシー形式: .openai.azure.com (例: my-instance.openai.azure.com)

完全なドメインまたはインスタンス名のみを指定できます。.azure.com を含む完全なドメインを指定した場合は、そのまま使用されます。それ以外の場合は、後方互換性のために従来の .openai.azure.com 形式が適用されます。

OpenAI Whisperセクションを参照し、必要に応じてurlmodelを調整してください。

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

TTS (Text-to-Speech)

Text-to-Speech (TTS) 機能は、テキストを音声に変換します。利用可能なTTSサービスは以下の通りです:

利用可能なTTSサービス

  • ローカル TTS
    • ブラウザベース
    • Piper (LocalAIでテスト済み)
    • Coqui (LocalAIでテスト済み)
  • Cloud TTS
    • OpenAI TTS
    • Azure OpenAI
    • ElevenLabs
    • その他のOpenAI/ElevenLabs互換のTTSサービス

ローカルTTSの設定

セットアップは不要です。音声設定タブの「Text To Speech」スイッチが有効になっていること、およびエンジン設定のドロップダウンで「Browser」が選択されていることを確認してください。

ローカルのPiperインスタンスが必要です。

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"

ローカルのCoquiインスタンスが必要です。

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の設定

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']

Azure エンドポイントドメインのサポート

instanceName フィールドは、以下の両方の Azure OpenAI ドメイン形式をサポートしています:

  • 新しい形式: .cognitiveservices.azure.com (例: my-instance.cognitiveservices.azure.com)
  • レガシー形式: .openai.azure.com (例: my-instance.openai.azure.com)

完全なドメインまたはインスタンス名のみを指定できます。.azure.com を含む完全なドメインを指定した場合は、そのまま使用されます。それ以外の場合は、後方互換性のために従来の .openai.azure.com 形式が適用されます。

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

ElevenLabs固有の追加パラメータは、以下のように追加できます:

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

OpenAI TTSセクションを参照し、必要に応じて url 変数を調整してください。

例:

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']

ElevenLabs セクションを参照し、必要に応じて url 変数を調整してください。

例:

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']

このガイドはいかがでしたか?