Skip to content

Commit 77acd98

Browse files
author
langfuse-bot
committed
feat(api): update API spec from langfuse/langfuse 6603be6
1 parent 3e530af commit 77acd98

File tree

18 files changed

+3301
-9
lines changed

18 files changed

+3301
-9
lines changed

langfuse/api/__init__.py

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -112,12 +112,16 @@
112112
ScoreV1_Boolean,
113113
ScoreV1_Categorical,
114114
ScoreV1_Numeric,
115+
ScoreV1_Text,
115116
Score_Boolean,
116117
Score_Categorical,
117118
Score_Correction,
118119
Score_Numeric,
120+
Score_Text,
119121
Session,
120122
SessionWithTraces,
123+
TextScore,
124+
TextScoreV1,
121125
Trace,
122126
TraceWithDetails,
123127
TraceWithFullDetails,
@@ -281,10 +285,12 @@
281285
GetScoresResponseDataCategorical,
282286
GetScoresResponseDataCorrection,
283287
GetScoresResponseDataNumeric,
288+
GetScoresResponseDataText,
284289
GetScoresResponseData_Boolean,
285290
GetScoresResponseData_Categorical,
286291
GetScoresResponseData_Correction,
287292
GetScoresResponseData_Numeric,
293+
GetScoresResponseData_Text,
288294
GetScoresResponseTraceData,
289295
)
290296
from .sessions import PaginatedSessions
@@ -377,10 +383,12 @@
377383
"GetScoresResponseDataCategorical": ".scores",
378384
"GetScoresResponseDataCorrection": ".scores",
379385
"GetScoresResponseDataNumeric": ".scores",
386+
"GetScoresResponseDataText": ".scores",
380387
"GetScoresResponseData_Boolean": ".scores",
381388
"GetScoresResponseData_Categorical": ".scores",
382389
"GetScoresResponseData_Correction": ".scores",
383390
"GetScoresResponseData_Numeric": ".scores",
391+
"GetScoresResponseData_Text": ".scores",
384392
"GetScoresResponseTraceData": ".scores",
385393
"HealthResponse": ".health",
386394
"IngestionError": ".ingestion",
@@ -489,10 +497,12 @@
489497
"ScoreV1_Boolean": ".commons",
490498
"ScoreV1_Categorical": ".commons",
491499
"ScoreV1_Numeric": ".commons",
500+
"ScoreV1_Text": ".commons",
492501
"Score_Boolean": ".commons",
493502
"Score_Categorical": ".commons",
494503
"Score_Correction": ".commons",
495504
"Score_Numeric": ".commons",
505+
"Score_Text": ".commons",
496506
"SdkLogBody": ".ingestion",
497507
"SdkLogEvent": ".ingestion",
498508
"ServiceProviderConfig": ".scim",
@@ -501,6 +511,8 @@
501511
"SessionWithTraces": ".commons",
502512
"Sort": ".trace",
503513
"TextPrompt": ".prompts",
514+
"TextScore": ".commons",
515+
"TextScoreV1": ".commons",
504516
"Trace": ".commons",
505517
"TraceBody": ".ingestion",
506518
"TraceEvent": ".ingestion",
@@ -664,10 +676,12 @@ def __dir__():
664676
"GetScoresResponseDataCategorical",
665677
"GetScoresResponseDataCorrection",
666678
"GetScoresResponseDataNumeric",
679+
"GetScoresResponseDataText",
667680
"GetScoresResponseData_Boolean",
668681
"GetScoresResponseData_Categorical",
669682
"GetScoresResponseData_Correction",
670683
"GetScoresResponseData_Numeric",
684+
"GetScoresResponseData_Text",
671685
"GetScoresResponseTraceData",
672686
"HealthResponse",
673687
"IngestionError",
@@ -776,10 +790,12 @@ def __dir__():
776790
"ScoreV1_Boolean",
777791
"ScoreV1_Categorical",
778792
"ScoreV1_Numeric",
793+
"ScoreV1_Text",
779794
"Score_Boolean",
780795
"Score_Categorical",
781796
"Score_Correction",
782797
"Score_Numeric",
798+
"Score_Text",
783799
"SdkLogBody",
784800
"SdkLogEvent",
785801
"ServiceProviderConfig",
@@ -788,6 +804,8 @@ def __dir__():
788804
"SessionWithTraces",
789805
"Sort",
790806
"TextPrompt",
807+
"TextScore",
808+
"TextScoreV1",
791809
"Trace",
792810
"TraceBody",
793811
"TraceEvent",

langfuse/api/commons/__init__.py

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,12 +47,16 @@
4747
ScoreV1_Boolean,
4848
ScoreV1_Categorical,
4949
ScoreV1_Numeric,
50+
ScoreV1_Text,
5051
Score_Boolean,
5152
Score_Categorical,
5253
Score_Correction,
5354
Score_Numeric,
55+
Score_Text,
5456
Session,
5557
SessionWithTraces,
58+
TextScore,
59+
TextScoreV1,
5660
Trace,
5761
TraceWithDetails,
5862
TraceWithFullDetails,
@@ -110,12 +114,16 @@
110114
"ScoreV1_Boolean": ".types",
111115
"ScoreV1_Categorical": ".types",
112116
"ScoreV1_Numeric": ".types",
117+
"ScoreV1_Text": ".types",
113118
"Score_Boolean": ".types",
114119
"Score_Categorical": ".types",
115120
"Score_Correction": ".types",
116121
"Score_Numeric": ".types",
122+
"Score_Text": ".types",
117123
"Session": ".types",
118124
"SessionWithTraces": ".types",
125+
"TextScore": ".types",
126+
"TextScoreV1": ".types",
119127
"Trace": ".types",
120128
"TraceWithDetails": ".types",
121129
"TraceWithFullDetails": ".types",
@@ -196,12 +204,16 @@ def __dir__():
196204
"ScoreV1_Boolean",
197205
"ScoreV1_Categorical",
198206
"ScoreV1_Numeric",
207+
"ScoreV1_Text",
199208
"Score_Boolean",
200209
"Score_Categorical",
201210
"Score_Correction",
202211
"Score_Numeric",
212+
"Score_Text",
203213
"Session",
204214
"SessionWithTraces",
215+
"TextScore",
216+
"TextScoreV1",
205217
"Trace",
206218
"TraceWithDetails",
207219
"TraceWithFullDetails",

langfuse/api/commons/types/__init__.py

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,14 +43,23 @@
4343
Score_Categorical,
4444
Score_Correction,
4545
Score_Numeric,
46+
Score_Text,
4647
)
4748
from .score_config import ScoreConfig
4849
from .score_config_data_type import ScoreConfigDataType
4950
from .score_data_type import ScoreDataType
5051
from .score_source import ScoreSource
51-
from .score_v1 import ScoreV1, ScoreV1_Boolean, ScoreV1_Categorical, ScoreV1_Numeric
52+
from .score_v1 import (
53+
ScoreV1,
54+
ScoreV1_Boolean,
55+
ScoreV1_Categorical,
56+
ScoreV1_Numeric,
57+
ScoreV1_Text,
58+
)
5259
from .session import Session
5360
from .session_with_traces import SessionWithTraces
61+
from .text_score import TextScore
62+
from .text_score_v1 import TextScoreV1
5463
from .trace import Trace
5564
from .trace_with_details import TraceWithDetails
5665
from .trace_with_full_details import TraceWithFullDetails
@@ -96,12 +105,16 @@
96105
"ScoreV1_Boolean": ".score_v1",
97106
"ScoreV1_Categorical": ".score_v1",
98107
"ScoreV1_Numeric": ".score_v1",
108+
"ScoreV1_Text": ".score_v1",
99109
"Score_Boolean": ".score",
100110
"Score_Categorical": ".score",
101111
"Score_Correction": ".score",
102112
"Score_Numeric": ".score",
113+
"Score_Text": ".score",
103114
"Session": ".session",
104115
"SessionWithTraces": ".session_with_traces",
116+
"TextScore": ".text_score",
117+
"TextScoreV1": ".text_score_v1",
105118
"Trace": ".trace",
106119
"TraceWithDetails": ".trace_with_details",
107120
"TraceWithFullDetails": ".trace_with_full_details",
@@ -177,12 +190,16 @@ def __dir__():
177190
"ScoreV1_Boolean",
178191
"ScoreV1_Categorical",
179192
"ScoreV1_Numeric",
193+
"ScoreV1_Text",
180194
"Score_Boolean",
181195
"Score_Categorical",
182196
"Score_Correction",
183197
"Score_Numeric",
198+
"Score_Text",
184199
"Session",
185200
"SessionWithTraces",
201+
"TextScore",
202+
"TextScoreV1",
186203
"Trace",
187204
"TraceWithDetails",
188205
"TraceWithFullDetails",

