langfuse_client_base/models/
update_generation_body.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct UpdateGenerationBody {
16 #[serde(
17 rename = "completionStartTime",
18 default,
19 with = "::serde_with::rust::double_option",
20 skip_serializing_if = "Option::is_none"
21 )]
22 pub completion_start_time: Option<Option<String>>,
23 #[serde(
24 rename = "model",
25 default,
26 with = "::serde_with::rust::double_option",
27 skip_serializing_if = "Option::is_none"
28 )]
29 pub model: Option<Option<String>>,
30 #[serde(
31 rename = "modelParameters",
32 default,
33 with = "::serde_with::rust::double_option",
34 skip_serializing_if = "Option::is_none"
35 )]
36 pub model_parameters: Option<Option<std::collections::HashMap<String, models::MapValue>>>,
37 #[serde(rename = "usage", skip_serializing_if = "Option::is_none")]
38 pub usage: Option<Box<models::IngestionUsage>>,
39 #[serde(
40 rename = "promptName",
41 default,
42 with = "::serde_with::rust::double_option",
43 skip_serializing_if = "Option::is_none"
44 )]
45 pub prompt_name: Option<Option<String>>,
46 #[serde(rename = "usageDetails", skip_serializing_if = "Option::is_none")]
47 pub usage_details: Option<Box<models::UsageDetails>>,
48 #[serde(
49 rename = "costDetails",
50 default,
51 with = "::serde_with::rust::double_option",
52 skip_serializing_if = "Option::is_none"
53 )]
54 pub cost_details: Option<Option<std::collections::HashMap<String, f64>>>,
55 #[serde(
56 rename = "promptVersion",
57 default,
58 with = "::serde_with::rust::double_option",
59 skip_serializing_if = "Option::is_none"
60 )]
61 pub prompt_version: Option<Option<i32>>,
62 #[serde(
63 rename = "endTime",
64 default,
65 with = "::serde_with::rust::double_option",
66 skip_serializing_if = "Option::is_none"
67 )]
68 pub end_time: Option<Option<String>>,
69 #[serde(rename = "id")]
70 pub id: String,
71 #[serde(
72 rename = "traceId",
73 default,
74 with = "::serde_with::rust::double_option",
75 skip_serializing_if = "Option::is_none"
76 )]
77 pub trace_id: Option<Option<String>>,
78 #[serde(
79 rename = "name",
80 default,
81 with = "::serde_with::rust::double_option",
82 skip_serializing_if = "Option::is_none"
83 )]
84 pub name: Option<Option<String>>,
85 #[serde(
86 rename = "startTime",
87 default,
88 with = "::serde_with::rust::double_option",
89 skip_serializing_if = "Option::is_none"
90 )]
91 pub start_time: Option<Option<String>>,
92 #[serde(
93 rename = "metadata",
94 default,
95 with = "::serde_with::rust::double_option",
96 skip_serializing_if = "Option::is_none"
97 )]
98 pub metadata: Option<Option<serde_json::Value>>,
99 #[serde(
100 rename = "input",
101 default,
102 with = "::serde_with::rust::double_option",
103 skip_serializing_if = "Option::is_none"
104 )]
105 pub input: Option<Option<serde_json::Value>>,
106 #[serde(
107 rename = "output",
108 default,
109 with = "::serde_with::rust::double_option",
110 skip_serializing_if = "Option::is_none"
111 )]
112 pub output: Option<Option<serde_json::Value>>,
113 #[serde(rename = "level", skip_serializing_if = "Option::is_none")]
114 pub level: Option<models::ObservationLevel>,
115 #[serde(
116 rename = "statusMessage",
117 default,
118 with = "::serde_with::rust::double_option",
119 skip_serializing_if = "Option::is_none"
120 )]
121 pub status_message: Option<Option<String>>,
122 #[serde(
123 rename = "parentObservationId",
124 default,
125 with = "::serde_with::rust::double_option",
126 skip_serializing_if = "Option::is_none"
127 )]
128 pub parent_observation_id: Option<Option<String>>,
129 #[serde(
130 rename = "version",
131 default,
132 with = "::serde_with::rust::double_option",
133 skip_serializing_if = "Option::is_none"
134 )]
135 pub version: Option<Option<String>>,
136 #[serde(
137 rename = "environment",
138 default,
139 with = "::serde_with::rust::double_option",
140 skip_serializing_if = "Option::is_none"
141 )]
142 pub environment: Option<Option<String>>,
143}
144
145impl UpdateGenerationBody {
146 pub fn new(id: String) -> UpdateGenerationBody {
147 UpdateGenerationBody {
148 completion_start_time: None,
149 model: None,
150 model_parameters: None,
151 usage: None,
152 prompt_name: None,
153 usage_details: None,
154 cost_details: None,
155 prompt_version: None,
156 end_time: None,
157 id,
158 trace_id: None,
159 name: None,
160 start_time: None,
161 metadata: None,
162 input: None,
163 output: None,
164 level: None,
165 status_message: None,
166 parent_observation_id: None,
167 version: None,
168 environment: None,
169 }
170 }
171}