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

#25550 [Bug]: Model Access Groups leak into `/v1/models` response

  • State: open
  • Author: @DmitriyAlergant
  • Labels: bug, 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?

/v1/models returns access-group names alongside real models

When `/v1/models` is called with a virtual key whose `models` field references **non-existent** model / model access group, LiteLLM returns these "model"/"access groups" strings themselves as model entries in the response. Downstream OpenAI-compatible clients then render these as if they were selectable models.

Access groups are an authorization primitive — not models. They should never appear in `/v1/models`.

### Steps to Reproduce

1. Start LiteLLM proxy with any default config (at least one model defined).

2. Create a virtual key whose `models` field contains a name that does not exist as either a real model name or either of the a `access_groups` on any model:

```bash curl -X POST "$LITELLM_BASE/key/generate" \ -H "Authorization: Bearer $MASTER_KEY" \ -H "Content-Type: application/json" \ -d '{"models": ["team-sales-api"]}'

3. Call /v1/models with the resulting key:

curl -s "$LITELLM_BASE/v1/models" -H "Authorization: Bearer $VIRTUAL_…

GitHub resolver

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

Refresh page
vote history (3 events)
#0 of 0 · 31d19h9m0s ago — entered · #import:https:::github.com:berriai:litellm post #1719
The upgrade work spans database migration behavior, version compatibility, deployment safety, and documentation validation, creating broader risk than a localized proxy response-filtering fix with focused tests.
The right-side task is harder because it affects shared proxy authorization and model-discovery behavior, requiring careful compatibility analysis and regression coverage across key types and filtering paths. The left-side task is comparatively bounded to provider/model registration and translation validation.
#0 of 0 · 31d19h2m13s ago — current · #import:https:::github.com:berriai:litellm post #1820
The right issue is harder because it spans proxy authorization semantics, model discovery filtering, configuration edge cases, and regression coverage, while the left issue is a comparatively localized request-parameter condition.
discussed in #import:https:::github.com:berriai:litellm

ranked child groups

no voted pairs yet in this scope

cli
src
spread
search