Ver código fonte

Update remapping logic

We copy the params from from the original key to the new key, then delete it. This is to ensure Ollama only gets valid options.

(Add a comment as well)
ferret99gt 7 meses atrás
pai
commit
fa885c3346
1 arquivos alterados com 5 adições e 2 exclusões
  1. 5 2
      backend/open_webui/utils/payload.py

+ 5 - 2
backend/open_webui/utils/payload.py

@@ -66,13 +66,16 @@ def apply_model_params_to_body_openai(params: dict, form_data: dict) -> dict:
 
 
 def apply_model_params_to_body_ollama(params: dict, form_data: dict) -> dict:
+    # Convert OpenAI parameter names to Ollama parameter names if needed.
     name_differences = {
         "max_tokens": "num_predict",
     }
-
+    
     for key, value in name_differences.items():
         if (param := params.get(key, None)) is not None:
-            form_data[value] = param
+            # Copy the parameter to new name then delete it, to prevent Ollama warning of invalid option provided
+            params[value] = params[key]
+            del params[key]
 
     opts = [
         "temperature",