langfuse.api

  1# This file was auto-generated by Fern from our API Definition.
  2
  3from .resources import (
  4    AccessDeniedError,
  5    BaseEvent,
  6    BasePrompt,
  7    BaseScore,
  8    BooleanScore,
  9    CategoricalScore,
 10    ChatMessage,
 11    ChatPrompt,
 12    Comment,
 13    CommentObjectType,
 14    ConfigCategory,
 15    CreateChatPromptRequest,
 16    CreateCommentRequest,
 17    CreateCommentResponse,
 18    CreateDatasetItemRequest,
 19    CreateDatasetRequest,
 20    CreateDatasetRunItemRequest,
 21    CreateEventBody,
 22    CreateEventEvent,
 23    CreateGenerationBody,
 24    CreateGenerationEvent,
 25    CreateModelRequest,
 26    CreateObservationEvent,
 27    CreatePromptRequest,
 28    CreatePromptRequest_Chat,
 29    CreatePromptRequest_Text,
 30    CreateScoreConfigRequest,
 31    CreateScoreRequest,
 32    CreateScoreResponse,
 33    CreateScoreValue,
 34    CreateSpanBody,
 35    CreateSpanEvent,
 36    CreateTextPromptRequest,
 37    DailyMetrics,
 38    DailyMetricsDetails,
 39    Dataset,
 40    DatasetItem,
 41    DatasetRun,
 42    DatasetRunItem,
 43    DatasetRunWithItems,
 44    DatasetStatus,
 45    Error,
 46    GetCommentsResponse,
 47    GetMediaResponse,
 48    GetMediaUploadUrlRequest,
 49    GetMediaUploadUrlResponse,
 50    GetScoresResponse,
 51    GetScoresResponseData,
 52    GetScoresResponseDataBoolean,
 53    GetScoresResponseDataCategorical,
 54    GetScoresResponseDataNumeric,
 55    GetScoresResponseData_Boolean,
 56    GetScoresResponseData_Categorical,
 57    GetScoresResponseData_Numeric,
 58    GetScoresResponseTraceData,
 59    HealthResponse,
 60    IngestionError,
 61    IngestionEvent,
 62    IngestionEvent_EventCreate,
 63    IngestionEvent_GenerationCreate,
 64    IngestionEvent_GenerationUpdate,
 65    IngestionEvent_ObservationCreate,
 66    IngestionEvent_ObservationUpdate,
 67    IngestionEvent_ScoreCreate,
 68    IngestionEvent_SdkLog,
 69    IngestionEvent_SpanCreate,
 70    IngestionEvent_SpanUpdate,
 71    IngestionEvent_TraceCreate,
 72    IngestionResponse,
 73    IngestionSuccess,
 74    IngestionUsage,
 75    MapValue,
 76    MediaContentType,
 77    MethodNotAllowedError,
 78    Model,
 79    ModelUsageUnit,
 80    NotFoundError,
 81    NumericScore,
 82    Observation,
 83    ObservationBody,
 84    ObservationLevel,
 85    ObservationType,
 86    Observations,
 87    ObservationsView,
 88    ObservationsViews,
 89    OpenAiUsage,
 90    OptionalObservationBody,
 91    PaginatedDatasetItems,
 92    PaginatedDatasetRuns,
 93    PaginatedDatasets,
 94    PaginatedModels,
 95    PaginatedSessions,
 96    PatchMediaBody,
 97    Project,
 98    Projects,
 99    Prompt,
100    PromptMeta,
101    PromptMetaListResponse,
102    Prompt_Chat,
103    Prompt_Text,
104    Score,
105    ScoreBody,
106    ScoreConfig,
107    ScoreConfigs,
108    ScoreDataType,
109    ScoreEvent,
110    ScoreSource,
111    Score_Boolean,
112    Score_Categorical,
113    Score_Numeric,
114    SdkLogBody,
115    SdkLogEvent,
116    ServiceUnavailableError,
117    Session,
118    SessionWithTraces,
119    Sort,
120    TextPrompt,
121    Trace,
122    TraceBody,
123    TraceEvent,
124    TraceWithDetails,
125    TraceWithFullDetails,
126    Traces,
127    UnauthorizedError,
128    UpdateEventBody,
129    UpdateGenerationBody,
130    UpdateGenerationEvent,
131    UpdateObservationEvent,
132    UpdateSpanBody,
133    UpdateSpanEvent,
134    Usage,
135    UsageByModel,
136    comments,
137    commons,
138    dataset_items,
139    dataset_run_items,
140    datasets,
141    health,
142    ingestion,
143    media,
144    metrics,
145    models,
146    observations,
147    projects,
148    prompts,
149    score,
150    score_configs,
151    sessions,
152    trace,
153    utils,
154)
155
156__all__ = [
157    "AccessDeniedError",
158    "BaseEvent",
159    "BasePrompt",
160    "BaseScore",
161    "BooleanScore",
162    "CategoricalScore",
163    "ChatMessage",
164    "ChatPrompt",
165    "Comment",
166    "CommentObjectType",
167    "ConfigCategory",
168    "CreateChatPromptRequest",
169    "CreateCommentRequest",
170    "CreateCommentResponse",
171    "CreateDatasetItemRequest",
172    "CreateDatasetRequest",
173    "CreateDatasetRunItemRequest",
174    "CreateEventBody",
175    "CreateEventEvent",
176    "CreateGenerationBody",
177    "CreateGenerationEvent",
178    "CreateModelRequest",
179    "CreateObservationEvent",
180    "CreatePromptRequest",
181    "CreatePromptRequest_Chat",
182    "CreatePromptRequest_Text",
183    "CreateScoreConfigRequest",
184    "CreateScoreRequest",
185    "CreateScoreResponse",
186    "CreateScoreValue",
187    "CreateSpanBody",
188    "CreateSpanEvent",
189    "CreateTextPromptRequest",
190    "DailyMetrics",
191    "DailyMetricsDetails",
192    "Dataset",
193    "DatasetItem",
194    "DatasetRun",
195    "DatasetRunItem",
196    "DatasetRunWithItems",
197    "DatasetStatus",
198    "Error",
199    "GetCommentsResponse",
200    "GetMediaResponse",
201    "GetMediaUploadUrlRequest",
202    "GetMediaUploadUrlResponse",
203    "GetScoresResponse",
204    "GetScoresResponseData",
205    "GetScoresResponseDataBoolean",
206    "GetScoresResponseDataCategorical",
207    "GetScoresResponseDataNumeric",
208    "GetScoresResponseData_Boolean",
209    "GetScoresResponseData_Categorical",
210    "GetScoresResponseData_Numeric",
211    "GetScoresResponseTraceData",
212    "HealthResponse",
213    "IngestionError",
214    "IngestionEvent",
215    "IngestionEvent_EventCreate",
216    "IngestionEvent_GenerationCreate",
217    "IngestionEvent_GenerationUpdate",
218    "IngestionEvent_ObservationCreate",
219    "IngestionEvent_ObservationUpdate",
220    "IngestionEvent_ScoreCreate",
221    "IngestionEvent_SdkLog",
222    "IngestionEvent_SpanCreate",
223    "IngestionEvent_SpanUpdate",
224    "IngestionEvent_TraceCreate",
225    "IngestionResponse",
226    "IngestionSuccess",
227    "IngestionUsage",
228    "MapValue",
229    "MediaContentType",
230    "MethodNotAllowedError",
231    "Model",
232    "ModelUsageUnit",
233    "NotFoundError",
234    "NumericScore",
235    "Observation",
236    "ObservationBody",
237    "ObservationLevel",
238    "ObservationType",
239    "Observations",
240    "ObservationsView",
241    "ObservationsViews",
242    "OpenAiUsage",
243    "OptionalObservationBody",
244    "PaginatedDatasetItems",
245    "PaginatedDatasetRuns",
246    "PaginatedDatasets",
247    "PaginatedModels",
248    "PaginatedSessions",
249    "PatchMediaBody",
250    "Project",
251    "Projects",
252    "Prompt",
253    "PromptMeta",
254    "PromptMetaListResponse",
255    "Prompt_Chat",
256    "Prompt_Text",
257    "Score",
258    "ScoreBody",
259    "ScoreConfig",
260    "ScoreConfigs",
261    "ScoreDataType",
262    "ScoreEvent",
263    "ScoreSource",
264    "Score_Boolean",
265    "Score_Categorical",
266    "Score_Numeric",
267    "SdkLogBody",
268    "SdkLogEvent",
269    "ServiceUnavailableError",
270    "Session",
271    "SessionWithTraces",
272    "Sort",
273    "TextPrompt",
274    "Trace",
275    "TraceBody",
276    "TraceEvent",
277    "TraceWithDetails",
278    "TraceWithFullDetails",
279    "Traces",
280    "UnauthorizedError",
281    "UpdateEventBody",
282    "UpdateGenerationBody",
283    "UpdateGenerationEvent",
284    "UpdateObservationEvent",
285    "UpdateSpanBody",
286    "UpdateSpanEvent",
287    "Usage",
288    "UsageByModel",
289    "comments",
290    "commons",
291    "dataset_items",
292    "dataset_run_items",
293    "datasets",
294    "health",
295    "ingestion",
296    "media",
297    "metrics",
298    "models",
299    "observations",
300    "projects",
301    "prompts",
302    "score",
303    "score_configs",
304    "sessions",
305    "trace",
306    "utils",
307]
class AccessDeniedError(langfuse.api.core.api_error.ApiError):
 9class AccessDeniedError(ApiError):
10    def __init__(self, body: typing.Any):
11        super().__init__(status_code=403, body=body)

Common base class for all non-exit exceptions.

AccessDeniedError(body: Any)
10    def __init__(self, body: typing.Any):
11        super().__init__(status_code=403, body=body)
Inherited Members
langfuse.api.core.api_error.ApiError
status_code
body
builtins.BaseException
with_traceback
add_note
args
class BaseEvent(pydantic.v1.main.BaseModel):
11class BaseEvent(pydantic_v1.BaseModel):
12    id: str = pydantic_v1.Field()
13    """
14    UUID v4 that identifies the event
15    """
16
17    timestamp: str = pydantic_v1.Field()
18    """
19    Datetime (ISO 8601) of event creation in client. Should be as close to actual event creation in client as possible, this timestamp will be used for ordering of events in future release. Resolution: milliseconds (required), microseconds (optimal).
20    """
21
22    metadata: typing.Optional[typing.Any] = pydantic_v1.Field(default=None)
23    """
24    Optional. Metadata field used by the Langfuse SDKs for debugging.
25    """
26
27    def json(self, **kwargs: typing.Any) -> str:
28        kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
29        return super().json(**kwargs_with_defaults)
30
31    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
32        kwargs_with_defaults_exclude_unset: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
33        kwargs_with_defaults_exclude_none: typing.Any = {"by_alias": True, "exclude_none": True, **kwargs}
34
35        return deep_union_pydantic_dicts(
36            super().dict(**kwargs_with_defaults_exclude_unset), super().dict(**kwargs_with_defaults_exclude_none)
37        )
38
39    class Config:
40        frozen = True
41        smart_union = True
42        extra = pydantic_v1.Extra.allow
43        json_encoders = {dt.datetime: serialize_datetime}
id: str

