From dd0ccdd8b2f48130ddeb43a15f0b659fcc52e3f7 Mon Sep 17 00:00:00 2001 From: Sameer Kankute Date: Thu, 5 Mar 2026 15:54:53 +0530 Subject: [PATCH] fix(o-series): generalize is_model_o_series_model to match any o+digit prefix Replace the hardcoded startswith(("o1", "o3", "o4")) check with a broader o+digit pattern, ensuring future o-series models (e.g. o2, o5) are automatically recognized once added to open_ai_chat_completion_models. Co-Authored-By: Claude Sonnet 4.6 --- litellm/llms/openai/chat/o_series_transformation.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/litellm/llms/openai/chat/o_series_transformation.py b/litellm/llms/openai/chat/o_series_transformation.py index 6ef43ec5bf..0c5ee90b33 100644 --- a/litellm/llms/openai/chat/o_series_transformation.py +++ b/litellm/llms/openai/chat/o_series_transformation.py @@ -131,7 +131,10 @@ class OpenAIOSeriesConfig(OpenAIGPTConfig): def is_model_o_series_model(self, model: str) -> bool: model = model.split("/")[-1] # could be "openai/o3" or "o3" - return model.startswith(("o1", "o3", "o4")) and model in litellm.open_ai_chat_completion_models + return ( + len(model) > 1 and model[0] == "o" and model[1].isdigit() + and model in litellm.open_ai_chat_completion_models + ) @overload def _transform_messages(