langfuse_client_base/models/
score_one_of.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct ScoreOneOf {
16 #[serde(rename = "value")]
18 pub value: f64,
19 #[serde(rename = "id")]
20 pub id: String,
21 #[serde(
22 rename = "traceId",
23 default,
24 with = "::serde_with::rust::double_option",
25 skip_serializing_if = "Option::is_none"
26 )]
27 pub trace_id: Option<Option<String>>,
28 #[serde(
29 rename = "sessionId",
30 default,
31 with = "::serde_with::rust::double_option",
32 skip_serializing_if = "Option::is_none"
33 )]
34 pub session_id: Option<Option<String>>,
35 #[serde(
36 rename = "observationId",
37 default,
38 with = "::serde_with::rust::double_option",
39 skip_serializing_if = "Option::is_none"
40 )]
41 pub observation_id: Option<Option<String>>,
42 #[serde(
43 rename = "datasetRunId",
44 default,
45 with = "::serde_with::rust::double_option",
46 skip_serializing_if = "Option::is_none"
47 )]
48 pub dataset_run_id: Option<Option<String>>,
49 #[serde(rename = "name")]
50 pub name: String,
51 #[serde(rename = "source")]
52 pub source: models::ScoreSource,
53 #[serde(rename = "timestamp")]
54 pub timestamp: String,
55 #[serde(rename = "createdAt")]
56 pub created_at: String,
57 #[serde(rename = "updatedAt")]
58 pub updated_at: String,
59 #[serde(
60 rename = "authorUserId",
61 default,
62 with = "::serde_with::rust::double_option",
63 skip_serializing_if = "Option::is_none"
64 )]
65 pub author_user_id: Option<Option<String>>,
66 #[serde(
67 rename = "comment",
68 default,
69 with = "::serde_with::rust::double_option",
70 skip_serializing_if = "Option::is_none"
71 )]
72 pub comment: Option<Option<String>>,
73 #[serde(
74 rename = "metadata",
75 default,
76 with = "::serde_with::rust::double_option",
77 skip_serializing_if = "Option::is_none"
78 )]
79 pub metadata: Option<Option<serde_json::Value>>,
80 #[serde(
82 rename = "configId",
83 default,
84 with = "::serde_with::rust::double_option",
85 skip_serializing_if = "Option::is_none"
86 )]
87 pub config_id: Option<Option<String>>,
88 #[serde(
90 rename = "queueId",
91 default,
92 with = "::serde_with::rust::double_option",
93 skip_serializing_if = "Option::is_none"
94 )]
95 pub queue_id: Option<Option<String>>,
96 #[serde(
98 rename = "environment",
99 default,
100 with = "::serde_with::rust::double_option",
101 skip_serializing_if = "Option::is_none"
102 )]
103 pub environment: Option<Option<String>>,
104 #[serde(rename = "dataType")]
105 pub data_type: DataType,
106}
107
108impl ScoreOneOf {
109 pub fn new(
110 value: f64,
111 id: String,
112 name: String,
113 source: models::ScoreSource,
114 timestamp: String,
115 created_at: String,
116 updated_at: String,
117 data_type: DataType,
118 ) -> ScoreOneOf {
119 ScoreOneOf {
120 value,
121 id,
122 trace_id: None,
123 session_id: None,
124 observation_id: None,
125 dataset_run_id: None,
126 name,
127 source,
128 timestamp,
129 created_at,
130 updated_at,
131 author_user_id: None,
132 comment: None,
133 metadata: None,
134 config_id: None,
135 queue_id: None,
136 environment: None,
137 data_type,
138 }
139 }
140}
141#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
143pub enum DataType {
144 #[serde(rename = "NUMERIC")]
145 Numeric,
146}
147
148impl Default for DataType {
149 fn default() -> DataType {
150 Self::Numeric
151 }
152}