langfuse/api/commons/types/score.py

Lines changed: 48 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -195,7 +195,54 @@ class Score_Correction(UniversalBaseModel):
195195
)
196196

197197

198+
class Score_Text(UniversalBaseModel):
199+
data_type: typing_extensions.Annotated[
200+
typing.Literal["TEXT"], FieldMetadata(alias="dataType")
201+
] = "TEXT"
202+
string_value: typing_extensions.Annotated[str, FieldMetadata(alias="stringValue")]
203+
id: str
204+
trace_id: typing_extensions.Annotated[
205+
typing.Optional[str], FieldMetadata(alias="traceId")
206+
] = None
207+
session_id: typing_extensions.Annotated[
208+
typing.Optional[str], FieldMetadata(alias="sessionId")
209+
] = None
210+
observation_id: typing_extensions.Annotated[
211+
typing.Optional[str], FieldMetadata(alias="observationId")
212+
] = None
213+
dataset_run_id: typing_extensions.Annotated[
214+
typing.Optional[str], FieldMetadata(alias="datasetRunId")
215+
] = None
216+
name: str
217+
source: ScoreSource
218+
timestamp: dt.datetime
219+
created_at: typing_extensions.Annotated[
220+
dt.datetime, FieldMetadata(alias="createdAt")
221+
]
222+
updated_at: typing_extensions.Annotated[
223+
dt.datetime, FieldMetadata(alias="updatedAt")
224+
]
225+
author_user_id: typing_extensions.Annotated[
226+
typing.Optional[str], FieldMetadata(alias="authorUserId")
227+
] = None
228+
comment: typing.Optional[str] = None
229+
metadata: typing.Any
230+
config_id: typing_extensions.Annotated[
231+
typing.Optional[str], FieldMetadata(alias="configId")
232+
] = None
233+
queue_id: typing_extensions.Annotated[
234+
typing.Optional[str], FieldMetadata(alias="queueId")
235+
] = None
236+
environment: str
237+
238+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(
239+
extra="allow", frozen=True
240+
)
241+
242+
198243
Score = typing_extensions.Annotated[
199-
typing.Union[Score_Numeric, Score_Categorical, Score_Boolean, Score_Correction],
244+
typing.Union[
245+
Score_Numeric, Score_Categorical, Score_Boolean, Score_Correction, Score_Text
246+
],
200247
pydantic.Field(discriminator="data_type"),
201248
]

langfuse/api/commons/types/score_config_data_type.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,16 +11,20 @@ class ScoreConfigDataType(enum.StrEnum):
1111
NUMERIC = "NUMERIC"
1212
BOOLEAN = "BOOLEAN"
1313
CATEGORICAL = "CATEGORICAL"
14+
TEXT = "TEXT"
1415

1516
def visit(
1617
self,
1718
numeric: typing.Callable[[], T_Result],
1819
boolean: typing.Callable[[], T_Result],
1920
categorical: typing.Callable[[], T_Result],
21+
text: typing.Callable[[], T_Result],
2022
) -> T_Result:
2123
if self is ScoreConfigDataType.NUMERIC:
2224
return numeric()
2325
if self is ScoreConfigDataType.BOOLEAN:
2426
return boolean()
2527
if self is ScoreConfigDataType.CATEGORICAL:
2628
return categorical()
29+
if self is ScoreConfigDataType.TEXT:
30+
return text()

