mirror of
https://github.com/BerriAI/litellm.git
synced 2026-09-15 23:31:29 +00:00
The two sides of the comparison arrived spelled differently. The spend log records a normalized model name alongside its provider, while the baseline arrives as the operator wrote it in config, with the provider prefixed, implied or absent, so the raw strings were never comparable. Read as a switch, `anthropic/claude-opus-5` against a served `claude-opus-5` priced one deployment against itself, and because the baseline arm is priced warm while the served arm pays its cold-cache write, a request that never changed model reported a $0.0707 loss. That mis-comparison was harmless until the cache fix made the two arms asymmetric, so the identity check has to land with it. Pricing had the same root cause: a baseline resolved without a provider takes whichever vendor owns the bare name. `azure_ai/deepseek-r1` and `deepseek/deepseek-r1` are the same bare model at different rates, and the difference decides the sign, +$0.039 against -$0.0731 on the same request. Both now resolve through `get_llm_provider` to a canonical (model, provider) before being compared or priced, so one deployment spelled two ways is not a switch and every arm is priced under the vendor that serves it. The per-day chart no longer stacks its drivers. Stacking sums the series into one bar, and a driver that goes negative would be drawn below the axis while the rest of the bar still read as the day's total. |
||
|---|---|---|
| .. | ||
| litellm-dashboard | ||
| Dockerfile | ||
| nginx.conf | ||