UUID v4 that identifies the event

timestamp: str

Datetime (ISO 8601) of event creation in client. Should be as close to actual event creation in client as possible, this timestamp will be used for ordering of events in future release. Resolution: milliseconds (required), microseconds (optimal).

metadata: Optional[Any]

Optional. Metadata field used by the Langfuse SDKs for debugging.

def json(self, **kwargs: Any) -> str:
27    def json(self, **kwargs: typing.Any) -> str:
28        kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
29        return super().json(**kwargs_with_defaults)

Generate a JSON representation of the model, include and exclude arguments as per dict().

encoder is an optional function to supply as default to json.dumps(), other arguments as per json.dumps().

def dict(self, **kwargs: Any) -> Dict[str, Any]:
31    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
32        kwargs_with_defaults_exclude_unset: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
33        kwargs_with_defaults_exclude_none: typing.Any = {"by_alias": True, "exclude_none": True, **kwargs}
34
35        return deep_union_pydantic_dicts(
36            super().dict(**kwargs_with_defaults_exclude_unset), super().dict(**kwargs_with_defaults_exclude_none)
37        )

Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.

Inherited Members
pydantic.v1.main.BaseModel
BaseModel
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
class BaseEvent.Config:
39    class Config:
40        frozen = True
41        smart_union = True
42        extra = pydantic_v1.Extra.allow
43        json_encoders = {dt.datetime: serialize_datetime}
frozen = True
smart_union = True
extra = <Extra.allow: 'allow'>
json_encoders = {<class 'datetime.datetime'>: <function serialize_datetime>}
class BasePrompt(pydantic.v1.main.BaseModel):
11class BasePrompt(pydantic_v1.BaseModel):
12    name: str
13    version: int
14    config: typing.Any
15    labels: typing.List[str] = pydantic_v1.Field()
16    """
17    List of deployment labels of this prompt version.
18    """
19
20    tags: typing.List[str] = pydantic_v1.Field()
21    """
22    List of tags. Used to filter via UI and API. The same across versions of a prompt.
23    """
24
25    def json(self, **kwargs: typing.Any) -> str:
26        kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
27        return super().json(**kwargs_with_defaults)
28
29    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
30        kwargs_with_defaults_exclude_unset: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
31        kwargs_with_defaults_exclude_none: typing.Any = {"by_alias": True, "exclude_none": True, **kwargs}
32
33        return deep_union_pydantic_dicts(
34            super().dict(**kwargs_with_defaults_exclude_unset), super().dict(**kwargs_with_defaults_exclude_none)
35        )
36
37    class Config:
38        frozen = True
39        smart_union = True
40        extra = pydantic_v1.Extra.allow
41        json_encoders = {dt.datetime: serialize_datetime}
name: str
version: int
config: Any
labels: List[str]

List of deployment labels of this prompt version.

tags: List[str]

List of tags. Used to filter via UI and API. The same across versions of a prompt.

def json(self, **kwargs: Any) -> str:
25    def json(self, **kwargs: typing.Any) -> str:
26        kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
27        return super().json(**kwargs_with_defaults)

Generate a JSON representation of the model, include and exclude arguments as per dict().

encoder is an optional function to supply as default to json.dumps(), other arguments as per json.dumps().

def dict(self, **kwargs: Any) -> Dict[str, Any]:
29    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
30        kwargs_with_defaults_exclude_unset: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
31        kwargs_with_defaults_exclude_none: typing.Any = {"by_alias": True, "exclude_none": True, **kwargs}
32
33        return deep_union_pydantic_dicts(
34            super().dict(**kwargs_with_defaults_exclude_unset), super().dict(**kwargs_with_defaults_exclude_none)
35        )

Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.

Inherited Members
pydantic.v1.main.BaseModel
BaseModel
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
class BasePrompt.Config:
37    class Config:
38        frozen = True
39        smart_union = True
40        extra = pydantic_v1.Extra.allow
41        json_encoders = {dt.datetime: serialize_datetime}
frozen = True
smart_union = True
extra = <Extra.allow: 'allow'>
json_encoders = {<class 'datetime.datetime'>: <function serialize_datetime>}
class BaseScore(pydantic.v1.main.BaseModel):
12class BaseScore(pydantic_v1.BaseModel):
13    id: str
14    trace_id: str = pydantic_v1.Field(alias="traceId")
15    name: str
16    source: ScoreSource
17    observation_id: typing.Optional[str] = pydantic_v1.Field(
18        alias="observationId", default=None
19    )
20    timestamp: dt.datetime
21    created_at: dt.datetime = pydantic_v1.Field(alias="createdAt")
22    updated_at: dt.datetime = pydantic_v1.Field(alias="updatedAt")
23    author_user_id: typing.Optional[str] = pydantic_v1.Field(
24        alias="authorUserId", default=None
25    )
26    comment: typing.Optional[str] = None
27    config_id: typing.Optional[str] = pydantic_v1.Field(alias="configId", default=None)
28    """
29    Reference a score config on a score. When set, config and score name must be equal and value must comply to optionally defined numerical range
30    """
31
32    queue_id: typing.Optional[str] = pydantic_v1.Field(alias="queueId", default=None)
33    """
34    Reference an annotation queue on a score. Populated if the score was initially created in an annotation queue.
35    """
36
37    def json(self, **kwargs: typing.Any) -> str:
38        kwargs_with_defaults: typing.Any = {
39            "by_alias": True,
40            "exclude_unset": True,
41            **kwargs,
42        }
43        return super().json(**kwargs_with_defaults)
44
45    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
46        kwargs_with_defaults_exclude_unset: typing.Any = {
47            "by_alias": True,
48            "exclude_unset": True,
49            **kwargs,
50        }
51        kwargs_with_defaults_exclude_none: typing.Any = {
52            "by_alias": True,
53            "exclude_none": True,
54            **kwargs,
55        }
56
57        return deep_union_pydantic_dicts(
58            super().dict(**kwargs_with_defaults_exclude_unset),
59            super().dict(**kwargs_with_defaults_exclude_none),
60        )
61
62    class Config:
63        frozen = True
64        smart_union = True
65        allow_population_by_field_name = True
66        populate_by_name = True
67        extra = pydantic_v1.Extra.allow
68        json_encoders = {dt.datetime: serialize_datetime}
id: str
trace_id: str
name: str
source: ScoreSource
observation_id: Optional[str]
timestamp: datetime.datetime
created_at: datetime.datetime
updated_at: datetime.datetime
author_user_id: Optional[str]
comment: Optional[str]
config_id: Optional[str]

Reference a score config on a score. When set, config and score name must be equal and value must comply to optionally defined numerical range

queue_id: Optional[str]

Reference an annotation queue on a score. Populated if the score was initially created in an annotation queue.

def json(self, **kwargs: Any) -> str:
37    def json(self, **kwargs: typing.Any) -> str:
38        kwargs_with_defaults: typing.Any = {
39            "by_alias": True,
40            "exclude_unset": True,
41            **kwargs,
42        }
43        return super().json(**kwargs_with_defaults)

Generate a JSON representation of the model, include and exclude arguments as per dict().

encoder is an optional function to supply as default to json.dumps(), other arguments as per json.dumps().

def dict(self, **kwargs: Any) -> Dict[str, Any]:
45    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
46        kwargs_with_defaults_exclude_unset: typing.Any = {
47            "by_alias": True,
48            "exclude_unset": True,
49            **kwargs,
50        }
51        kwargs_with_defaults_exclude_none: typing.Any = {
52            "by_alias": True,
53            "exclude_none": True,
54            **kwargs,
55        }
56
57        return deep_union_pydantic_dicts(
58            super().dict(**kwargs_with_defaults_exclude_unset),
59            super().dict(**kwargs_with_defaults_exclude_none),
60        )

Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.

Inherited Members
pydantic.v1.main.BaseModel
BaseModel
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
class BaseScore.Config:
62    class Config:
63        frozen = True
64        smart_union = True
65        allow_population_by_field_name = True
66        populate_by_name = True
67        extra = pydantic_v1.Extra.allow
68        json_encoders = {dt.datetime: serialize_datetime}
frozen = True
smart_union = True
allow_population_by_field_name = True
populate_by_name = True
extra = <Extra.allow: 'allow'>
json_encoders = {<class 'datetime.datetime'>: <function serialize_datetime>}
class BooleanScore(langfuse.api.BaseScore):
12class BooleanScore(BaseScore):
13    value: float = pydantic_v1.Field()
14    """
15    The numeric value of the score. Equals 1 for "True" and 0 for "False"
16    """
17
18    string_value: str = pydantic_v1.Field(alias="stringValue")
19    """
20    The string representation of the score value. Is inferred from the numeric value and equals "True" or "False"
21    """
22
23    def json(self, **kwargs: typing.Any) -> str:
24        kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
25        return super().json(**kwargs_with_defaults)
26
27    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
28        kwargs_with_defaults_exclude_unset: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
29        kwargs_with_defaults_exclude_none: typing.Any = {"by_alias": True, "exclude_none": True, **kwargs}
30
31        return deep_union_pydantic_dicts(
32            super().dict(**kwargs_with_defaults_exclude_unset), super().dict(**kwargs_with_defaults_exclude_none)
33        )
34
35    class Config:
36        frozen = True
37        smart_union = True
38        allow_population_by_field_name = True
39        populate_by_name = True
40        extra = pydantic_v1.Extra.allow
41        json_encoders = {dt.datetime: serialize_datetime}
value: float

The numeric value of the score. Equals 1 for "True" and 0 for "False"

string_value: str

The string representation of the score value. Is inferred from the numeric value and equals "True" or "False"

def json(self, **kwargs: Any) -> str:
23    def json(self, **kwargs: typing.Any) -> str:
24        kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
25        return super().json(**kwargs_with_defaults)

Generate a JSON representation of the model, include and exclude arguments as per dict().

encoder is an optional function to supply as default to json.dumps(), other arguments as per json.dumps().

