음성 설정
개요
speech 객체를 사용하면 librechat.yaml 구성 파일에서 직접 텍스트 음성 변환(TTS) 및 음성 텍스트 변환(STT) 제공업체를 구성할 수 있습니다. 이를 통해 사용자가 자신의 API 키를 구성할 필요 없이 서버 측 음성 서비스를 활성화할 수 있습니다.
speech 하위 필드:
tts- Text-to-Speech 공급자 설정stt- Speech-to-Text 공급자 구성speechTab- 음성 기능을 위한 기본 UI 설정
참고:
- 여러 공급자를 동시에 구성할 수 있습니다.
- 사용자는 사용 가능한 옵션 중에서 선호하는 제공업체를 선택할 수 있습니다.
- config 파일의 API 키는 보안을 위해 환경 변수 참조를 사용해야 합니다.
예시
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: truetts
tts 객체는 Text-to-Speech 공급자를 구성합니다. 여러 공급자를 구성할 수 있으며, 사용자는 사용할 공급자를 선택할 수 있습니다.
openai
tts-1 또는 tts-1-hd와 같은 모델을 사용하는 OpenAI TTS 구성.
| Key | Type | Description | Example |
|---|---|---|---|
| url | String | 사용자 지정 API URL (선택 사항). OpenAI 호환 endpoint에 사용하세요. | |
| apiKey | String | OpenAI API 키. 환경 변수 참조를 사용하세요. | Required |
| model | String | 사용할 TTS 모델 (예: "tts-1", "tts-1-hd"). | Required |
| voices | Array of Strings | 사용자가 선택할 수 있는 사용 가능한 음성 옵션입니다. | Required |
예시:
tts:
openai:
apiKey: "${TTS_API_KEY}"
model: "tts-1"
voices: ["alloy", "echo", "fable", "onyx", "nova", "shimmer"]azureOpenAI
Azure OpenAI TTS 구성.
| Key | Type | Description | Example |
|---|---|---|---|
| instanceName | String | Azure OpenAI 인스턴스 이름. | Required |
| apiKey | String | Azure OpenAI API 키 | Required |
| deploymentName | String | TTS 모델의 배포 이름입니다. | Required |
| apiVersion | String | Azure OpenAI API 버전. | Required |
| model | String | TTS 모델 식별자. | Required |
| voices | Array of Strings | 사용 가능한 음성 옵션. | Required |
예시:
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
고품질 음성 합성을 위한 ElevenLabs TTS 구성.
| Key | Type | Description | Example |
|---|---|---|---|
| url | String | 사용자 지정 API URL (선택 사항). | |
| websocketUrl | String | 스트리밍을 위한 WebSocket URL (선택 사항). | |
| apiKey | String | ElevenLabs API 키 | Required |
| model | String | ElevenLabs 모델 (예: "eleven_multilingual_v2"). | Required |
| voices | Array of Strings | 선택 가능한 Voice ID. | Required |
| voice_settings | Object | 음성 사용자 지정 설정 (선택 사항). | |
| pronunciation_dictionary_locators | Array of Strings | 발음 사전 ID (선택 사항). |
voice_settings 하위 키:
| Key | Type | Description | Example |
|---|---|---|---|
| similarity_boost | Number | 음성 유사도 향상 (0-1). | |
| stability | Number | 음성 안정성 (0-1). | |
| style | Number | 스타일 과장 정도 (0-1). | |
| use_speaker_boost | Boolean | 스피커 부스트 활성화 |
예시:
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: truelocalai
자체 호스팅 음성 합성을 위한 LocalAI TTS 구성.
| Key | Type | Description | Example |
|---|---|---|---|
| url | String | LocalAI 서버 URL. | Required |
| apiKey | String | 인증이 활성화된 경우의 API key (선택 사항). | |
| voices | Array of Strings | 사용 가능한 음성 모델. | Required |
| backend | String | 사용할 TTS 백엔드 (예: "piper"). | Required |
예시:
tts:
localai:
url: "http://localhost:8080"
voices: ["en-us-amy-low", "en-us-danny-low"]
backend: "piper"stt
stt 객체는 Speech-to-Text 공급자를 구성합니다.
openai
OpenAI Whisper STT 구성.
| Key | Type | Description | Example |
|---|---|---|---|
| url | String | 사용자 지정 API URL (선택 사항). OpenAI 호환 endpoint에 사용하세요. | |
| apiKey | String | OpenAI API 키. 환경 변수 참조를 사용하세요. | Required |
| model | String | 사용할 STT 모델 (예: "whisper-1"). | Required |
예시:
stt:
openai:
apiKey: "${STT_API_KEY}"
model: "whisper-1"azureOpenAI
Azure OpenAI Whisper STT 구성.
| Key | Type | Description | Example |
|---|---|---|---|
| instanceName | String | Azure OpenAI 인스턴스 이름. | Required |
| apiKey | String | Azure OpenAI API 키 | Required |
| deploymentName | String | Whisper 모델의 배포 이름입니다. | Required |
| apiVersion | String | Azure OpenAI API 버전. | Required |
예시:
stt:
azureOpenAI:
instanceName: "my-azure-instance"
apiKey: "${AZURE_STT_API_KEY}"
deploymentName: "whisper-deployment"
apiVersion: "2024-02-15-preview"speechTab
speechTab 객체는 음성 기능을 위한 기본 UI 설정을 구성합니다. 이 설정들은 사용자가 음성 설정 패널에서 기본적으로 보게 될 항목들을 제어합니다.
| Key | Type | Description | Example |
|---|---|---|---|
| conversationMode | Boolean | 기본적으로 대화 모드를 활성화합니다. | false |
| advancedMode | Boolean | 기본적으로 고급 음성 설정 표시 | false |
| speechToText | Boolean or Object | STT를 기본값으로 활성화하거나 상세 STT 설정을 구성하세요. | false |
| textToSpeech | Boolean or Object | TTS를 기본으로 활성화하거나 상세 TTS 설정을 구성하세요. | false |
speechToText (객체 형식)
boolean 대신 객체를 사용할 때:
| Key | Type | Description | Example |
|---|---|---|---|
| engineSTT | String | 기본 STT 엔진. 옵션: `"openai"`, `"azureOpenAI"`. | |
| languageSTT | String | STT 기본 언어. | |
| autoTranscribeAudio | Boolean | 오디오 메시지를 자동으로 전사합니다. | |
| decibelValue | Number | 음성 감지를 위한 데시벨 임계값. | |
| autoSendText | Number | 전사된 텍스트를 자동 전송하기 전 대기 시간(ms)(0은 비활성화). |
textToSpeech (객체 형식)
boolean 대신 객체를 사용할 때:
| Key | Type | Description | Example |
|---|---|---|---|
| engineTTS | String | 기본 TTS 엔진. 옵션: `"openai"`, `"azureOpenAI"`, `"elevenlabs"`, `"localai"`. | |
| voice | String | 기본 음성 선택. | |
| languageTTS | String | TTS의 기본 언어입니다. | |
| automaticPlayback | Boolean | TTS 응답을 자동으로 재생합니다. | |
| playbackRate | Number | 기본 재생 속도(1.0 = 보통). 범위: 0.25–4.0. | |
| cacheTTS | Boolean | 반복 재생을 위해 TTS 오디오를 캐시합니다. |
예시:
speechTab:
conversationMode: false
advancedMode: false
speechToText:
engineSTT: "openai"
autoTranscribeAudio: true
decibelValue: -45
textToSpeech:
engineTTS: "openai"
voice: "nova"
automaticPlayback: false
playbackRate: 1.0
cacheTTS: true전체 예시
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참고 사항
- 구성 파일의 API 키에는 항상 환경 변수 참조(예:
${API_KEY})를 사용하세요. - 여러 TTS 공급자를 구성할 수 있으며, 사용자는 UI에서 선호하는 옵션을 선택할 수 있습니다.
speechTab설정은 사용자가 개인 설정에서 재정의할 수 있는 기본값을 정의합니다.- 자세한 기능 문서는 Speech to Text & Text to Speech를 참조하세요.
이 가이드는 어떤가요?