From c5020878e4b7d2eefd4cebfe056593fe3fed6d43 Mon Sep 17 00:00:00 2001 From: Ishaan Jaff Date: Mon, 24 Jun 2024 21:14:00 -0700 Subject: [PATCH] /spend/calculate use model aliases on this endpoint --- .../spend_management_endpoints.py | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/litellm/proxy/spend_tracking/spend_management_endpoints.py b/litellm/proxy/spend_tracking/spend_management_endpoints.py index abbdc3419ed..1fbd95b3cfc 100644 --- a/litellm/proxy/spend_tracking/spend_management_endpoints.py +++ b/litellm/proxy/spend_tracking/spend_management_endpoints.py @@ -1265,9 +1265,22 @@ async def calculate_spend(request: SpendCalculateRequest): _model_in_llm_router = None cost_per_token: Optional[CostPerToken] = None if llm_router is not None: - for model in llm_router.model_list: - if model.get("model_name") == request.model: - _model_in_llm_router = model + if ( + llm_router.model_group_alias is not None + and request.model in llm_router.model_group_alias + ): + # lookup alias in llm_router + _model_group_name = llm_router.model_group_alias[request.model] + for model in llm_router.model_list: + if model.get("model_name") == _model_group_name: + _model_in_llm_router = model + + else: + # no model_group aliases set -> try finding model in llm_router + # find model in llm_router + for model in llm_router.model_list: + if model.get("model_name") == request.model: + _model_in_llm_router = model """ 3 cases for /spend/calculate