Timothy Jaeryang Baek 2 meses atrás
pai
commit
9be8bea6f4

+ 1 - 0
backend/open_webui/utils/chat.py

@@ -199,6 +199,7 @@ async def chat_completed(request: Request, form_data: dict, user: Any):
         },
         "__metadata__": metadata,
         "__request__": request,
+        "__model__": model,
     }
 
     try:

+ 8 - 6
backend/open_webui/utils/filter.py

@@ -61,12 +61,14 @@ async def process_filter_functions(
         try:
             # Prepare parameters
             sig = inspect.signature(handler)
-            params = {"body": form_data}
-
-            # Add extra parameters that exist in the handler's signature
-            for key in list(extra_params.keys()):
-                if key in sig.parameters:
-                    params[key] = extra_params[key]
+            params = {"body": form_data} | {
+                k: v
+                for k, v in {
+                    **extra_params,
+                    "__id__": filter_id,
+                }.items()
+                if k in sig.parameters
+            }
 
             # Handle user parameters
             if "__user__" in sig.parameters:

+ 1 - 0
backend/open_webui/utils/middleware.py

@@ -617,6 +617,7 @@ async def process_chat_payload(request, form_data, metadata, user, model):
         },
         "__metadata__": metadata,
         "__request__": request,
+        "__model__": model,
     }
 
     # Initialize events to store additional event to be sent to the client