def dict(self, **kwargs: Any) -> Dict[str, Any]:
27    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
28        kwargs_with_defaults_exclude_unset: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
29        kwargs_with_defaults_exclude_none: typing.Any = {"by_alias": True, "exclude_none": True, **kwargs}
30
31        return deep_union_pydantic_dicts(
32            super().dict(**kwargs_with_defaults_exclude_unset), super().dict(**kwargs_with_defaults_exclude_none)
33        )

Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.

Inherited Members
pydantic.v1.main.BaseModel
BaseModel
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
BaseScore
id
trace_id
name
source
observation_id
timestamp
created_at
updated_at
author_user_id
comment
config_id
queue_id
class BooleanScore.Config:
35    class Config:
36        frozen = True
37        smart_union = True
38        allow_population_by_field_name = True
39        populate_by_name = True
40        extra = pydantic_v1.Extra.allow
41        json_encoders = {dt.datetime: serialize_datetime}
frozen = True
smart_union = True
allow_population_by_field_name = True
populate_by_name = True
extra = <Extra.allow: 'allow'>
json_encoders = {<class 'datetime.datetime'>: <function serialize_datetime>}
class CategoricalScore(langfuse.api.BaseScore):
12class CategoricalScore(BaseScore):
13    value: typing.Optional[float] = pydantic_v1.Field(default=None)
14    """
15    Only defined if a config is linked. Represents the numeric category mapping of the stringValue
16    """
17
18    string_value: str = pydantic_v1.Field(alias="stringValue")
19    """
20    The string representation of the score value. If no config is linked, can be any string. Otherwise, must map to a config category
21    """
22
23    def json(self, **kwargs: typing.Any) -> str:
24        kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
25        return super().json(**kwargs_with_defaults)
26
27    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
28        kwargs_with_defaults_exclude_unset: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
29        kwargs_with_defaults_exclude_none: typing.Any = {"by_alias": True, "exclude_none": True, **kwargs}
30
31        return deep_union_pydantic_dicts(
32            super().dict(**kwargs_with_defaults_exclude_unset), super().dict(**kwargs_with_defaults_exclude_none)
33        )
34
35    class Config:
36        frozen = True
37        smart_union = True
38        allow_population_by_field_name = True
39        populate_by_name = True
40        extra = pydantic_v1.Extra.allow
41        json_encoders = {dt.datetime: serialize_datetime}
value: Optional[float]

Only defined if a config is linked. Represents the numeric category mapping of the stringValue

string_value: str

The string representation of the score value. If no config is linked, can be any string. Otherwise, must map to a config category

def json(self, **kwargs: Any) -> str:
23    def json(self, **kwargs: typing.Any) -> str:
24        kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
25        return super().json(**kwargs_with_defaults)

Generate a JSON representation of the model, include and exclude arguments as per dict().

encoder is an optional function to supply as default to json.dumps(), other arguments as per json.dumps().

def dict(self, **kwargs: Any) -> Dict[str, Any]:
27    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
28        kwargs_with_defaults_exclude_unset: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
29        kwargs_with_defaults_exclude_none: typing.Any = {"by_alias": True, "exclude_none": True, **kwargs}
30
31        return deep_union_pydantic_dicts(
32            super().dict(**kwargs_with_defaults_exclude_unset), super().dict(**kwargs_with_defaults_exclude_none)
33        )

Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.

Inherited Members
pydantic.v1.main.BaseModel
BaseModel
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
BaseScore
id
trace_id
name
source
observation_id
timestamp
created_at
updated_at
author_user_id
comment
config_id
queue_id
class CategoricalScore.Config:
35    class Config:
36        frozen = True
37        smart_union = True
38        allow_population_by_field_name = True
39        populate_by_name = True
40        extra = pydantic_v1.Extra.allow
41        json_encoders = {dt.datetime: serialize_datetime}
frozen = True
smart_union = True
allow_population_by_field_name = True
populate_by_name = True
extra = <Extra.allow: 'allow'>
json_encoders = {<class 'datetime.datetime'>: <function serialize_datetime>}
class ChatMessage(pydantic.v1.main.BaseModel):
11class ChatMessage(pydantic_v1.BaseModel):
12    role: str
13    content: str
14
15    def json(self, **kwargs: typing.Any) -> str:
16        kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
17        return super().json(**kwargs_with_defaults)
18
19    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
20        kwargs_with_defaults_exclude_unset: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
21        kwargs_with_defaults_exclude_none: typing.Any = {"by_alias": True, "exclude_none": True, **kwargs}
22
23        return deep_union_pydantic_dicts(
24            super().dict(**kwargs_with_defaults_exclude_unset), super().dict(**kwargs_with_defaults_exclude_none)
25        )
26
27    class Config:
28        frozen = True
29        smart_union = True
30        extra = pydantic_v1.Extra.allow
31        json_encoders = {dt.datetime: serialize_datetime}
role: str
content: str
def json(self, **kwargs: Any) -> str:
15    def json(self, **kwargs: typing.Any) -> str:
16        kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
17        return super().json(**kwargs_with_defaults)

Generate a JSON representation of the model, include and exclude arguments as per dict().

encoder is an optional function to supply as default to json.dumps(), other arguments as per json.dumps().

def dict(self, **kwargs: Any) -> Dict[str, Any]:
19    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
20        kwargs_with_defaults_exclude_unset: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
21        kwargs_with_defaults_exclude_none: typing.Any = {"by_alias": True, "exclude_none": True, **kwargs}
22
23        return deep_union_pydantic_dicts(
24            super().dict(**kwargs_with_defaults_exclude_unset), super().dict(**kwargs_with_defaults_exclude_none)
25        )

Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.

Inherited Members
pydantic.v1.main.BaseModel
BaseModel
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
class ChatMessage.Config:
27    class Config:
28        frozen = True
29        smart_union = True
30        extra = pydantic_v1.Extra.allow
31        json_encoders = {dt.datetime: serialize_datetime}
frozen = True
smart_union = True
extra = <Extra.allow: 'allow'>
json_encoders = {<class 'datetime.datetime'>: <function serialize_datetime>}
class ChatPrompt(langfuse.api.BasePrompt):
13class ChatPrompt(BasePrompt):
14    prompt: typing.List[ChatMessage]
15
16    def json(self, **kwargs: typing.Any) -> str:
17        kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
18        return super().json(**kwargs_with_defaults)
19
20    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
21        kwargs_with_defaults_exclude_unset: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
22        kwargs_with_defaults_exclude_none: typing.Any = {"by_alias": True, "exclude_none": True, **kwargs}
23
24        return deep_union_pydantic_dicts(
25            super().dict(**kwargs_with_defaults_exclude_unset), super().dict(**kwargs_with_defaults_exclude_none)
26        )
27
28    class Config:
29        frozen = True
30        smart_union = True
31        allow_population_by_field_name = True
32        populate_by_name = True
33        extra = pydantic_v1.Extra.allow
34        json_encoders = {dt.datetime: serialize_datetime}
prompt: List[ChatMessage]
def json(self, **kwargs: Any) -> str:
16    def json(self, **kwargs: typing.Any) -> str:
17        kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
18        return super().json(**kwargs_with_defaults)

Generate a JSON representation of the model, include and exclude arguments as per dict().

encoder is an optional function to supply as default to json.dumps(), other arguments as per json.dumps().

def dict(self, **kwargs: Any) -> Dict[str, Any]:
20    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
21        kwargs_with_defaults_exclude_unset: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
22        kwargs_with_defaults_exclude_none: typing.Any = {"by_alias": True, "exclude_none": True, **kwargs}
23
24        return deep_union_pydantic_dicts(
25            super().dict(**kwargs_with_defaults_exclude_unset), super().dict(**kwargs_with_defaults_exclude_none)
26        )

Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.

Inherited Members
pydantic.v1.main.BaseModel
BaseModel
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
BasePrompt
name
version
config
labels
tags
class ChatPrompt.Config:
28    class Config:
29        frozen = True
30        smart_union = True
31        allow_population_by_field_name = True
32        populate_by_name = True
33        extra = pydantic_v1.Extra.allow
34        json_encoders = {dt.datetime: serialize_datetime}
frozen = True
smart_union = True
allow_population_by_field_name = True
populate_by_name = True
extra = <Extra.allow: 'allow'>
json_encoders = {<class 'datetime.datetime'>: <function serialize_datetime>}
class Comment(pydantic.v1.main.BaseModel):
12class Comment(pydantic_v1.BaseModel):
13    id: str
14    project_id: str = pydantic_v1.Field(alias="projectId")
15    created_at: dt.datetime = pydantic_v1.Field(alias="createdAt")
16    updated_at: dt.datetime = pydantic_v1.Field(alias="updatedAt")
17    object_type: CommentObjectType = pydantic_v1.Field(alias="objectType")
18    object_id: str = pydantic_v1.Field(alias="objectId")
19    content: str
20    author_user_id: typing.Optional[str] = pydantic_v1.Field(
21        alias="authorUserId", default=None
22    )
23
24    def json(self, **kwargs: typing.Any) -> str:
25        kwargs_with_defaults: typing.Any = {
26            "by_alias": True,
27            "exclude_unset": True,
28            **kwargs,
29        }
30        return super().json(**kwargs_with_defaults)
31
32    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
33        kwargs_with_defaults_exclude_unset: typing.Any = {
34            "by_alias": True,
35            "exclude_unset": True,
36            **kwargs,
37        }
38        kwargs_with_defaults_exclude_none: typing.Any = {
39            "by_alias": True,
40            "exclude_none": True,
41            **kwargs,
42        }
43
44        return deep_union_pydantic_dicts(
45            super().dict(**kwargs_with_defaults_exclude_unset),
46            super().dict(**kwargs_with_defaults_exclude_none),
47        )
48
49    class Config:
50        frozen = True
51        smart_union = True
52        allow_population_by_field_name = True
53        populate_by_name = True
54        extra = pydantic_v1.Extra.allow
55        json_encoders = {dt.datetime: serialize_datetime}
id: str
project_id: str
created_at: datetime.datetime
updated_at: datetime.datetime
object_type: CommentObjectType
object_id: str
content: str
author_user_id: Optional[str]
def json(self, **kwargs: Any) -> str:
24    def json(self, **kwargs: typing.Any) -> str:
25        kwargs_with_defaults: typing.Any = {
26            "by_alias": True,
27            "exclude_unset": True,
28            **kwargs,
29        }
30        return super().json(**kwargs_with_defaults)

Generate a JSON representation of the model, include and exclude arguments as per dict().

encoder is an optional function to supply as default to json.dumps(), other arguments as per json.dumps().

def dict(self, **kwargs: Any) -> Dict[str, Any]:
32    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
33        kwargs_with_defaults_exclude_unset: typing.Any = {
34            "by_alias": True,
35            "exclude_unset": True,
36            **kwargs,
37        }
38        kwargs_with_defaults_exclude_none: typing.Any = {
39            "by_alias": True,
40            "exclude_none": True,
41            **kwargs,
42        }
43
44        return deep_union_pydantic_dicts(
45            super().dict(**kwargs_with_defaults_exclude_unset),
46            super().dict(**kwargs_with_defaults_exclude_none),
47        )

Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.

Inherited Members
pydantic.v1.main.BaseModel
BaseModel
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
class Comment.Config:
49    class Config:
50        frozen = True
51        smart_union = True
52        allow_population_by_field_name = True
53        populate_by_name = True
54        extra = pydantic_v1.Extra.allow
55        json_encoders = {dt.datetime: serialize_datetime}
frozen = True
smart_union = True
allow_population_by_field_name = True
populate_by_name = True
extra = <Extra.allow: 'allow'>
json_encoders = {<class 'datetime.datetime'>: <function serialize_datetime>}
class CommentObjectType(builtins.str, enum.Enum):
10class CommentObjectType(str, enum.Enum):
11    TRACE = "TRACE"
12    OBSERVATION = "OBSERVATION"
13    SESSION = "SESSION"
14    PROMPT = "PROMPT"
15
16    def visit(
17        self,
18        trace: typing.Callable[[], T_Result],
19        observation: typing.Callable[[], T_Result],
20        session: typing.Callable[[], T_Result],
21        prompt: typing.Callable[[], T_Result],
22    ) -> T_Result:
23        if self is CommentObjectType.TRACE:
24            return trace()
25        if self is CommentObjectType.OBSERVATION:
26            return observation()
27        if self is CommentObjectType.SESSION:
28            return session()
29        if self is CommentObjectType.PROMPT:
30            return prompt()

str(object='') -> str str(bytes_or_buffer[, encoding[, errors]]) -> str

Create a new string object from the given object. If encoding or errors is specified, then the object must expose a data buffer that will be decoded using the given encoding and error handler. Otherwise, returns the result of object.__str__() (if defined) or repr(object). encoding defaults to sys.getdefaultencoding(). errors defaults to 'strict'.

TRACE = <CommentObjectType.TRACE: 'TRACE'>
OBSERVATION = <CommentObjectType.OBSERVATION: 'OBSERVATION'>
SESSION = <CommentObjectType.SESSION: 'SESSION'>
PROMPT = <CommentObjectType.PROMPT: 'PROMPT'>
def visit( self, trace: Callable[[], ~T_Result], observation: Callable[[], ~T_Result], session: Callable[[], ~T_Result], prompt: Callable[[], ~T_Result]) -> ~T_Result:
16    def visit(
17        self,
18        trace: typing.Callable[[], T_Result],
19        observation: typing.Callable[[], T_Result],
20        session: typing.Callable[[], T_Result],
21        prompt: typing.Callable[[], T_Result],
22    ) -> T_Result:
23        if self is CommentObjectType.TRACE:
24            return trace()
25        if self is CommentObjectType.OBSERVATION:
26            return observation()
27        if self is CommentObjectType.SESSION:
28            return session()
29        if self is CommentObjectType.PROMPT:
30            return prompt()
Inherited Members
enum.Enum
name
value
builtins.str
encode
replace
split
rsplit
join
capitalize
casefold
title
center
count
expandtabs
find
partition
index
ljust
lower
lstrip
rfind
rindex
rjust
rstrip
rpartition
splitlines
strip
swapcase
translate
upper
startswith
endswith
removeprefix
removesuffix
isascii
islower
isupper
istitle
isspace
isdecimal
isdigit
isnumeric
isalpha
isalnum
isidentifier
isprintable
zfill
format
format_map
maketrans
class ConfigCategory(pydantic.v1.main.BaseModel):
11class ConfigCategory(pydantic_v1.BaseModel):
12    value: float
13    label: str
14
15    def json(self, **kwargs: typing.Any) -> str:
16        kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
17        return super().json(**kwargs_with_defaults)
18
19    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
20        kwargs_with_defaults_exclude_unset: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
21        kwargs_with_defaults_exclude_none: typing.Any = {"by_alias": True, "exclude_none": True, **kwargs}
22
23        return deep_union_pydantic_dicts(
24            super().dict(**kwargs_with_defaults_exclude_unset), super().dict(**kwargs_with_defaults_exclude_none)
25        )
26
27    class Config:
28        frozen = True
29        smart_union = True
30        extra = pydantic_v1.Extra.allow
31        json_encoders = {dt.datetime: serialize_datetime}
value: float
label: str
def json(self, **kwargs: Any) -> str:
15    def json(self, **kwargs: typing.Any) -> str:
16        kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
17        return super().json(**kwargs_with_defaults)

Generate a JSON representation of the model, include and exclude arguments as per dict().

encoder is an optional function to supply as default to json.dumps(), other arguments as per json.dumps().

def dict(self, **kwargs: Any) -> Dict[str, Any]:
19    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
20        kwargs_with_defaults_exclude_unset: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
21        kwargs_with_defaults_exclude_none: typing.Any = {"by_alias": True, "exclude_none": True, **kwargs}
22
23        return deep_union_pydantic_dicts(
24            super().dict(**kwargs_with_defaults_exclude_unset), super().dict(**kwargs_with_defaults_exclude_none)
25        )

Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.

Inherited Members
pydantic.v1.main.BaseModel
BaseModel
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
class ConfigCategory.Config:
27    class Config:
28        frozen = True
29        smart_union = True
30        extra = pydantic_v1.Extra.allow
31        json_encoders = {dt.datetime: serialize_datetime}
frozen = True
smart_union = True
extra = <Extra.allow: 'allow'>
json_encoders = {<class 'datetime.datetime'>: <function serialize_datetime>}
class CreateChatPromptRequest(pydantic.v1.main.BaseModel):
12class CreateChatPromptRequest(pydantic_v1.BaseModel):
13    name: str
14    prompt: typing.List[ChatMessage]
15    config: typing.Optional[typing.Any] = None
16    labels: typing.Optional[typing.List[str]] = pydantic_v1.Field(default=None)
17    """
18    List of deployment labels of this prompt version.
19    """
20
21    tags: typing.Optional[typing.List[str]] = pydantic_v1.Field(default=None)
22    """
23    List of tags to apply to all versions of this prompt.
24    """
25
26    def json(self, **kwargs: typing.Any) -> str:
27        kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
28        return super().json(**kwargs_with_defaults)
29
30    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
31        kwargs_with_defaults_exclude_unset: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
32        kwargs_with_defaults_exclude_none: typing.Any = {"by_alias": True, "exclude_none": True, **kwargs}
33
34        return deep_union_pydantic_dicts(
35            super().dict(**kwargs_with_defaults_exclude_unset), super().dict(**kwargs_with_defaults_exclude_none)
36        )
37
38    class Config:
39        frozen = True
40        smart_union = True
41        extra = pydantic_v1.Extra.allow
42        json_encoders = {dt.datetime: serialize_datetime}
name: str
prompt: List[ChatMessage]
config: Optional[Any]
labels: Optional[List[str]]

List of deployment labels of this prompt version.

tags: Optional[List[str]]

List of tags to apply to all versions of this prompt.

def json(self, **kwargs: Any) -> str:
26    def json(self, **kwargs: typing.Any) -> str:
27        kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
28        return super().json(**kwargs_with_defaults)

Generate a JSON representation of the model, include and exclude arguments as per dict().

encoder is an optional function to supply as default to json.dumps(), other arguments as per json.dumps().

def dict(self, **kwargs: Any) -> Dict[str, Any]:
30    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
31        kwargs_with_defaults_exclude_unset: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
32        kwargs_with_defaults_exclude_none: typing.Any = {"by_alias": True, "exclude_none": True, **kwargs}
33
34        return deep_union_pydantic_dicts(
35            super().dict(**kwargs_with_defaults_exclude_unset), super().dict(**kwargs_with_defaults_exclude_none)
36        )

Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.

Inherited Members
pydantic.v1.main.BaseModel
BaseModel
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
class CreateChatPromptRequest.Config:
38    class Config:
39        frozen = True
40        smart_union = True
41        extra = pydantic_v1.Extra.allow
42        json_encoders = {dt.datetime: serialize_datetime}
frozen = True
smart_union = True
extra = <Extra.allow: 'allow'>
json_encoders = {<class 'datetime.datetime'>: <function serialize_datetime>}
class CreateCommentRequest(pydantic.v1.main.BaseModel):
11class CreateCommentRequest(pydantic_v1.BaseModel):
12    project_id: str = pydantic_v1.Field(alias="projectId")
13    """
14    The id of the project to attach the comment to.
15    """
16
17    object_type: str = pydantic_v1.Field(alias="objectType")
18    """
19    The type of the object to attach the comment to (trace, observation, session, prompt).
20    """
21
22    object_id: str = pydantic_v1.Field(alias="objectId")
23    """
24    The id of the object to attach the comment to. If this does not reference a valid existing object, an error will be thrown.
25    """
26
27    content: str = pydantic_v1.Field()
28    """
29    The content of the comment. May include markdown. Currently limited to 500 characters.
30    """
31
32    author_user_id: typing.Optional[str] = pydantic_v1.Field(
33        alias="authorUserId", default=None
34    )
35    """
36    The id of the user who created the comment.
37    """
38
39    def json(self, **kwargs: typing.Any) -> str:
40        kwargs_with_defaults: typing.Any = {
41            "by_alias": True,
42            "exclude_unset": True,
43            **kwargs,
44        }
45        return super().json(**kwargs_with_defaults)
46
47    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
48        kwargs_with_defaults_exclude_unset: typing.Any = {
49            "by_alias": True,
50            "exclude_unset": True,
51            **kwargs,
52        }
53        kwargs_with_defaults_exclude_none: typing.Any = {
54            "by_alias": True,
55            "exclude_none": True,
56            **kwargs,
57        }
58
59        return deep_union_pydantic_dicts(
60            super().dict(**kwargs_with_defaults_exclude_unset),
61            super().dict(**kwargs_with_defaults_exclude_none),
62        )
63
64    class Config:
65        frozen = True
66        smart_union = True
67        allow_population_by_field_name = True
68        populate_by_name = True
69        extra = pydantic_v1.Extra.allow
70        json_encoders = {dt.datetime: serialize_datetime}
project_id: str

The id of the project to attach the comment to.

object_type: str

The type of the object to attach the comment to (trace, observation, session, prompt).

object_id: str

The id of the object to attach the comment to. If this does not reference a valid existing object, an error will be thrown.

content: str

The content of the comment. May include markdown. Currently limited to 500 characters.

