mirror of
https://github.com/BerriAI/litellm.git
synced 2026-09-23 00:41:40 +00:00
fix(timing): drop banned typing.cast from provider duration accounting
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
This commit is contained in:
parent
1961cbcb6c
commit
0f54d76079
2 changed files with 8 additions and 11 deletions
|
|
@ -1,6 +1,6 @@
|
|||
import datetime
|
||||
from collections.abc import Mapping
|
||||
from typing import Any, Final, cast
|
||||
from typing import Any, Final
|
||||
|
||||
import httpx
|
||||
|
||||
|
|
@ -49,8 +49,7 @@ def response_timing_metrics(
|
|||
if caching_details is not None and caching_details.get("cache_hit") is True
|
||||
else None
|
||||
)
|
||||
metadata_value: Final = get_litellm_metadata_from_kwargs(logging_obj.model_call_details)
|
||||
metadata: Final = cast(dict[str, object], metadata_value) if isinstance(metadata_value, dict) else {}
|
||||
metadata: Final[Mapping[str, object]] = get_litellm_metadata_from_kwargs(logging_obj.model_call_details)
|
||||
llm_api_duration_ms: Final = logging_obj.model_call_details.get("llm_api_duration_ms")
|
||||
if cache_duration_ms is not None:
|
||||
overhead_ms: float | None = total_response_time_ms - cache_duration_ms
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ import re
|
|||
import time
|
||||
from collections.abc import Iterator, Mapping, Sequence
|
||||
from datetime import datetime
|
||||
from typing import TYPE_CHECKING, Any, Final, cast
|
||||
from typing import TYPE_CHECKING, Any, Final
|
||||
|
||||
from litellm._logging import format_base64_size, verbose_logger
|
||||
from litellm.constants import (
|
||||
|
|
@ -287,13 +287,11 @@ def _set_duration_in_model_call_details(
|
|||
duration_ms: Final = (end_time - start_time).total_seconds() * 1000
|
||||
if logging_obj and hasattr(logging_obj, "model_call_details"):
|
||||
logging_obj.model_call_details["llm_api_duration_ms"] = duration_ms
|
||||
metadata_value: Final = get_litellm_metadata_from_kwargs(logging_obj.model_call_details)
|
||||
if isinstance(metadata_value, dict):
|
||||
metadata: Final = cast(dict[str, object], metadata_value)
|
||||
existing_total: Final = metadata.get("llm_api_duration_ms_total")
|
||||
metadata["llm_api_duration_ms_total"] = (
|
||||
existing_total if isinstance(existing_total, float) else 0.0
|
||||
) + duration_ms
|
||||
metadata: Final[dict[str, object]] = get_litellm_metadata_from_kwargs(logging_obj.model_call_details)
|
||||
existing_total: Final = metadata.get("llm_api_duration_ms_total")
|
||||
metadata["llm_api_duration_ms_total"] = (
|
||||
existing_total if isinstance(existing_total, float) else 0.0
|
||||
) + duration_ms
|
||||
else:
|
||||
verbose_logger.debug("`logging_obj` not found - unable to track `llm_api_duration_ms")
|
||||
except Exception as e:
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue