feat: Add option to forward user info as headers to OpenAI API

This commit is contained in:
Duc Nguyen
2024-10-30 11:02:56 -04:00
parent 09935d191f
commit 3f0b3ea90e
4 changed files with 42 additions and 0 deletions

View File

@@ -23,6 +23,7 @@ from open_webui.config import (
AUDIO_TTS_VOICE,
AUDIO_TTS_AZURE_SPEECH_REGION,
AUDIO_TTS_AZURE_SPEECH_OUTPUT_FORMAT,
OPENAI_FORWARD_USER_INFO_AS_HEADERS,
CACHE_DIR,
CORS_ALLOW_ORIGIN,
WHISPER_MODEL,
@@ -248,6 +249,12 @@ async def speech(request: Request, user=Depends(get_verified_user)):
headers["Authorization"] = f"Bearer {app.state.config.TTS_OPENAI_API_KEY}"
headers["Content-Type"] = "application/json"
if OPENAI_FORWARD_USER_INFO_AS_HEADERS:
headers["X-OpenWebUI-User-Name"] = user.name
headers["X-OpenWebUI-User-Id"] = user.id
headers["X-OpenWebUI-User-Email"] = user.email
headers["X-OpenWebUI-User-Role"] = user.role
try:
body = body.decode("utf-8")
body = json.loads(body)