From 3748c706756af1d84001d9e7f0fb95a40f69f4f5 Mon Sep 17 00:00:00 2001 From: Sameer Kankute Date: Wed, 21 Jan 2026 16:15:54 +0530 Subject: [PATCH] Fix: [Bug]: litellm.litellm_core_utils.litellm_logging.Logging incorrectly handles ResponseAPIResponse --- litellm/litellm_core_utils/litellm_logging.py | 10 +--------- litellm/types/llms/openai.py | 2 +- 2 files changed, 2 insertions(+), 10 deletions(-) diff --git a/litellm/litellm_core_utils/litellm_logging.py b/litellm/litellm_core_utils/litellm_logging.py index 9cef21bfdf6..572c797aa55 100644 --- a/litellm/litellm_core_utils/litellm_logging.py +++ b/litellm/litellm_core_utils/litellm_logging.py @@ -1624,15 +1624,7 @@ class Logging(LiteLLMLoggingBaseClass): result.usage ) ) - setattr( - result, - "usage", - ( - transformed_usage.model_dump() - if hasattr(transformed_usage, "model_dump") - else dict(transformed_usage) - ), - ) + setattr(result, "usage", transformed_usage) if ( standard_logging_payload := self.model_call_details.get( "standard_logging_object" diff --git a/litellm/types/llms/openai.py b/litellm/types/llms/openai.py index 467c57c33d5..3359a6dd495 100644 --- a/litellm/types/llms/openai.py +++ b/litellm/types/llms/openai.py @@ -1191,7 +1191,7 @@ class ResponsesAPIResponse(BaseLiteLLMOpenAIResponseObject): status: Optional[str] = None text: Optional[Union["ResponseText", Dict[str, Any]]] = None truncation: Optional[Literal["auto", "disabled"]] = None - usage: Optional[ResponseAPIUsage] = None + usage: Optional[Any] = None user: Optional[str] = None store: Optional[bool] = None # Define private attributes using PrivateAttr