mirror of
https://github.com/BerriAI/litellm.git
synced 2025-04-26 03:04:13 +00:00
Litellm dev 2024 12 20 p1 (#7335)
* fix(utils.py): e2e azure tts cost tracking working moves tts response obj to include hidden params (allows for litellm call id, etc. to be sent in response headers) ; fixes spend_Tracking_utils logging payload to account for non-base model use-case Fixes https://github.com/BerriAI/litellm/issues/7223 * fix: fix linting errors * build(model_prices_and_context_window.json): add bedrock llama 3.3 Closes https://github.com/BerriAI/litellm/issues/7329 * fix(openai.py): fix return type for sync openai httpx response * test: update test * fix(spend_tracking_utils.py): fix if check * fix(spend_tracking_utils.py): fix if check * test: improve debugging for test * fix: fix import
This commit is contained in:
parent
522da384b6
commit
404bf2974b
12 changed files with 63 additions and 36 deletions
|
@ -1,7 +1,7 @@
|
|||
import json
|
||||
import secrets
|
||||
from datetime import datetime as dt
|
||||
from typing import Optional
|
||||
from typing import Optional, cast
|
||||
|
||||
from pydantic import BaseModel
|
||||
|
||||
|
@ -40,7 +40,9 @@ def get_logging_payload(
|
|||
|
||||
if kwargs is None:
|
||||
kwargs = {}
|
||||
if response_obj is None:
|
||||
if response_obj is None or (
|
||||
not isinstance(response_obj, BaseModel) and not isinstance(response_obj, dict)
|
||||
):
|
||||
response_obj = {}
|
||||
# standardize this function to be used across, s3, dynamoDB, langfuse logging
|
||||
litellm_params = kwargs.get("litellm_params", {})
|
||||
|
@ -50,10 +52,10 @@ def get_logging_payload(
|
|||
completion_start_time = kwargs.get("completion_start_time", end_time)
|
||||
call_type = kwargs.get("call_type")
|
||||
cache_hit = kwargs.get("cache_hit", False)
|
||||
usage = response_obj.get("usage", None) or {}
|
||||
usage = cast(dict, response_obj).get("usage", None) or {}
|
||||
if isinstance(usage, litellm.Usage):
|
||||
usage = dict(usage)
|
||||
id = response_obj.get("id") or kwargs.get("litellm_call_id")
|
||||
id = cast(dict, response_obj).get("id") or kwargs.get("litellm_call_id")
|
||||
api_key = metadata.get("user_api_key", "")
|
||||
if api_key is not None and isinstance(api_key, str):
|
||||
if api_key.startswith("sk-"):
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue