File size: 713 Bytes
bef5e76
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
"""Langfuse observability integration."""

from langfuse import Langfuse
from src.config.settings import settings
from src.middlewares.logging import get_logger

logger = get_logger("langfuse")


def get_langfuse():
    """Get Langfuse client."""
    return Langfuse(
        public_key=settings.LANGFUSE_PUBLIC_KEY,
        secret_key=settings.LANGFUSE_SECRET_KEY,
        host=settings.LANGFUSE_HOST
    )


def trace_chat(user_id: str, room_id: str, query: str, response: str):
    """Trace a chat interaction."""
    langfuse = get_langfuse()

    langfuse.score(
        name="chat_interaction",
        value=1,  # Placeholder for quality score
        comment="Successful chat"
    )

    langfuse.flush()