diff --git a/litellm/proxy/proxy_server.py b/litellm/proxy/proxy_server.py index ee2a906200..eed0263c51 100644 --- a/litellm/proxy/proxy_server.py +++ b/litellm/proxy/proxy_server.py @@ -6172,12 +6172,12 @@ async def model_info_v1( # noqa: PLR0915 ) if len(all_models_str) > 0: - model_names = all_models_str - llm_model_list = llm_router.get_model_list() + _relevant_models = [] + for model in all_models_str: + router_models = llm_router.get_model_list(model_name=model) + if router_models is not None: + _relevant_models.extend(router_models) if llm_model_list is not None: - _relevant_models = [ - m for m in llm_model_list if m["model_name"] in model_names - ] all_models = copy.deepcopy(_relevant_models) # type: ignore else: all_models = [] diff --git a/litellm/router.py b/litellm/router.py index af7b00e79d..b5329c4c09 100644 --- a/litellm/router.py +++ b/litellm/router.py @@ -5286,10 +5286,11 @@ class Router: if len(returned_models) == 0: # check if wildcard route potential_wildcard_models = self.pattern_router.route(model_name) - if potential_wildcard_models is not None: - returned_models.extend( - [DeploymentTypedDict(**m) for m in potential_wildcard_models] # type: ignore - ) + if model_name is not None and potential_wildcard_models is not None: + for m in potential_wildcard_models: + deployment_typed_dict = DeploymentTypedDict(**m) # type: ignore + deployment_typed_dict["model_name"] = model_name + returned_models.append(deployment_typed_dict) if model_name is None: returned_models += self.model_list