author_user_id: Optional[str]

The id of the user who created the comment.

def json(self, **kwargs: Any) -> str:
39    def json(self, **kwargs: typing.Any) -> str:
40        kwargs_with_defaults: typing.Any = {
41            "by_alias": True,
42            "exclude_unset": True,
43            **kwargs,
44        }
45        return super().json(**kwargs_with_defaults)

Generate a JSON representation of the model, include and exclude arguments as per dict().

encoder is an optional function to supply as default to json.dumps(), other arguments as per json.dumps().

def dict(self, **kwargs: Any) -> Dict[str, Any]:
47    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
48        kwargs_with_defaults_exclude_unset: typing.Any = {
49            "by_alias": True,
50            "exclude_unset": True,
51            **kwargs,
52        }
53        kwargs_with_defaults_exclude_none: typing.Any = {
54            "by_alias": True,
55            "exclude_none": True,
56            **kwargs,
57        }
58
59        return deep_union_pydantic_dicts(
60            super().dict(**kwargs_with_defaults_exclude_unset),
61            super().dict(**kwargs_with_defaults_exclude_none),
62        )

Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.

Inherited Members
pydantic.v1.main.BaseModel
BaseModel
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
class CreateCommentRequest.Config:
64    class Config:
65        frozen = True
66        smart_union = True
67        allow_population_by_field_name = True
68        populate_by_name = True
69        extra = pydantic_v1.Extra.allow
70        json_encoders = {dt.datetime: serialize_datetime}
frozen = True
smart_union = True
allow_population_by_field_name = True
populate_by_name = True
extra = <Extra.allow: 'allow'>
json_encoders = {<class 'datetime.datetime'>: <function serialize_datetime>}
class CreateCommentResponse(pydantic.v1.main.BaseModel):
11class CreateCommentResponse(pydantic_v1.BaseModel):
12    id: str = pydantic_v1.Field()
13    """
14    The id of the created object in Langfuse
15    """
16
17    def json(self, **kwargs: typing.Any) -> str:
18        kwargs_with_defaults: typing.Any = {
19            "by_alias": True,
20            "exclude_unset": True,
21            **kwargs,
22        }
23        return super().json(**kwargs_with_defaults)
24
25    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
26        kwargs_with_defaults_exclude_unset: typing.Any = {
27            "by_alias": True,
28            "exclude_unset": True,
29            **kwargs,
30        }
31        kwargs_with_defaults_exclude_none: typing.Any = {
32            "by_alias": True,
33            "exclude_none": True,
34            **kwargs,
35        }
36
37        return deep_union_pydantic_dicts(
38            super().dict(**kwargs_with_defaults_exclude_unset),
39            super().dict(**kwargs_with_defaults_exclude_none),
40        )
41
42    class Config:
43        frozen = True
44        smart_union = True
45        extra = pydantic_v1.Extra.allow
46        json_encoders = {dt.datetime: serialize_datetime}
id: str

The id of the created object in Langfuse

def json(self, **kwargs: Any) -> str:
17    def json(self, **kwargs: typing.Any) -> str:
18        kwargs_with_defaults: typing.Any = {
19            "by_alias": True,
20            "exclude_unset": True,
21            **kwargs,
22        }
23        return super().json(**kwargs_with_defaults)

Generate a JSON representation of the model, include and exclude arguments as per dict().

encoder is an optional function to supply as default to json.dumps(), other arguments as per json.dumps().

def dict(self, **kwargs: Any) -> Dict[str, Any]:
25    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
26        kwargs_with_defaults_exclude_unset: typing.Any = {
27            "by_alias": True,
28            "exclude_unset": True,
29            **kwargs,
30        }
31        kwargs_with_defaults_exclude_none: typing.Any = {
32            "by_alias": True,
33            "exclude_none": True,
34            **kwargs,
35        }
36
37        return deep_union_pydantic_dicts(
38            super().dict(**kwargs_with_defaults_exclude_unset),
39            super().dict(**kwargs_with_defaults_exclude_none),
40        )

Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.

Inherited Members
pydantic.v1.main.BaseModel
BaseModel
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
class CreateCommentResponse.Config:
42    class Config:
43        frozen = True
44        smart_union = True
45        extra = pydantic_v1.Extra.allow
46        json_encoders = {dt.datetime: serialize_datetime}
frozen = True
smart_union = True
extra = <Extra.allow: 'allow'>
json_encoders = {<class 'datetime.datetime'>: <function serialize_datetime>}
class CreateDatasetItemRequest(pydantic.v1.main.BaseModel):
12class CreateDatasetItemRequest(pydantic_v1.BaseModel):
13    dataset_name: str = pydantic_v1.Field(alias="datasetName")
14    input: typing.Optional[typing.Any] = None
15    expected_output: typing.Optional[typing.Any] = pydantic_v1.Field(alias="expectedOutput", default=None)
16    metadata: typing.Optional[typing.Any] = None
17    source_trace_id: typing.Optional[str] = pydantic_v1.Field(alias="sourceTraceId", default=None)
18    source_observation_id: typing.Optional[str] = pydantic_v1.Field(alias="sourceObservationId", default=None)
19    id: typing.Optional[str] = pydantic_v1.Field(default=None)
20    """
21    Dataset items are upserted on their id. Id needs to be unique (project-level) and cannot be reused across datasets.
22    """
23
24    status: typing.Optional[DatasetStatus] = pydantic_v1.Field(default=None)
25    """
26    Defaults to ACTIVE for newly created items
27    """
28
29    def json(self, **kwargs: typing.Any) -> str:
30        kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
31        return super().json(**kwargs_with_defaults)
32
33    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
34        kwargs_with_defaults_exclude_unset: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
35        kwargs_with_defaults_exclude_none: typing.Any = {"by_alias": True, "exclude_none": True, **kwargs}
36
37        return deep_union_pydantic_dicts(
38            super().dict(**kwargs_with_defaults_exclude_unset), super().dict(**kwargs_with_defaults_exclude_none)
39        )
40
41    class Config:
42        frozen = True
43        smart_union = True
44        allow_population_by_field_name = True
45        populate_by_name = True
46        extra = pydantic_v1.Extra.allow
47        json_encoders = {dt.datetime: serialize_datetime}
dataset_name: str
input: Optional[Any]
expected_output: Optional[Any]
metadata: Optional[Any]
source_trace_id: Optional[str]
source_observation_id: Optional[str]
id: Optional[str]

Dataset items are upserted on their id. Id needs to be unique (project-level) and cannot be reused across datasets.

status: Optional[DatasetStatus]

Defaults to ACTIVE for newly created items

def json(self, **kwargs: Any) -> str:
29    def json(self, **kwargs: typing.Any) -> str:
30        kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
31        return super().json(**kwargs_with_defaults)

Generate a JSON representation of the model, include and exclude arguments as per dict().

encoder is an optional function to supply as default to json.dumps(), other arguments as per json.dumps().

def dict(self, **kwargs: Any) -> Dict[str, Any]:
33    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
34        kwargs_with_defaults_exclude_unset: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
35        kwargs_with_defaults_exclude_none: typing.Any = {"by_alias": True, "exclude_none": True, **kwargs}
36
37        return deep_union_pydantic_dicts(
38            super().dict(**kwargs_with_defaults_exclude_unset), super().dict(**kwargs_with_defaults_exclude_none)
39        )

Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.

Inherited Members
pydantic.v1.main.BaseModel
BaseModel
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
class CreateDatasetItemRequest.Config:
41    class Config:
42        frozen = True
43        smart_union = True
44        allow_population_by_field_name = True
45        populate_by_name = True
46        extra = pydantic_v1.Extra.allow
47        json_encoders = {dt.datetime: serialize_datetime}
frozen = True
smart_union = True
allow_population_by_field_name = True
populate_by_name = True
extra = <Extra.allow: 'allow'>
json_encoders = {<class 'datetime.datetime'>: <function serialize_datetime>}
class CreateDatasetRequest(pydantic.v1.main.BaseModel):
11class CreateDatasetRequest(pydantic_v1.BaseModel):
12    name: str
13    description: typing.Optional[str] = None
14    metadata: typing.Optional[typing.Any] = None
15
16    def json(self, **kwargs: typing.Any) -> str:
17        kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
18        return super().json(**kwargs_with_defaults)
19
20    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
21        kwargs_with_defaults_exclude_unset: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
22        kwargs_with_defaults_exclude_none: typing.Any = {"by_alias": True, "exclude_none": True, **kwargs}
23
24        return deep_union_pydantic_dicts(
25            super().dict(**kwargs_with_defaults_exclude_unset), super().dict(**kwargs_with_defaults_exclude_none)
26        )
27
28    class Config:
29        frozen = True
30        smart_union = True
31        extra = pydantic_v1.Extra.allow
32        json_encoders = {dt.datetime: serialize_datetime}
name: str
description: Optional[str]
metadata: Optional[Any]
def json(self, **kwargs: Any) -> str:
16    def json(self, **kwargs: typing.Any) -> str:
17        kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
18        return super().json(**kwargs_with_defaults)

Generate a JSON representation of the model, include and exclude arguments as per dict().

encoder is an optional function to supply as default to json.dumps(), other arguments as per json.dumps().

def dict(self, **kwargs: Any) -> Dict[str, Any]:
20    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
21        kwargs_with_defaults_exclude_unset: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
22        kwargs_with_defaults_exclude_none: typing.Any = {"by_alias": True, "exclude_none": True, **kwargs}
23
24        return deep_union_pydantic_dicts(
25            super().dict(**kwargs_with_defaults_exclude_unset), super().dict(**kwargs_with_defaults_exclude_none)
26        )

Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.

