fix(langfuse.py): log litellm response cost as part of langfuse metadata

This commit is contained in:
Krrish Dholakia 2024-06-03 12:57:50 -07:00
parent 3ef3a7ba5f
commit 872cd2d8a0
3 changed files with 9 additions and 1 deletions

View file

@ -215,7 +215,6 @@ add_function_to_prompt: bool = (
) )
client_session: Optional[httpx.Client] = None client_session: Optional[httpx.Client] = None
aclient_session: Optional[httpx.AsyncClient] = None aclient_session: Optional[httpx.AsyncClient] = None
module_level_aclient = AsyncHTTPHandler()
model_fallbacks: Optional[List] = None # Deprecated for 'litellm.fallbacks' model_fallbacks: Optional[List] = None # Deprecated for 'litellm.fallbacks'
model_cost_map_url: str = ( model_cost_map_url: str = (
"https://raw.githubusercontent.com/BerriAI/litellm/main/model_prices_and_context_window.json" "https://raw.githubusercontent.com/BerriAI/litellm/main/model_prices_and_context_window.json"
@ -232,6 +231,7 @@ max_user_budget: Optional[float] = None
max_end_user_budget: Optional[float] = None max_end_user_budget: Optional[float] = None
#### RELIABILITY #### #### RELIABILITY ####
request_timeout: float = 6000 request_timeout: float = 6000
module_level_aclient = AsyncHTTPHandler(timeout=request_timeout)
num_retries: Optional[int] = None # per model endpoint num_retries: Optional[int] = None # per model endpoint
default_fallbacks: Optional[List] = None default_fallbacks: Optional[List] = None
fallbacks: Optional[List] = None fallbacks: Optional[List] = None

View file

@ -396,6 +396,8 @@ class LangFuseLogger:
cost = kwargs.get("response_cost", None) cost = kwargs.get("response_cost", None)
print_verbose(f"trace: {cost}") print_verbose(f"trace: {cost}")
clean_metadata["litellm_response_cost"] = cost
if ( if (
litellm._langfuse_default_tags is not None litellm._langfuse_default_tags is not None
and isinstance(litellm._langfuse_default_tags, list) and isinstance(litellm._langfuse_default_tags, list)

View file

@ -29,6 +29,12 @@ model_list:
- model_name: tts - model_name: tts
litellm_params: litellm_params:
model: openai/tts-1 model: openai/tts-1
- model_name: gpt-4-turbo-preview
litellm_params:
api_base: https://openai-france-1234.openai.azure.com
api_key: os.environ/AZURE_FRANCE_API_KEY
model: azure/gpt-turbo
router_settings: router_settings:
enable_pre_call_checks: true enable_pre_call_checks: true