mirror of
https://github.com/BerriAI/litellm.git
synced 2026-10-04 02:31:27 +00:00
toolUsePromptTokenCount was the one prompt-side total not named in _AGGREGATED_FIELDS, so it rode the unknown-key pass-through and took the first frame's value while promptTokenCount, candidatesTokenCount and totalTokenCount beside it were summed. Live's frames grow over a session, so the first frame is the smallest number in the series and a grounded session under-reported its tool-use tokens by everything after turn one. It is now summed like its three neighbours. This is reporting only, and pricing these tokens is deliberately left out. Google charges tool-use prompt tokens at the input token rate, but generic_cost_per_token reads the input bill out of prompt_tokens_details and only falls back to prompt_tokens when the details carry no text or a cache hit overlaps them. Measured on the native-audio entry with 500 tool-use tokens: adding them to prompt_tokens moves an ordinary Live turn's bill by $0.0000000000, and on a turn with a cache hit it moves it by $0.0002650000 where the tokens are worth $0.0002500000, because it perturbs the cache-overlap correction. Pricing them belongs beside the modality terms in the shared input-cost path, in its own change that fixes the same latent no-op on the ordinary Gemini path. Not verified against a live capture: no Vertex Live session we have captured reported toolUsePromptTokenCount at all, so the summing convention is inferred from the three prompt-side totals that accumulate the same way. |
||
|---|---|---|
| .. | ||
| messages_api_structured_output | ||
| base_anthropic_messages_prompt_caching_test.py | ||
| base_anthropic_messages_tool_search_test.py | ||
| base_anthropic_unified_messages_test.py | ||
| conftest.py | ||
| test_anthropic_messages_passthrough.py | ||
| test_anthropic_messages_prompt_caching.py | ||
| test_anthropic_messages_tool_search.py | ||
| test_assemblyai_unit_tests_passthrough.py | ||
| test_bedrock_anthropic_messages_test.py | ||
| test_bedrock_tool_use_beta_header.py | ||
| test_claude_code_marketplace.py | ||
| test_context_management_polyfill.py | ||
| test_custom_logger_passthrough.py | ||
| test_pass_through_unit_tests.py | ||
| test_passthrough_managed_ids.py | ||
| test_passthrough_registry_updates.py | ||
| test_unit_test_anthropic_pass_through.py | ||
| test_unit_test_passthrough_router.py | ||
| test_unit_test_streaming.py | ||
| test_vertex_ai_anthropic_streaming_cost_injection.py | ||
| test_vertex_ai_live_passthrough.py | ||
| test_websearch_interception_e2e.py | ||