Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
1 change: 1 addition & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,7 @@ jobs:
- "3.11"
- "3.12"
- "3.13"
- "3.14"

name: Test on Python version ${{ matrix.python-version }}
steps:
Expand Down
19 changes: 3 additions & 16 deletions langfuse/_client/attributes.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,15 +12,16 @@

import json
from datetime import datetime
from typing import Any, Dict, List, Literal, Optional, Union
from typing import Any, Dict, Literal, Optional, Union

from langfuse._client.constants import (
ObservationTypeGenerationLike,
ObservationTypeSpanLike,
)
from langfuse._utils.serializer import EventSerializer
from langfuse.api import MapValue
from langfuse.model import PromptClient
from langfuse.types import MapValue, SpanLevel
from langfuse.types import SpanLevel


class LangfuseOtelSpanAttributes:
Expand Down Expand Up @@ -73,28 +74,14 @@ class LangfuseOtelSpanAttributes:

def create_trace_attributes(
*,
name: Optional[str] = None,
user_id: Optional[str] = None,
session_id: Optional[str] = None,
version: Optional[str] = None,
release: Optional[str] = None,
input: Optional[Any] = None,
output: Optional[Any] = None,
metadata: Optional[Any] = None,
tags: Optional[List[str]] = None,
public: Optional[bool] = None,
) -> dict:
attributes = {
LangfuseOtelSpanAttributes.TRACE_NAME: name,
LangfuseOtelSpanAttributes.TRACE_USER_ID: user_id,
LangfuseOtelSpanAttributes.TRACE_SESSION_ID: session_id,
LangfuseOtelSpanAttributes.VERSION: version,
LangfuseOtelSpanAttributes.RELEASE: release,
LangfuseOtelSpanAttributes.TRACE_INPUT: _serialize(input),
LangfuseOtelSpanAttributes.TRACE_OUTPUT: _serialize(output),
LangfuseOtelSpanAttributes.TRACE_TAGS: tags,
LangfuseOtelSpanAttributes.TRACE_PUBLIC: public,
**_flatten_and_serialize_metadata(metadata, "trace"),
}

return {k: v for k, v in attributes.items() if v is not None}
Expand Down
Loading
Loading