From aea8977d050edd77842f61b3cf7ad0b1f699f3d7 Mon Sep 17 00:00:00 2001 From: ferret99gt Date: Wed, 19 Feb 2025 08:39:33 -0500 Subject: [PATCH] Remove mapping of max_completion_tokens 1) max_completion_tokens is being looked for in openai_payload, but would be located in openai_payload['options'], so is never found. (This applies to the prior two commits as well). 2) max_completion_tokens is not sent from the frontend, only max_tokens. It does not appear in AdvancedParams.svelte. 2b) Openai.py does use max_completion_tokens, but for o1,o3 models and converts it from max_tokens. --- backend/open_webui/utils/payload.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/backend/open_webui/utils/payload.py b/backend/open_webui/utils/payload.py index 1d5b55dfc..5dc0c4b52 100644 --- a/backend/open_webui/utils/payload.py +++ b/backend/open_webui/utils/payload.py @@ -185,9 +185,7 @@ def convert_payload_openai_to_ollama(openai_payload: dict) -> dict: ollama_options[param] = openai_payload[param] # Mapping OpenAI's `max_tokens` -> Ollama's `num_predict` - if "max_completion_tokens" in openai_payload: - ollama_options["num_predict"] = openai_payload["max_completion_tokens"] - elif "max_tokens" in openai_payload: + if "max_tokens" in openai_payload: ollama_options["num_predict"] = openai_payload["max_tokens"] # Add options to payload if any have been set