From 4422be0f28e7599859f140a3a2859572b4941a01 Mon Sep 17 00:00:00 2001 From: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> Date: Fri, 11 Sep 2026 15:52:43 +0000 Subject: [PATCH] fix(cost-map): declare minimal unsupported on bedrock-hosted openai gpt rows Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> --- ...odel_prices_and_context_window_backup.json | 20 +++++++++++++++++++ model_prices_and_context_window.json | 20 +++++++++++++++++++ .../test_litellm/test_model_prices_schema.py | 14 ++++++++----- 3 files changed, 49 insertions(+), 5 deletions(-) diff --git a/litellm/model_prices_and_context_window_backup.json b/litellm/model_prices_and_context_window_backup.json index 0b4a7c08884..1c86dbaacff 100644 --- a/litellm/model_prices_and_context_window_backup.json +++ b/litellm/model_prices_and_context_window_backup.json @@ -55273,6 +55273,7 @@ "text" ], "supports_function_calling": true, + "supports_minimal_reasoning_effort": false, "supports_prompt_caching": true, "supports_reasoning": true, "supports_response_schema": true, @@ -55313,6 +55314,7 @@ "text" ], "supports_function_calling": true, + "supports_minimal_reasoning_effort": false, "supports_prompt_caching": true, "supports_reasoning": true, "supports_response_schema": true, @@ -55343,6 +55345,7 @@ "text" ], "supports_function_calling": true, + "supports_minimal_reasoning_effort": false, "supports_prompt_caching": true, "supports_reasoning": true, "supports_response_schema": true, @@ -55376,6 +55379,7 @@ "text" ], "supports_function_calling": true, + "supports_minimal_reasoning_effort": false, "supports_prompt_caching": true, "supports_reasoning": true, "supports_response_schema": true, @@ -55416,6 +55420,7 @@ "text" ], "supports_function_calling": true, + "supports_minimal_reasoning_effort": false, "supports_prompt_caching": true, "supports_reasoning": true, "supports_response_schema": true, @@ -55446,6 +55451,7 @@ "text" ], "supports_function_calling": true, + "supports_minimal_reasoning_effort": false, "supports_tool_choice": true, "supports_reasoning": true, "supports_xhigh_reasoning_effort": true, @@ -55473,6 +55479,7 @@ "text" ], "supports_function_calling": true, + "supports_minimal_reasoning_effort": false, "supports_tool_choice": true, "supports_reasoning": true, "supports_xhigh_reasoning_effort": true, @@ -55500,6 +55507,7 @@ "text" ], "supports_function_calling": true, + "supports_minimal_reasoning_effort": false, "supports_tool_choice": true, "supports_reasoning": true, "supports_xhigh_reasoning_effort": true, @@ -55527,6 +55535,7 @@ "text" ], "supports_function_calling": true, + "supports_minimal_reasoning_effort": false, "supports_tool_choice": true, "supports_reasoning": true, "supports_xhigh_reasoning_effort": true, @@ -55554,6 +55563,7 @@ "text" ], "supports_function_calling": true, + "supports_minimal_reasoning_effort": false, "supports_tool_choice": true, "supports_reasoning": true, "supports_xhigh_reasoning_effort": true, @@ -55581,6 +55591,7 @@ "text" ], "supports_function_calling": true, + "supports_minimal_reasoning_effort": false, "supports_tool_choice": true, "supports_reasoning": true, "supports_xhigh_reasoning_effort": true, @@ -55613,6 +55624,7 @@ "text" ], "supports_function_calling": true, + "supports_minimal_reasoning_effort": false, "supports_prompt_caching": true, "supports_reasoning": true, "supports_response_schema": true, @@ -55643,6 +55655,7 @@ "text" ], "supports_function_calling": true, + "supports_minimal_reasoning_effort": false, "supports_tool_choice": true, "supports_prompt_caching": true, "supports_reasoning": true, @@ -55672,6 +55685,7 @@ "text" ], "supports_function_calling": true, + "supports_minimal_reasoning_effort": false, "supports_tool_choice": true, "supports_prompt_caching": true, "supports_reasoning": true, @@ -55708,6 +55722,7 @@ "text" ], "supports_function_calling": true, + "supports_minimal_reasoning_effort": false, "supports_prompt_caching": true, "supports_reasoning": true, "supports_response_schema": true, @@ -55745,6 +55760,7 @@ "text" ], "supports_function_calling": true, + "supports_minimal_reasoning_effort": false, "supports_prompt_caching": true, "supports_reasoning": true, "supports_response_schema": true, @@ -61182,6 +61198,7 @@ "text" ], "supports_function_calling": true, + "supports_minimal_reasoning_effort": false, "supports_prompt_caching": true, "supports_reasoning": true, "supports_response_schema": true, @@ -61216,6 +61233,7 @@ "text" ], "supports_function_calling": true, + "supports_minimal_reasoning_effort": false, "supports_prompt_caching": true, "supports_reasoning": true, "supports_response_schema": true, @@ -61249,6 +61267,7 @@ "text" ], "supports_function_calling": true, + "supports_minimal_reasoning_effort": false, "supports_prompt_caching": true, "supports_reasoning": true, "supports_response_schema": true, @@ -61412,6 +61431,7 @@ "text" ], "supports_function_calling": true, + "supports_minimal_reasoning_effort": false, "supports_prompt_caching": true, "supports_reasoning": true, "supports_response_schema": true, diff --git a/model_prices_and_context_window.json b/model_prices_and_context_window.json index 0b4a7c08884..1c86dbaacff 100644 --- a/model_prices_and_context_window.json +++ b/model_prices_and_context_window.json @@ -55273,6 +55273,7 @@ "text" ], "supports_function_calling": true, + "supports_minimal_reasoning_effort": false, "supports_prompt_caching": true, "supports_reasoning": true, "supports_response_schema": true, @@ -55313,6 +55314,7 @@ "text" ], "supports_function_calling": true, + "supports_minimal_reasoning_effort": false, "supports_prompt_caching": true, "supports_reasoning": true, "supports_response_schema": true, @@ -55343,6 +55345,7 @@ "text" ], "supports_function_calling": true, + "supports_minimal_reasoning_effort": false, "supports_prompt_caching": true, "supports_reasoning": true, "supports_response_schema": true, @@ -55376,6 +55379,7 @@ "text" ], "supports_function_calling": true, + "supports_minimal_reasoning_effort": false, "supports_prompt_caching": true, "supports_reasoning": true, "supports_response_schema": true, @@ -55416,6 +55420,7 @@ "text" ], "supports_function_calling": true, + "supports_minimal_reasoning_effort": false, "supports_prompt_caching": true, "supports_reasoning": true, "supports_response_schema": true, @@ -55446,6 +55451,7 @@ "text" ], "supports_function_calling": true, + "supports_minimal_reasoning_effort": false, "supports_tool_choice": true, "supports_reasoning": true, "supports_xhigh_reasoning_effort": true, @@ -55473,6 +55479,7 @@ "text" ], "supports_function_calling": true, + "supports_minimal_reasoning_effort": false, "supports_tool_choice": true, "supports_reasoning": true, "supports_xhigh_reasoning_effort": true, @@ -55500,6 +55507,7 @@ "text" ], "supports_function_calling": true, + "supports_minimal_reasoning_effort": false, "supports_tool_choice": true, "supports_reasoning": true, "supports_xhigh_reasoning_effort": true, @@ -55527,6 +55535,7 @@ "text" ], "supports_function_calling": true, + "supports_minimal_reasoning_effort": false, "supports_tool_choice": true, "supports_reasoning": true, "supports_xhigh_reasoning_effort": true, @@ -55554,6 +55563,7 @@ "text" ], "supports_function_calling": true, + "supports_minimal_reasoning_effort": false, "supports_tool_choice": true, "supports_reasoning": true, "supports_xhigh_reasoning_effort": true, @@ -55581,6 +55591,7 @@ "text" ], "supports_function_calling": true, + "supports_minimal_reasoning_effort": false, "supports_tool_choice": true, "supports_reasoning": true, "supports_xhigh_reasoning_effort": true, @@ -55613,6 +55624,7 @@ "text" ], "supports_function_calling": true, + "supports_minimal_reasoning_effort": false, "supports_prompt_caching": true, "supports_reasoning": true, "supports_response_schema": true, @@ -55643,6 +55655,7 @@ "text" ], "supports_function_calling": true, + "supports_minimal_reasoning_effort": false, "supports_tool_choice": true, "supports_prompt_caching": true, "supports_reasoning": true, @@ -55672,6 +55685,7 @@ "text" ], "supports_function_calling": true, + "supports_minimal_reasoning_effort": false, "supports_tool_choice": true, "supports_prompt_caching": true, "supports_reasoning": true, @@ -55708,6 +55722,7 @@ "text" ], "supports_function_calling": true, + "supports_minimal_reasoning_effort": false, "supports_prompt_caching": true, "supports_reasoning": true, "supports_response_schema": true, @@ -55745,6 +55760,7 @@ "text" ], "supports_function_calling": true, + "supports_minimal_reasoning_effort": false, "supports_prompt_caching": true, "supports_reasoning": true, "supports_response_schema": true, @@ -61182,6 +61198,7 @@ "text" ], "supports_function_calling": true, + "supports_minimal_reasoning_effort": false, "supports_prompt_caching": true, "supports_reasoning": true, "supports_response_schema": true, @@ -61216,6 +61233,7 @@ "text" ], "supports_function_calling": true, + "supports_minimal_reasoning_effort": false, "supports_prompt_caching": true, "supports_reasoning": true, "supports_response_schema": true, @@ -61249,6 +61267,7 @@ "text" ], "supports_function_calling": true, + "supports_minimal_reasoning_effort": false, "supports_prompt_caching": true, "supports_reasoning": true, "supports_response_schema": true, @@ -61412,6 +61431,7 @@ "text" ], "supports_function_calling": true, + "supports_minimal_reasoning_effort": false, "supports_prompt_caching": true, "supports_reasoning": true, "supports_response_schema": true, diff --git a/tests/test_litellm/test_model_prices_schema.py b/tests/test_litellm/test_model_prices_schema.py index 7f1db44e71b..69ee999f066 100644 --- a/tests/test_litellm/test_model_prices_schema.py +++ b/tests/test_litellm/test_model_prices_schema.py @@ -224,15 +224,19 @@ BEDROCK_OPENAI_XHIGH_MARKERS: Final = ("openai.gpt-5.4", "openai.gpt-5.5", "open BEDROCK_PROVIDERS: Final = frozenset(("bedrock", "bedrock_converse", "bedrock_mantle")) -def test_bedrock_openai_gpt_rows_advertise_xhigh_like_their_openai_twins(prices: dict): +def test_bedrock_openai_gpt_rows_mirror_their_openai_twins_effort_ladder(prices: dict): """Bedrock forwards reasoning_effort to these models unchanged, and xhigh is opt-in for the - capability resolver, so a row without the flag drops xhigh from every group it belongs to.""" - missing = [ + capability resolver, so a row without the flag drops xhigh from every group it belongs to. + The OpenAI twins reject minimal, and Bedrock forwards reasoning_effort unchanged.""" + mismatched = [ name for name, entry in prices.items() if isinstance(entry, dict) and entry.get("litellm_provider") in BEDROCK_PROVIDERS and any(marker in name for marker in BEDROCK_OPENAI_XHIGH_MARKERS) - and "xhigh" not in (resolve_supported_reasoning_efforts(entry, deployment_is_mapped=True) or ()) + and ( + "xhigh" not in (resolve_supported_reasoning_efforts(entry, deployment_is_mapped=True) or ()) + or "minimal" in (resolve_supported_reasoning_efforts(entry, deployment_is_mapped=True) or ()) + ) ] - assert missing == [] + assert mismatched == []