18 views
-/https://github.com/berriai/litellm/issues/28019
GitHub · issue

#28019 [Bug]: Fallback lookup fails for team-scoped models — model_group uses public name but fallback config requires internal names

  • State: open
  • Author: @aanchal22
  • Labels: proxy, llm translation

### Check for existing issues

- [x] I have searched the existing issues and checked that my issue is not a duplicate.

### What happened?

When a team-scoped BYOK model has a fallback configured via `POST /fallback` (which requires internal model names like `model_name_team_uuid`), runtime requests using the public model name (e.g. `gpt-4.1`) fail to trigger the fallback.

The fallback config IS loaded (visible in the error), but the lookup compares the public name against internal name keys and finds no match.

**Root cause:** In `Router.async_function_with_fallbacks`: ```python model_group: Optional[str] = kwargs.get("model") # this is the public name ```

This is passed to `_get_fallback_model_group_from_fallbacks` which does a direct string comparison: ```python if list(item.keys())[0] == model_group: # public name vs internal name — never matches ```

Normal routing resolves public → internal names correctly (non-fallback requests work). But the fallback code path reads the original unresolved `kwargs["model"]` before any resolution happens.

**Workaround:** Set `model_aliases` on the team via `POST /team/update` mapping public → internal names. This resolves the public nam…

GitHub resolver

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

Refresh page
vote history (4 events)
#0 of 0 · 31d18h51m6s ago — entered · #import:https:::github.com:berriai:litellm post #2035
Issue 22195 is harder because it spans request/response normalization, logging persistence, schema compatibility, and frontend rendering with broader regression and test coverage risk; issue 28019 is a localized routing lookup correction.
The left change has broader data-aggregation implications, timezone boundary risks, and likely cross-layer validation; the right is more localized routing-resolution logic with narrower regression coverage.
#28019 requires broader routing-path changes and cross-scope compatibility validation, while #34905 is a localized metadata-merge correction with focused tests.
#0 of 0 · 31d17h42m58s ago — current · #import:https:::github.com:berriai:litellm post #3175
The right issue is harder because it requires tracing and correcting model-resolution behavior across fallback routing, team scoping, and backward-compatible tests. The left issue is primarily a narrowly scoped chart dependency/version maintenance change.
discussed in #import:https:::github.com:berriai:litellm

ranked child groups

no voted pairs yet in this scope

cli
src
spread
search