From cf1445448b1fb8f47c9bc553012943a288ed3103 Mon Sep 17 00:00:00 2001 From: Aditya Aggarwal <42476079+aditya-786@users.noreply.github.com> Date: Fri, 3 Jul 2026 10:40:48 +0530 Subject: [PATCH] refactor(custom_openai): use list[str] and a shared openai-family model-info branch to satisfy the strict lint budget --- .../llms/openai_like/chat/transformation.py | 2 +- litellm/utils.py | 20 +++++++++++-------- 2 files changed, 13 insertions(+), 9 deletions(-) diff --git a/litellm/llms/openai_like/chat/transformation.py b/litellm/llms/openai_like/chat/transformation.py index 96a6c3172ea..5b406fea70f 100644 --- a/litellm/llms/openai_like/chat/transformation.py +++ b/litellm/llms/openai_like/chat/transformation.py @@ -169,7 +169,7 @@ class OpenAILikeChatConfig(OpenAIGPTConfig): class CustomOpenAIChatConfig(OpenAILikeChatConfig): - def get_models(self, api_key: Optional[str] = None, api_base: Optional[str] = None) -> List[str]: + def get_models(self, api_key: Optional[str] = None, api_base: Optional[str] = None) -> list[str]: if api_base is None: raise ValueError("api_base must be set to discover models for the custom_openai provider") models = super().get_models(api_key=api_key, api_base=api_base) diff --git a/litellm/utils.py b/litellm/utils.py index 02a14c7ad56..d3cce47a7de 100644 --- a/litellm/utils.py +++ b/litellm/utils.py @@ -8349,6 +8349,16 @@ class ProviderConfigManager: return litellm.InceptionTextCompletionConfig() return litellm.OpenAITextCompletionConfig() + @staticmethod + def _openai_family_model_info(provider: LlmProviders) -> BaseLLMModelInfo: + if provider == LlmProviders.CUSTOM_OPENAI: + from litellm.llms.openai_like.chat.transformation import ( + CustomOpenAIChatConfig, + ) + + return CustomOpenAIChatConfig() + return litellm.OpenAIGPTConfig() + @staticmethod def get_provider_model_info( model: str | None, @@ -8356,14 +8366,8 @@ class ProviderConfigManager: ) -> BaseLLMModelInfo | None: if LlmProviders.FIREWORKS_AI == provider: return litellm.FireworksAIConfig() - elif LlmProviders.OPENAI == provider: - return litellm.OpenAIGPTConfig() - elif LlmProviders.CUSTOM_OPENAI == provider: - from litellm.llms.openai_like.chat.transformation import ( - CustomOpenAIChatConfig, - ) - - return CustomOpenAIChatConfig() + elif provider in (LlmProviders.OPENAI, LlmProviders.CUSTOM_OPENAI): + return ProviderConfigManager._openai_family_model_info(provider) elif LlmProviders.GEMINI == provider: return litellm.GeminiModelInfo() elif LlmProviders.VERTEX_AI == provider: