6 views
-/https://github.com/berriai/litellm/issues/33172
GitHub Β· issue

#33172 [Feature]: infer azure base_model when the deployment model name exactly matches a cost-map key (stop 'Could not identify azure model' spam)

  • State: open
  • Author: @mihidumh
  • Labels: llm translation

### What happened?

For Azure deployments the router refuses to identify the underlying model unless `model_info.base_model` is set explicitly β€” **even when the deployment's model name exactly matches a static-map key**. E.g. `litellm_params.model = "azure/gpt-5.4"` with `azure/gpt-5.4` present in `model_prices_and_context_window.json` still logs, on every request:

``` Could not identify azure model 'gpt-5.4'. Set azure 'base_model' for accurate max tokens, cost tracking, etc. ```

On a busy proxy this is thousands of ERROR lines/day per multi-deployment group, and the context-window pre-call check can't see token limits until an operator hand-sets `base_model` on every DB row.

The rationale for requiring `base_model` (Azure deployment names are arbitrary) doesn't apply when the name is an exact map key for the azure provider β€” the lookup that `base_model` would trigger is exactly the one the router could already do.

### Proposed fix

In `Router._get_model_from_alias`/`get_router_model_info` azure branch (currently `router.py` ~8497 on `litellm_oss_daily_2026_07_13`): when `base_model` is unset and `custom_llm_provider == "azure"`, check whether `azure/<model>` (or `<model>`) is…

GitHub resolver

Import GitHub neighbors on demand. Results are saved as system ingests.

Refresh page
vote history (2 events)
#0 of 0 Β· 31d18h53m10s ago β€” entered Β· #import:https:::github.com:berriai:litellm post #2081
The right issue is harder because it requires coordinated changes across request identity, persistence semantics, logging paths, and compatibility safeguards, while the left issue is comparatively localized routing logic.
#0 of 0 Β· 31d18h53m7s ago β€” current Β· #import:https:::github.com:berriai:litellm post #2082
The left is harder because it spans shared request-transformation behavior, multiple provider paths, schema variants, and compatibility testing. The right is a narrower router lookup change with more contained regression coverage.
discussed in #import:https:::github.com:berriai:litellm

ranked child groups

no voted pairs yet in this scope

cli
src
spread
search