diff --git a/api/core/ops/weave_trace/entities/weave_trace_entity.py b/api/core/ops/weave_trace/entities/weave_trace_entity.py index 1f6b907e74..14c127f884 100644 --- a/api/core/ops/weave_trace/entities/weave_trace_entity.py +++ b/api/core/ops/weave_trace/entities/weave_trace_entity.py @@ -65,7 +65,8 @@ class WeaveTraceModel(WeaveTokenUsage, WeaveMultiModel): v = replace_text_with_content(data=v) if field_name == "inputs": data = { - "messages": v, + "messages": [dict(msg, **{"usage_metadata": usage_metadata, "file_list": file_list}) for msg in + v] if isinstance(v, list) else v, } elif field_name == "outputs": data = { diff --git a/api/core/ops/weave_trace/weave_trace.py b/api/core/ops/weave_trace/weave_trace.py index 33547f2092..ce474f700d 100644 --- a/api/core/ops/weave_trace/weave_trace.py +++ b/api/core/ops/weave_trace/weave_trace.py @@ -279,8 +279,8 @@ class WeaveDataTrace(BaseTraceInstance): attributes = trace_info.metadata attributes["tags"] = ["moderation"] attributes["message_id"] = trace_info.message_id - attributes["start_time"] = (trace_info.start_time or trace_info.message_data.created_at,) - attributes["end_time"] = (trace_info.end_time or trace_info.message_data.updated_at,) + attributes["start_time"] = trace_info.start_time or trace_info.message_data.created_at + attributes["end_time"] = trace_info.end_time or trace_info.message_data.updated_at moderation_run = WeaveTraceModel( id=str(uuid.uuid4()),