litellm/ui
ryan-crabbe-berri e118ebec55 feat(spend): add exclude_team_models param to /global/spend/report
Team BYOK deployments share their public model name with admin-managed
models, so billing pulled from /global/spend/report cannot distinguish
spend a team already paid its provider for, and that spend gets billed
twice. Zeroing the deployment cost is not a workaround because spend
drives member-level budget enforcement.

When exclude_team_models=true, every SQL branch of the report anti-joins
LiteLLM_SpendLogs.model_id against LiteLLM_ProxyModelTable rows whose
model_info carries a team_id. Ownership via model_info.team_id (the same
signal Router._is_team_specific_model reads) survives deployment renames
and never matches admin models, unlike the mangled model_name prefix.
With the flag absent or false every query is byte-identical to before.

Known limitation: spend from deployments deleted since the request was
logged cannot be classified and remains included.
2026-07-25 18:16:44 -07:00
..
litellm-dashboard feat(spend): add exclude_team_models param to /global/spend/report 2026-07-25 18:16:44 -07:00
Dockerfile feat: add componentized proxy deployment with gateway, backend, ui, and migrations (#27557) 2026-05-16 09:25:17 -07:00
nginx.conf fix(ui): serve /ui/assets from the nginx image instead of SPA fallback (#34066) 2026-07-21 09:22:02 -07:00