From f4b92868c49bebae26b9008a12e5b69a6267aae9 Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Mon, 23 Jun 2025 12:54:50 +0400 Subject: [PATCH] refac --- backend/open_webui/utils/middleware.py | 29 +++++++++++++------------- 1 file changed, 15 insertions(+), 14 deletions(-) diff --git a/backend/open_webui/utils/middleware.py b/backend/open_webui/utils/middleware.py index b1e69db26..6bad97b1f 100644 --- a/backend/open_webui/utils/middleware.py +++ b/backend/open_webui/utils/middleware.py @@ -804,7 +804,6 @@ async def process_chat_payload(request, form_data, user, metadata, model): raise e try: - filter_functions = [ Functions.get_function_by_id(filter_id) for filter_id in get_sorted_filter_ids( @@ -1741,7 +1740,7 @@ async def process_chat_response( }, ) - async def stream_body_handler(response): + async def stream_body_handler(response, form_data): nonlocal content nonlocal content_blocks @@ -1770,7 +1769,7 @@ async def process_chat_response( filter_functions=filter_functions, filter_type="stream", form_data=data, - extra_params=extra_params, + extra_params={"__body__": form_data, **extra_params}, ) if data: @@ -2032,7 +2031,7 @@ async def process_chat_response( if response.background: await response.background() - await stream_body_handler(response) + await stream_body_handler(response, form_data) MAX_TOOL_CALL_RETRIES = 10 tool_call_retries = 0 @@ -2181,22 +2180,24 @@ async def process_chat_response( ) try: + new_form_data = { + "model": model_id, + "stream": True, + "tools": form_data["tools"], + "messages": [ + *form_data["messages"], + *convert_content_blocks_to_messages(content_blocks), + ], + } + res = await generate_chat_completion( request, - { - "model": model_id, - "stream": True, - "tools": form_data["tools"], - "messages": [ - *form_data["messages"], - *convert_content_blocks_to_messages(content_blocks), - ], - }, + new_form_data, user, ) if isinstance(res, StreamingResponse): - await stream_body_handler(res) + await stream_body_handler(res, new_form_data) else: break except Exception as e: