refactor(custom_openai): use list[str] and a shared openai-family model-info branch to satisfy the strict lint budget

This commit is contained in:
Aditya Aggarwal 2026-07-03 10:40:48 +05:30
parent 8aea8c4620
commit cf1445448b
2 changed files with 13 additions and 9 deletions

View file

@ -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)

View file

@ -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: