Browse Source

fix optional args not present

Michael Poluektov 5 months ago
parent
commit
c03bfd141e
2 changed files with 2 additions and 1 deletions
  1. 0 1
      backend/open_webui/main.py
  2. 2 0
      backend/open_webui/utils/tools.py

+ 0 - 1
backend/open_webui/main.py

@@ -1313,7 +1313,6 @@ async def generate_chat_completions(
 
 @app.post("/api/chat/completed")
 async def chat_completed(form_data: dict, user=Depends(get_verified_user)):
-
     model_list = await get_all_models()
     models = {model["id"]: model for model in model_list}
 

+ 2 - 0
backend/open_webui/utils/tools.py

@@ -16,6 +16,8 @@ log = logging.getLogger(__name__)
 def apply_extra_params_to_tool_function(
     function: Callable, extra_params: dict
 ) -> Callable[..., Awaitable]:
+    sig = inspect.signature(function)
+    extra_params = {k: v for k, v in extra_params.items() if k in sig.parameters}
     partial_func = partial(function, **extra_params)
     if inspect.iscoroutinefunction(function):
         update_wrapper(partial_func, function)