3
3
4
4
import logfire
5
5
from logfire ._internal .exporters .test import TestExporter
6
- from logfire .experimental .annotations import (
7
- _record_feedback , # type: ignore
8
- get_traceparent ,
9
- raw_annotate_span ,
10
- )
6
+ from logfire .experimental .annotations import get_traceparent , raw_annotate_span , record_feedback
11
7
12
8
13
9
def test_get_traceparent (exporter : TestExporter ):
@@ -21,12 +17,18 @@ def test_get_traceparent(exporter: TestExporter):
21
17
22
18
raw_annotate_span (traceparent , 'my_span_name' , 'my_message' , {'key' : 'value' })
23
19
24
- _record_feedback (
20
+ record_feedback (
25
21
traceparent ,
26
22
'factuality' ,
27
23
0.1 ,
28
24
comment = 'the mock agent lied' ,
29
- extra_attributes = {'agent_name' : 'mock' },
25
+ extra = {'agent_name' : 'mock' },
26
+ )
27
+
28
+ record_feedback (
29
+ traceparent ,
30
+ 'rudeness' ,
31
+ 'very' ,
30
32
)
31
33
32
34
assert exporter .exported_spans_as_dict (_include_pending_spans = True ) == snapshot (
@@ -82,25 +84,45 @@ def test_get_traceparent(exporter: TestExporter):
82
84
},
83
85
},
84
86
{
85
- 'name' : 'feedback' ,
87
+ 'name' : 'feedback: factuality ' ,
86
88
'context' : {'trace_id' : 1 , 'span_id' : 4 , 'is_remote' : False },
87
89
'parent' : {'trace_id' : 1 , 'span_id' : 1 , 'is_remote' : True },
88
90
'start_time' : 4000000000 ,
89
91
'end_time' : 4000000000 ,
90
92
'attributes' : {
91
93
'logfire.span_type' : 'annotation' ,
92
94
'logfire.level_num' : 9 ,
93
- 'logfire.msg_template' : 'feedback' ,
94
- 'logfire.msg' : 'feedback: factuality= 0.1' ,
95
+ 'logfire.msg_template' : 'feedback: factuality ' ,
96
+ 'logfire.msg' : 'feedback: factuality = 0.1' ,
95
97
'code.filepath' : 'test_annotations.py' ,
96
98
'code.function' : 'test_get_traceparent' ,
97
99
'code.lineno' : 123 ,
98
- 'feedback.name' : 'factuality' ,
99
- 'feedback.score ' : 0.1 ,
100
- 'feedback.comment' : 'the mock agent lied' ,
100
+ 'logfire. feedback.name' : 'factuality' ,
101
+ 'factuality ' : 0.1 ,
102
+ 'logfire. feedback.comment' : 'the mock agent lied' ,
101
103
'agent_name' : 'mock' ,
102
104
'logfire.disable_console_log' : True ,
103
- 'logfire.json_schema' : '{"type":"object","properties":{"feedback.name":{},"feedback.score":{},"feedback.comment":{},"agent_name":{},"logfire.span_type":{},"logfire.disable_console_log":{}}}' ,
105
+ 'logfire.json_schema' : '{"type":"object","properties":{"logfire.feedback.name":{},"factuality":{},"agent_name":{},"logfire.feedback.comment":{},"logfire.span_type":{},"logfire.disable_console_log":{}}}' ,
106
+ },
107
+ },
108
+ {
109
+ 'name' : 'feedback: rudeness' ,
110
+ 'context' : {'trace_id' : 1 , 'span_id' : 5 , 'is_remote' : False },
111
+ 'parent' : {'trace_id' : 1 , 'span_id' : 1 , 'is_remote' : True },
112
+ 'start_time' : 5000000000 ,
113
+ 'end_time' : 5000000000 ,
114
+ 'attributes' : {
115
+ 'logfire.span_type' : 'annotation' ,
116
+ 'logfire.level_num' : 9 ,
117
+ 'logfire.msg_template' : 'feedback: rudeness' ,
118
+ 'logfire.msg' : "feedback: rudeness = 'very'" ,
119
+ 'code.filepath' : 'test_annotations.py' ,
120
+ 'code.function' : 'test_get_traceparent' ,
121
+ 'code.lineno' : 123 ,
122
+ 'logfire.feedback.name' : 'rudeness' ,
123
+ 'rudeness' : 'very' ,
124
+ 'logfire.disable_console_log' : True ,
125
+ 'logfire.json_schema' : '{"type":"object","properties":{"logfire.feedback.name":{},"rudeness":{},"logfire.span_type":{},"logfire.disable_console_log":{}}}' ,
104
126
},
105
127
},
106
128
]
0 commit comments