Inherited Members
pydantic.v1.main.BaseModel
BaseModel
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
class CreateDatasetRequest.Config:
28    class Config:
29        frozen = True
30        smart_union = True
31        extra = pydantic_v1.Extra.allow
32        json_encoders = {dt.datetime: serialize_datetime}
frozen = True
smart_union = True
extra = <Extra.allow: 'allow'>
json_encoders = {<class 'datetime.datetime'>: <function serialize_datetime>}
class CreateDatasetRunItemRequest(pydantic.v1.main.BaseModel):
11class CreateDatasetRunItemRequest(pydantic_v1.BaseModel):
12    run_name: str = pydantic_v1.Field(alias="runName")
13    run_description: typing.Optional[str] = pydantic_v1.Field(alias="runDescription", default=None)
14    """
15    Description of the run. If run exists, description will be updated.
16    """
17
18    metadata: typing.Optional[typing.Any] = pydantic_v1.Field(default=None)
19    """
20    Metadata of the dataset run, updates run if run already exists
21    """
22
23    dataset_item_id: str = pydantic_v1.Field(alias="datasetItemId")
24    observation_id: typing.Optional[str] = pydantic_v1.Field(alias="observationId", default=None)
25    trace_id: typing.Optional[str] = pydantic_v1.Field(alias="traceId", default=None)
26    """
27    traceId should always be provided. For compatibility with older SDK versions it can also be inferred from the provided observationId.
28    """
29
30    def json(self, **kwargs: typing.Any) -> str:
31        kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
32        return super().json(**kwargs_with_defaults)
33
34    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
35        kwargs_with_defaults_exclude_unset: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
36        kwargs_with_defaults_exclude_none: typing.Any = {"by_alias": True, "exclude_none": True, **kwargs}
37
38        return deep_union_pydantic_dicts(
39            super().dict(**kwargs_with_defaults_exclude_unset), super().dict(**kwargs_with_defaults_exclude_none)
40        )
41
42    class Config:
43        frozen = True
44        smart_union = True
45        allow_population_by_field_name = True
46        populate_by_name = True
47        extra = pydantic_v1.Extra.allow
48        json_encoders = {dt.datetime: serialize_datetime}
run_name: str
run_description: Optional[str]

Description of the run. If run exists, description will be updated.

metadata: Optional[Any]

Metadata of the dataset run, updates run if run already exists

dataset_item_id: str
observation_id: Optional[str]
trace_id: Optional[str]

traceId should always be provided. For compatibility with older SDK versions it can also be inferred from the provided observationId.

def json(self, **kwargs: Any) -> str:
30    def json(self, **kwargs: typing.Any) -> str:
31        kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
32        return super().json(**kwargs_with_defaults)

Generate a JSON representation of the model, include and exclude arguments as per dict().

encoder is an optional function to supply as default to json.dumps(), other arguments as per json.dumps().

def dict(self, **kwargs: Any) -> Dict[str, Any]:
34    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
35        kwargs_with_defaults_exclude_unset: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
36        kwargs_with_defaults_exclude_none: typing.Any = {"by_alias": True, "exclude_none": True, **kwargs}
37
38        return deep_union_pydantic_dicts(
39            super().dict(**kwargs_with_defaults_exclude_unset), super().dict(**kwargs_with_defaults_exclude_none)
40        )

Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.

Inherited Members
pydantic.v1.main.BaseModel
BaseModel
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
class CreateDatasetRunItemRequest.Config:
42    class Config:
43        frozen = True
44        smart_union = True
45        allow_population_by_field_name = True
46        populate_by_name = True
47        extra = pydantic_v1.Extra.allow
48        json_encoders = {dt.datetime: serialize_datetime}
frozen = True
smart_union = True
allow_population_by_field_name = True
populate_by_name = True
extra = <Extra.allow: 'allow'>
json_encoders = {<class 'datetime.datetime'>: <function serialize_datetime>}
class CreateEventBody(langfuse.api.OptionalObservationBody):
12class CreateEventBody(OptionalObservationBody):
13    id: typing.Optional[str] = None
14
15    def json(self, **kwargs: typing.Any) -> str:
16        kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
17        return super().json(**kwargs_with_defaults)
18
19    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
20        kwargs_with_defaults_exclude_unset: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
21        kwargs_with_defaults_exclude_none: typing.Any = {"by_alias": True, "exclude_none": True, **kwargs}
22
23        return deep_union_pydantic_dicts(
24            super().dict(**kwargs_with_defaults_exclude_unset), super().dict(**kwargs_with_defaults_exclude_none)
25        )
26
27    class Config:
28        frozen = True
29        smart_union = True
30        allow_population_by_field_name = True
31        populate_by_name = True
32        extra = pydantic_v1.Extra.allow
33        json_encoders = {dt.datetime: serialize_datetime}
id: Optional[str]
def json(self, **kwargs: Any) -> str:
15    def json(self, **kwargs: typing.Any) -> str:
16        kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
17        return super().json(**kwargs_with_defaults)

Generate a JSON representation of the model, include and exclude arguments as per dict().

encoder is an optional function to supply as default to json.dumps(), other arguments as per json.dumps().

def dict(self, **kwargs: Any) -> Dict[str, Any]:
19    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
20        kwargs_with_defaults_exclude_unset: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
21        kwargs_with_defaults_exclude_none: typing.Any = {"by_alias": True, "exclude_none": True, **kwargs}
22
23        return deep_union_pydantic_dicts(
24            super().dict(**kwargs_with_defaults_exclude_unset), super().dict(**kwargs_with_defaults_exclude_none)
25        )

Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.

Inherited Members
pydantic.v1.main.BaseModel
BaseModel
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
OptionalObservationBody
trace_id
name
start_time
metadata
input
output
level
status_message
parent_observation_id
version
class CreateEventBody.Config:
27    class Config:
28        frozen = True
29        smart_union = True
30        allow_population_by_field_name = True
31        populate_by_name = True
32        extra = pydantic_v1.Extra.allow
33        json_encoders = {dt.datetime: serialize_datetime}
frozen = True
smart_union = True
allow_population_by_field_name = True
populate_by_name = True
extra = <Extra.allow: 'allow'>
json_encoders = {<class 'datetime.datetime'>: <function serialize_datetime>}
class CreateEventEvent(langfuse.api.BaseEvent):
13class CreateEventEvent(BaseEvent):
14    body: CreateEventBody
15
16    def json(self, **kwargs: typing.Any) -> str:
17        kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
18        return super().json(**kwargs_with_defaults)
19
20    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
21        kwargs_with_defaults_exclude_unset: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
22        kwargs_with_defaults_exclude_none: typing.Any = {"by_alias": True, "exclude_none": True, **kwargs}
23
24        return deep_union_pydantic_dicts(
25            super().dict(**kwargs_with_defaults_exclude_unset), super().dict(**kwargs_with_defaults_exclude_none)
26        )
27
28    class Config:
29        frozen = True
30        smart_union = True
31        allow_population_by_field_name = True
32        populate_by_name = True
33        extra = pydantic_v1.Extra.allow
34        json_encoders = {dt.datetime: serialize_datetime}
def json(self, **kwargs: Any) -> str:
16    def json(self, **kwargs: typing.Any) -> str:
17        kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
18        return super().json(**kwargs_with_defaults)

Generate a JSON representation of the model, include and exclude arguments as per dict().

encoder is an optional function to supply as default to json.dumps(), other arguments as per json.dumps().

def dict(self, **kwargs: Any) -> Dict[str, Any]:
20    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
21        kwargs_with_defaults_exclude_unset: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
22        kwargs_with_defaults_exclude_none: typing.Any = {"by_alias": True, "exclude_none": True, **kwargs}
23
24        return deep_union_pydantic_dicts(
25            super().dict(**kwargs_with_defaults_exclude_unset), super().dict(**kwargs_with_defaults_exclude_none)
26        )

Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.

Inherited Members
pydantic.v1.main.BaseModel
BaseModel
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
BaseEvent
id
timestamp
metadata
class CreateEventEvent.Config:
28    class Config:
29        frozen = True
30        smart_union = True
31        allow_population_by_field_name = True
32        populate_by_name = True
33        extra = pydantic_v1.Extra.allow
34        json_encoders = {dt.datetime: serialize_datetime}
frozen = True
smart_union = True
allow_population_by_field_name = True
populate_by_name = True
extra = <Extra.allow: 'allow'>
json_encoders = {<class 'datetime.datetime'>: <function serialize_datetime>}
class CreateGenerationBody(langfuse.api.CreateSpanBody):
14class CreateGenerationBody(CreateSpanBody):
15    completion_start_time: typing.Optional[dt.datetime] = pydantic_v1.Field(alias="completionStartTime", default=None)
16    model: typing.Optional[str] = None
17    model_parameters: typing.Optional[typing.Dict[str, MapValue]] = pydantic_v1.Field(
18        alias="modelParameters", default=None
19    )
20    usage: typing.Optional[IngestionUsage] = None
21    prompt_name: typing.Optional[str] = pydantic_v1.Field(alias="promptName", default=None)
22    prompt_version: typing.Optional[int] = pydantic_v1.Field(alias="promptVersion", default=None)
23
24    def json(self, **kwargs: typing.Any) -> str:
25        kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
26        return super().json(**kwargs_with_defaults)
27
28    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
29        kwargs_with_defaults_exclude_unset: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
30        kwargs_with_defaults_exclude_none: typing.Any = {"by_alias": True, "exclude_none": True, **kwargs}
31
32        return deep_union_pydantic_dicts(
33            super().dict(**kwargs_with_defaults_exclude_unset), super().dict(**kwargs_with_defaults_exclude_none)
34        )
35
36    class Config:
37        frozen = True
38        smart_union = True
39        allow_population_by_field_name = True
40        populate_by_name = True
41        extra = pydantic_v1.Extra.allow
42        json_encoders = {dt.datetime: serialize_datetime}
completion_start_time: Optional[datetime.datetime]
model: Optional[str]
model_parameters: Optional[Dict[str, Union[str, NoneType, int, bool, List[str]]]]
usage: Union[Usage, OpenAiUsage, NoneType]
prompt_name: Optional[str]
prompt_version: Optional[int]
def json(self, **kwargs: Any) -> str:
24    def json(self, **kwargs: typing.Any) -> str:
25        kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
26        return super().json(**kwargs_with_defaults)

Generate a JSON representation of the model, include and exclude arguments as per dict().

encoder is an optional function to supply as default to json.dumps(), other arguments as per json.dumps().

def dict(self, **kwargs: Any) -> Dict[str, Any]:
28    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
29        kwargs_with_defaults_exclude_unset: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
30        kwargs_with_defaults_exclude_none: typing.Any = {"by_alias": True, "exclude_none": True, **kwargs}
31
32        return deep_union_pydantic_dicts(
33            super().dict(**kwargs_with_defaults_exclude_unset), super().dict(**kwargs_with_defaults_exclude_none)
34        )

Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.

