This commit is contained in:
DDDonut 2026-08-27 19:21:57 -05:00 • committed by GitHub
commit 5052882c40
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 35 additions and 1 deletions

View file

@ -4828,7 +4828,12 @@ class Router:
self._update_kwargs_with_deployment(deployment=deployment, kwargs=kwargs, function_name=function_name)
data: Final = deployment["litellm_params"].copy()
model_name: Final = data["model"]
deployment_model_name: Final = data["model"]
model_name = (
model
if "*" in deployment_model_name and "*" not in model
else deployment_model_name
)
self.total_calls[model_name] += 1
self._add_deployment_model_to_endpoint_for_llm_passthrough_route(

View file

@ -0,0 +1,29 @@
from unittest.mock import AsyncMock
import pytest
from litellm import Router
@pytest.mark.asyncio
async def test_wildcard_deployment_preserves_requested_model() -> None:
"""Provider wildcard credentials must not replace the concrete request model."""
router = Router(
model_list=[
{
"model_name": "openai/*",
"litellm_params": {"model": "openai/*", "api_key": "sk-test"},
"model_info": {"id": "wildcard-deployment"},
}
]
)
original_function = AsyncMock(return_value="response")
result = await router._ageneric_api_call_with_fallbacks_helper(
model="openai/gpt-5.3-codex",
original_generic_function=original_function,
messages=[{"role": "user", "content": "ping"}],
)
assert result == "response"
assert original_function.await_args.kwargs["model"] == "openai/gpt-5.3-codex"