Add typing for litellm.moderation response obj

This commit is contained in:
Ishaan Jaff 2025-04-28 14:44:38 -07:00
parent 40b3e43593
commit 58144769bb
2 changed files with 8 additions and 3 deletions

View file

@ -58,6 +58,7 @@ from litellm.responses.utils import ResponseAPILoggingUtils
from litellm.types.llms.openai import (
HttpxBinaryResponseContent,
ImageGenerationRequestQuality,
OpenAIModerationResponse,
OpenAIRealtimeStreamList,
OpenAIRealtimeStreamResponseBaseObject,
OpenAIRealtimeStreamSessionEvents,
@ -643,9 +644,9 @@ def completion_cost( # noqa: PLR0915
or isinstance(completion_response, dict)
): # tts returns a custom class
if isinstance(completion_response, dict):
usage_obj: Optional[
Union[dict, Usage]
] = completion_response.get("usage", {})
usage_obj: Optional[Union[dict, Usage]] = (
completion_response.get("usage", {})
)
else:
usage_obj = getattr(completion_response, "usage", {})
if isinstance(usage_obj, BaseModel) and not _is_known_usage_objects(
@ -944,6 +945,7 @@ def response_cost_calculator(
RerankResponse,
ResponsesAPIResponse,
LiteLLMRealtimeStreamLoggingObject,
OpenAIModerationResponse,
],
model: str,
custom_llm_provider: Optional[str],

View file

@ -59,6 +59,7 @@ from litellm.types.llms.openai import (
FineTuningJob,
HttpxBinaryResponseContent,
OpenAIFileObject,
OpenAIModerationResponse,
ResponseCompletedEvent,
ResponsesAPIResponse,
)
@ -943,6 +944,7 @@ class Logging(LiteLLMLoggingBaseClass):
ResponseCompletedEvent,
OpenAIFileObject,
LiteLLMRealtimeStreamLoggingObject,
OpenAIModerationResponse,
],
cache_hit: Optional[bool] = None,
litellm_model_name: Optional[str] = None,
@ -1137,6 +1139,7 @@ class Logging(LiteLLMLoggingBaseClass):
or isinstance(logging_result, ResponsesAPIResponse)
or isinstance(logging_result, OpenAIFileObject)
or isinstance(logging_result, LiteLLMRealtimeStreamLoggingObject)
or isinstance(logging_result, OpenAIModerationResponse)
):
## HIDDEN PARAMS ##
hidden_params = getattr(logging_result, "_hidden_params", {})