Inherited Members
pydantic.v1.main.BaseModel
BaseModel
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
CreateSpanBody
end_time
CreateEventBody
id
OptionalObservationBody
trace_id
name
start_time
metadata
input
output
level
status_message
parent_observation_id
version
class CreateGenerationBody.Config:
36    class Config:
37        frozen = True
38        smart_union = True
39        allow_population_by_field_name = True
40        populate_by_name = True
41        extra = pydantic_v1.Extra.allow
42        json_encoders = {dt.datetime: serialize_datetime}
frozen = True
smart_union = True
allow_population_by_field_name = True
populate_by_name = True
extra = <Extra.allow: 'allow'>
json_encoders = {<class 'datetime.datetime'>: <function serialize_datetime>}
class CreateGenerationEvent(langfuse.api.BaseEvent):
13class CreateGenerationEvent(BaseEvent):
14    body: CreateGenerationBody
15
16    def json(self, **kwargs: typing.Any) -> str:
17        kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
18        return super().json(**kwargs_with_defaults)
19
20    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
21        kwargs_with_defaults_exclude_unset: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
22        kwargs_with_defaults_exclude_none: typing.Any = {"by_alias": True, "exclude_none": True, **kwargs}
23
24        return deep_union_pydantic_dicts(
25            super().dict(**kwargs_with_defaults_exclude_unset), super().dict(**kwargs_with_defaults_exclude_none)
26        )
27
28    class Config:
29        frozen = True
30        smart_union = True
31        allow_population_by_field_name = True
32        populate_by_name = True
33        extra = pydantic_v1.Extra.allow
34        json_encoders = {dt.datetime: serialize_datetime}
def json(self, **kwargs: Any) -> str:
16    def json(self, **kwargs: typing.Any) -> str:
17        kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
18        return super().json(**kwargs_with_defaults)

Generate a JSON representation of the model, include and exclude arguments as per dict().

encoder is an optional function to supply as default to json.dumps(), other arguments as per json.dumps().

def dict(self, **kwargs: Any) -> Dict[str, Any]:
20    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
21        kwargs_with_defaults_exclude_unset: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
22        kwargs_with_defaults_exclude_none: typing.Any = {"by_alias": True, "exclude_none": True, **kwargs}
23
24        return deep_union_pydantic_dicts(
25            super().dict(**kwargs_with_defaults_exclude_unset), super().dict(**kwargs_with_defaults_exclude_none)
26        )

Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.

Inherited Members
pydantic.v1.main.BaseModel
BaseModel
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
BaseEvent
id
timestamp
metadata
class CreateGenerationEvent.Config:
28    class Config:
29        frozen = True
30        smart_union = True
31        allow_population_by_field_name = True
32        populate_by_name = True
33        extra = pydantic_v1.Extra.allow
34        json_encoders = {dt.datetime: serialize_datetime}
frozen = True
smart_union = True
allow_population_by_field_name = True
populate_by_name = True
extra = <Extra.allow: 'allow'>
json_encoders = {<class 'datetime.datetime'>: <function serialize_datetime>}
class CreateModelRequest(pydantic.v1.main.BaseModel):
 12class CreateModelRequest(pydantic_v1.BaseModel):
 13    model_name: str = pydantic_v1.Field(alias="modelName")
 14    """
 15    Name of the model definition. If multiple with the same name exist, they are applied in the following order: (1) custom over built-in, (2) newest according to startTime where model.startTime<observation.startTime
 16    """
 17
 18    match_pattern: str = pydantic_v1.Field(alias="matchPattern")
 19    """
 20    Regex pattern which matches this model definition to generation.model. Useful in case of fine-tuned models. If you want to exact match, use `(?i)^modelname$`
 21    """
 22
 23    start_date: typing.Optional[dt.datetime] = pydantic_v1.Field(
 24        alias="startDate", default=None
 25    )
 26    """
 27    Apply only to generations which are newer than this ISO date.
 28    """
 29
 30    unit: ModelUsageUnit = pydantic_v1.Field()
 31    """
 32    Unit used by this model.
 33    """
 34
 35    input_price: typing.Optional[float] = pydantic_v1.Field(
 36        alias="inputPrice", default=None
 37    )
 38    """
 39    Price (USD) per input unit
 40    """
 41
 42    output_price: typing.Optional[float] = pydantic_v1.Field(
 43        alias="outputPrice", default=None
 44    )
 45    """
 46    Price (USD) per output unit
 47    """
 48
 49    total_price: typing.Optional[float] = pydantic_v1.Field(
 50        alias="totalPrice", default=None
 51    )
 52    """
 53    Price (USD) per total units. Cannot be set if input or output price is set.
 54    """
 55
 56    tokenizer_id: typing.Optional[str] = pydantic_v1.Field(
 57        alias="tokenizerId", default=None
 58    )
 59    """
 60    Optional. Tokenizer to be applied to observations which match to this model. See docs for more details.
 61    """
 62
 63    tokenizer_config: typing.Optional[typing.Any] = pydantic_v1.Field(
 64        alias="tokenizerConfig", default=None
 65    )
 66    """
 67    Optional. Configuration for the selected tokenizer. Needs to be JSON. See docs for more details.
 68    """
 69
 70    def json(self, **kwargs: typing.Any) -> str:
 71        kwargs_with_defaults: typing.Any = {
 72            "by_alias": True,
 73            "exclude_unset": True,
 74            **kwargs,
 75        }
 76        return super().json(**kwargs_with_defaults)
 77
 78    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
 79        kwargs_with_defaults_exclude_unset: typing.Any = {
 80            "by_alias": True,
 81            "exclude_unset": True,
 82            **kwargs,
 83        }
 84        kwargs_with_defaults_exclude_none: typing.Any = {
 85            "by_alias": True,
 86            "exclude_none": True,
 87            **kwargs,
 88        }
 89
 90        return deep_union_pydantic_dicts(
 91            super().dict(**kwargs_with_defaults_exclude_unset),
 92            super().dict(**kwargs_with_defaults_exclude_none),
 93        )
 94
 95    class Config:
 96        frozen = True
 97        smart_union = True
 98        allow_population_by_field_name = True
 99        populate_by_name = True
100        extra = pydantic_v1.Extra.allow
101        json_encoders = {dt.datetime: serialize_datetime}
model_name: str

Name of the model definition. If multiple with the same name exist, they are applied in the following order: (1) custom over built-in, (2) newest according to startTime where model.startTime

match_pattern: str

Regex pattern which matches this model definition to generation.model. Useful in case of fine-tuned models. If you want to exact match, use (?i)^modelname$

start_date: Optional[datetime.datetime]

Apply only to generations which are newer than this ISO date.

Unit used by this model.

input_price: Optional[float]

Price (USD) per input unit

output_price: Optional[float]

Price (USD) per output unit

total_price: Optional[float]

Price (USD) per total units. Cannot be set if input or output price is set.

tokenizer_id: Optional[str]

Optional. Tokenizer to be applied to observations which match to this model. See docs for more details.

tokenizer_config: Optional[Any]

Optional. Configuration for the selected tokenizer. Needs to be JSON. See docs for more details.

def json(self, **kwargs: Any) -> str:
70    def json(self, **kwargs: typing.Any) -> str:
71        kwargs_with_defaults: typing.Any = {
72            "by_alias": True,
73            "exclude_unset": True,
74            **kwargs,
75        }
76        return super().json(**kwargs_with_defaults)

Generate a JSON representation of the model, include and exclude arguments as per dict().

encoder is an optional function to supply as default to json.dumps(), other arguments as per json.dumps().

def dict(self, **kwargs: Any) -> Dict[str, Any]:
78    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
79        kwargs_with_defaults_exclude_unset: typing.Any = {
80            "by_alias": True,
81            "exclude_unset": True,
82            **kwargs,
83        }
84        kwargs_with_defaults_exclude_none: typing.Any = {
85            "by_alias": True,
86            "exclude_none": True,
87            **kwargs,
88        }
89
90        return deep_union_pydantic_dicts(
91            super().dict(**kwargs_with_defaults_exclude_unset),
92            super().dict(**kwargs_with_defaults_exclude_none),
93        )

Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.

Inherited Members
pydantic.v1.main.BaseModel
BaseModel
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
class CreateModelRequest.Config:
 95    class Config:
 96        frozen = True
 97        smart_union = True
 98        allow_population_by_field_name = True
 99        populate_by_name = True
100        extra = pydantic_v1.Extra.allow
101        json_encoders = {dt.datetime: serialize_datetime}
frozen = True
smart_union = True
allow_population_by_field_name = True
populate_by_name = True
extra = <Extra.allow: 'allow'>
json_encoders = {<class 'datetime.datetime'>: <function serialize_datetime>}
class CreateObservationEvent(langfuse.api.BaseEvent):
13class CreateObservationEvent(BaseEvent):
14    body: ObservationBody
15
16    def json(self, **kwargs: typing.Any) -> str:
17        kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
18        return super().json(**kwargs_with_defaults)
19
20    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
21        kwargs_with_defaults_exclude_unset: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
22        kwargs_with_defaults_exclude_none: typing.Any = {"by_alias": True, "exclude_none": True, **kwargs}
23
24        return deep_union_pydantic_dicts(
25            super().dict(**kwargs_with_defaults_exclude_unset), super().dict(**kwargs_with_defaults_exclude_none)
26        )
27
28    class Config:
29        frozen = True
30        smart_union = True
31        allow_population_by_field_name = True
32        populate_by_name = True
33        extra = pydantic_v1.Extra.allow
34        json_encoders = {dt.datetime: serialize_datetime}
def json(self, **kwargs: Any) -> str:
16    def json(self, **kwargs: typing.Any) -> str:
17        kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
18        return super().json(**kwargs_with_defaults)

Generate a JSON representation of the model, include and exclude arguments as per dict().

encoder is an optional function to supply as default to json.dumps(), other arguments as per json.dumps().

def dict(self, **kwargs: Any) -> Dict[str, Any]:
20    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
21        kwargs_with_defaults_exclude_unset: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
22        kwargs_with_defaults_exclude_none: typing.Any = {"by_alias": True, "exclude_none": True, **kwargs}
23
24        return deep_union_pydantic_dicts(
25            super().dict(**kwargs_with_defaults_exclude_unset), super().dict(**kwargs_with_defaults_exclude_none)
26        )

Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.

Inherited Members
pydantic.v1.main.BaseModel
BaseModel
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
BaseEvent
id
timestamp
metadata
class CreateObservationEvent.Config:
28    class Config:
29        frozen = True
30        smart_union = True
31        allow_population_by_field_name = True
32        populate_by_name = True
33        extra = pydantic_v1.Extra.allow
34        json_encoders = {dt.datetime: serialize_datetime}
frozen = True
smart_union = True
allow_population_by_field_name = True
populate_by_name = True
extra = <Extra.allow: 'allow'>
json_encoders = {<class 'datetime.datetime'>: <function serialize_datetime>}
CreatePromptRequest = typing.Union[CreatePromptRequest_Chat, CreatePromptRequest_Text]
class CreatePromptRequest_Chat(pydantic.v1.main.BaseModel):
14class CreatePromptRequest_Chat(pydantic_v1.BaseModel):
15    name: str
16    prompt: typing.List[ChatMessage]
17    config: typing.Optional[typing.Any] = None
18    labels: typing.Optional[typing.List[str]] = None
19    tags: typing.Optional[typing.List[str]] = None
20    type: typing.Literal["chat"] = "chat"
21
22    def json(self, **kwargs: typing.Any) -> str:
23        kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
24        return super().json(**kwargs_with_defaults)
25
26    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
27        kwargs_with_defaults_exclude_unset: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
28        kwargs_with_defaults_exclude_none: typing.Any = {"by_alias": True, "exclude_none": True, **kwargs}
29
30        return deep_union_pydantic_dicts(
31            super().dict(**kwargs_with_defaults_exclude_unset), super().dict(**kwargs_with_defaults_exclude_none)
32        )
33
34    class Config:
35        frozen = True
36        smart_union = True
37        extra = pydantic_v1.Extra.allow
38        json_encoders = {dt.datetime: serialize_datetime}
name: str
prompt: List[ChatMessage]
config: Optional[Any]
labels: Optional[List[str]]
tags: Optional[List[str]]
type: Literal['chat']
def json(self, **kwargs: Any) -> str:
22    def json(self, **kwargs: typing.Any) -> str:
23        kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
24        return super().json(**kwargs_with_defaults)

Generate a JSON representation of the model, include and exclude arguments as per dict().

encoder is an optional function to supply as default to json.dumps(), other arguments as per json.dumps().

def dict(self, **kwargs: Any) -> Dict[str, Any]:
26    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
27        kwargs_with_defaults_exclude_unset: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
28        kwargs_with_defaults_exclude_none: typing.Any = {"by_alias": True, "exclude_none": True, **kwargs}
29
30        return deep_union_pydantic_dicts(
31            super().dict(**kwargs_with_defaults_exclude_unset), super().dict(**kwargs_with_defaults_exclude_none)
32        )

Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.

Inherited Members
pydantic.v1.main.BaseModel
BaseModel
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
class CreatePromptRequest_Chat.Config:
34    class Config:
35        frozen = True
36        smart_union = True
37        extra = pydantic_v1.Extra.allow
38        json_encoders = {dt.datetime: serialize_datetime}
frozen = True
smart_union = True
extra = <Extra.allow: 'allow'>
json_encoders = {<class 'datetime.datetime'>: <function serialize_datetime>}
class CreatePromptRequest_Text(pydantic.v1.main.BaseModel):
41class CreatePromptRequest_Text(pydantic_v1.BaseModel):
42    name: str
43    prompt: str
44    config: typing.Optional[typing.Any] = None
45    labels: typing.Optional[typing.List[str]] = None
46    tags: typing.Optional[typing.List[str]] = None
47    type: typing.Literal["text"] = "text"
48
49    def json(self, **kwargs: typing.Any) -> str:
50        kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
51        return super().json(**kwargs_with_defaults)
52
53    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
54        kwargs_with_defaults_exclude_unset: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
55        kwargs_with_defaults_exclude_none: typing.Any = {"by_alias": True, "exclude_none": True, **kwargs}
56
57        return deep_union_pydantic_dicts(
58            super().dict(**kwargs_with_defaults_exclude_unset), super().dict(**kwargs_with_defaults_exclude_none)
59        )
60
61    class Config:
62        frozen = True
63        smart_union = True
64        extra = pydantic_v1.Extra.allow
65        json_encoders = {dt.datetime: serialize_datetime}
name: str
prompt: str
config: Optional[Any]
labels: Optional[List[str]]
tags: Optional[List[str]]
type: Literal['text']
def json(self, **kwargs: Any) -> str:
49    def json(self, **kwargs: typing.Any) -> str:
50        kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
51        return super().json(**kwargs_with_defaults)

Generate a JSON representation of the model, include and exclude arguments as per dict().

encoder is an optional function to supply as default to json.dumps(), other arguments as per json.dumps().

def dict(self, **kwargs: Any) -> Dict[str, Any]:
53    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
54        kwargs_with_defaults_exclude_unset: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
55        kwargs_with_defaults_exclude_none: typing.Any = {"by_alias": True, "exclude_none": True, **kwargs}
56
57        return deep_union_pydantic_dicts(
58            super().dict(**kwargs_with_defaults_exclude_unset), super().dict(**kwargs_with_defaults_exclude_none)
59        )

Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.

Inherited Members
pydantic.v1.main.BaseModel
BaseModel
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
class CreatePromptRequest_Text.Config:
61    class Config:
62        frozen = True
63        smart_union = True
64        extra = pydantic_v1.Extra.allow
65        json_encoders = {dt.datetime: serialize_datetime}
frozen = True
smart_union = True
extra = <Extra.allow: 'allow'>
json_encoders = {<class 'datetime.datetime'>: <function serialize_datetime>}
class CreateScoreConfigRequest(pydantic.v1.main.BaseModel):
13class CreateScoreConfigRequest(pydantic_v1.BaseModel):
14    name: str
15    data_type: ScoreDataType = pydantic_v1.Field(alias="dataType")
16    categories: typing.Optional[typing.List[ConfigCategory]] = pydantic_v1.Field(default=None)
17    """
18    Configure custom categories for categorical scores. Pass a list of objects with `label` and `value` properties. Categories are autogenerated for boolean configs and cannot be passed
19    """
20
21    min_value: typing.Optional[float] = pydantic_v1.Field(alias="minValue", default=None)
22    """
23    Configure a minimum value for numerical scores. If not set, the minimum value defaults to -∞
24    """
25
26    max_value: typing.Optional[float] = pydantic_v1.Field(alias="maxValue", default=None)
27    """
28    Configure a maximum value for numerical scores. If not set, the maximum value defaults to +∞
29    """
30
31    description: typing.Optional[str] = pydantic_v1.Field(default=None)
32    """
33    Description is shown across the Langfuse UI and can be used to e.g. explain the config categories in detail, why a numeric range was set, or provide additional context on config name or usage
34    """
35
36    def json(self, **kwargs: typing.Any) -> str:
37        kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
38        return super().json(**kwargs_with_defaults)
39
40    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
41        kwargs_with_defaults_exclude_unset: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
42        kwargs_with_defaults_exclude_none: typing.Any = {"by_alias": True, "exclude_none": True, **kwargs}
43
44        return deep_union_pydantic_dicts(
45            super().dict(**kwargs_with_defaults_exclude_unset), super().dict(**kwargs_with_defaults_exclude_none)
46        )
47
48    class Config:
49        frozen = True
50        smart_union = True
51        allow_population_by_field_name = True
52        populate_by_name = True
53        extra = pydantic_v1.Extra.allow
54        json_encoders = {dt.datetime: serialize_datetime}
name: str
data_type: ScoreDataType
categories: Optional[List[ConfigCategory]]

Configure custom categories for categorical scores. Pass a list of objects with label and value properties. Categories are autogenerated for boolean configs and cannot be passed

min_value: Optional[float]

Configure a minimum value for numerical scores. If not set, the minimum value defaults to -∞

max_value: Optional[float]

Configure a maximum value for numerical scores. If not set, the maximum value defaults to +∞

description: Optional[str]

Description is shown across the Langfuse UI and can be used to e.g. explain the config categories in detail, why a numeric range was set, or provide additional context on config name or usage

def json(self, **kwargs: Any) -> str:
36    def json(self, **kwargs: typing.Any) -> str:
37        kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
38        return super().json(**kwargs_with_defaults)

Generate a JSON representation of the model, include and exclude arguments as per dict().

encoder is an optional function to supply as default to json.dumps(), other arguments as per json.dumps().

def dict(self, **kwargs: Any) -> Dict[str, Any]:
40    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
41        kwargs_with_defaults_exclude_unset: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
42        kwargs_with_defaults_exclude_none: typing.Any = {"by_alias": True, "exclude_none": True, **kwargs}
43
44        return deep_union_pydantic_dicts(
45            super().dict(**kwargs_with_defaults_exclude_unset), super().dict(**kwargs_with_defaults_exclude_none)
46        )

Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.

Inherited Members
pydantic.v1.main.BaseModel
BaseModel
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
class CreateScoreConfigRequest.Config:
48    class Config:
49        frozen = True
50        smart_union = True
51        allow_population_by_field_name = True
52        populate_by_name = True
53        extra = pydantic_v1.Extra.allow
54        json_encoders = {dt.datetime: serialize_datetime}
frozen = True
smart_union = True
allow_population_by_field_name = True
populate_by_name = True
extra = <Extra.allow: 'allow'>
json_encoders = {<class 'datetime.datetime'>: <function serialize_datetime>}
class CreateScoreRequest(pydantic.v1.main.BaseModel):
13class CreateScoreRequest(pydantic_v1.BaseModel):
14    """
15    Examples
16    --------
17    from finto import CreateScoreRequest
18
19    CreateScoreRequest(
20        name="novelty",
21        value=0.9,
22        trace_id="cdef-1234-5678-90ab",
23    )
24    """
25
26    id: typing.Optional[str] = None
27    trace_id: str = pydantic_v1.Field(alias="traceId")
28    name: str
29    value: CreateScoreValue = pydantic_v1.Field()
30    """
31    The value of the score. Must be passed as string for categorical scores, and numeric for boolean and numeric scores. Boolean score values must equal either 1 or 0 (true or false)
32    """
33
34    observation_id: typing.Optional[str] = pydantic_v1.Field(alias="observationId", default=None)
35    comment: typing.Optional[str] = None
36    data_type: typing.Optional[ScoreDataType] = pydantic_v1.Field(alias="dataType", default=None)
37    """
38    The data type of the score. When passing a configId this field is inferred. Otherwise, this field must be passed or will default to numeric.
39    """
40
41    config_id: typing.Optional[str] = pydantic_v1.Field(alias="configId", default=None)
42    """
43    Reference a score config on a score. The unique langfuse identifier of a score config. When passing this field, the dataType and stringValue fields are automatically populated.
44    """
45
46    def json(self, **kwargs: typing.Any) -> str:
47        kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
48        return super().json(**kwargs_with_defaults)
49
50    def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
51        kwargs_with_defaults_exclude_unset: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
52        kwargs_with_defaults_exclude_none: typing.Any = {"by_alias": True, "exclude_none": True, **kwargs}
53
54        return deep_union_pydantic_dicts(
55            super().dict(**kwargs_with_defaults_exclude_unset), super().dict(**kwargs_with_defaults_exclude_none)
56        )
57
58    class Config:
59        frozen = True
60        smart_union = True
61        allow_population_by_field_name = True
62        populate_by_name = True
63        extra = pydantic_v1.Extra.allow
64        json_encoders = {dt.datetime: serialize_datetime}

Examples

from finto import CreateScoreRequest

CreateScoreRequest( name="novelty", value=0.9, trace_id="cdef-1234-5678-90ab", )

id: Optional[str]