mirror of
https://git.mirrors.martin98.com/https://github.com/langgenius/dify.git
synced 2025-06-04 11:14:10 +08:00
fix: langfuse do not have created_at args and fix the typing in the file (#11648)
Signed-off-by: yihong0618 <zouzou0208@gmail.com>
This commit is contained in:
parent
f0c0ce9db1
commit
821992e21f
@ -4,7 +4,7 @@ import os
|
|||||||
from datetime import datetime, timedelta
|
from datetime import datetime, timedelta
|
||||||
from typing import Optional
|
from typing import Optional
|
||||||
|
|
||||||
from langfuse import Langfuse
|
from langfuse import Langfuse # type: ignore
|
||||||
|
|
||||||
from core.ops.base_trace_instance import BaseTraceInstance
|
from core.ops.base_trace_instance import BaseTraceInstance
|
||||||
from core.ops.entities.config_entity import LangfuseConfig
|
from core.ops.entities.config_entity import LangfuseConfig
|
||||||
@ -82,8 +82,6 @@ class LangFuseDataTrace(BaseTraceInstance):
|
|||||||
metadata=metadata,
|
metadata=metadata,
|
||||||
session_id=trace_info.conversation_id,
|
session_id=trace_info.conversation_id,
|
||||||
tags=["message", "workflow"],
|
tags=["message", "workflow"],
|
||||||
created_at=trace_info.start_time,
|
|
||||||
updated_at=trace_info.end_time,
|
|
||||||
)
|
)
|
||||||
self.add_trace(langfuse_trace_data=trace_data)
|
self.add_trace(langfuse_trace_data=trace_data)
|
||||||
workflow_span_data = LangfuseSpan(
|
workflow_span_data = LangfuseSpan(
|
||||||
@ -242,11 +240,13 @@ class LangFuseDataTrace(BaseTraceInstance):
|
|||||||
file_list = trace_info.file_list
|
file_list = trace_info.file_list
|
||||||
metadata = trace_info.metadata
|
metadata = trace_info.metadata
|
||||||
message_data = trace_info.message_data
|
message_data = trace_info.message_data
|
||||||
|
if message_data is None:
|
||||||
|
return
|
||||||
message_id = message_data.id
|
message_id = message_data.id
|
||||||
|
|
||||||
user_id = message_data.from_account_id
|
user_id = message_data.from_account_id
|
||||||
if message_data.from_end_user_id:
|
if message_data.from_end_user_id:
|
||||||
end_user_data: EndUser = (
|
end_user_data: Optional[EndUser] = (
|
||||||
db.session.query(EndUser).filter(EndUser.id == message_data.from_end_user_id).first()
|
db.session.query(EndUser).filter(EndUser.id == message_data.from_end_user_id).first()
|
||||||
)
|
)
|
||||||
if end_user_data is not None:
|
if end_user_data is not None:
|
||||||
@ -303,6 +303,8 @@ class LangFuseDataTrace(BaseTraceInstance):
|
|||||||
self.add_generation(langfuse_generation_data)
|
self.add_generation(langfuse_generation_data)
|
||||||
|
|
||||||
def moderation_trace(self, trace_info: ModerationTraceInfo):
|
def moderation_trace(self, trace_info: ModerationTraceInfo):
|
||||||
|
if trace_info.message_data is None:
|
||||||
|
return
|
||||||
span_data = LangfuseSpan(
|
span_data = LangfuseSpan(
|
||||||
name=TraceTaskName.MODERATION_TRACE.value,
|
name=TraceTaskName.MODERATION_TRACE.value,
|
||||||
input=trace_info.inputs,
|
input=trace_info.inputs,
|
||||||
@ -322,9 +324,11 @@ class LangFuseDataTrace(BaseTraceInstance):
|
|||||||
|
|
||||||
def suggested_question_trace(self, trace_info: SuggestedQuestionTraceInfo):
|
def suggested_question_trace(self, trace_info: SuggestedQuestionTraceInfo):
|
||||||
message_data = trace_info.message_data
|
message_data = trace_info.message_data
|
||||||
|
if message_data is None:
|
||||||
|
return
|
||||||
generation_usage = GenerationUsage(
|
generation_usage = GenerationUsage(
|
||||||
total=len(str(trace_info.suggested_question)),
|
total=len(str(trace_info.suggested_question)),
|
||||||
input=len(trace_info.inputs),
|
input=len(trace_info.inputs) if trace_info.inputs else 0,
|
||||||
output=len(trace_info.suggested_question),
|
output=len(trace_info.suggested_question),
|
||||||
unit=UnitEnum.CHARACTERS,
|
unit=UnitEnum.CHARACTERS,
|
||||||
)
|
)
|
||||||
@ -345,6 +349,8 @@ class LangFuseDataTrace(BaseTraceInstance):
|
|||||||
self.add_generation(langfuse_generation_data=generation_data)
|
self.add_generation(langfuse_generation_data=generation_data)
|
||||||
|
|
||||||
def dataset_retrieval_trace(self, trace_info: DatasetRetrievalTraceInfo):
|
def dataset_retrieval_trace(self, trace_info: DatasetRetrievalTraceInfo):
|
||||||
|
if trace_info.message_data is None:
|
||||||
|
return
|
||||||
dataset_retrieval_span_data = LangfuseSpan(
|
dataset_retrieval_span_data = LangfuseSpan(
|
||||||
name=TraceTaskName.DATASET_RETRIEVAL_TRACE.value,
|
name=TraceTaskName.DATASET_RETRIEVAL_TRACE.value,
|
||||||
input=trace_info.inputs,
|
input=trace_info.inputs,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user