mirror of
https://github.com/BerriAI/litellm.git
synced 2026-09-25 01:02:15 +00:00
Test usage transform for Realtime versus tokens_details keys
This commit is contained in:
parent
ee679dfab0
commit
a667b6cd70
1 changed files with 52 additions and 0 deletions
|
|
@ -348,6 +348,58 @@ class TestResponseAPILoggingUtils:
|
|||
assert result.completion_tokens_details.image_tokens == 100
|
||||
assert result.completion_tokens_details.text_tokens == 70
|
||||
|
||||
def test_transform_response_api_usage_with_realtime_keys(self):
|
||||
"""Realtime input_token_details / output_token_details normalize for Usage."""
|
||||
usage = {
|
||||
"input_tokens": 10,
|
||||
"output_tokens": 20,
|
||||
"total_tokens": 30,
|
||||
"input_token_details": {
|
||||
"text_tokens": 8,
|
||||
"audio_tokens": 2,
|
||||
"cached_tokens": 0,
|
||||
},
|
||||
"output_token_details": {
|
||||
"text_tokens": 12,
|
||||
"audio_tokens": 8,
|
||||
},
|
||||
}
|
||||
|
||||
result = ResponseAPILoggingUtils._transform_response_api_usage_to_chat_usage(
|
||||
usage
|
||||
)
|
||||
|
||||
assert result.prompt_tokens_details is not None
|
||||
assert result.prompt_tokens_details.text_tokens == 8
|
||||
assert result.prompt_tokens_details.audio_tokens == 2
|
||||
|
||||
assert result.completion_tokens_details is not None
|
||||
assert result.completion_tokens_details.text_tokens == 12
|
||||
|
||||
def test_transform_response_api_usage_tokens_details_keep_values(self):
|
||||
"""Keeps input_tokens_details / output_tokens_details when singular keys are also present."""
|
||||
usage = {
|
||||
"input_tokens": 10,
|
||||
"output_tokens": 20,
|
||||
"total_tokens": 30,
|
||||
"input_tokens_details": {"text_tokens": 10},
|
||||
"output_tokens_details": {"text_tokens": 20},
|
||||
"input_token_details": {"text_tokens": 1, "audio_tokens": 99},
|
||||
"output_token_details": {"text_tokens": 2, "audio_tokens": 98},
|
||||
}
|
||||
|
||||
result = ResponseAPILoggingUtils._transform_response_api_usage_to_chat_usage(
|
||||
usage
|
||||
)
|
||||
|
||||
assert result.prompt_tokens_details is not None
|
||||
assert result.prompt_tokens_details.text_tokens == 10
|
||||
assert result.prompt_tokens_details.audio_tokens is None
|
||||
|
||||
assert result.completion_tokens_details is not None
|
||||
assert result.completion_tokens_details.text_tokens == 20
|
||||
assert result.completion_tokens_details.audio_tokens is None
|
||||
|
||||
|
||||
class TestResponsesAPIProviderSpecificParams:
|
||||
"""
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue