From d784b788c84b55d4d7707f5ce5dedfd3f5d9696b Mon Sep 17 00:00:00 2001 From: Lucas <10226902+LoadingZhang@users.noreply.github.com> Date: Fri, 3 Apr 2026 01:41:26 +0800 Subject: [PATCH] fix: update model from db --- litellm/router.py | 1 + .../router_unit_tests/test_router_helper_utils.py | 15 +++++++++++++++ 2 files changed, 16 insertions(+) diff --git a/litellm/router.py b/litellm/router.py index 586d5961b94..38b89c8ea7d 100644 --- a/litellm/router.py +++ b/litellm/router.py @@ -7318,6 +7318,7 @@ class Router: if ( deployment.litellm_params == _deployment_on_router.litellm_params and deployment.model_info == _deployment_on_router.model_info + and deployment.model_name == _deployment_on_router.model_name ): # No need to update return None diff --git a/tests/router_unit_tests/test_router_helper_utils.py b/tests/router_unit_tests/test_router_helper_utils.py index 34a19f5ce79..952ba805277 100644 --- a/tests/router_unit_tests/test_router_helper_utils.py +++ b/tests/router_unit_tests/test_router_helper_utils.py @@ -828,6 +828,21 @@ def test_upsert_deployment(model_list): assert len(router.model_list) == len(model_list) +def test_upsert_deployment_updates_model_name(model_list): + """Test that changing only model_name still updates an existing deployment.""" + router = Router(model_list=model_list) + deployment = router.get_deployment_by_model_group_name( + model_group_name="gpt-3.5-turbo" + ) + deployment_id = deployment.model_info.id + deployment.model_name = "gpt-3.5-turbo-renamed" + + updated_deployment = router.upsert_deployment(deployment=deployment) + + assert updated_deployment is not None + assert router.get_deployment(model_id=deployment_id).model_name == deployment.model_name + + def test_delete_deployment(model_list): """Test if the 'delete_deployment' function is working correctly""" router = Router(model_list=model_list)