diff --git a/backend/open_webui/main.py b/backend/open_webui/main.py index 0311e82d8..88b5b3f69 100644 --- a/backend/open_webui/main.py +++ b/backend/open_webui/main.py @@ -947,6 +947,7 @@ async def chat_completion( else {} ), } + request.state.metadata = metadata form_data["metadata"] = metadata diff --git a/backend/open_webui/socket/main.py b/backend/open_webui/socket/main.py index 3788139ea..6f5915122 100644 --- a/backend/open_webui/socket/main.py +++ b/backend/open_webui/socket/main.py @@ -279,8 +279,8 @@ def get_event_emitter(request_info): await sio.emit( "chat-events", { - "chat_id": request_info["chat_id"], - "message_id": request_info["message_id"], + "chat_id": request_info.get("chat_id", None), + "message_id": request_info.get("message_id", None), "data": event_data, }, to=session_id, @@ -329,8 +329,8 @@ def get_event_call(request_info): response = await sio.call( "chat-events", { - "chat_id": request_info["chat_id"], - "message_id": request_info["message_id"], + "chat_id": request_info.get("chat_id", None), + "message_id": request_info.get("message_id", None), "data": event_data, }, to=request_info["session_id"], diff --git a/backend/open_webui/utils/chat.py b/backend/open_webui/utils/chat.py index 6e21d8ddb..253eaedfb 100644 --- a/backend/open_webui/utils/chat.py +++ b/backend/open_webui/utils/chat.py @@ -164,10 +164,14 @@ async def generate_chat_completion( if BYPASS_MODEL_ACCESS_CONTROL: bypass_filter = True + if hasattr(request.state, "metadata"): + form_data["metadata"] = request.state.metadata + if getattr(request.state, "direct", False) and hasattr(request.state, "model"): models = { request.state.model["id"]: request.state.model, } + log.debug(f"direct connection to model: {models}") else: models = request.app.state.MODELS diff --git a/src/routes/+layout.svelte b/src/routes/+layout.svelte index ade317144..243130930 100644 --- a/src/routes/+layout.svelte +++ b/src/routes/+layout.svelte @@ -266,8 +266,6 @@ if (directConnections) { const urlIdx = model?.urlIdx; - console.log(model, directConnections); - const OPENAI_API_URL = directConnections.OPENAI_API_BASE_URLS[urlIdx]; const OPENAI_API_KEY = directConnections.OPENAI_API_KEYS[urlIdx]; const API_CONFIG = directConnections.OPENAI_API_CONFIGS[urlIdx]; @@ -315,6 +313,7 @@ const lines = chunk.split('\n').filter((line) => line.trim() !== ''); for (const line of lines) { + console.log(line); $socket?.emit(channel, line); } }