|
@@ -154,6 +154,7 @@ def set_faster_whisper_model(model: str, auto_update: bool = False):
|
|
|
class TTSConfigForm(BaseModel):
|
|
|
OPENAI_API_BASE_URL: str
|
|
|
OPENAI_API_KEY: str
|
|
|
+ OPENAI_PARAMS: Optional[dict] = None
|
|
|
API_KEY: str
|
|
|
ENGINE: str
|
|
|
MODEL: str
|
|
@@ -190,6 +191,7 @@ async def get_audio_config(request: Request, user=Depends(get_admin_user)):
|
|
|
"tts": {
|
|
|
"OPENAI_API_BASE_URL": request.app.state.config.TTS_OPENAI_API_BASE_URL,
|
|
|
"OPENAI_API_KEY": request.app.state.config.TTS_OPENAI_API_KEY,
|
|
|
+ "OPENAI_PARAMS": request.app.state.config.TTS_OPENAI_PARAMS,
|
|
|
"API_KEY": request.app.state.config.TTS_API_KEY,
|
|
|
"ENGINE": request.app.state.config.TTS_ENGINE,
|
|
|
"MODEL": request.app.state.config.TTS_MODEL,
|
|
@@ -222,6 +224,7 @@ async def update_audio_config(
|
|
|
):
|
|
|
request.app.state.config.TTS_OPENAI_API_BASE_URL = form_data.tts.OPENAI_API_BASE_URL
|
|
|
request.app.state.config.TTS_OPENAI_API_KEY = form_data.tts.OPENAI_API_KEY
|
|
|
+ request.app.state.config.TTS_OPENAI_PARAMS = form_data.tts.OPENAI_PARAMS
|
|
|
request.app.state.config.TTS_API_KEY = form_data.tts.API_KEY
|
|
|
request.app.state.config.TTS_ENGINE = form_data.tts.ENGINE
|
|
|
request.app.state.config.TTS_MODEL = form_data.tts.MODEL
|
|
@@ -262,12 +265,13 @@ async def update_audio_config(
|
|
|
|
|
|
return {
|
|
|
"tts": {
|
|
|
- "OPENAI_API_BASE_URL": request.app.state.config.TTS_OPENAI_API_BASE_URL,
|
|
|
- "OPENAI_API_KEY": request.app.state.config.TTS_OPENAI_API_KEY,
|
|
|
- "API_KEY": request.app.state.config.TTS_API_KEY,
|
|
|
"ENGINE": request.app.state.config.TTS_ENGINE,
|
|
|
"MODEL": request.app.state.config.TTS_MODEL,
|
|
|
"VOICE": request.app.state.config.TTS_VOICE,
|
|
|
+ "OPENAI_API_BASE_URL": request.app.state.config.TTS_OPENAI_API_BASE_URL,
|
|
|
+ "OPENAI_API_KEY": request.app.state.config.TTS_OPENAI_API_KEY,
|
|
|
+ "OPENAI_PARAMS": request.app.state.config.TTS_OPENAI_PARAMS,
|
|
|
+ "API_KEY": request.app.state.config.TTS_API_KEY,
|
|
|
"SPLIT_ON": request.app.state.config.TTS_SPLIT_ON,
|
|
|
"AZURE_SPEECH_REGION": request.app.state.config.TTS_AZURE_SPEECH_REGION,
|
|
|
"AZURE_SPEECH_BASE_URL": request.app.state.config.TTS_AZURE_SPEECH_BASE_URL,
|
|
@@ -337,6 +341,11 @@ async def speech(request: Request, user=Depends(get_verified_user)):
|
|
|
async with aiohttp.ClientSession(
|
|
|
timeout=timeout, trust_env=True
|
|
|
) as session:
|
|
|
+ payload = {
|
|
|
+ **payload,
|
|
|
+ **(request.app.state.config.TTS_OPENAI_PARAMS or {}),
|
|
|
+ }
|
|
|
+
|
|
|
r = await session.post(
|
|
|
url=f"{request.app.state.config.TTS_OPENAI_API_BASE_URL}/audio/speech",
|
|
|
json=payload,
|