diff --git a/litellm/integrations/langfuse.py b/litellm/integrations/langfuse.py index 91fcb8cb7..6e26bb023 100644 --- a/litellm/integrations/langfuse.py +++ b/litellm/integrations/langfuse.py @@ -305,6 +305,8 @@ class LangFuseLogger: tags.append(f"cache_hit:{kwargs['cache_hit']}") trace_params.update({"tags": tags}) + print_verbose(f"trace_params: {trace_params}") + trace = self.Langfuse.trace(**trace_params) generation_id = None @@ -321,13 +323,17 @@ class LangFuseLogger: # just log `litellm-{call_type}` as the generation name generation_name = f"litellm-{kwargs.get('call_type', 'completion')}" + system_fingerprint = response_obj.get("system_fingerprint", None) + if system_fingerprint is not None: + optional_params["system_fingerprint"] = system_fingerprint + generation_params = { "name": generation_name, "id": metadata.get("generation_id", generation_id), - "startTime": start_time, - "endTime": end_time, + "start_time": start_time, + "end_time": end_time, "model": kwargs["model"], - "modelParameters": optional_params, + "model_parameters": optional_params, "input": input, "output": output, "usage": usage, @@ -339,13 +345,15 @@ class LangFuseLogger: generation_params["prompt"] = metadata.get("prompt", None) if output is not None and isinstance(output, str) and level == "ERROR": - generation_params["statusMessage"] = output + generation_params["status_message"] = output if supports_completion_start_time: generation_params["completion_start_time"] = kwargs.get( "completion_start_time", None ) + print_verbose(f"generation_params: {generation_params}") + trace.generation(**generation_params) except Exception as e: verbose_logger.debug(f"Langfuse Layer Error - {traceback.format_exc()}") diff --git a/requirements.txt b/requirements.txt index 26f1dbd35..01bcc818b 100644 --- a/requirements.txt +++ b/requirements.txt @@ -18,7 +18,7 @@ google-cloud-aiplatform==1.47.0 # for vertex ai calls anthropic[vertex]==0.21.3 google-generativeai==0.5.0 # for vertex ai calls async_generator==1.10.0 # for async ollama calls -langfuse>=2.6.3 # for langfuse self-hosted logging +langfuse>=2.7.3 # for langfuse self-hosted logging datadog-api-client==2.23.0 # for datadog logging prometheus_client==0.20.0 # for /metrics endpoint on proxy orjson==3.9.15 # fast /embedding responses