From 5c1ae3d412e9bca2bccfae7baf07c0f5240ea640 Mon Sep 17 00:00:00 2001 From: ishaan-jaff Date: Wed, 17 Jan 2024 17:29:46 -0800 Subject: [PATCH] (feat) langfuse send metadata as tags --- litellm/integrations/langfuse.py | 25 ++++++++++++++++++------- 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/litellm/integrations/langfuse.py b/litellm/integrations/langfuse.py index db410d986f..4bf60adc94 100644 --- a/litellm/integrations/langfuse.py +++ b/litellm/integrations/langfuse.py @@ -166,13 +166,24 @@ class LangFuseLogger: input, response_obj, ): - trace = self.Langfuse.trace( - name=metadata.get("generation_name", "litellm-completion"), - input=input, - output=output, - user_id=metadata.get("trace_user_id", user_id), - id=metadata.get("trace_id", None), - ) + import langfuse + + tags = [] + supports_tags = Version(langfuse.version.__version__) >= Version("2.6.3") + + trace_params = { + "name": metadata.get("generation_name", "litellm-completion"), + "input": input, + "output": output, + "user_id": metadata.get("trace_user_id", user_id), + "id": metadata.get("trace_id", None), + } + if supports_tags: + for key, value in metadata.items(): + tags.append(f"{key}:{value}") + trace_params.update({"tags": tags}) + + trace = self.Langfuse.trace(**trace_params) trace.generation( name=metadata.get("generation_name", "litellm-completion"),