langfuse/api/commons/types/score_data_type.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,13 +12,15 @@ class ScoreDataType(enum.StrEnum):
1212
BOOLEAN = "BOOLEAN"
1313
CATEGORICAL = "CATEGORICAL"
1414
CORRECTION = "CORRECTION"
15+
TEXT = "TEXT"
1516

1617
def visit(
1718
self,
1819
numeric: typing.Callable[[], T_Result],
1920
boolean: typing.Callable[[], T_Result],
2021
categorical: typing.Callable[[], T_Result],
2122
correction: typing.Callable[[], T_Result],
23+
text: typing.Callable[[], T_Result],
2224
) -> T_Result:
2325
if self is ScoreDataType.NUMERIC:
2426
return numeric()
@@ -28,3 +30,5 @@ def visit(
2830
return categorical()
2931
if self is ScoreDataType.CORRECTION:
3032
return correction()
33+
if self is ScoreDataType.TEXT:
34+
return text()

langfuse/api/commons/types/score_v1.py

Lines changed: 38 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,44 @@ class ScoreV1_Boolean(UniversalBaseModel):
125125
)
126126

127127

128+
class ScoreV1_Text(UniversalBaseModel):
129+
data_type: typing_extensions.Annotated[
130+
typing.Literal["TEXT"], FieldMetadata(alias="dataType")
131+
] = "TEXT"
132+
string_value: typing_extensions.Annotated[str, FieldMetadata(alias="stringValue")]
133+
id: str
134+
trace_id: typing_extensions.Annotated[str, FieldMetadata(alias="traceId")]
135+
name: str
136+
source: ScoreSource
137+
observation_id: typing_extensions.Annotated[
138+
typing.Optional[str], FieldMetadata(alias="observationId")
139+
] = None
140+
timestamp: dt.datetime
141+
created_at: typing_extensions.Annotated[
142+
dt.datetime, FieldMetadata(alias="createdAt")
143+
]
144+
updated_at: typing_extensions.Annotated[
145+
dt.datetime, FieldMetadata(alias="updatedAt")
146+
]
147+
author_user_id: typing_extensions.Annotated[
148+
typing.Optional[str], FieldMetadata(alias="authorUserId")
149+
] = None
150+
comment: typing.Optional[str] = None
151+
metadata: typing.Any
152+
config_id: typing_extensions.Annotated[
153+
typing.Optional[str], FieldMetadata(alias="configId")
154+
] = None
155+
queue_id: typing_extensions.Annotated[
156+
typing.Optional[str], FieldMetadata(alias="queueId")
157+
] = None
158+
environment: str
159+
160+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(
161+
extra="allow", frozen=True
162+
)
163+
164+
128165
ScoreV1 = typing_extensions.Annotated[
129-
typing.Union[ScoreV1_Numeric, ScoreV1_Categorical, ScoreV1_Boolean],
166+
typing.Union[ScoreV1_Numeric, ScoreV1_Categorical, ScoreV1_Boolean, ScoreV1_Text],
130167
pydantic.Field(discriminator="data_type"),
131168
]
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
# This file was auto-generated by Fern from our API Definition.
2+
3+
import typing
4+
5+
import pydantic
6+
import typing_extensions
7+
from ...core.serialization import FieldMetadata
8+
from .base_score import BaseScore
9+
10+
11+
class TextScore(BaseScore):
12+
string_value: typing_extensions.Annotated[
13+
str, FieldMetadata(alias="stringValue")
14+
] = pydantic.Field()
15+
"""
16+
The text content of the score (1-500 characters)
17+
"""
18+
19+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(
20+
extra="allow", frozen=True
21+
)
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
# This file was auto-generated by Fern from our API Definition.
2+
3+
import typing
4+
5+
import pydantic
6+
import typing_extensions
7+
from ...core.serialization import FieldMetadata
8+
from .base_score_v1 import BaseScoreV1
9+
10+
11+
class TextScoreV1(BaseScoreV1):
12+
string_value: typing_extensions.Annotated[
13+
str, FieldMetadata(alias="stringValue")
14+
] = pydantic.Field()
15+
"""
16+
The text content of the score (1-500 characters)
17+
"""
18+
19+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(
20+
extra="allow", frozen=True
21+
)

0 commit comments

Comments
 (0)