1#![allow(non_camel_case_types)]
6
7use crate::prelude::{String, Vec};
8
9#[derive(Clone, Debug, Default)]
10#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11pub struct AddUploadPartRequest {
12    pub r#data: String,
14}
15
16#[derive(Clone, Debug)]
18#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
19pub struct AdminApiKey {
20    pub r#object: String,
22
23    pub r#id: String,
25
26    pub r#name: String,
28
29    pub r#redacted_value: String,
31
32    pub r#value: String,
34
35    pub r#created_at: i64,
37
38    pub r#last_used_at: Option<i64>,
40
41    pub r#owner: AdminApiKey_Owner,
42}
43
44#[derive(Clone, Debug, Default)]
45#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
46pub struct AdminApiKey_Owner {
47    pub r#type: String,
49
50    pub r#object: String,
52
53    pub r#id: String,
55
56    pub r#name: String,
58
59    pub r#created_at: i64,
61
62    pub r#role: String,
64}
65
66#[derive(Clone, Debug)]
67#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
68pub enum Annotation {
69    FileCitationBody(FileCitationBody),
70
71    UrlCitationBody(UrlCitationBody),
72
73    FilePath(FilePath),
74}
75
76#[derive(Clone, Debug)]
77#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
78pub struct ApiKeyList {
79    pub r#object: String,
80
81    pub r#data: Vec<AdminApiKey>,
82
83    pub r#has_more: bool,
84
85    pub r#first_id: String,
86
87    pub r#last_id: String,
88}
89
90#[derive(Clone, Debug)]
91#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
92pub struct ApproximateLocation {
93    pub r#type: String,
95
96    pub r#country: ApproximateLocation_Country,
97
98    pub r#region: ApproximateLocation_Region,
99
100    pub r#city: ApproximateLocation_City,
101
102    pub r#timezone: ApproximateLocation_Timezone,
103}
104
105pub type ApproximateLocation_City = Option<String>;
106
107pub type ApproximateLocation_Country = Option<String>;
108
109pub type ApproximateLocation_Region = Option<String>;
110
111pub type ApproximateLocation_Timezone = Option<String>;
112
113#[derive(Clone, Debug)]
115#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
116pub struct AssistantObject {
117    pub r#id: String,
119
120    pub r#object: String,
122
123    pub r#created_at: i64,
125
126    pub r#name: Option<String>,
128
129    pub r#description: Option<String>,
131
132    pub r#model: String,
134
135    pub r#instructions: Option<String>,
137
138    pub r#tools: Vec<AssistantObject_Tools>,
140
141    pub r#tool_resources: Option<AssistantObject_ToolResources>,
142
143    pub r#metadata: Option<Metadata>,
144
145    pub r#temperature: Option<f64>,
147
148    pub r#top_p: Option<f64>,
152
153    pub r#response_format: Option<AssistantsApiResponseFormatOption>,
154}
155
156#[derive(Clone, Debug)]
158#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
159pub struct AssistantObject_ToolResources {
160    pub r#code_interpreter: AssistantObject_ToolResources_CodeInterpreter,
161
162    pub r#file_search: AssistantObject_ToolResources_FileSearch,
163}
164
165#[derive(Clone, Debug)]
166#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
167pub struct AssistantObject_ToolResources_CodeInterpreter {
168    pub r#file_ids: Vec<String>,
171}
172
173#[derive(Clone, Debug)]
174#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
175pub struct AssistantObject_ToolResources_FileSearch {
176    pub r#vector_store_ids: Vec<String>,
179}
180
181#[derive(Clone, Debug)]
182#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
183pub enum AssistantObject_Tools {
184    AssistantToolsCode(AssistantToolsCode),
185
186    AssistantToolsFileSearch(AssistantToolsFileSearch),
187
188    AssistantToolsFunction(AssistantToolsFunction),
189}
190
191#[derive(Clone, Debug)]
193#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
194pub enum AssistantStreamEvent {
195    ThreadStreamEvent(ThreadStreamEvent),
196
197    RunStreamEvent(RunStreamEvent),
198
199    RunStepStreamEvent(RunStepStreamEvent),
200
201    MessageStreamEvent(MessageStreamEvent),
202
203    ErrorEvent(ErrorEvent),
204
205    DoneEvent(DoneEvent),
206}
207
208#[derive(Clone, Debug)]
209#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
210pub struct AssistantSupportedModels(pub String);
211
212#[derive(Clone, Debug, Default)]
213#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
214pub struct AssistantToolsCode {
215    pub r#type: String,
217}
218
219#[derive(Clone, Debug)]
220#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
221pub struct AssistantToolsFileSearch {
222    pub r#type: String,
224
225    pub r#file_search: AssistantToolsFileSearch_FileSearch,
226}
227
228#[derive(Clone, Debug, Default)]
229#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
230pub struct AssistantToolsFileSearchTypeOnly {
231    pub r#type: String,
233}
234
235#[derive(Clone, Debug)]
237#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
238pub struct AssistantToolsFileSearch_FileSearch {
239    pub r#max_num_results: i64,
241
242    pub r#ranking_options: FileSearchRankingOptions,
243}
244
245#[derive(Clone, Debug)]
246#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
247pub struct AssistantToolsFunction {
248    pub r#type: String,
250
251    pub r#function: FunctionObject,
252}
253
254#[derive(Clone, Debug)]
256#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
257pub enum AssistantsApiResponseFormatOption {
258    String(String),
260
261    ResponseFormatText(ResponseFormatText),
262
263    ResponseFormatJsonObject(ResponseFormatJsonObject),
264
265    ResponseFormatJsonSchema(ResponseFormatJsonSchema),
266}
267
268#[derive(Clone, Debug)]
270#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
271pub enum AssistantsApiToolChoiceOption {
272    String(String),
275
276    AssistantsNamedToolChoice(AssistantsNamedToolChoice),
277}
278
279#[derive(Clone, Debug)]
281#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
282pub struct AssistantsNamedToolChoice {
283    pub r#type: String,
285
286    pub r#function: AssistantsNamedToolChoice_Function,
287}
288
289#[derive(Clone, Debug, Default)]
290#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
291pub struct AssistantsNamedToolChoice_Function {
292    pub r#name: String,
294}
295
296#[derive(Clone, Debug)]
299#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
300pub struct AudioResponseFormat(pub String);
301
302#[derive(Clone, Debug)]
304#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
305pub struct AuditLog {
306    pub r#id: String,
308
309    pub r#type: AuditLogEventType,
310
311    pub r#effective_at: i64,
313
314    pub r#project: AuditLog_Project,
315
316    pub r#actor: AuditLogActor,
317
318    #[cfg_attr(feature = "serde", serde(rename = "api_key.created"))]
319    pub r#api_key_created: AuditLog_ApiKeyCreated,
320
321    #[cfg_attr(feature = "serde", serde(rename = "api_key.updated"))]
322    pub r#api_key_updated: AuditLog_ApiKeyUpdated,
323
324    #[cfg_attr(feature = "serde", serde(rename = "api_key.deleted"))]
325    pub r#api_key_deleted: AuditLog_ApiKeyDeleted,
326
327    #[cfg_attr(feature = "serde", serde(rename = "checkpoint_permission.created"))]
328    pub r#checkpoint_permission_created: AuditLog_CheckpointPermissionCreated,
329
330    #[cfg_attr(feature = "serde", serde(rename = "checkpoint_permission.deleted"))]
331    pub r#checkpoint_permission_deleted: AuditLog_CheckpointPermissionDeleted,
332
333    #[cfg_attr(feature = "serde", serde(rename = "invite.sent"))]
334    pub r#invite_sent: AuditLog_InviteSent,
335
336    #[cfg_attr(feature = "serde", serde(rename = "invite.accepted"))]
337    pub r#invite_accepted: AuditLog_InviteAccepted,
338
339    #[cfg_attr(feature = "serde", serde(rename = "invite.deleted"))]
340    pub r#invite_deleted: AuditLog_InviteDeleted,
341
342    #[cfg_attr(feature = "serde", serde(rename = "login.failed"))]
343    pub r#login_failed: AuditLog_LoginFailed,
344
345    #[cfg_attr(feature = "serde", serde(rename = "logout.failed"))]
346    pub r#logout_failed: AuditLog_LogoutFailed,
347
348    #[cfg_attr(feature = "serde", serde(rename = "organization.updated"))]
349    pub r#organization_updated: AuditLog_OrganizationUpdated,
350
351    #[cfg_attr(feature = "serde", serde(rename = "project.created"))]
352    pub r#project_created: AuditLog_ProjectCreated,
353
354    #[cfg_attr(feature = "serde", serde(rename = "project.updated"))]
355    pub r#project_updated: AuditLog_ProjectUpdated,
356
357    #[cfg_attr(feature = "serde", serde(rename = "project.archived"))]
358    pub r#project_archived: AuditLog_ProjectArchived,
359
360    #[cfg_attr(feature = "serde", serde(rename = "rate_limit.updated"))]
361    pub r#rate_limit_updated: AuditLog_RateLimitUpdated,
362
363    #[cfg_attr(feature = "serde", serde(rename = "rate_limit.deleted"))]
364    pub r#rate_limit_deleted: AuditLog_RateLimitDeleted,
365
366    #[cfg_attr(feature = "serde", serde(rename = "service_account.created"))]
367    pub r#service_account_created: AuditLog_ServiceAccountCreated,
368
369    #[cfg_attr(feature = "serde", serde(rename = "service_account.updated"))]
370    pub r#service_account_updated: AuditLog_ServiceAccountUpdated,
371
372    #[cfg_attr(feature = "serde", serde(rename = "service_account.deleted"))]
373    pub r#service_account_deleted: AuditLog_ServiceAccountDeleted,
374
375    #[cfg_attr(feature = "serde", serde(rename = "user.added"))]
376    pub r#user_added: AuditLog_UserAdded,
377
378    #[cfg_attr(feature = "serde", serde(rename = "user.updated"))]
379    pub r#user_updated: AuditLog_UserUpdated,
380
381    #[cfg_attr(feature = "serde", serde(rename = "user.deleted"))]
382    pub r#user_deleted: AuditLog_UserDeleted,
383
384    #[cfg_attr(feature = "serde", serde(rename = "certificate.created"))]
385    pub r#certificate_created: AuditLog_CertificateCreated,
386
387    #[cfg_attr(feature = "serde", serde(rename = "certificate.updated"))]
388    pub r#certificate_updated: AuditLog_CertificateUpdated,
389
390    #[cfg_attr(feature = "serde", serde(rename = "certificate.deleted"))]
391    pub r#certificate_deleted: AuditLog_CertificateDeleted,
392
393    #[cfg_attr(feature = "serde", serde(rename = "certificates.activated"))]
394    pub r#certificates_activated: AuditLog_CertificatesActivated,
395
396    #[cfg_attr(feature = "serde", serde(rename = "certificates.deactivated"))]
397    pub r#certificates_deactivated: AuditLog_CertificatesDeactivated,
398}
399
400#[derive(Clone, Debug)]
402#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
403pub struct AuditLogActor {
404    pub r#type: String,
406
407    pub r#session: AuditLogActorSession,
408
409    pub r#api_key: AuditLogActorApiKey,
410}
411
412#[derive(Clone, Debug)]
414#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
415pub struct AuditLogActorApiKey {
416    pub r#id: String,
418
419    pub r#type: String,
421
422    pub r#user: AuditLogActorUser,
423
424    pub r#service_account: AuditLogActorServiceAccount,
425}
426
427#[derive(Clone, Debug, Default)]
429#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
430pub struct AuditLogActorServiceAccount {
431    pub r#id: String,
433}
434
435#[derive(Clone, Debug)]
437#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
438pub struct AuditLogActorSession {
439    pub r#user: AuditLogActorUser,
440
441    pub r#ip_address: String,
443}
444
445#[derive(Clone, Debug, Default)]
447#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
448pub struct AuditLogActorUser {
449    pub r#id: String,
451
452    pub r#email: String,
454}
455
456#[derive(Clone, Debug)]
458#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
459pub struct AuditLogEventType(pub String);
460
461#[derive(Clone, Debug)]
463#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
464pub struct AuditLog_ApiKeyCreated {
465    pub r#id: String,
467
468    pub r#data: AuditLog_ApiKeyCreated_Data,
469}
470
471#[derive(Clone, Debug)]
473#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
474pub struct AuditLog_ApiKeyCreated_Data {
475    pub r#scopes: Vec<String>,
477}
478
479#[derive(Clone, Debug, Default)]
481#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
482pub struct AuditLog_ApiKeyDeleted {
483    pub r#id: String,
485}
486
487#[derive(Clone, Debug)]
489#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
490pub struct AuditLog_ApiKeyUpdated {
491    pub r#id: String,
493
494    pub r#changes_requested: AuditLog_ApiKeyUpdated_ChangesRequested,
495}
496
497#[derive(Clone, Debug)]
499#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
500pub struct AuditLog_ApiKeyUpdated_ChangesRequested {
501    pub r#scopes: Vec<String>,
503}
504
505#[derive(Clone, Debug, Default)]
507#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
508pub struct AuditLog_CertificateCreated {
509    pub r#id: String,
511
512    pub r#name: String,
514}
515
516#[derive(Clone, Debug, Default)]
518#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
519pub struct AuditLog_CertificateDeleted {
520    pub r#id: String,
522
523    pub r#name: String,
525
526    pub r#certificate: String,
528}
529
530#[derive(Clone, Debug, Default)]
532#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
533pub struct AuditLog_CertificateUpdated {
534    pub r#id: String,
536
537    pub r#name: String,
539}
540
541#[derive(Clone, Debug)]
543#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
544pub struct AuditLog_CertificatesActivated {
545    pub r#certificates: Vec<AuditLog_CertificatesActivated_Certificates>,
546}
547
548#[derive(Clone, Debug, Default)]
549#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
550pub struct AuditLog_CertificatesActivated_Certificates {
551    pub r#id: String,
553
554    pub r#name: String,
556}
557
558#[derive(Clone, Debug)]
560#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
561pub struct AuditLog_CertificatesDeactivated {
562    pub r#certificates: Vec<AuditLog_CertificatesDeactivated_Certificates>,
563}
564
565#[derive(Clone, Debug, Default)]
566#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
567pub struct AuditLog_CertificatesDeactivated_Certificates {
568    pub r#id: String,
570
571    pub r#name: String,
573}
574
575#[derive(Clone, Debug)]
578#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
579pub struct AuditLog_CheckpointPermissionCreated {
580    pub r#id: String,
582
583    pub r#data: AuditLog_CheckpointPermissionCreated_Data,
584}
585
586#[derive(Clone, Debug, Default)]
588#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
589pub struct AuditLog_CheckpointPermissionCreated_Data {
590    pub r#project_id: String,
592
593    pub r#fine_tuned_model_checkpoint: String,
595}
596
597#[derive(Clone, Debug, Default)]
599#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
600pub struct AuditLog_CheckpointPermissionDeleted {
601    pub r#id: String,
603}
604
605#[derive(Clone, Debug, Default)]
607#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
608pub struct AuditLog_InviteAccepted {
609    pub r#id: String,
611}
612
613#[derive(Clone, Debug, Default)]
615#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
616pub struct AuditLog_InviteDeleted {
617    pub r#id: String,
619}
620
621#[derive(Clone, Debug)]
623#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
624pub struct AuditLog_InviteSent {
625    pub r#id: String,
627
628    pub r#data: AuditLog_InviteSent_Data,
629}
630
631#[derive(Clone, Debug, Default)]
633#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
634pub struct AuditLog_InviteSent_Data {
635    pub r#email: String,
637
638    pub r#role: String,
640}
641
642#[derive(Clone, Debug, Default)]
644#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
645pub struct AuditLog_LoginFailed {
646    pub r#error_code: String,
648
649    pub r#error_message: String,
651}
652
653#[derive(Clone, Debug, Default)]
655#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
656pub struct AuditLog_LogoutFailed {
657    pub r#error_code: String,
659
660    pub r#error_message: String,
662}
663
664#[derive(Clone, Debug)]
666#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
667pub struct AuditLog_OrganizationUpdated {
668    pub r#id: String,
670
671    pub r#changes_requested: AuditLog_OrganizationUpdated_ChangesRequested,
672}
673
674#[derive(Clone, Debug)]
676#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
677pub struct AuditLog_OrganizationUpdated_ChangesRequested {
678    pub r#title: String,
680
681    pub r#description: String,
683
684    pub r#name: String,
686
687    pub r#settings: AuditLog_OrganizationUpdated_ChangesRequested_Settings,
688}
689
690#[derive(Clone, Debug, Default)]
691#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
692pub struct AuditLog_OrganizationUpdated_ChangesRequested_Settings {
693    pub r#threads_ui_visibility: String,
696
697    pub r#usage_dashboard_visibility: String,
700}
701
702#[derive(Clone, Debug, Default)]
704#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
705pub struct AuditLog_Project {
706    pub r#id: String,
708
709    pub r#name: String,
711}
712
713#[derive(Clone, Debug, Default)]
715#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
716pub struct AuditLog_ProjectArchived {
717    pub r#id: String,
719}
720
721#[derive(Clone, Debug)]
723#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
724pub struct AuditLog_ProjectCreated {
725    pub r#id: String,
727
728    pub r#data: AuditLog_ProjectCreated_Data,
729}
730
731#[derive(Clone, Debug, Default)]
733#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
734pub struct AuditLog_ProjectCreated_Data {
735    pub r#name: String,
737
738    pub r#title: String,
740}
741
742#[derive(Clone, Debug)]
744#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
745pub struct AuditLog_ProjectUpdated {
746    pub r#id: String,
748
749    pub r#changes_requested: AuditLog_ProjectUpdated_ChangesRequested,
750}
751
752#[derive(Clone, Debug, Default)]
754#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
755pub struct AuditLog_ProjectUpdated_ChangesRequested {
756    pub r#title: String,
758}
759
760#[derive(Clone, Debug, Default)]
762#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
763pub struct AuditLog_RateLimitDeleted {
764    pub r#id: String,
766}
767
768#[derive(Clone, Debug)]
770#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
771pub struct AuditLog_RateLimitUpdated {
772    pub r#id: String,
774
775    pub r#changes_requested: AuditLog_RateLimitUpdated_ChangesRequested,
776}
777
778#[derive(Clone, Debug, Default)]
780#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
781pub struct AuditLog_RateLimitUpdated_ChangesRequested {
782    pub r#max_requests_per_1_minute: i64,
784
785    pub r#max_tokens_per_1_minute: i64,
787
788    pub r#max_images_per_1_minute: i64,
790
791    pub r#max_audio_megabytes_per_1_minute: i64,
793
794    pub r#max_requests_per_1_day: i64,
796
797    pub r#batch_1_day_max_input_tokens: i64,
799}
800
801#[derive(Clone, Debug)]
803#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
804pub struct AuditLog_ServiceAccountCreated {
805    pub r#id: String,
807
808    pub r#data: AuditLog_ServiceAccountCreated_Data,
809}
810
811#[derive(Clone, Debug, Default)]
813#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
814pub struct AuditLog_ServiceAccountCreated_Data {
815    pub r#role: String,
817}
818
819#[derive(Clone, Debug, Default)]
821#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
822pub struct AuditLog_ServiceAccountDeleted {
823    pub r#id: String,
825}
826
827#[derive(Clone, Debug)]
829#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
830pub struct AuditLog_ServiceAccountUpdated {
831    pub r#id: String,
833
834    pub r#changes_requested: AuditLog_ServiceAccountUpdated_ChangesRequested,
835}
836
837#[derive(Clone, Debug, Default)]
839#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
840pub struct AuditLog_ServiceAccountUpdated_ChangesRequested {
841    pub r#role: String,
843}
844
845#[derive(Clone, Debug)]
847#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
848pub struct AuditLog_UserAdded {
849    pub r#id: String,
851
852    pub r#data: AuditLog_UserAdded_Data,
853}
854
855#[derive(Clone, Debug, Default)]
857#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
858pub struct AuditLog_UserAdded_Data {
859    pub r#role: String,
861}
862
863#[derive(Clone, Debug, Default)]
865#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
866pub struct AuditLog_UserDeleted {
867    pub r#id: String,
869}
870
871#[derive(Clone, Debug)]
873#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
874pub struct AuditLog_UserUpdated {
875    pub r#id: String,
877
878    pub r#changes_requested: AuditLog_UserUpdated_ChangesRequested,
879}
880
881#[derive(Clone, Debug, Default)]
883#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
884pub struct AuditLog_UserUpdated_ChangesRequested {
885    pub r#role: String,
887}
888
889#[derive(Clone, Debug, Default)]
891#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
892pub struct AutoChunkingStrategyRequestParam {
893    pub r#type: String,
895}
896
897#[derive(Clone, Debug)]
898#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
899pub struct Batch {
900    pub r#id: String,
901
902    pub r#object: String,
904
905    pub r#endpoint: String,
907
908    pub r#errors: Batch_Errors,
909
910    pub r#input_file_id: String,
912
913    pub r#completion_window: String,
915
916    pub r#status: String,
918
919    pub r#output_file_id: String,
922
923    pub r#error_file_id: String,
925
926    pub r#created_at: i64,
928
929    pub r#in_progress_at: i64,
931
932    pub r#expires_at: i64,
934
935    pub r#finalizing_at: i64,
937
938    pub r#completed_at: i64,
940
941    pub r#failed_at: i64,
943
944    pub r#expired_at: i64,
946
947    pub r#cancelling_at: i64,
949
950    pub r#cancelled_at: i64,
952
953    pub r#request_counts: Batch_RequestCounts,
954
955    pub r#metadata: Option<Metadata>,
956}
957
958#[derive(Clone, Debug, Default)]
960#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
961pub struct BatchRequestInput {
962    pub r#custom_id: String,
965
966    pub r#method: String,
968
969    pub r#url: String,
971}
972
973#[derive(Clone, Debug)]
975#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
976pub struct BatchRequestOutput {
977    pub r#id: String,
978
979    pub r#custom_id: String,
982
983    pub r#response: Option<BatchRequestOutput_Response>,
984
985    pub r#error: Option<BatchRequestOutput_Error>,
986}
987
988#[derive(Clone, Debug, Default)]
991#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
992pub struct BatchRequestOutput_Error {
993    pub r#code: String,
995
996    pub r#message: String,
998}
999
1000#[derive(Clone, Debug)]
1001#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1002pub struct BatchRequestOutput_Response {
1003    pub r#status_code: i64,
1005
1006    pub r#request_id: String,
1008
1009    pub r#body: BatchRequestOutput_Response_Body,
1011}
1012
1013#[derive(Clone, Debug, Default)]
1015#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1016pub struct BatchRequestOutput_Response_Body;
1017
1018#[derive(Clone, Debug)]
1019#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1020pub struct Batch_Errors {
1021    pub r#object: String,
1023
1024    pub r#data: Vec<Batch_Errors_Data>,
1025}
1026
1027#[derive(Clone, Debug, Default)]
1028#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1029pub struct Batch_Errors_Data {
1030    pub r#code: String,
1032
1033    pub r#message: String,
1035
1036    pub r#param: Option<String>,
1038
1039    pub r#line: Option<i64>,
1042}
1043
1044#[derive(Clone, Debug, Default)]
1046#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1047pub struct Batch_RequestCounts {
1048    pub r#total: i64,
1050
1051    pub r#completed: i64,
1053
1054    pub r#failed: i64,
1056}
1057
1058#[derive(Clone, Debug)]
1060#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1061pub struct Certificate {
1062    pub r#object: String,
1064
1065    pub r#id: String,
1067
1068    pub r#name: String,
1070
1071    pub r#created_at: i64,
1073
1074    pub r#certificate_details: Certificate_CertificateDetails,
1075
1076    pub r#active: bool,
1078}
1079
1080#[derive(Clone, Debug, Default)]
1081#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1082pub struct Certificate_CertificateDetails {
1083    pub r#valid_at: i64,
1085
1086    pub r#expires_at: i64,
1088
1089    pub r#content: String,
1091}
1092
1093#[derive(Clone, Debug, Default)]
1094#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1095pub struct ChatCompletionDeleted {
1096    pub r#object: String,
1098
1099    pub r#id: String,
1101
1102    pub r#deleted: bool,
1104}
1105
1106#[derive(Clone, Debug, Default)]
1109#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1110pub struct ChatCompletionFunctionCallOption {
1111    pub r#name: String,
1113}
1114
1115#[derive(Clone, Debug)]
1116#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1117pub struct ChatCompletionFunctions {
1118    pub r#description: String,
1121
1122    pub r#name: String,
1124
1125    pub r#parameters: FunctionParameters,
1126}
1127
1128#[derive(Clone, Debug)]
1130#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1131pub struct ChatCompletionList {
1132    pub r#object: String,
1134
1135    pub r#data: Vec<CreateChatCompletionResponse>,
1137
1138    pub r#first_id: String,
1140
1141    pub r#last_id: String,
1143
1144    pub r#has_more: bool,
1146}
1147
1148#[derive(Clone, Debug)]
1150#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1151pub struct ChatCompletionMessageList {
1152    pub r#object: String,
1154
1155    pub r#data: Vec<ChatCompletionMessageList_Data>,
1157
1158    pub r#first_id: String,
1160
1161    pub r#last_id: String,
1163
1164    pub r#has_more: bool,
1166}
1167
1168#[derive(Clone, Debug, Default)]
1169#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1170pub struct ChatCompletionMessageList_Data(pub ());
1171
1172#[derive(Clone, Debug, Default)]
1173#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1174pub struct ChatCompletionMessageList_Data_Variant2 {
1175    pub r#id: String,
1177}
1178
1179#[derive(Clone, Debug)]
1180#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1181pub struct ChatCompletionMessageToolCall {
1182    pub r#id: String,
1184
1185    pub r#type: String,
1187
1188    pub r#function: ChatCompletionMessageToolCall_Function,
1189}
1190
1191#[derive(Clone, Debug)]
1192#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1193pub struct ChatCompletionMessageToolCallChunk {
1194    pub r#index: i64,
1195
1196    pub r#id: String,
1198
1199    pub r#type: String,
1201
1202    pub r#function: ChatCompletionMessageToolCallChunk_Function,
1203}
1204
1205#[derive(Clone, Debug, Default)]
1206#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1207pub struct ChatCompletionMessageToolCallChunk_Function {
1208    pub r#name: String,
1210
1211    pub r#arguments: String,
1214}
1215
1216#[derive(Clone, Debug, Default)]
1218#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1219pub struct ChatCompletionMessageToolCall_Function {
1220    pub r#name: String,
1222
1223    pub r#arguments: String,
1226}
1227
1228#[derive(Clone, Debug)]
1230#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1231pub struct ChatCompletionMessageToolCalls(pub Vec<ChatCompletionMessageToolCall>);
1232
1233#[derive(Clone, Debug)]
1235#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1236pub struct ChatCompletionModalities(pub Vec<String>);
1237
1238#[derive(Clone, Debug)]
1240#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1241pub struct ChatCompletionNamedToolChoice {
1242    pub r#type: String,
1244
1245    pub r#function: ChatCompletionNamedToolChoice_Function,
1246}
1247
1248#[derive(Clone, Debug, Default)]
1249#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1250pub struct ChatCompletionNamedToolChoice_Function {
1251    pub r#name: String,
1253}
1254
1255#[derive(Clone, Debug)]
1257#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1258pub struct ChatCompletionRequestAssistantMessage {
1259    pub r#content: Option<ChatCompletionRequestAssistantMessage_Content>,
1260
1261    pub r#refusal: Option<String>,
1263
1264    pub r#role: String,
1266
1267    pub r#name: String,
1269
1270    pub r#audio: Option<ChatCompletionRequestAssistantMessage_Audio>,
1271
1272    pub r#tool_calls: ChatCompletionMessageToolCalls,
1273
1274    pub r#function_call: Option<ChatCompletionRequestAssistantMessage_FunctionCall>,
1275}
1276
1277#[derive(Clone, Debug)]
1278#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1279pub enum ChatCompletionRequestAssistantMessageContentPart {
1280    ChatCompletionRequestMessageContentPartText(ChatCompletionRequestMessageContentPartText),
1281
1282    ChatCompletionRequestMessageContentPartRefusal(ChatCompletionRequestMessageContentPartRefusal),
1283}
1284
1285#[derive(Clone, Debug, Default)]
1287#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1288pub struct ChatCompletionRequestAssistantMessage_Audio {
1289    pub r#id: String,
1291}
1292
1293#[derive(Clone, Debug)]
1295#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1296pub enum ChatCompletionRequestAssistantMessage_Content {
1297    String(String),
1299
1300    Array(Vec<ChatCompletionRequestAssistantMessageContentPart>),
1302}
1303
1304#[derive(Clone, Debug, Default)]
1306#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1307pub struct ChatCompletionRequestAssistantMessage_FunctionCall {
1308    pub r#arguments: String,
1311
1312    pub r#name: String,
1314}
1315
1316#[derive(Clone, Debug)]
1319#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1320pub struct ChatCompletionRequestDeveloperMessage {
1321    pub r#content: ChatCompletionRequestDeveloperMessage_Content,
1322
1323    pub r#role: String,
1325
1326    pub r#name: String,
1328}
1329
1330#[derive(Clone, Debug)]
1332#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1333pub enum ChatCompletionRequestDeveloperMessage_Content {
1334    String(String),
1336
1337    Array(Vec<ChatCompletionRequestMessageContentPartText>),
1339}
1340
1341#[derive(Clone, Debug, Default)]
1342#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1343pub struct ChatCompletionRequestFunctionMessage {
1344    pub r#role: String,
1346
1347    pub r#content: Option<String>,
1349
1350    pub r#name: String,
1352}
1353
1354#[derive(Clone, Debug)]
1355#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1356pub enum ChatCompletionRequestMessage {
1357    ChatCompletionRequestDeveloperMessage(ChatCompletionRequestDeveloperMessage),
1358
1359    ChatCompletionRequestSystemMessage(ChatCompletionRequestSystemMessage),
1360
1361    ChatCompletionRequestUserMessage(ChatCompletionRequestUserMessage),
1362
1363    ChatCompletionRequestAssistantMessage(ChatCompletionRequestAssistantMessage),
1364
1365    ChatCompletionRequestToolMessage(ChatCompletionRequestToolMessage),
1366
1367    ChatCompletionRequestFunctionMessage(ChatCompletionRequestFunctionMessage),
1368}
1369
1370#[derive(Clone, Debug)]
1372#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1373pub struct ChatCompletionRequestMessageContentPartAudio {
1374    pub r#type: String,
1376
1377    pub r#input_audio: ChatCompletionRequestMessageContentPartAudio_InputAudio,
1378}
1379
1380#[derive(Clone, Debug, Default)]
1381#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1382pub struct ChatCompletionRequestMessageContentPartAudio_InputAudio {
1383    pub r#data: String,
1385
1386    pub r#format: String,
1388}
1389
1390#[derive(Clone, Debug)]
1392#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1393pub struct ChatCompletionRequestMessageContentPartFile {
1394    pub r#type: String,
1396
1397    pub r#file: ChatCompletionRequestMessageContentPartFile_File,
1398}
1399
1400#[derive(Clone, Debug, Default)]
1401#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1402pub struct ChatCompletionRequestMessageContentPartFile_File {
1403    pub r#filename: String,
1406
1407    pub r#file_data: String,
1410
1411    pub r#file_id: String,
1413}
1414
1415#[derive(Clone, Debug)]
1417#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1418pub struct ChatCompletionRequestMessageContentPartImage {
1419    pub r#type: String,
1421
1422    pub r#image_url: ChatCompletionRequestMessageContentPartImage_ImageUrl,
1423}
1424
1425#[derive(Clone, Debug, Default)]
1426#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1427pub struct ChatCompletionRequestMessageContentPartImage_ImageUrl {
1428    pub r#url: String,
1430
1431    pub r#detail: String,
1433}
1434
1435#[derive(Clone, Debug, Default)]
1436#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1437pub struct ChatCompletionRequestMessageContentPartRefusal {
1438    pub r#type: String,
1440
1441    pub r#refusal: String,
1443}
1444
1445#[derive(Clone, Debug, Default)]
1447#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1448pub struct ChatCompletionRequestMessageContentPartText {
1449    pub r#type: String,
1451
1452    pub r#text: String,
1454}
1455
1456#[derive(Clone, Debug)]
1459#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1460pub struct ChatCompletionRequestSystemMessage {
1461    pub r#content: ChatCompletionRequestSystemMessage_Content,
1462
1463    pub r#role: String,
1465
1466    pub r#name: String,
1468}
1469
1470#[derive(Clone, Debug)]
1471#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1472pub struct ChatCompletionRequestSystemMessageContentPart(pub ChatCompletionRequestMessageContentPartText);
1473
1474#[derive(Clone, Debug)]
1476#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1477pub enum ChatCompletionRequestSystemMessage_Content {
1478    String(String),
1480
1481    Array(Vec<ChatCompletionRequestSystemMessageContentPart>),
1483}
1484
1485#[derive(Clone, Debug)]
1486#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1487pub struct ChatCompletionRequestToolMessage {
1488    pub r#role: String,
1490
1491    pub r#content: ChatCompletionRequestToolMessage_Content,
1492
1493    pub r#tool_call_id: String,
1495}
1496
1497#[derive(Clone, Debug)]
1498#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1499pub struct ChatCompletionRequestToolMessageContentPart(pub ChatCompletionRequestMessageContentPartText);
1500
1501#[derive(Clone, Debug)]
1503#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1504pub enum ChatCompletionRequestToolMessage_Content {
1505    String(String),
1507
1508    Array(Vec<ChatCompletionRequestToolMessageContentPart>),
1510}
1511
1512#[derive(Clone, Debug)]
1515#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1516pub struct ChatCompletionRequestUserMessage {
1517    pub r#content: ChatCompletionRequestUserMessage_Content,
1518
1519    pub r#role: String,
1521
1522    pub r#name: String,
1524}
1525
1526#[derive(Clone, Debug)]
1527#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1528pub enum ChatCompletionRequestUserMessageContentPart {
1529    ChatCompletionRequestMessageContentPartText(ChatCompletionRequestMessageContentPartText),
1530
1531    ChatCompletionRequestMessageContentPartImage(ChatCompletionRequestMessageContentPartImage),
1532
1533    ChatCompletionRequestMessageContentPartAudio(ChatCompletionRequestMessageContentPartAudio),
1534
1535    ChatCompletionRequestMessageContentPartFile(ChatCompletionRequestMessageContentPartFile),
1536}
1537
1538#[derive(Clone, Debug)]
1540#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1541pub enum ChatCompletionRequestUserMessage_Content {
1542    String(String),
1544
1545    Array(Vec<ChatCompletionRequestUserMessageContentPart>),
1547}
1548
1549#[derive(Clone, Debug)]
1551#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1552pub struct ChatCompletionResponseMessage {
1553    pub r#content: Option<String>,
1555
1556    pub r#refusal: Option<String>,
1558
1559    pub r#tool_calls: ChatCompletionMessageToolCalls,
1560
1561    pub r#annotations: Vec<ChatCompletionResponseMessage_Annotations>,
1564
1565    pub r#role: String,
1567
1568    pub r#function_call: ChatCompletionResponseMessage_FunctionCall,
1569
1570    pub r#audio: Option<ChatCompletionResponseMessage_Audio>,
1571}
1572
1573#[derive(Clone, Debug)]
1575#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1576pub struct ChatCompletionResponseMessage_Annotations {
1577    pub r#type: String,
1579
1580    pub r#url_citation: ChatCompletionResponseMessage_Annotations_UrlCitation,
1581}
1582
1583#[derive(Clone, Debug, Default)]
1585#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1586pub struct ChatCompletionResponseMessage_Annotations_UrlCitation {
1587    pub r#end_index: i64,
1589
1590    pub r#start_index: i64,
1592
1593    pub r#url: String,
1595
1596    pub r#title: String,
1598}
1599
1600#[derive(Clone, Debug, Default)]
1603#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1604pub struct ChatCompletionResponseMessage_Audio {
1605    pub r#id: String,
1607
1608    pub r#expires_at: i64,
1611
1612    pub r#data: String,
1615
1616    pub r#transcript: String,
1618}
1619
1620#[derive(Clone, Debug, Default)]
1622#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1623pub struct ChatCompletionResponseMessage_FunctionCall {
1624    pub r#arguments: String,
1627
1628    pub r#name: String,
1630}
1631
1632#[derive(Clone, Debug)]
1634#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1635pub struct ChatCompletionRole(pub String);
1636
1637#[derive(Clone, Debug, Default)]
1639#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1640pub struct ChatCompletionStreamOptions {
1641    pub r#include_usage: bool,
1644}
1645
1646#[derive(Clone, Debug)]
1648#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1649pub struct ChatCompletionStreamResponseDelta {
1650    pub r#content: Option<String>,
1652
1653    pub r#function_call: ChatCompletionStreamResponseDelta_FunctionCall,
1654
1655    pub r#tool_calls: Vec<ChatCompletionMessageToolCallChunk>,
1656
1657    pub r#role: String,
1659
1660    pub r#refusal: Option<String>,
1662}
1663
1664#[derive(Clone, Debug, Default)]
1666#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1667pub struct ChatCompletionStreamResponseDelta_FunctionCall {
1668    pub r#arguments: String,
1671
1672    pub r#name: String,
1674}
1675
1676#[derive(Clone, Debug)]
1677#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1678pub struct ChatCompletionTokenLogprob {
1679    pub r#token: String,
1681
1682    pub r#logprob: f64,
1685
1686    pub r#bytes: Option<Vec<i64>>,
1689
1690    pub r#top_logprobs: Vec<ChatCompletionTokenLogprob_TopLogprobs>,
1693}
1694
1695#[derive(Clone, Debug)]
1696#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1697pub struct ChatCompletionTokenLogprob_TopLogprobs {
1698    pub r#token: String,
1700
1701    pub r#logprob: f64,
1704
1705    pub r#bytes: Option<Vec<i64>>,
1708}
1709
1710#[derive(Clone, Debug)]
1711#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1712pub struct ChatCompletionTool {
1713    pub r#type: String,
1715
1716    pub r#function: FunctionObject,
1717}
1718
1719#[derive(Clone, Debug)]
1721#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1722pub enum ChatCompletionToolChoiceOption {
1723    String(String),
1726
1727    ChatCompletionNamedToolChoice(ChatCompletionNamedToolChoice),
1728}
1729
1730#[derive(Clone, Debug, Default)]
1732#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1733pub struct ChunkingStrategyRequestParam;
1734
1735#[derive(Clone, Debug, Default)]
1737#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1738pub struct Click {
1739    pub r#type: String,
1741
1742    pub r#button: String,
1744
1745    pub r#x: i64,
1747
1748    pub r#y: i64,
1750}
1751
1752#[derive(Clone, Debug)]
1754#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1755pub struct CodeInterpreterFileOutput {
1756    pub r#type: String,
1758
1759    pub r#files: Vec<CodeInterpreterFileOutput_Files>,
1760}
1761
1762#[derive(Clone, Debug, Default)]
1763#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1764pub struct CodeInterpreterFileOutput_Files {
1765    pub r#mime_type: String,
1767
1768    pub r#file_id: String,
1770}
1771
1772#[derive(Clone, Debug, Default)]
1774#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1775pub struct CodeInterpreterTextOutput {
1776    pub r#type: String,
1778
1779    pub r#logs: String,
1781}
1782
1783#[derive(Clone, Debug)]
1785#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1786pub struct CodeInterpreterToolCall {
1787    pub r#id: String,
1789
1790    pub r#type: String,
1792
1793    pub r#code: String,
1795
1796    pub r#status: String,
1798
1799    pub r#results: Vec<CodeInterpreterToolOutput>,
1801}
1802
1803#[derive(Clone, Debug)]
1804#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1805pub enum CodeInterpreterToolOutput {
1806    CodeInterpreterTextOutput(CodeInterpreterTextOutput),
1807
1808    CodeInterpreterFileOutput(CodeInterpreterFileOutput),
1809}
1810
1811#[derive(Clone, Debug)]
1814#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1815pub struct ComparisonFilter {
1816    pub r#type: String,
1818
1819    pub r#key: String,
1821
1822    pub r#value: ComparisonFilter_Value,
1823}
1824
1825#[derive(Clone, Debug)]
1828#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1829pub enum ComparisonFilter_Value {
1830    String(String),
1831
1832    Number(f64),
1833
1834    Boolean(bool),
1835}
1836
1837#[derive(Clone, Debug)]
1838#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1839pub struct CompleteUploadRequest {
1840    pub r#part_ids: Vec<String>,
1842
1843    pub r#md5: String,
1846}
1847
1848#[derive(Clone, Debug)]
1850#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1851pub struct CompletionUsage {
1852    pub r#completion_tokens: i64,
1854
1855    pub r#prompt_tokens: i64,
1857
1858    pub r#total_tokens: i64,
1860
1861    pub r#completion_tokens_details: CompletionUsage_CompletionTokensDetails,
1862
1863    pub r#prompt_tokens_details: CompletionUsage_PromptTokensDetails,
1864}
1865
1866#[derive(Clone, Debug, Default)]
1868#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1869pub struct CompletionUsage_CompletionTokensDetails {
1870    pub r#accepted_prediction_tokens: i64,
1873
1874    pub r#audio_tokens: i64,
1876
1877    pub r#reasoning_tokens: i64,
1879
1880    pub r#rejected_prediction_tokens: i64,
1883}
1884
1885#[derive(Clone, Debug, Default)]
1887#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1888pub struct CompletionUsage_PromptTokensDetails {
1889    pub r#audio_tokens: i64,
1891
1892    pub r#cached_tokens: i64,
1894}
1895
1896#[derive(Clone, Debug)]
1898#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1899pub struct CompoundFilter {
1900    pub r#type: String,
1902
1903    pub r#filters: Vec<CompoundFilter_Filters>,
1905}
1906
1907#[derive(Clone, Debug)]
1908#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1909pub enum CompoundFilter_Filters {
1910    ComparisonFilter(ComparisonFilter),
1911}
1912
1913#[derive(Clone, Debug)]
1914#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1915pub enum ComputerAction {
1916    Click(Click),
1917
1918    DoubleClick(DoubleClick),
1919
1920    Drag(Drag),
1921
1922    KeyPress(KeyPress),
1923
1924    Move(Move),
1925
1926    Screenshot(Screenshot),
1927
1928    Scroll(Scroll),
1929
1930    Type(Type),
1931
1932    Wait(Wait),
1933}
1934
1935#[derive(Clone, Debug)]
1937#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1938pub struct ComputerCallOutputItemParam {
1939    pub r#id: ComputerCallOutputItemParam_Id,
1940
1941    pub r#call_id: String,
1943
1944    pub r#type: String,
1946
1947    pub r#output: ComputerScreenshotImage,
1948
1949    pub r#acknowledged_safety_checks: ComputerCallOutputItemParam_AcknowledgedSafetyChecks,
1950
1951    pub r#status: ComputerCallOutputItemParam_Status,
1952}
1953
1954#[derive(Clone, Debug)]
1955#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1956pub enum ComputerCallOutputItemParam_AcknowledgedSafetyChecks {
1957    Array(Vec<ComputerCallSafetyCheckParam>),
1960
1961    Null(()),
1962}
1963
1964pub type ComputerCallOutputItemParam_Id = Option<String>;
1965
1966pub type ComputerCallOutputItemParam_Status = Option<String>;
1967
1968#[derive(Clone, Debug)]
1970#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1971pub struct ComputerCallSafetyCheckParam {
1972    pub r#id: String,
1974
1975    pub r#code: ComputerCallSafetyCheckParam_Code,
1976
1977    pub r#message: ComputerCallSafetyCheckParam_Message,
1978}
1979
1980pub type ComputerCallSafetyCheckParam_Code = Option<String>;
1981
1982pub type ComputerCallSafetyCheckParam_Message = Option<String>;
1983
1984#[derive(Clone, Debug, Default)]
1986#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
1987pub struct ComputerScreenshotImage {
1988    pub r#type: String,
1990
1991    pub r#image_url: String,
1993
1994    pub r#file_id: String,
1996}
1997
1998#[derive(Clone, Debug)]
2000#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2001pub struct ComputerToolCall {
2002    pub r#type: String,
2004
2005    pub r#id: String,
2007
2008    pub r#call_id: String,
2010
2011    pub r#action: ComputerAction,
2012
2013    pub r#pending_safety_checks: Vec<ComputerToolCallSafetyCheck>,
2015
2016    pub r#status: String,
2018}
2019
2020#[derive(Clone, Debug)]
2022#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2023pub struct ComputerToolCallOutput {
2024    pub r#type: String,
2026
2027    pub r#id: String,
2029
2030    pub r#call_id: String,
2032
2033    pub r#acknowledged_safety_checks: Vec<ComputerToolCallSafetyCheck>,
2036
2037    pub r#output: ComputerScreenshotImage,
2038
2039    pub r#status: String,
2041}
2042
2043#[derive(Clone, Debug, Default)]
2044#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2045pub struct ComputerToolCallOutputResource(pub ());
2046
2047#[derive(Clone, Debug, Default)]
2048#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2049pub struct ComputerToolCallOutputResource_Variant2 {
2050    pub r#id: String,
2052}
2053
2054#[derive(Clone, Debug, Default)]
2056#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2057pub struct ComputerToolCallSafetyCheck {
2058    pub r#id: String,
2060
2061    pub r#code: String,
2063
2064    pub r#message: String,
2066}
2067
2068#[derive(Clone, Debug, Default)]
2070#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2071pub struct ComputerUsePreviewTool {
2072    pub r#type: String,
2074
2075    pub r#environment: String,
2077
2078    pub r#display_width: i64,
2080
2081    pub r#display_height: i64,
2083}
2084
2085#[derive(Clone, Debug)]
2087#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2088pub enum Content {
2089    InputContent(InputContent),
2090
2091    OutputContent(OutputContent),
2092}
2093
2094#[derive(Clone, Debug, Default)]
2096#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2097pub struct Coordinate {
2098    pub r#x: i64,
2100
2101    pub r#y: i64,
2103}
2104
2105#[derive(Clone, Debug)]
2107#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2108pub struct CostsResult {
2109    pub r#object: String,
2110
2111    pub r#amount: CostsResult_Amount,
2112
2113    pub r#line_item: Option<String>,
2116
2117    pub r#project_id: Option<String>,
2120}
2121
2122#[derive(Clone, Debug, Default)]
2124#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2125pub struct CostsResult_Amount {
2126    pub r#value: f64,
2128
2129    pub r#currency: String,
2131}
2132
2133#[derive(Clone, Debug)]
2134#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2135pub struct CreateAssistantRequest {
2136    pub r#model: CreateAssistantRequest_Model,
2137
2138    pub r#name: Option<String>,
2140
2141    pub r#description: Option<String>,
2143
2144    pub r#instructions: Option<String>,
2146
2147    pub r#reasoning_effort: Option<ReasoningEffort>,
2148
2149    pub r#tools: Vec<CreateAssistantRequest_Tools>,
2151
2152    pub r#tool_resources: Option<CreateAssistantRequest_ToolResources>,
2153
2154    pub r#metadata: Option<Metadata>,
2155
2156    pub r#temperature: Option<f64>,
2158
2159    pub r#top_p: Option<f64>,
2163
2164    pub r#response_format: Option<AssistantsApiResponseFormatOption>,
2165}
2166
2167#[derive(Clone, Debug)]
2169#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2170pub enum CreateAssistantRequest_Model {
2171    String(String),
2172
2173    AssistantSupportedModels(AssistantSupportedModels),
2174}
2175
2176#[derive(Clone, Debug)]
2178#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2179pub struct CreateAssistantRequest_ToolResources {
2180    pub r#code_interpreter: CreateAssistantRequest_ToolResources_CodeInterpreter,
2181
2182    pub r#file_search: CreateAssistantRequest_ToolResources_FileSearch,
2183}
2184
2185#[derive(Clone, Debug)]
2186#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2187pub struct CreateAssistantRequest_ToolResources_CodeInterpreter {
2188    pub r#file_ids: Vec<String>,
2191}
2192
2193#[derive(Clone, Debug)]
2194#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2195pub struct CreateAssistantRequest_ToolResources_FileSearch {
2196    pub r#vector_store_ids: Vec<String>,
2199
2200    pub r#vector_stores: Vec<CreateAssistantRequest_ToolResources_FileSearch_VectorStores_Item>,
2204}
2205
2206#[derive(Clone, Debug)]
2207#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2208pub struct CreateAssistantRequest_ToolResources_FileSearch_VectorStores_Item {
2209    pub r#file_ids: Vec<String>,
2212
2213    pub r#chunking_strategy: CreateAssistantRequest_ToolResources_FileSearch_VectorStores_Item_ChunkingStrategy,
2215
2216    pub r#metadata: Metadata,
2217}
2218
2219#[derive(Clone, Debug, Default)]
2221#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2222pub struct CreateAssistantRequest_ToolResources_FileSearch_VectorStores_Item_ChunkingStrategy;
2223
2224#[derive(Clone, Debug)]
2225#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2226pub enum CreateAssistantRequest_Tools {
2227    AssistantToolsCode(AssistantToolsCode),
2228
2229    AssistantToolsFileSearch(AssistantToolsFileSearch),
2230
2231    AssistantToolsFunction(AssistantToolsFunction),
2232}
2233
2234#[derive(Clone, Debug, Default)]
2235#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2236pub struct CreateChatCompletionRequest(pub ());
2237
2238#[derive(Clone, Debug)]
2239#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2240pub struct CreateChatCompletionRequest_Variant2 {
2241    pub r#messages: Vec<ChatCompletionRequestMessage>,
2243
2244    pub r#model: ModelIdsShared,
2246
2247    pub r#modalities: Option<ResponseModalities>,
2248
2249    pub r#reasoning_effort: Option<ReasoningEffort>,
2250
2251    pub r#max_completion_tokens: Option<i64>,
2255
2256    pub r#frequency_penalty: Option<f64>,
2258
2259    pub r#presence_penalty: Option<f64>,
2261
2262    pub r#web_search_options: CreateChatCompletionRequest_Variant2_WebSearchOptions,
2263
2264    pub r#top_logprobs: Option<i64>,
2268
2269    pub r#response_format: CreateChatCompletionRequest_Variant2_ResponseFormat,
2270
2271    pub r#audio: Option<CreateChatCompletionRequest_Variant2_Audio>,
2272
2273    pub r#store: Option<bool>,
2277
2278    pub r#stream: Option<bool>,
2282
2283    pub r#stop: Option<StopConfiguration>,
2284
2285    pub r#logit_bias: Option<CreateChatCompletionRequest_Variant2_LogitBias>,
2287
2288    pub r#logprobs: Option<bool>,
2290
2291    pub r#max_tokens: Option<i64>,
2294
2295    pub r#n: Option<i64>,
2297
2298    pub r#prediction: PredictionContent,
2299
2300    pub r#seed: Option<i64>,
2302
2303    pub r#stream_options: Option<ChatCompletionStreamOptions>,
2304
2305    pub r#tools: Vec<ChatCompletionTool>,
2307
2308    pub r#tool_choice: ChatCompletionToolChoiceOption,
2309
2310    pub r#parallel_tool_calls: ParallelToolCalls,
2311
2312    pub r#function_call: CreateChatCompletionRequest_Variant2_FunctionCall,
2313
2314    pub r#functions: Vec<ChatCompletionFunctions>,
2316}
2317
2318#[derive(Clone, Debug, Default)]
2320#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2321pub struct CreateChatCompletionRequest_Variant2_LogitBias;
2322
2323#[derive(Clone, Debug)]
2325#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2326pub struct CreateChatCompletionRequest_Variant2_Audio {
2327    pub r#voice: VoiceIdsShared,
2329
2330    pub r#format: String,
2332}
2333
2334#[derive(Clone, Debug)]
2336#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2337pub enum CreateChatCompletionRequest_Variant2_FunctionCall {
2338    String(String),
2341
2342    ChatCompletionFunctionCallOption(ChatCompletionFunctionCallOption),
2343}
2344
2345#[derive(Clone, Debug)]
2346#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2347pub struct CreateChatCompletionRequest_Variant2_Prediction(pub PredictionContent);
2348
2349#[derive(Clone, Debug)]
2351#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2352pub enum CreateChatCompletionRequest_Variant2_ResponseFormat {
2353    ResponseFormatText(ResponseFormatText),
2354
2355    ResponseFormatJsonSchema(ResponseFormatJsonSchema),
2356
2357    ResponseFormatJsonObject(ResponseFormatJsonObject),
2358}
2359
2360#[derive(Clone, Debug)]
2362#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2363pub struct CreateChatCompletionRequest_Variant2_WebSearchOptions {
2364    pub r#user_location: Option<CreateChatCompletionRequest_Variant2_WebSearchOptions_UserLocation>,
2365
2366    pub r#search_context_size: WebSearchContextSize,
2367}
2368
2369#[derive(Clone, Debug)]
2371#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2372pub struct CreateChatCompletionRequest_Variant2_WebSearchOptions_UserLocation {
2373    pub r#type: String,
2375
2376    pub r#approximate: WebSearchLocation,
2377}
2378
2379#[derive(Clone, Debug)]
2382#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2383pub struct CreateChatCompletionResponse {
2384    pub r#id: String,
2386
2387    pub r#choices: Vec<CreateChatCompletionResponse_Choices>,
2389
2390    pub r#created: i64,
2392
2393    pub r#model: String,
2395
2396    pub r#service_tier: Option<ServiceTier>,
2397
2398    pub r#system_fingerprint: String,
2401
2402    pub r#object: String,
2404
2405    pub r#usage: CompletionUsage,
2406}
2407
2408#[derive(Clone, Debug)]
2409#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2410pub struct CreateChatCompletionResponse_Choices {
2411    pub r#finish_reason: String,
2413
2414    pub r#index: i64,
2416
2417    pub r#message: ChatCompletionResponseMessage,
2418
2419    pub r#logprobs: Option<CreateChatCompletionResponse_Choices_Logprobs>,
2420}
2421
2422#[derive(Clone, Debug)]
2424#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2425pub struct CreateChatCompletionResponse_Choices_Logprobs {
2426    pub r#content: Option<Vec<ChatCompletionTokenLogprob>>,
2428
2429    pub r#refusal: Option<Vec<ChatCompletionTokenLogprob>>,
2431}
2432
2433#[derive(Clone, Debug)]
2436#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2437pub struct CreateChatCompletionStreamResponse {
2438    pub r#id: String,
2440
2441    pub r#choices: Vec<CreateChatCompletionStreamResponse_Choices>,
2443
2444    pub r#created: i64,
2446
2447    pub r#model: String,
2449
2450    pub r#service_tier: Option<ServiceTier>,
2451
2452    pub r#system_fingerprint: String,
2455
2456    pub r#object: String,
2458
2459    pub r#usage: Option<CompletionUsage>,
2462}
2463
2464#[derive(Clone, Debug)]
2465#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2466pub struct CreateChatCompletionStreamResponse_Choices {
2467    pub r#delta: ChatCompletionStreamResponseDelta,
2468
2469    pub r#logprobs: Option<CreateChatCompletionStreamResponse_Choices_Logprobs>,
2470
2471    pub r#finish_reason: Option<String>,
2473
2474    pub r#index: i64,
2476}
2477
2478#[derive(Clone, Debug)]
2480#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2481pub struct CreateChatCompletionStreamResponse_Choices_Logprobs {
2482    pub r#content: Option<Vec<ChatCompletionTokenLogprob>>,
2484
2485    pub r#refusal: Option<Vec<ChatCompletionTokenLogprob>>,
2487}
2488
2489#[derive(Clone, Debug)]
2490#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2491pub struct CreateCompletionRequest {
2492    pub r#model: CreateCompletionRequest_Model,
2493
2494    pub r#prompt: Option<CreateCompletionRequest_Prompt>,
2495
2496    pub r#best_of: Option<i64>,
2499
2500    pub r#echo: Option<bool>,
2502
2503    pub r#frequency_penalty: Option<f64>,
2505
2506    pub r#logit_bias: Option<CreateCompletionRequest_LogitBias>,
2508
2509    pub r#logprobs: Option<i64>,
2512
2513    pub r#max_tokens: Option<i64>,
2516
2517    pub r#n: Option<i64>,
2519
2520    pub r#presence_penalty: Option<f64>,
2522
2523    pub r#seed: Option<i64>,
2527
2528    pub r#stop: Option<StopConfiguration>,
2529
2530    pub r#stream: Option<bool>,
2532
2533    pub r#stream_options: Option<ChatCompletionStreamOptions>,
2534
2535    pub r#suffix: Option<String>,
2537
2538    pub r#temperature: Option<f64>,
2540
2541    pub r#top_p: Option<f64>,
2545
2546    pub r#user: String,
2549}
2550
2551#[derive(Clone, Debug, Default)]
2553#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2554pub struct CreateCompletionRequest_LogitBias;
2555
2556pub type CreateCompletionRequest_Model = String;
2558
2559#[derive(Clone, Debug)]
2562#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2563pub enum CreateCompletionRequest_Prompt {
2564    String(String),
2565
2566    ArrayOfStrings(Vec<String>),
2567
2568    ArrayOfIntegers(Vec<i64>),
2569
2570    Array(Vec<Vec<i64>>),
2571}
2572
2573#[derive(Clone, Debug)]
2575#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2576pub struct CreateCompletionResponse {
2577    pub r#id: String,
2579
2580    pub r#choices: Vec<CreateCompletionResponse_Choices>,
2582
2583    pub r#created: i64,
2585
2586    pub r#model: String,
2588
2589    pub r#system_fingerprint: String,
2592
2593    pub r#object: String,
2595
2596    pub r#usage: CompletionUsage,
2597}
2598
2599#[derive(Clone, Debug)]
2600#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2601pub struct CreateCompletionResponse_Choices {
2602    pub r#finish_reason: String,
2604
2605    pub r#index: i64,
2606
2607    pub r#logprobs: Option<CreateCompletionResponse_Choices_Logprobs>,
2608
2609    pub r#text: String,
2610}
2611
2612#[derive(Clone, Debug)]
2613#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2614pub struct CreateCompletionResponse_Choices_Logprobs {
2615    pub r#text_offset: Vec<i64>,
2616
2617    pub r#token_logprobs: Vec<f64>,
2618
2619    pub r#tokens: Vec<String>,
2620
2621    pub r#top_logprobs: Vec<CreateCompletionResponse_Choices_Logprobs_TopLogprobs_Item>,
2622}
2623
2624#[derive(Clone, Debug, Default)]
2625#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2626pub struct CreateCompletionResponse_Choices_Logprobs_TopLogprobs_Item;
2627
2628#[derive(Clone, Debug)]
2629#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2630pub struct CreateEmbeddingRequest {
2631    pub r#input: CreateEmbeddingRequest_Input,
2632
2633    pub r#model: CreateEmbeddingRequest_Model,
2634
2635    pub r#encoding_format: String,
2637
2638    pub r#dimensions: i64,
2640
2641    pub r#user: String,
2644}
2645
2646#[derive(Clone, Debug)]
2648#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2649pub enum CreateEmbeddingRequest_Input {
2650    String(String),
2652
2653    ArrayOfStrings(Vec<String>),
2655
2656    ArrayOfIntegers(Vec<i64>),
2658
2659    Array(Vec<Vec<i64>>),
2662}
2663
2664pub type CreateEmbeddingRequest_Model = String;
2666
2667#[derive(Clone, Debug)]
2668#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2669pub struct CreateEmbeddingResponse {
2670    pub r#data: Vec<Embedding>,
2672
2673    pub r#model: String,
2675
2676    pub r#object: String,
2678
2679    pub r#usage: CreateEmbeddingResponse_Usage,
2680}
2681
2682#[derive(Clone, Debug, Default)]
2684#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2685pub struct CreateEmbeddingResponse_Usage {
2686    pub r#prompt_tokens: i64,
2688
2689    pub r#total_tokens: i64,
2691}
2692
2693#[derive(Clone, Debug)]
2695#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2696pub struct CreateEvalCompletionsRunDataSource {
2697    pub r#type: String,
2699
2700    pub r#input_messages: CreateEvalCompletionsRunDataSource_InputMessages,
2701
2702    pub r#sampling_params: CreateEvalCompletionsRunDataSource_SamplingParams,
2703
2704    pub r#model: String,
2706
2707    pub r#source: CreateEvalCompletionsRunDataSource_Source,
2708}
2709
2710#[derive(Clone, Debug)]
2711#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2712pub enum CreateEvalCompletionsRunDataSource_InputMessages {
2713    CreateEvalCompletionsRunDataSource_InputMessages_Variant1(CreateEvalCompletionsRunDataSource_InputMessages_Variant1),
2714
2715    CreateEvalCompletionsRunDataSource_InputMessages_Variant2(CreateEvalCompletionsRunDataSource_InputMessages_Variant2),
2716}
2717
2718#[derive(Clone, Debug)]
2719#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2720pub struct CreateEvalCompletionsRunDataSource_InputMessages_Variant1 {
2721    pub r#type: String,
2723
2724    pub r#template: Vec<CreateEvalCompletionsRunDataSource_InputMessages_Variant1_Template>,
2726}
2727
2728#[derive(Clone, Debug)]
2729#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2730pub enum CreateEvalCompletionsRunDataSource_InputMessages_Variant1_Template {
2731    EasyInputMessage(EasyInputMessage),
2732
2733    EvalItem(EvalItem),
2734}
2735
2736#[derive(Clone, Debug, Default)]
2737#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2738pub struct CreateEvalCompletionsRunDataSource_InputMessages_Variant2 {
2739    pub r#type: String,
2741
2742    pub r#item_reference: String,
2744}
2745
2746#[derive(Clone, Debug, Default)]
2747#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2748pub struct CreateEvalCompletionsRunDataSource_SamplingParams {
2749    pub r#temperature: f64,
2751
2752    pub r#max_completion_tokens: i64,
2754
2755    pub r#top_p: f64,
2758
2759    pub r#seed: i64,
2761}
2762
2763#[derive(Clone, Debug)]
2764#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2765pub enum CreateEvalCompletionsRunDataSource_Source {
2766    EvalJsonlFileContentSource(EvalJsonlFileContentSource),
2767
2768    EvalJsonlFileIdSource(EvalJsonlFileIdSource),
2769
2770    EvalStoredCompletionsSource(EvalStoredCompletionsSource),
2771}
2772
2773#[derive(Clone, Debug)]
2776#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2777pub struct CreateEvalCustomDataSourceConfig {
2778    pub r#type: String,
2780
2781    pub r#item_schema: CreateEvalCustomDataSourceConfig_ItemSchema,
2783
2784    pub r#include_sample_schema: bool,
2787}
2788
2789#[derive(Clone, Debug, Default)]
2791#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2792pub struct CreateEvalCustomDataSourceConfig_ItemSchema;
2793
2794#[derive(Clone, Debug, Default)]
2796#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2797pub struct CreateEvalItem;
2798
2799#[derive(Clone, Debug, Default)]
2800#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2801pub struct CreateEvalItem_Variant1 {
2802    pub r#role: String,
2804
2805    pub r#content: String,
2807}
2808
2809#[derive(Clone, Debug)]
2812#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2813pub struct CreateEvalJsonlRunDataSource {
2814    pub r#type: String,
2816
2817    pub r#source: CreateEvalJsonlRunDataSource_Source,
2818}
2819
2820#[derive(Clone, Debug)]
2821#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2822pub enum CreateEvalJsonlRunDataSource_Source {
2823    EvalJsonlFileContentSource(EvalJsonlFileContentSource),
2824
2825    EvalJsonlFileIdSource(EvalJsonlFileIdSource),
2826}
2827
2828#[derive(Clone, Debug)]
2831#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2832pub struct CreateEvalLabelModelGrader {
2833    pub r#type: String,
2835
2836    pub r#name: String,
2838
2839    pub r#model: String,
2841
2842    pub r#input: Vec<CreateEvalItem>,
2844
2845    pub r#labels: Vec<String>,
2847
2848    pub r#passing_labels: Vec<String>,
2850}
2851
2852#[derive(Clone, Debug)]
2855#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2856pub struct CreateEvalLogsDataSourceConfig {
2857    pub r#type: String,
2859
2860    pub r#metadata: CreateEvalLogsDataSourceConfig_Metadata,
2862}
2863
2864#[derive(Clone, Debug, Default)]
2866#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2867pub struct CreateEvalLogsDataSourceConfig_Metadata;
2868
2869#[derive(Clone, Debug)]
2870#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2871pub struct CreateEvalRequest {
2872    pub r#name: String,
2874
2875    pub r#metadata: Option<Metadata>,
2876
2877    pub r#data_source_config: CreateEvalRequest_DataSourceConfig,
2878
2879    pub r#testing_criteria: Vec<CreateEvalRequest_TestingCriteria>,
2881}
2882
2883#[derive(Clone, Debug, Default)]
2885#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2886pub struct CreateEvalRequest_DataSourceConfig;
2887
2888#[derive(Clone, Debug)]
2889#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2890pub enum CreateEvalRequest_TestingCriteria {
2891    CreateEvalLabelModelGrader(CreateEvalLabelModelGrader),
2892
2893    EvalStringCheckGrader(EvalStringCheckGrader),
2894
2895    EvalTextSimilarityGrader(EvalTextSimilarityGrader),
2896
2897    EvalPythonGrader(EvalPythonGrader),
2898
2899    EvalScoreModelGrader(EvalScoreModelGrader),
2900}
2901
2902#[derive(Clone, Debug)]
2904#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2905pub struct CreateEvalResponsesRunDataSource {
2906    pub r#type: String,
2908
2909    pub r#input_messages: CreateEvalResponsesRunDataSource_InputMessages,
2910
2911    pub r#sampling_params: CreateEvalResponsesRunDataSource_SamplingParams,
2912
2913    pub r#model: String,
2915
2916    pub r#source: CreateEvalResponsesRunDataSource_Source,
2917}
2918
2919#[derive(Clone, Debug)]
2920#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2921pub enum CreateEvalResponsesRunDataSource_InputMessages {
2922    CreateEvalResponsesRunDataSource_InputMessages_Variant1(CreateEvalResponsesRunDataSource_InputMessages_Variant1),
2923
2924    CreateEvalResponsesRunDataSource_InputMessages_Variant2(CreateEvalResponsesRunDataSource_InputMessages_Variant2),
2925}
2926
2927#[derive(Clone, Debug)]
2928#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2929pub struct CreateEvalResponsesRunDataSource_InputMessages_Variant1 {
2930    pub r#type: String,
2932
2933    pub r#template: Vec<CreateEvalResponsesRunDataSource_InputMessages_Variant1_Template>,
2935}
2936
2937#[derive(Clone, Debug)]
2938#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2939pub enum CreateEvalResponsesRunDataSource_InputMessages_Variant1_Template {
2940    CreateEvalResponsesRunDataSource_InputMessages_Variant1_Template_Variant1(CreateEvalResponsesRunDataSource_InputMessages_Variant1_Template_Variant1),
2941
2942    EvalItem(EvalItem),
2943}
2944
2945#[derive(Clone, Debug, Default)]
2946#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2947pub struct CreateEvalResponsesRunDataSource_InputMessages_Variant1_Template_Variant1 {
2948    pub r#role: String,
2950
2951    pub r#content: String,
2953}
2954
2955#[derive(Clone, Debug, Default)]
2956#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2957pub struct CreateEvalResponsesRunDataSource_InputMessages_Variant2 {
2958    pub r#type: String,
2960
2961    pub r#item_reference: String,
2963}
2964
2965#[derive(Clone, Debug, Default)]
2966#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2967pub struct CreateEvalResponsesRunDataSource_SamplingParams {
2968    pub r#temperature: f64,
2970
2971    pub r#max_completion_tokens: i64,
2973
2974    pub r#top_p: f64,
2977
2978    pub r#seed: i64,
2980}
2981
2982#[derive(Clone, Debug)]
2983#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2984pub enum CreateEvalResponsesRunDataSource_Source {
2985    EvalJsonlFileContentSource(EvalJsonlFileContentSource),
2986
2987    EvalJsonlFileIdSource(EvalJsonlFileIdSource),
2988
2989    EvalResponsesSource(EvalResponsesSource),
2990}
2991
2992#[derive(Clone, Debug)]
2993#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
2994pub struct CreateEvalRunRequest {
2995    pub r#name: String,
2997
2998    pub r#metadata: Option<Metadata>,
2999
3000    pub r#data_source: CreateEvalRunRequest_DataSource,
3001}
3002
3003#[derive(Clone, Debug, Default)]
3005#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3006pub struct CreateEvalRunRequest_DataSource;
3007
3008#[derive(Clone, Debug, Default)]
3009#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3010pub struct CreateFileRequest {
3011    pub r#file: String,
3013
3014    pub r#purpose: String,
3016}
3017
3018#[derive(Clone, Debug)]
3019#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3020pub struct CreateFineTuningCheckpointPermissionRequest {
3021    pub r#project_ids: Vec<String>,
3023}
3024
3025#[derive(Clone, Debug)]
3026#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3027pub struct CreateFineTuningJobRequest {
3028    pub r#model: CreateFineTuningJobRequest_Model,
3029
3030    pub r#training_file: String,
3032
3033    pub r#hyperparameters: CreateFineTuningJobRequest_Hyperparameters,
3034
3035    pub r#suffix: Option<String>,
3038
3039    pub r#validation_file: Option<String>,
3041
3042    pub r#integrations: Option<Vec<CreateFineTuningJobRequest_Integrations>>,
3044
3045    pub r#seed: Option<i64>,
3047
3048    pub r#method: FineTuneMethod,
3049
3050    pub r#metadata: Option<Metadata>,
3051}
3052
3053#[derive(Clone, Debug)]
3055#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3056pub struct CreateFineTuningJobRequest_Hyperparameters {
3057    pub r#batch_size: CreateFineTuningJobRequest_Hyperparameters_BatchSize,
3058
3059    pub r#learning_rate_multiplier: CreateFineTuningJobRequest_Hyperparameters_LearningRateMultiplier,
3060
3061    pub r#n_epochs: CreateFineTuningJobRequest_Hyperparameters_NEpochs,
3062}
3063
3064#[derive(Clone, Debug)]
3066#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3067pub enum CreateFineTuningJobRequest_Hyperparameters_BatchSize {
3068    String(String),
3069
3070    Integer(i64),
3071}
3072
3073#[derive(Clone, Debug)]
3075#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3076pub enum CreateFineTuningJobRequest_Hyperparameters_LearningRateMultiplier {
3077    String(String),
3078
3079    Number(f64),
3080}
3081
3082#[derive(Clone, Debug)]
3084#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3085pub enum CreateFineTuningJobRequest_Hyperparameters_NEpochs {
3086    String(String),
3087
3088    Integer(i64),
3089}
3090
3091#[derive(Clone, Debug)]
3092#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3093pub struct CreateFineTuningJobRequest_Integrations {
3094    pub r#type: String,
3095
3096    pub r#wandb: CreateFineTuningJobRequest_Integrations_Wandb,
3097}
3098
3099#[derive(Clone, Debug)]
3100#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3101pub struct CreateFineTuningJobRequest_Integrations_Type(pub String);
3102
3103#[derive(Clone, Debug)]
3105#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3106pub struct CreateFineTuningJobRequest_Integrations_Wandb {
3107    pub r#project: String,
3109
3110    pub r#name: Option<String>,
3112
3113    pub r#entity: Option<String>,
3115
3116    pub r#tags: Vec<String>,
3118}
3119
3120pub type CreateFineTuningJobRequest_Model = String;
3122
3123#[derive(Clone, Debug)]
3124#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3125pub struct CreateImageEditRequest {
3126    pub r#image: CreateImageEditRequest_Image,
3127
3128    pub r#prompt: String,
3130
3131    pub r#mask: String,
3133
3134    pub r#model: Option<CreateImageEditRequest_Model>,
3135
3136    pub r#n: Option<i64>,
3138
3139    pub r#size: Option<String>,
3141
3142    pub r#response_format: Option<String>,
3144
3145    pub r#user: String,
3148
3149    pub r#quality: Option<String>,
3151}
3152
3153#[derive(Clone, Debug)]
3155#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3156pub enum CreateImageEditRequest_Image {
3157    String(String),
3158
3159    ArrayOfStrings(Vec<String>),
3160}
3161
3162pub type CreateImageEditRequest_Model = String;
3164
3165#[derive(Clone, Debug)]
3166#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3167pub struct CreateImageRequest {
3168    pub r#prompt: String,
3170
3171    pub r#model: Option<CreateImageRequest_Model>,
3172
3173    pub r#n: Option<i64>,
3175
3176    pub r#quality: Option<String>,
3178
3179    pub r#response_format: Option<String>,
3182
3183    pub r#output_format: Option<String>,
3185
3186    pub r#output_compression: Option<i64>,
3188
3189    pub r#size: Option<String>,
3191
3192    pub r#moderation: Option<String>,
3195
3196    pub r#background: Option<String>,
3198
3199    pub r#style: Option<String>,
3201
3202    pub r#user: String,
3205}
3206
3207pub type CreateImageRequest_Model = String;
3209
3210#[derive(Clone, Debug)]
3211#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3212pub struct CreateImageVariationRequest {
3213    pub r#image: String,
3215
3216    pub r#model: Option<CreateImageVariationRequest_Model>,
3217
3218    pub r#n: Option<i64>,
3220
3221    pub r#response_format: Option<String>,
3223
3224    pub r#size: Option<String>,
3226
3227    pub r#user: String,
3230}
3231
3232pub type CreateImageVariationRequest_Model = String;
3234
3235#[derive(Clone, Debug)]
3236#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3237pub struct CreateMessageRequest {
3238    pub r#role: String,
3240
3241    pub r#content: CreateMessageRequest_Content,
3242
3243    pub r#attachments: Option<Vec<CreateMessageRequest_Attachments>>,
3246
3247    pub r#metadata: Option<Metadata>,
3248}
3249
3250#[derive(Clone, Debug)]
3251#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3252pub struct CreateMessageRequest_Attachments {
3253    pub r#file_id: String,
3255
3256    pub r#tools: Vec<CreateMessageRequest_Attachments_Tools>,
3258}
3259
3260#[derive(Clone, Debug)]
3261#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3262pub enum CreateMessageRequest_Attachments_Tools {
3263    AssistantToolsCode(AssistantToolsCode),
3264
3265    AssistantToolsFileSearchTypeOnly(AssistantToolsFileSearchTypeOnly),
3266}
3267
3268#[derive(Clone, Debug)]
3269#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3270pub enum CreateMessageRequest_Content {
3271    String(String),
3273
3274    Array(Vec<CreateMessageRequest_Content_Variant2>),
3277}
3278
3279#[derive(Clone, Debug)]
3280#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3281pub enum CreateMessageRequest_Content_Variant2 {
3282    MessageContentImageFileObject(MessageContentImageFileObject),
3283
3284    MessageContentImageUrlObject(MessageContentImageUrlObject),
3285
3286    MessageRequestContentTextObject(MessageRequestContentTextObject),
3287}
3288
3289#[derive(Clone, Debug)]
3290#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3291pub struct CreateModelResponseProperties(pub ModelResponseProperties);
3292
3293#[derive(Clone, Debug)]
3294#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3295pub struct CreateModerationRequest {
3296    pub r#input: CreateModerationRequest_Input,
3297
3298    pub r#model: CreateModerationRequest_Model,
3299}
3300
3301#[derive(Clone, Debug)]
3303#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3304pub enum CreateModerationRequest_Input {
3305    String(String),
3307
3308    ArrayOfStrings(Vec<String>),
3310
3311    Array(Vec<CreateModerationRequest_Input_Variant3>),
3313}
3314
3315#[derive(Clone, Debug)]
3316#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3317pub enum CreateModerationRequest_Input_Variant3 {
3318    CreateModerationRequest_Input_Variant3_Variant1(CreateModerationRequest_Input_Variant3_Variant1),
3319
3320    CreateModerationRequest_Input_Variant3_Variant2(CreateModerationRequest_Input_Variant3_Variant2),
3321}
3322
3323#[derive(Clone, Debug)]
3325#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3326pub struct CreateModerationRequest_Input_Variant3_Variant1 {
3327    pub r#type: String,
3329
3330    pub r#image_url: CreateModerationRequest_Input_Variant3_Variant1_ImageUrl,
3331}
3332
3333#[derive(Clone, Debug, Default)]
3335#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3336pub struct CreateModerationRequest_Input_Variant3_Variant1_ImageUrl {
3337    pub r#url: String,
3339}
3340
3341#[derive(Clone, Debug, Default)]
3343#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3344pub struct CreateModerationRequest_Input_Variant3_Variant2 {
3345    pub r#type: String,
3347
3348    pub r#text: String,
3350}
3351
3352pub type CreateModerationRequest_Model = String;
3354
3355#[derive(Clone, Debug)]
3357#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3358pub struct CreateModerationResponse {
3359    pub r#id: String,
3361
3362    pub r#model: String,
3364
3365    pub r#results: Vec<CreateModerationResponse_Results>,
3367}
3368
3369#[derive(Clone, Debug)]
3370#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3371pub struct CreateModerationResponse_Results {
3372    pub r#flagged: bool,
3374
3375    pub r#categories: CreateModerationResponse_Results_Categories,
3376
3377    pub r#category_scores: CreateModerationResponse_Results_CategoryScores,
3378
3379    pub r#category_applied_input_types: CreateModerationResponse_Results_CategoryAppliedInputTypes,
3380}
3381
3382#[derive(Clone, Debug, Default)]
3384#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3385pub struct CreateModerationResponse_Results_Categories {
3386    pub r#hate: bool,
3390
3391    pub r#hate_threatening: bool,
3395
3396    pub r#harassment: bool,
3399
3400    pub r#harassment_threatening: bool,
3403
3404    pub r#illicit: Option<bool>,
3408
3409    pub r#illicit_violent: Option<bool>,
3413
3414    pub r#self_harm: bool,
3417
3418    pub r#self_harm_intent: bool,
3422
3423    pub r#self_harm_instructions: bool,
3427
3428    pub r#sexual: bool,
3432
3433    pub r#sexual_minors: bool,
3435
3436    pub r#violence: bool,
3438
3439    pub r#violence_graphic: bool,
3442}
3443
3444#[derive(Clone, Debug)]
3447#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3448pub struct CreateModerationResponse_Results_CategoryAppliedInputTypes {
3449    pub r#hate: Vec<String>,
3451
3452    pub r#hate_threatening: Vec<String>,
3454
3455    pub r#harassment: Vec<String>,
3457
3458    pub r#harassment_threatening: Vec<String>,
3460
3461    pub r#illicit: Vec<String>,
3463
3464    pub r#illicit_violent: Vec<String>,
3466
3467    pub r#self_harm: Vec<String>,
3469
3470    pub r#self_harm_intent: Vec<String>,
3472
3473    pub r#self_harm_instructions: Vec<String>,
3475
3476    pub r#sexual: Vec<String>,
3478
3479    pub r#sexual_minors: Vec<String>,
3481
3482    pub r#violence: Vec<String>,
3484
3485    pub r#violence_graphic: Vec<String>,
3487}
3488
3489#[derive(Clone, Debug, Default)]
3491#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3492pub struct CreateModerationResponse_Results_CategoryScores {
3493    pub r#hate: f64,
3495
3496    pub r#hate_threatening: f64,
3498
3499    pub r#harassment: f64,
3501
3502    pub r#harassment_threatening: f64,
3504
3505    pub r#illicit: f64,
3507
3508    pub r#illicit_violent: f64,
3510
3511    pub r#self_harm: f64,
3513
3514    pub r#self_harm_intent: f64,
3516
3517    pub r#self_harm_instructions: f64,
3519
3520    pub r#sexual: f64,
3522
3523    pub r#sexual_minors: f64,
3525
3526    pub r#violence: f64,
3528
3529    pub r#violence_graphic: f64,
3531}
3532
3533#[derive(Clone, Debug, Default)]
3534#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3535pub struct CreateResponse(pub ());
3536
3537#[derive(Clone, Debug)]
3538#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3539pub struct CreateResponse_Variant3 {
3540    pub r#input: CreateResponse_Variant3_Input,
3541
3542    pub r#include: Option<Vec<Includable>>,
3544
3545    pub r#parallel_tool_calls: Option<bool>,
3547
3548    pub r#store: Option<bool>,
3551
3552    pub r#stream: Option<bool>,
3556}
3557
3558#[derive(Clone, Debug)]
3560#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3561pub enum CreateResponse_Variant3_Input {
3562    String(String),
3565
3566    Array(Vec<InputItem>),
3569}
3570
3571#[derive(Clone, Debug)]
3572#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3573pub struct CreateRunRequest {
3574    pub r#assistant_id: String,
3577
3578    pub r#model: Option<CreateRunRequest_Model>,
3579
3580    pub r#reasoning_effort: Option<ReasoningEffort>,
3581
3582    pub r#instructions: Option<String>,
3586
3587    pub r#additional_instructions: Option<String>,
3590
3591    pub r#additional_messages: Option<Vec<CreateMessageRequest>>,
3593
3594    pub r#tools: Option<Vec<CreateRunRequest_Tools>>,
3596
3597    pub r#metadata: Option<Metadata>,
3598
3599    pub r#temperature: Option<f64>,
3601
3602    pub r#top_p: Option<f64>,
3606
3607    pub r#stream: Option<bool>,
3611
3612    pub r#max_prompt_tokens: Option<i64>,
3615
3616    pub r#max_completion_tokens: Option<i64>,
3619
3620    pub r#truncation_strategy: CreateRunRequest_TruncationStrategy,
3621
3622    pub r#tool_choice: CreateRunRequest_ToolChoice,
3623
3624    pub r#parallel_tool_calls: ParallelToolCalls,
3625
3626    pub r#response_format: Option<AssistantsApiResponseFormatOption>,
3627}
3628
3629#[derive(Clone, Debug)]
3632#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3633pub enum CreateRunRequest_Model {
3634    String(String),
3635
3636    AssistantSupportedModels(AssistantSupportedModels),
3637}
3638
3639#[derive(Clone, Debug, Default)]
3640#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3641pub struct CreateRunRequest_ToolChoice(pub ());
3642
3643#[derive(Clone, Debug)]
3644#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3645pub enum CreateRunRequest_Tools {
3646    AssistantToolsCode(AssistantToolsCode),
3647
3648    AssistantToolsFileSearch(AssistantToolsFileSearch),
3649
3650    AssistantToolsFunction(AssistantToolsFunction),
3651}
3652
3653#[derive(Clone, Debug, Default)]
3654#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3655pub struct CreateRunRequest_TruncationStrategy(pub ());
3656
3657#[derive(Clone, Debug)]
3658#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3659pub struct CreateSpeechRequest {
3660    pub r#model: CreateSpeechRequest_Model,
3661
3662    pub r#input: String,
3664
3665    pub r#instructions: String,
3667
3668    pub r#voice: VoiceIdsShared,
3670
3671    pub r#response_format: String,
3673
3674    pub r#speed: f64,
3676}
3677
3678pub type CreateSpeechRequest_Model = String;
3681
3682#[derive(Clone, Debug)]
3683#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3684pub struct CreateThreadAndRunRequest {
3685    pub r#assistant_id: String,
3688
3689    pub r#thread: CreateThreadRequest,
3690
3691    pub r#model: Option<CreateThreadAndRunRequest_Model>,
3692
3693    pub r#instructions: Option<String>,
3695
3696    pub r#tools: Option<Vec<CreateThreadAndRunRequest_Tools>>,
3698
3699    pub r#tool_resources: Option<CreateThreadAndRunRequest_ToolResources>,
3700
3701    pub r#metadata: Option<Metadata>,
3702
3703    pub r#temperature: Option<f64>,
3705
3706    pub r#top_p: Option<f64>,
3710
3711    pub r#stream: Option<bool>,
3715
3716    pub r#max_prompt_tokens: Option<i64>,
3719
3720    pub r#max_completion_tokens: Option<i64>,
3723
3724    pub r#truncation_strategy: CreateThreadAndRunRequest_TruncationStrategy,
3725
3726    pub r#tool_choice: CreateThreadAndRunRequest_ToolChoice,
3727
3728    pub r#parallel_tool_calls: ParallelToolCalls,
3729
3730    pub r#response_format: Option<AssistantsApiResponseFormatOption>,
3731}
3732
3733pub type CreateThreadAndRunRequest_Model = String;
3736
3737#[derive(Clone, Debug, Default)]
3738#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3739pub struct CreateThreadAndRunRequest_ToolChoice(pub ());
3740
3741#[derive(Clone, Debug)]
3743#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3744pub struct CreateThreadAndRunRequest_ToolResources {
3745    pub r#code_interpreter: CreateThreadAndRunRequest_ToolResources_CodeInterpreter,
3746
3747    pub r#file_search: CreateThreadAndRunRequest_ToolResources_FileSearch,
3748}
3749
3750#[derive(Clone, Debug)]
3751#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3752pub struct CreateThreadAndRunRequest_ToolResources_CodeInterpreter {
3753    pub r#file_ids: Vec<String>,
3756}
3757
3758#[derive(Clone, Debug)]
3759#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3760pub struct CreateThreadAndRunRequest_ToolResources_FileSearch {
3761    pub r#vector_store_ids: Vec<String>,
3764}
3765
3766#[derive(Clone, Debug)]
3767#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3768pub enum CreateThreadAndRunRequest_Tools {
3769    AssistantToolsCode(AssistantToolsCode),
3770
3771    AssistantToolsFileSearch(AssistantToolsFileSearch),
3772
3773    AssistantToolsFunction(AssistantToolsFunction),
3774}
3775
3776#[derive(Clone, Debug, Default)]
3777#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3778pub struct CreateThreadAndRunRequest_TruncationStrategy(pub ());
3779
3780#[derive(Clone, Debug)]
3782#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3783pub struct CreateThreadRequest {
3784    pub r#messages: Vec<CreateMessageRequest>,
3787
3788    pub r#tool_resources: Option<CreateThreadRequest_ToolResources>,
3789
3790    pub r#metadata: Option<Metadata>,
3791}
3792
3793#[derive(Clone, Debug)]
3796#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3797pub struct CreateThreadRequest_ToolResources {
3798    pub r#code_interpreter: CreateThreadRequest_ToolResources_CodeInterpreter,
3799
3800    pub r#file_search: CreateThreadRequest_ToolResources_FileSearch,
3801}
3802
3803#[derive(Clone, Debug)]
3804#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3805pub struct CreateThreadRequest_ToolResources_CodeInterpreter {
3806    pub r#file_ids: Vec<String>,
3809}
3810
3811#[derive(Clone, Debug)]
3812#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3813pub struct CreateThreadRequest_ToolResources_FileSearch {
3814    pub r#vector_store_ids: Vec<String>,
3817
3818    pub r#vector_stores: Vec<CreateThreadRequest_ToolResources_FileSearch_VectorStores_Item>,
3822}
3823
3824#[derive(Clone, Debug)]
3825#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3826pub struct CreateThreadRequest_ToolResources_FileSearch_VectorStores_Item {
3827    pub r#file_ids: Vec<String>,
3830
3831    pub r#chunking_strategy: CreateThreadRequest_ToolResources_FileSearch_VectorStores_Item_ChunkingStrategy,
3833
3834    pub r#metadata: Metadata,
3835}
3836
3837#[derive(Clone, Debug, Default)]
3839#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3840pub struct CreateThreadRequest_ToolResources_FileSearch_VectorStores_Item_ChunkingStrategy;
3841
3842#[derive(Clone, Debug)]
3843#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3844pub struct CreateTranscriptionRequest {
3845    pub r#file: String,
3848
3849    pub r#model: CreateTranscriptionRequest_Model,
3850
3851    pub r#language: String,
3853
3854    pub r#prompt: String,
3857
3858    pub r#response_format: AudioResponseFormat,
3859
3860    pub r#temperature: f64,
3862
3863    #[cfg_attr(feature = "serde", serde(rename = "include[]"))]
3865    pub r#include: Vec<TranscriptionInclude>,
3866
3867    #[cfg_attr(feature = "serde", serde(rename = "timestamp_granularities[]"))]
3869    pub r#timestamp_granularities: Vec<String>,
3870
3871    pub r#stream: Option<bool>,
3875}
3876
3877pub type CreateTranscriptionRequest_Model = String;
3879
3880#[derive(Clone, Debug)]
3883#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3884pub struct CreateTranscriptionResponseJson {
3885    pub r#text: String,
3887
3888    pub r#logprobs: Vec<CreateTranscriptionResponseJson_Logprobs>,
3890}
3891
3892#[derive(Clone, Debug)]
3893#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3894pub struct CreateTranscriptionResponseJson_Logprobs {
3895    pub r#token: String,
3897
3898    pub r#logprob: f64,
3900
3901    pub r#bytes: Vec<f64>,
3903}
3904
3905#[derive(Clone, Debug)]
3906#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3907pub enum CreateTranscriptionResponseStreamEvent {
3908    TranscriptTextDeltaEvent(TranscriptTextDeltaEvent),
3909
3910    TranscriptTextDoneEvent(TranscriptTextDoneEvent),
3911}
3912
3913#[derive(Clone, Debug)]
3916#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3917pub struct CreateTranscriptionResponseVerboseJson {
3918    pub r#language: String,
3920
3921    pub r#duration: f64,
3923
3924    pub r#text: String,
3926
3927    pub r#words: Vec<TranscriptionWord>,
3929
3930    pub r#segments: Vec<TranscriptionSegment>,
3932}
3933
3934#[derive(Clone, Debug)]
3935#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3936pub struct CreateTranslationRequest {
3937    pub r#file: String,
3940
3941    pub r#model: CreateTranslationRequest_Model,
3942
3943    pub r#prompt: String,
3946
3947    pub r#response_format: String,
3950
3951    pub r#temperature: f64,
3953}
3954
3955pub type CreateTranslationRequest_Model = String;
3957
3958#[derive(Clone, Debug, Default)]
3959#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3960pub struct CreateTranslationResponseJson {
3961    pub r#text: String,
3962}
3963
3964#[derive(Clone, Debug)]
3965#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3966pub struct CreateTranslationResponseVerboseJson {
3967    pub r#language: String,
3969
3970    pub r#duration: f64,
3972
3973    pub r#text: String,
3975
3976    pub r#segments: Vec<TranscriptionSegment>,
3978}
3979
3980#[derive(Clone, Debug, Default)]
3981#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3982pub struct CreateUploadRequest {
3983    pub r#filename: String,
3985
3986    pub r#purpose: String,
3988
3989    pub r#bytes: i64,
3991
3992    pub r#mime_type: String,
3994}
3995
3996#[derive(Clone, Debug)]
3997#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
3998pub struct CreateVectorStoreFileBatchRequest {
3999    pub r#file_ids: Vec<String>,
4002
4003    pub r#chunking_strategy: ChunkingStrategyRequestParam,
4004
4005    pub r#attributes: Option<VectorStoreFileAttributes>,
4006}
4007
4008#[derive(Clone, Debug)]
4009#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4010pub struct CreateVectorStoreFileRequest {
4011    pub r#file_id: String,
4013
4014    pub r#chunking_strategy: ChunkingStrategyRequestParam,
4015
4016    pub r#attributes: Option<VectorStoreFileAttributes>,
4017}
4018
4019#[derive(Clone, Debug)]
4020#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4021pub struct CreateVectorStoreRequest {
4022    pub r#file_ids: Vec<String>,
4025
4026    pub r#name: String,
4028
4029    pub r#expires_after: VectorStoreExpirationAfter,
4030
4031    pub r#chunking_strategy: CreateVectorStoreRequest_ChunkingStrategy,
4032
4033    pub r#metadata: Option<Metadata>,
4034}
4035
4036#[derive(Clone, Debug, Default)]
4038#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4039pub struct CreateVectorStoreRequest_ChunkingStrategy;
4040
4041#[derive(Clone, Debug, Default)]
4042#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4043pub struct DeleteAssistantResponse {
4044    pub r#id: String,
4045
4046    pub r#deleted: bool,
4047
4048    pub r#object: String,
4049}
4050
4051#[derive(Clone, Debug, Default)]
4052#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4053pub struct DeleteCertificateResponse {
4054    pub r#object: String,
4056
4057    pub r#id: String,
4059}
4060
4061#[derive(Clone, Debug, Default)]
4062#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4063pub struct DeleteFileResponse {
4064    pub r#id: String,
4065
4066    pub r#object: String,
4067
4068    pub r#deleted: bool,
4069}
4070
4071#[derive(Clone, Debug, Default)]
4072#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4073pub struct DeleteFineTuningCheckpointPermissionResponse {
4074    pub r#id: String,
4076
4077    pub r#object: String,
4079
4080    pub r#deleted: bool,
4083}
4084
4085#[derive(Clone, Debug, Default)]
4086#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4087pub struct DeleteMessageResponse {
4088    pub r#id: String,
4089
4090    pub r#deleted: bool,
4091
4092    pub r#object: String,
4093}
4094
4095#[derive(Clone, Debug, Default)]
4096#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4097pub struct DeleteModelResponse {
4098    pub r#id: String,
4099
4100    pub r#deleted: bool,
4101
4102    pub r#object: String,
4103}
4104
4105#[derive(Clone, Debug, Default)]
4106#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4107pub struct DeleteThreadResponse {
4108    pub r#id: String,
4109
4110    pub r#deleted: bool,
4111
4112    pub r#object: String,
4113}
4114
4115#[derive(Clone, Debug, Default)]
4116#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4117pub struct DeleteVectorStoreFileResponse {
4118    pub r#id: String,
4119
4120    pub r#deleted: bool,
4121
4122    pub r#object: String,
4123}
4124
4125#[derive(Clone, Debug, Default)]
4126#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4127pub struct DeleteVectorStoreResponse {
4128    pub r#id: String,
4129
4130    pub r#deleted: bool,
4131
4132    pub r#object: String,
4133}
4134
4135#[derive(Clone, Debug, Default)]
4137#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4138pub struct DoneEvent {
4139    pub r#event: String,
4140
4141    pub r#data: String,
4142}
4143
4144#[derive(Clone, Debug, Default)]
4146#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4147pub struct DoubleClick {
4148    pub r#type: String,
4150
4151    pub r#x: i64,
4153
4154    pub r#y: i64,
4156}
4157
4158#[derive(Clone, Debug)]
4160#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4161pub struct Drag {
4162    pub r#type: String,
4164
4165    pub r#path: Vec<Coordinate>,
4167}
4168
4169#[derive(Clone, Debug)]
4172#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4173pub struct EasyInputMessage {
4174    pub r#role: String,
4176
4177    pub r#content: EasyInputMessage_Content,
4178
4179    pub r#type: String,
4181}
4182
4183#[derive(Clone, Debug)]
4185#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4186pub enum EasyInputMessage_Content {
4187    String(String),
4189
4190    InputMessageContentList(InputMessageContentList),
4191}
4192
4193#[derive(Clone, Debug)]
4195#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4196pub struct Embedding {
4197    pub r#index: i64,
4199
4200    pub r#embedding: Vec<f64>,
4202
4203    pub r#object: String,
4205}
4206
4207#[derive(Clone, Debug, Default)]
4208#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4209pub struct Error {
4210    pub r#code: Option<String>,
4211
4212    pub r#message: String,
4213
4214    pub r#param: Option<String>,
4215
4216    pub r#type: String,
4217}
4218
4219#[derive(Clone, Debug)]
4221#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4222pub struct ErrorEvent {
4223    pub r#event: String,
4224
4225    pub r#data: Error,
4226}
4227
4228#[derive(Clone, Debug)]
4229#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4230pub struct ErrorResponse {
4231    pub r#error: Error,
4232}
4233
4234#[derive(Clone, Debug)]
4236#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4237pub struct Eval {
4238    pub r#object: String,
4240
4241    pub r#id: String,
4243
4244    pub r#name: String,
4246
4247    pub r#data_source_config: Eval_DataSourceConfig,
4248
4249    pub r#testing_criteria: Vec<Eval_TestingCriteria>,
4251
4252    pub r#created_at: i64,
4254
4255    pub r#metadata: Option<Metadata>,
4256}
4257
4258#[derive(Clone, Debug, Default)]
4260#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4261pub struct EvalApiError {
4262    pub r#code: String,
4264
4265    pub r#message: String,
4267}
4268
4269#[derive(Clone, Debug)]
4272#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4273pub struct EvalCustomDataSourceConfig {
4274    pub r#type: String,
4276
4277    pub r#schema: EvalCustomDataSourceConfig_Schema,
4279}
4280
4281#[derive(Clone, Debug, Default)]
4283#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4284pub struct EvalCustomDataSourceConfig_Schema;
4285
4286#[derive(Clone, Debug)]
4289#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4290pub struct EvalItem {
4291    pub r#role: String,
4293
4294    pub r#content: EvalItem_Content,
4295
4296    pub r#type: String,
4298}
4299
4300#[derive(Clone, Debug)]
4302#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4303pub enum EvalItem_Content {
4304    String(String),
4306
4307    InputTextContent(InputTextContent),
4308
4309    EvalItem_Content_Variant3(EvalItem_Content_Variant3),
4310}
4311
4312#[derive(Clone, Debug, Default)]
4314#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4315pub struct EvalItem_Content_Variant3 {
4316    pub r#type: String,
4318
4319    pub r#text: String,
4321}
4322
4323#[derive(Clone, Debug)]
4324#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4325pub struct EvalJsonlFileContentSource {
4326    pub r#type: String,
4328
4329    pub r#content: Vec<EvalJsonlFileContentSource_Content>,
4331}
4332
4333#[derive(Clone, Debug)]
4334#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4335pub struct EvalJsonlFileContentSource_Content {
4336    pub r#item: EvalJsonlFileContentSource_Content_Item,
4337
4338    pub r#sample: EvalJsonlFileContentSource_Content_Sample,
4339}
4340
4341#[derive(Clone, Debug, Default)]
4342#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4343pub struct EvalJsonlFileContentSource_Content_Item;
4344
4345#[derive(Clone, Debug, Default)]
4346#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4347pub struct EvalJsonlFileContentSource_Content_Sample;
4348
4349#[derive(Clone, Debug, Default)]
4350#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4351pub struct EvalJsonlFileIdSource {
4352    pub r#type: String,
4354
4355    pub r#id: String,
4357}
4358
4359#[derive(Clone, Debug)]
4362#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4363pub struct EvalLabelModelGrader {
4364    pub r#type: String,
4366
4367    pub r#name: String,
4369
4370    pub r#model: String,
4372
4373    pub r#input: Vec<EvalItem>,
4374
4375    pub r#labels: Vec<String>,
4377
4378    pub r#passing_labels: Vec<String>,
4380}
4381
4382#[derive(Clone, Debug)]
4384#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4385pub struct EvalList {
4386    pub r#object: String,
4388
4389    pub r#data: Vec<Eval>,
4391
4392    pub r#first_id: String,
4394
4395    pub r#last_id: String,
4397
4398    pub r#has_more: bool,
4400}
4401
4402#[derive(Clone, Debug, Default)]
4404#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4405pub struct EvalPythonGrader {
4406    pub r#type: String,
4408
4409    pub r#name: String,
4411
4412    pub r#source: String,
4414
4415    pub r#pass_threshold: f64,
4417
4418    pub r#image_tag: String,
4420}
4421
4422#[derive(Clone, Debug)]
4424#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4425pub struct EvalResponsesSource {
4426    pub r#type: String,
4428
4429    pub r#metadata: Option<EvalResponsesSource_Metadata>,
4431
4432    pub r#model: Option<String>,
4434
4435    pub r#instructions_search: Option<String>,
4437
4438    pub r#created_after: Option<i64>,
4440
4441    pub r#created_before: Option<i64>,
4443
4444    pub r#has_tool_calls: Option<bool>,
4446
4447    pub r#reasoning_effort: Option<ReasoningEffort>,
4449
4450    pub r#temperature: Option<f64>,
4452
4453    pub r#top_p: Option<f64>,
4455
4456    pub r#users: Option<Vec<String>>,
4458
4459    pub r#allow_parallel_tool_calls: Option<bool>,
4461}
4462
4463#[derive(Clone, Debug, Default)]
4465#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4466pub struct EvalResponsesSource_Metadata;
4467
4468#[derive(Clone, Debug)]
4470#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4471pub struct EvalRun {
4472    pub r#object: String,
4474
4475    pub r#id: String,
4477
4478    pub r#eval_id: String,
4480
4481    pub r#status: String,
4483
4484    pub r#model: String,
4486
4487    pub r#name: String,
4489
4490    pub r#created_at: i64,
4492
4493    pub r#report_url: String,
4495
4496    pub r#result_counts: EvalRun_ResultCounts,
4497
4498    pub r#per_model_usage: Vec<EvalRun_PerModelUsage>,
4500
4501    pub r#per_testing_criteria_results: Vec<EvalRun_PerTestingCriteriaResults>,
4503
4504    pub r#data_source: EvalRun_DataSource,
4505
4506    pub r#metadata: Option<Metadata>,
4507
4508    pub r#error: EvalApiError,
4509}
4510
4511#[derive(Clone, Debug)]
4513#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4514pub struct EvalRunList {
4515    pub r#object: String,
4517
4518    pub r#data: Vec<EvalRun>,
4520
4521    pub r#first_id: String,
4523
4524    pub r#last_id: String,
4526
4527    pub r#has_more: bool,
4529}
4530
4531#[derive(Clone, Debug)]
4533#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4534pub struct EvalRunOutputItem {
4535    pub r#object: String,
4537
4538    pub r#id: String,
4540
4541    pub r#run_id: String,
4543
4544    pub r#eval_id: String,
4546
4547    pub r#created_at: i64,
4549
4550    pub r#status: String,
4552
4553    pub r#datasource_item_id: i64,
4555
4556    pub r#datasource_item: EvalRunOutputItem_DatasourceItem,
4558
4559    pub r#results: Vec<EvalRunOutputItem_Results_Item>,
4561
4562    pub r#sample: EvalRunOutputItem_Sample,
4563}
4564
4565#[derive(Clone, Debug, Default)]
4567#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4568pub struct EvalRunOutputItem_DatasourceItem;
4569
4570#[derive(Clone, Debug, Default)]
4572#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4573pub struct EvalRunOutputItem_Results_Item;
4574
4575#[derive(Clone, Debug)]
4577#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4578pub struct EvalRunOutputItemList {
4579    pub r#object: String,
4581
4582    pub r#data: Vec<EvalRunOutputItem>,
4584
4585    pub r#first_id: String,
4587
4588    pub r#last_id: String,
4590
4591    pub r#has_more: bool,
4593}
4594
4595#[derive(Clone, Debug)]
4597#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4598pub struct EvalRunOutputItem_Sample {
4599    pub r#input: Vec<EvalRunOutputItem_Sample_Input>,
4601
4602    pub r#output: Vec<EvalRunOutputItem_Sample_Output>,
4604
4605    pub r#finish_reason: String,
4607
4608    pub r#model: String,
4610
4611    pub r#usage: EvalRunOutputItem_Sample_Usage,
4612
4613    pub r#error: EvalApiError,
4614
4615    pub r#temperature: f64,
4617
4618    pub r#max_completion_tokens: i64,
4620
4621    pub r#top_p: f64,
4623
4624    pub r#seed: i64,
4626}
4627
4628#[derive(Clone, Debug, Default)]
4630#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4631pub struct EvalRunOutputItem_Sample_Input {
4632    pub r#role: String,
4634
4635    pub r#content: String,
4637}
4638
4639#[derive(Clone, Debug, Default)]
4640#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4641pub struct EvalRunOutputItem_Sample_Output {
4642    pub r#role: String,
4644
4645    pub r#content: String,
4647}
4648
4649#[derive(Clone, Debug, Default)]
4651#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4652pub struct EvalRunOutputItem_Sample_Usage {
4653    pub r#total_tokens: i64,
4655
4656    pub r#completion_tokens: i64,
4658
4659    pub r#prompt_tokens: i64,
4661
4662    pub r#cached_tokens: i64,
4664}
4665
4666#[derive(Clone, Debug, Default)]
4668#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4669pub struct EvalRun_DataSource;
4670
4671#[derive(Clone, Debug, Default)]
4672#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4673pub struct EvalRun_PerModelUsage {
4674    pub r#model_name: String,
4676
4677    pub r#invocation_count: i64,
4679
4680    pub r#prompt_tokens: i64,
4682
4683    pub r#completion_tokens: i64,
4685
4686    pub r#total_tokens: i64,
4688
4689    pub r#cached_tokens: i64,
4691}
4692
4693#[derive(Clone, Debug, Default)]
4694#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4695pub struct EvalRun_PerTestingCriteriaResults {
4696    pub r#testing_criteria: String,
4698
4699    pub r#passed: i64,
4701
4702    pub r#failed: i64,
4704}
4705
4706#[derive(Clone, Debug, Default)]
4708#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4709pub struct EvalRun_ResultCounts {
4710    pub r#total: i64,
4712
4713    pub r#errored: i64,
4715
4716    pub r#failed: i64,
4718
4719    pub r#passed: i64,
4721}
4722
4723#[derive(Clone, Debug)]
4725#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4726pub struct EvalScoreModelGrader {
4727    pub r#type: String,
4729
4730    pub r#name: String,
4732
4733    pub r#model: String,
4735
4736    pub r#sampling_params: EvalScoreModelGrader_SamplingParams,
4738
4739    pub r#input: Vec<EvalItem>,
4741
4742    pub r#pass_threshold: f64,
4744
4745    pub r#range: Vec<f64>,
4747}
4748
4749#[derive(Clone, Debug, Default)]
4751#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4752pub struct EvalScoreModelGrader_SamplingParams;
4753
4754#[derive(Clone, Debug)]
4757#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4758pub struct EvalStoredCompletionsDataSourceConfig {
4759    pub r#type: String,
4761
4762    pub r#metadata: Option<Metadata>,
4763
4764    pub r#schema: EvalStoredCompletionsDataSourceConfig_Schema,
4766}
4767
4768#[derive(Clone, Debug, Default)]
4770#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4771pub struct EvalStoredCompletionsDataSourceConfig_Schema;
4772
4773#[derive(Clone, Debug)]
4775#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4776pub struct EvalStoredCompletionsSource {
4777    pub r#type: String,
4779
4780    pub r#metadata: Option<Metadata>,
4781
4782    pub r#model: Option<String>,
4784
4785    pub r#created_after: Option<i64>,
4787
4788    pub r#created_before: Option<i64>,
4790
4791    pub r#limit: Option<i64>,
4793}
4794
4795#[derive(Clone, Debug, Default)]
4798#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4799pub struct EvalStringCheckGrader {
4800    pub r#type: String,
4802
4803    pub r#name: String,
4805
4806    pub r#input: String,
4808
4809    pub r#reference: String,
4811
4812    pub r#operation: String,
4814}
4815
4816#[derive(Clone, Debug, Default)]
4818#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4819pub struct EvalTextSimilarityGrader {
4820    pub r#type: String,
4822
4823    pub r#name: String,
4825
4826    pub r#input: String,
4828
4829    pub r#reference: String,
4831
4832    pub r#pass_threshold: f64,
4835
4836    pub r#evaluation_metric: String,
4838}
4839
4840#[derive(Clone, Debug, Default)]
4842#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4843pub struct Eval_DataSourceConfig;
4844
4845#[derive(Clone, Debug)]
4846#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4847pub enum Eval_TestingCriteria {
4848    EvalLabelModelGrader(EvalLabelModelGrader),
4849
4850    EvalStringCheckGrader(EvalStringCheckGrader),
4851
4852    EvalTextSimilarityGrader(EvalTextSimilarityGrader),
4853
4854    EvalPythonGrader(EvalPythonGrader),
4855
4856    EvalScoreModelGrader(EvalScoreModelGrader),
4857}
4858
4859#[derive(Clone, Debug, Default)]
4861#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4862pub struct FileCitationBody {
4863    pub r#type: String,
4865
4866    pub r#file_id: String,
4868
4869    pub r#index: i64,
4871}
4872
4873#[derive(Clone, Debug, Default)]
4875#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4876pub struct FilePath {
4877    pub r#type: String,
4879
4880    pub r#file_id: String,
4882
4883    pub r#index: i64,
4885}
4886
4887#[derive(Clone, Debug)]
4889#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4890pub struct FileSearchRanker(pub String);
4891
4892#[derive(Clone, Debug)]
4894#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4895pub struct FileSearchRankingOptions {
4896    pub r#ranker: FileSearchRanker,
4897
4898    pub r#score_threshold: f64,
4900}
4901
4902#[derive(Clone, Debug)]
4904#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4905pub struct FileSearchTool {
4906    pub r#type: String,
4908
4909    pub r#vector_store_ids: Vec<String>,
4911
4912    pub r#max_num_results: i64,
4914
4915    pub r#ranking_options: RankingOptions,
4917
4918    pub r#filters: FileSearchTool_Filters,
4919}
4920
4921#[derive(Clone, Debug)]
4923#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4924pub struct FileSearchToolCall {
4925    pub r#id: String,
4927
4928    pub r#type: String,
4930
4931    pub r#status: String,
4933
4934    pub r#queries: Vec<String>,
4936
4937    pub r#results: Option<Vec<FileSearchToolCall_Results>>,
4939}
4940
4941#[derive(Clone, Debug)]
4942#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4943pub struct FileSearchToolCall_Results {
4944    pub r#file_id: String,
4946
4947    pub r#text: String,
4949
4950    pub r#filename: String,
4952
4953    pub r#attributes: Option<VectorStoreFileAttributes>,
4954
4955    pub r#score: f64,
4957}
4958
4959#[derive(Clone, Debug)]
4960#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4961pub enum FileSearchTool_Filters {
4962    Filters(Filters),
4964
4965    Null(()),
4966}
4967
4968#[derive(Clone, Debug)]
4969#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4970pub enum Filters {
4971    ComparisonFilter(ComparisonFilter),
4972
4973    CompoundFilter(CompoundFilter),
4974}
4975
4976#[derive(Clone, Debug, Default)]
4977#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4978pub struct FineTuneChatCompletionRequestAssistantMessage(pub ());
4979
4980#[derive(Clone, Debug, Default)]
4981#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4982pub struct FineTuneChatCompletionRequestAssistantMessage_Variant1 {
4983    pub r#weight: i64,
4985}
4986
4987#[derive(Clone, Debug)]
4990#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
4991pub struct FineTuneChatRequestInput {
4992    pub r#messages: Vec<FineTuneChatRequestInput_Messages>,
4993
4994    pub r#tools: Vec<ChatCompletionTool>,
4996
4997    pub r#parallel_tool_calls: ParallelToolCalls,
4998
4999    pub r#functions: Vec<ChatCompletionFunctions>,
5001}
5002
5003#[derive(Clone, Debug)]
5004#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5005pub enum FineTuneChatRequestInput_Messages {
5006    ChatCompletionRequestSystemMessage(ChatCompletionRequestSystemMessage),
5007
5008    ChatCompletionRequestUserMessage(ChatCompletionRequestUserMessage),
5009
5010    FineTuneChatCompletionRequestAssistantMessage(FineTuneChatCompletionRequestAssistantMessage),
5011
5012    ChatCompletionRequestToolMessage(ChatCompletionRequestToolMessage),
5013
5014    ChatCompletionRequestFunctionMessage(ChatCompletionRequestFunctionMessage),
5015}
5016
5017#[derive(Clone, Debug, Default)]
5020#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5021pub struct FineTuneCompletionRequestInput {
5022    pub r#prompt: String,
5024
5025    pub r#completion: String,
5027}
5028
5029#[derive(Clone, Debug)]
5031#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5032pub struct FineTuneDPOMethod {
5033    pub r#hyperparameters: FineTuneDPOMethod_Hyperparameters,
5034}
5035
5036#[derive(Clone, Debug)]
5038#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5039pub struct FineTuneDPOMethod_Hyperparameters {
5040    pub r#beta: FineTuneDPOMethod_Hyperparameters_Beta,
5041
5042    pub r#batch_size: FineTuneDPOMethod_Hyperparameters_BatchSize,
5043
5044    pub r#learning_rate_multiplier: FineTuneDPOMethod_Hyperparameters_LearningRateMultiplier,
5045
5046    pub r#n_epochs: FineTuneDPOMethod_Hyperparameters_NEpochs,
5047}
5048
5049#[derive(Clone, Debug)]
5051#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5052pub enum FineTuneDPOMethod_Hyperparameters_BatchSize {
5053    String(String),
5054
5055    Integer(i64),
5056}
5057
5058#[derive(Clone, Debug)]
5060#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5061pub enum FineTuneDPOMethod_Hyperparameters_Beta {
5062    String(String),
5063
5064    Number(f64),
5065}
5066
5067#[derive(Clone, Debug)]
5069#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5070pub enum FineTuneDPOMethod_Hyperparameters_LearningRateMultiplier {
5071    String(String),
5072
5073    Number(f64),
5074}
5075
5076#[derive(Clone, Debug)]
5078#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5079pub enum FineTuneDPOMethod_Hyperparameters_NEpochs {
5080    String(String),
5081
5082    Integer(i64),
5083}
5084
5085#[derive(Clone, Debug)]
5087#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5088pub struct FineTuneMethod {
5089    pub r#type: String,
5091
5092    pub r#supervised: FineTuneSupervisedMethod,
5093
5094    pub r#dpo: FineTuneDPOMethod,
5095}
5096
5097#[derive(Clone, Debug)]
5100#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5101pub struct FineTunePreferenceRequestInput {
5102    pub r#input: FineTunePreferenceRequestInput_Input,
5103
5104    pub r#preferred_completion: Vec<ChatCompletionRequestAssistantMessage>,
5106
5107    pub r#non_preferred_completion: Vec<ChatCompletionRequestAssistantMessage>,
5109}
5110
5111#[derive(Clone, Debug)]
5112#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5113pub struct FineTunePreferenceRequestInput_Input {
5114    pub r#messages: Vec<FineTunePreferenceRequestInput_Input_Messages>,
5115
5116    pub r#tools: Vec<ChatCompletionTool>,
5118
5119    pub r#parallel_tool_calls: ParallelToolCalls,
5120}
5121
5122#[derive(Clone, Debug)]
5123#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5124pub enum FineTunePreferenceRequestInput_Input_Messages {
5125    ChatCompletionRequestSystemMessage(ChatCompletionRequestSystemMessage),
5126
5127    ChatCompletionRequestUserMessage(ChatCompletionRequestUserMessage),
5128
5129    FineTuneChatCompletionRequestAssistantMessage(FineTuneChatCompletionRequestAssistantMessage),
5130
5131    ChatCompletionRequestToolMessage(ChatCompletionRequestToolMessage),
5132
5133    ChatCompletionRequestFunctionMessage(ChatCompletionRequestFunctionMessage),
5134}
5135
5136#[derive(Clone, Debug)]
5137#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5138pub struct FineTunePreferenceRequestInput_NonPreferredCompletion(pub ChatCompletionRequestAssistantMessage);
5139
5140#[derive(Clone, Debug)]
5141#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5142pub struct FineTunePreferenceRequestInput_PreferredCompletion(pub ChatCompletionRequestAssistantMessage);
5143
5144#[derive(Clone, Debug)]
5146#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5147pub struct FineTuneSupervisedMethod {
5148    pub r#hyperparameters: FineTuneSupervisedMethod_Hyperparameters,
5149}
5150
5151#[derive(Clone, Debug)]
5153#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5154pub struct FineTuneSupervisedMethod_Hyperparameters {
5155    pub r#batch_size: FineTuneSupervisedMethod_Hyperparameters_BatchSize,
5156
5157    pub r#learning_rate_multiplier: FineTuneSupervisedMethod_Hyperparameters_LearningRateMultiplier,
5158
5159    pub r#n_epochs: FineTuneSupervisedMethod_Hyperparameters_NEpochs,
5160}
5161
5162#[derive(Clone, Debug)]
5164#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5165pub enum FineTuneSupervisedMethod_Hyperparameters_BatchSize {
5166    String(String),
5167
5168    Integer(i64),
5169}
5170
5171#[derive(Clone, Debug)]
5173#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5174pub enum FineTuneSupervisedMethod_Hyperparameters_LearningRateMultiplier {
5175    String(String),
5176
5177    Number(f64),
5178}
5179
5180#[derive(Clone, Debug)]
5182#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5183pub enum FineTuneSupervisedMethod_Hyperparameters_NEpochs {
5184    String(String),
5185
5186    Integer(i64),
5187}
5188
5189#[derive(Clone, Debug, Default)]
5192#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5193pub struct FineTuningCheckpointPermission {
5194    pub r#id: String,
5196
5197    pub r#created_at: i64,
5199
5200    pub r#project_id: String,
5202
5203    pub r#object: String,
5205}
5206
5207#[derive(Clone, Debug)]
5208#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5209pub struct FineTuningIntegration {
5210    pub r#type: String,
5212
5213    pub r#wandb: FineTuningIntegration_Wandb,
5214}
5215
5216#[derive(Clone, Debug)]
5218#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5219pub struct FineTuningIntegration_Wandb {
5220    pub r#project: String,
5222
5223    pub r#name: Option<String>,
5225
5226    pub r#entity: Option<String>,
5228
5229    pub r#tags: Vec<String>,
5231}
5232
5233#[derive(Clone, Debug)]
5236#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5237pub struct FineTuningJob {
5238    pub r#id: String,
5240
5241    pub r#created_at: i64,
5244
5245    pub r#error: Option<FineTuningJob_Error>,
5246
5247    pub r#fine_tuned_model: Option<String>,
5249
5250    pub r#finished_at: Option<i64>,
5253
5254    pub r#hyperparameters: FineTuningJob_Hyperparameters,
5255
5256    pub r#model: String,
5258
5259    pub r#object: String,
5261
5262    pub r#organization_id: String,
5264
5265    pub r#result_files: Vec<String>,
5267
5268    pub r#status: String,
5272
5273    pub r#trained_tokens: Option<i64>,
5275
5276    pub r#training_file: String,
5278
5279    pub r#validation_file: Option<String>,
5281
5282    pub r#integrations: Option<Vec<FineTuningIntegration>>,
5284
5285    pub r#seed: i64,
5287
5288    pub r#estimated_finish: Option<i64>,
5291
5292    pub r#method: FineTuneMethod,
5293
5294    pub r#metadata: Option<Metadata>,
5295}
5296
5297#[derive(Clone, Debug)]
5300#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5301pub struct FineTuningJobCheckpoint {
5302    pub r#id: String,
5304
5305    pub r#created_at: i64,
5307
5308    pub r#fine_tuned_model_checkpoint: String,
5310
5311    pub r#step_number: i64,
5313
5314    pub r#metrics: FineTuningJobCheckpoint_Metrics,
5315
5316    pub r#fine_tuning_job_id: String,
5318
5319    pub r#object: String,
5321}
5322
5323#[derive(Clone, Debug, Default)]
5325#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5326pub struct FineTuningJobCheckpoint_Metrics {
5327    pub r#step: f64,
5328
5329    pub r#train_loss: f64,
5330
5331    pub r#train_mean_token_accuracy: f64,
5332
5333    pub r#valid_loss: f64,
5334
5335    pub r#valid_mean_token_accuracy: f64,
5336
5337    pub r#full_valid_loss: f64,
5338
5339    pub r#full_valid_mean_token_accuracy: f64,
5340}
5341
5342#[derive(Clone, Debug)]
5344#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5345pub struct FineTuningJobEvent {
5346    pub r#object: String,
5348
5349    pub r#id: String,
5351
5352    pub r#created_at: i64,
5355
5356    pub r#level: String,
5358
5359    pub r#message: String,
5361
5362    pub r#type: String,
5364
5365    pub r#data: FineTuningJobEvent_Data,
5367}
5368
5369#[derive(Clone, Debug, Default)]
5371#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5372pub struct FineTuningJobEvent_Data;
5373
5374#[derive(Clone, Debug, Default)]
5377#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5378pub struct FineTuningJob_Error {
5379    pub r#code: String,
5381
5382    pub r#message: String,
5384
5385    pub r#param: Option<String>,
5388}
5389
5390#[derive(Clone, Debug)]
5392#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5393pub struct FineTuningJob_Hyperparameters {
5394    pub r#batch_size: FineTuningJob_Hyperparameters_BatchSize,
5395
5396    pub r#learning_rate_multiplier: FineTuningJob_Hyperparameters_LearningRateMultiplier,
5397
5398    pub r#n_epochs: FineTuningJob_Hyperparameters_NEpochs,
5399}
5400
5401#[derive(Clone, Debug)]
5403#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5404pub enum FineTuningJob_Hyperparameters_BatchSize {
5405    String(String),
5406
5407    Integer(i64),
5408}
5409
5410#[derive(Clone, Debug)]
5412#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5413pub enum FineTuningJob_Hyperparameters_LearningRateMultiplier {
5414    String(String),
5415
5416    Number(f64),
5417}
5418
5419#[derive(Clone, Debug)]
5421#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5422pub enum FineTuningJob_Hyperparameters_NEpochs {
5423    String(String),
5424
5425    Integer(i64),
5426}
5427
5428#[derive(Clone, Debug)]
5429#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5430pub struct FineTuningJob_Integrations(pub FineTuningIntegration);
5431
5432#[derive(Clone, Debug)]
5434#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5435pub struct FunctionCallOutputItemParam {
5436    pub r#id: FunctionCallOutputItemParam_Id,
5437
5438    pub r#call_id: String,
5440
5441    pub r#type: String,
5443
5444    pub r#output: String,
5446
5447    pub r#status: FunctionCallOutputItemParam_Status,
5448}
5449
5450pub type FunctionCallOutputItemParam_Id = Option<String>;
5451
5452pub type FunctionCallOutputItemParam_Status = Option<String>;
5453
5454#[derive(Clone, Debug)]
5455#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5456pub struct FunctionObject {
5457    pub r#description: String,
5460
5461    pub r#name: String,
5463
5464    pub r#parameters: FunctionParameters,
5465
5466    pub r#strict: Option<bool>,
5469}
5470
5471#[derive(Clone, Debug, Default)]
5473#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5474pub struct FunctionParameters;
5475
5476#[derive(Clone, Debug)]
5478#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5479pub struct FunctionTool {
5480    pub r#type: String,
5482
5483    pub r#name: String,
5485
5486    pub r#description: FunctionTool_Description,
5487
5488    pub r#parameters: FunctionTool_Parameters,
5489
5490    pub r#strict: FunctionTool_Strict,
5491}
5492
5493#[derive(Clone, Debug, Default)]
5495#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5496pub struct FunctionToolCall {
5497    pub r#id: String,
5499
5500    pub r#type: String,
5502
5503    pub r#call_id: String,
5505
5506    pub r#name: String,
5508
5509    pub r#arguments: String,
5511
5512    pub r#status: String,
5514}
5515
5516#[derive(Clone, Debug, Default)]
5518#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5519pub struct FunctionToolCallOutput {
5520    pub r#id: String,
5522
5523    pub r#type: String,
5525
5526    pub r#call_id: String,
5528
5529    pub r#output: String,
5531
5532    pub r#status: String,
5534}
5535
5536#[derive(Clone, Debug, Default)]
5537#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5538pub struct FunctionToolCallOutputResource(pub ());
5539
5540#[derive(Clone, Debug, Default)]
5541#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5542pub struct FunctionToolCallOutputResource_Variant2 {
5543    pub r#id: String,
5545}
5546
5547#[derive(Clone, Debug, Default)]
5548#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5549pub struct FunctionToolCallResource(pub ());
5550
5551#[derive(Clone, Debug, Default)]
5552#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5553pub struct FunctionToolCallResource_Variant2 {
5554    pub r#id: String,
5556}
5557
5558pub type FunctionTool_Description = Option<String>;
5559
5560#[derive(Clone, Debug)]
5561#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5562pub enum FunctionTool_Parameters {
5563    Object(FunctionTool_Parameters_1),
5565
5566    Null(()),
5567}
5568
5569#[derive(Clone, Debug, Default)]
5571#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5572pub struct FunctionTool_Parameters_1;
5573
5574#[derive(Clone, Debug)]
5575#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5576pub enum FunctionTool_Strict {
5577    Boolean(bool),
5579
5580    Null(()),
5581}
5582
5583#[derive(Clone, Debug, Default)]
5585#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5586pub struct Image {
5587    pub r#b64_json: String,
5589
5590    pub r#url: String,
5593
5594    pub r#revised_prompt: String,
5597}
5598
5599#[derive(Clone, Debug)]
5601#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5602pub struct ImagesResponse {
5603    pub r#created: i64,
5605
5606    pub r#data: Vec<Image>,
5608
5609    pub r#usage: ImagesResponse_Usage,
5610}
5611
5612#[derive(Clone, Debug)]
5615#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5616pub struct ImagesResponse_Usage {
5617    pub r#total_tokens: i64,
5620
5621    pub r#input_tokens: i64,
5623
5624    pub r#output_tokens: i64,
5626
5627    pub r#input_tokens_details: ImagesResponse_Usage_InputTokensDetails,
5628}
5629
5630#[derive(Clone, Debug, Default)]
5632#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5633pub struct ImagesResponse_Usage_InputTokensDetails {
5634    pub r#text_tokens: i64,
5636
5637    pub r#image_tokens: i64,
5639}
5640
5641#[derive(Clone, Debug)]
5643#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5644pub struct Includable(pub String);
5645
5646#[derive(Clone, Debug, Default)]
5648#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5649pub struct InputAudio {
5650    pub r#type: String,
5652
5653    pub r#data: String,
5655
5656    pub r#format: String,
5658}
5659
5660#[derive(Clone, Debug)]
5661#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5662pub enum InputContent {
5663    InputTextContent(InputTextContent),
5664
5665    InputImageContent(InputImageContent),
5666
5667    InputFileContent(InputFileContent),
5668}
5669
5670#[derive(Clone, Debug)]
5672#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5673pub struct InputFileContent {
5674    pub r#type: String,
5676
5677    pub r#file_id: InputFileContent_FileId,
5678
5679    pub r#filename: String,
5681
5682    pub r#file_data: String,
5684}
5685
5686pub type InputFileContent_FileId = Option<String>;
5687
5688#[derive(Clone, Debug)]
5690#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5691pub struct InputImageContent {
5692    pub r#type: String,
5694
5695    pub r#image_url: InputImageContent_ImageUrl,
5696
5697    pub r#file_id: InputImageContent_FileId,
5698
5699    pub r#detail: String,
5701}
5702
5703pub type InputImageContent_FileId = Option<String>;
5704
5705pub type InputImageContent_ImageUrl = Option<String>;
5706
5707#[derive(Clone, Debug)]
5708#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5709pub enum InputItem {
5710    EasyInputMessage(EasyInputMessage),
5711
5712    Item(Item),
5715
5716    ItemReferenceParam(ItemReferenceParam),
5717}
5718
5719#[derive(Clone, Debug)]
5722#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5723pub struct InputMessage {
5724    pub r#type: String,
5726
5727    pub r#role: String,
5729
5730    pub r#status: String,
5732
5733    pub r#content: InputMessageContentList,
5734}
5735
5736#[derive(Clone, Debug)]
5739#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5740pub struct InputMessageContentList(pub Vec<InputContent>);
5741
5742#[derive(Clone, Debug, Default)]
5743#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5744pub struct InputMessageResource(pub ());
5745
5746#[derive(Clone, Debug, Default)]
5747#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5748pub struct InputMessageResource_Variant2 {
5749    pub r#id: String,
5751}
5752
5753#[derive(Clone, Debug, Default)]
5755#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5756pub struct InputTextContent {
5757    pub r#type: String,
5759
5760    pub r#text: String,
5762}
5763
5764#[derive(Clone, Debug)]
5766#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5767pub struct Invite {
5768    pub r#object: String,
5770
5771    pub r#id: String,
5773
5774    pub r#email: String,
5776
5777    pub r#role: String,
5779
5780    pub r#status: String,
5782
5783    pub r#invited_at: i64,
5785
5786    pub r#expires_at: i64,
5788
5789    pub r#accepted_at: i64,
5791
5792    pub r#projects: Vec<Invite_Projects>,
5794}
5795
5796#[derive(Clone, Debug, Default)]
5797#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5798pub struct InviteDeleteResponse {
5799    pub r#object: String,
5801
5802    pub r#id: String,
5803
5804    pub r#deleted: bool,
5805}
5806
5807#[derive(Clone, Debug)]
5808#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5809pub struct InviteListResponse {
5810    pub r#object: String,
5812
5813    pub r#data: Vec<Invite>,
5814
5815    pub r#first_id: String,
5817
5818    pub r#last_id: String,
5820
5821    pub r#has_more: bool,
5824}
5825
5826#[derive(Clone, Debug)]
5827#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5828pub struct InviteRequest {
5829    pub r#email: String,
5831
5832    pub r#role: String,
5834
5835    pub r#projects: Vec<InviteRequest_Projects>,
5838}
5839
5840#[derive(Clone, Debug, Default)]
5841#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5842pub struct InviteRequest_Projects {
5843    pub r#id: String,
5845
5846    pub r#role: String,
5848}
5849
5850#[derive(Clone, Debug, Default)]
5851#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5852pub struct Invite_Projects {
5853    pub r#id: String,
5855
5856    pub r#role: String,
5858}
5859
5860#[derive(Clone, Debug, Default)]
5862#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5863pub struct Item;
5864
5865#[derive(Clone, Debug)]
5867#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5868pub struct ItemReferenceParam {
5869    pub r#type: ItemReferenceParam_Type,
5870
5871    pub r#id: String,
5873}
5874
5875pub type ItemReferenceParam_Type = Option<String>;
5876
5877#[derive(Clone, Debug)]
5879#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5880pub enum ItemResource {
5881    InputMessageResource(InputMessageResource),
5882
5883    OutputMessage(OutputMessage),
5884
5885    FileSearchToolCall(FileSearchToolCall),
5886
5887    ComputerToolCall(ComputerToolCall),
5888
5889    ComputerToolCallOutputResource(ComputerToolCallOutputResource),
5890
5891    WebSearchToolCall(WebSearchToolCall),
5892
5893    FunctionToolCallResource(FunctionToolCallResource),
5894
5895    FunctionToolCallOutputResource(FunctionToolCallOutputResource),
5896}
5897
5898#[derive(Clone, Debug)]
5900#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5901pub struct KeyPress {
5902    pub r#type: String,
5904
5905    pub r#keys: Vec<String>,
5907}
5908
5909#[derive(Clone, Debug)]
5910#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5911pub struct ListAssistantsResponse {
5912    pub r#object: String,
5913
5914    pub r#data: Vec<AssistantObject>,
5915
5916    pub r#first_id: String,
5917
5918    pub r#last_id: String,
5919
5920    pub r#has_more: bool,
5921}
5922
5923#[derive(Clone, Debug)]
5924#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5925pub struct ListAuditLogsResponse {
5926    pub r#object: String,
5927
5928    pub r#data: Vec<AuditLog>,
5929
5930    pub r#first_id: String,
5931
5932    pub r#last_id: String,
5933
5934    pub r#has_more: bool,
5935}
5936
5937#[derive(Clone, Debug)]
5938#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5939pub struct ListBatchesResponse {
5940    pub r#data: Vec<Batch>,
5941
5942    pub r#first_id: String,
5943
5944    pub r#last_id: String,
5945
5946    pub r#has_more: bool,
5947
5948    pub r#object: String,
5949}
5950
5951#[derive(Clone, Debug)]
5952#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5953pub struct ListCertificatesResponse {
5954    pub r#data: Vec<Certificate>,
5955
5956    pub r#first_id: String,
5957
5958    pub r#last_id: String,
5959
5960    pub r#has_more: bool,
5961
5962    pub r#object: String,
5963}
5964
5965#[derive(Clone, Debug)]
5966#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5967pub struct ListFilesResponse {
5968    pub r#object: String,
5969
5970    pub r#data: Vec<OpenAIFile>,
5971
5972    pub r#first_id: String,
5973
5974    pub r#last_id: String,
5975
5976    pub r#has_more: bool,
5977}
5978
5979#[derive(Clone, Debug)]
5980#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5981pub struct ListFineTuningCheckpointPermissionResponse {
5982    pub r#data: Vec<FineTuningCheckpointPermission>,
5983
5984    pub r#object: String,
5985
5986    pub r#first_id: Option<String>,
5987
5988    pub r#last_id: Option<String>,
5989
5990    pub r#has_more: bool,
5991}
5992
5993#[derive(Clone, Debug)]
5994#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5995pub struct ListFineTuningJobCheckpointsResponse {
5996    pub r#data: Vec<FineTuningJobCheckpoint>,
5997
5998    pub r#object: String,
5999
6000    pub r#first_id: Option<String>,
6001
6002    pub r#last_id: Option<String>,
6003
6004    pub r#has_more: bool,
6005}
6006
6007#[derive(Clone, Debug)]
6008#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6009pub struct ListFineTuningJobEventsResponse {
6010    pub r#data: Vec<FineTuningJobEvent>,
6011
6012    pub r#object: String,
6013
6014    pub r#has_more: bool,
6015}
6016
6017#[derive(Clone, Debug)]
6018#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6019pub struct ListMessagesResponse {
6020    pub r#object: String,
6021
6022    pub r#data: Vec<MessageObject>,
6023
6024    pub r#first_id: String,
6025
6026    pub r#last_id: String,
6027
6028    pub r#has_more: bool,
6029}
6030
6031#[derive(Clone, Debug)]
6032#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6033pub struct ListModelsResponse {
6034    pub r#object: String,
6035
6036    pub r#data: Vec<Model>,
6037}
6038
6039#[derive(Clone, Debug)]
6040#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6041pub struct ListPaginatedFineTuningJobsResponse {
6042    pub r#data: Vec<FineTuningJob>,
6043
6044    pub r#has_more: bool,
6045
6046    pub r#object: String,
6047}
6048
6049#[derive(Clone, Debug)]
6050#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6051pub struct ListRunStepsResponse {
6052    pub r#object: String,
6053
6054    pub r#data: Vec<RunStepObject>,
6055
6056    pub r#first_id: String,
6057
6058    pub r#last_id: String,
6059
6060    pub r#has_more: bool,
6061}
6062
6063#[derive(Clone, Debug)]
6064#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6065pub struct ListRunsResponse {
6066    pub r#object: String,
6067
6068    pub r#data: Vec<RunObject>,
6069
6070    pub r#first_id: String,
6071
6072    pub r#last_id: String,
6073
6074    pub r#has_more: bool,
6075}
6076
6077#[derive(Clone, Debug)]
6078#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6079pub struct ListVectorStoreFilesResponse {
6080    pub r#object: String,
6081
6082    pub r#data: Vec<VectorStoreFileObject>,
6083
6084    pub r#first_id: String,
6085
6086    pub r#last_id: String,
6087
6088    pub r#has_more: bool,
6089}
6090
6091#[derive(Clone, Debug)]
6092#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6093pub struct ListVectorStoresResponse {
6094    pub r#object: String,
6095
6096    pub r#data: Vec<VectorStoreObject>,
6097
6098    pub r#first_id: String,
6099
6100    pub r#last_id: String,
6101
6102    pub r#has_more: bool,
6103}
6104
6105#[derive(Clone, Debug)]
6107#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6108pub struct LogProbProperties {
6109    pub r#token: String,
6111
6112    pub r#logprob: f64,
6114
6115    pub r#bytes: Vec<i64>,
6117}
6118
6119#[derive(Clone, Debug)]
6122#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6123pub struct MessageContentImageFileObject {
6124    pub r#type: String,
6126
6127    pub r#image_file: MessageContentImageFileObject_ImageFile,
6128}
6129
6130#[derive(Clone, Debug, Default)]
6131#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6132pub struct MessageContentImageFileObject_ImageFile {
6133    pub r#file_id: String,
6136
6137    pub r#detail: String,
6139}
6140
6141#[derive(Clone, Debug)]
6143#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6144pub struct MessageContentImageUrlObject {
6145    pub r#type: String,
6147
6148    pub r#image_url: MessageContentImageUrlObject_ImageUrl,
6149}
6150
6151#[derive(Clone, Debug, Default)]
6152#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6153pub struct MessageContentImageUrlObject_ImageUrl {
6154    pub r#url: String,
6157
6158    pub r#detail: String,
6160}
6161
6162#[derive(Clone, Debug, Default)]
6164#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6165pub struct MessageContentRefusalObject {
6166    pub r#type: String,
6168
6169    pub r#refusal: String,
6170}
6171
6172#[derive(Clone, Debug)]
6175#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6176pub struct MessageContentTextAnnotationsFileCitationObject {
6177    pub r#type: String,
6179
6180    pub r#text: String,
6182
6183    pub r#file_citation: MessageContentTextAnnotationsFileCitationObject_FileCitation,
6184
6185    pub r#start_index: i64,
6186
6187    pub r#end_index: i64,
6188}
6189
6190#[derive(Clone, Debug, Default)]
6191#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6192pub struct MessageContentTextAnnotationsFileCitationObject_FileCitation {
6193    pub r#file_id: String,
6195}
6196
6197#[derive(Clone, Debug)]
6200#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6201pub struct MessageContentTextAnnotationsFilePathObject {
6202    pub r#type: String,
6204
6205    pub r#text: String,
6207
6208    pub r#file_path: MessageContentTextAnnotationsFilePathObject_FilePath,
6209
6210    pub r#start_index: i64,
6211
6212    pub r#end_index: i64,
6213}
6214
6215#[derive(Clone, Debug, Default)]
6216#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6217pub struct MessageContentTextAnnotationsFilePathObject_FilePath {
6218    pub r#file_id: String,
6220}
6221
6222#[derive(Clone, Debug)]
6224#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6225pub struct MessageContentTextObject {
6226    pub r#type: String,
6228
6229    pub r#text: MessageContentTextObject_Text,
6230}
6231
6232#[derive(Clone, Debug)]
6233#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6234pub struct MessageContentTextObject_Text {
6235    pub r#value: String,
6237
6238    pub r#annotations: Vec<MessageContentTextObject_Text_Annotations>,
6239}
6240
6241#[derive(Clone, Debug)]
6242#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6243pub enum MessageContentTextObject_Text_Annotations {
6244    MessageContentTextAnnotationsFileCitationObject(MessageContentTextAnnotationsFileCitationObject),
6245
6246    MessageContentTextAnnotationsFilePathObject(MessageContentTextAnnotationsFilePathObject),
6247}
6248
6249#[derive(Clone, Debug)]
6252#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6253pub struct MessageDeltaContentImageFileObject {
6254    pub r#index: i64,
6256
6257    pub r#type: String,
6259
6260    pub r#image_file: MessageDeltaContentImageFileObject_ImageFile,
6261}
6262
6263#[derive(Clone, Debug, Default)]
6264#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6265pub struct MessageDeltaContentImageFileObject_ImageFile {
6266    pub r#file_id: String,
6269
6270    pub r#detail: String,
6272}
6273
6274#[derive(Clone, Debug)]
6276#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6277pub struct MessageDeltaContentImageUrlObject {
6278    pub r#index: i64,
6280
6281    pub r#type: String,
6283
6284    pub r#image_url: MessageDeltaContentImageUrlObject_ImageUrl,
6285}
6286
6287#[derive(Clone, Debug, Default)]
6288#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6289pub struct MessageDeltaContentImageUrlObject_ImageUrl {
6290    pub r#url: String,
6293
6294    pub r#detail: String,
6296}
6297
6298#[derive(Clone, Debug, Default)]
6300#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6301pub struct MessageDeltaContentRefusalObject {
6302    pub r#index: i64,
6304
6305    pub r#type: String,
6307
6308    pub r#refusal: String,
6309}
6310
6311#[derive(Clone, Debug)]
6314#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6315pub struct MessageDeltaContentTextAnnotationsFileCitationObject {
6316    pub r#index: i64,
6318
6319    pub r#type: String,
6321
6322    pub r#text: String,
6324
6325    pub r#file_citation: MessageDeltaContentTextAnnotationsFileCitationObject_FileCitation,
6326
6327    pub r#start_index: i64,
6328
6329    pub r#end_index: i64,
6330}
6331
6332#[derive(Clone, Debug, Default)]
6333#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6334pub struct MessageDeltaContentTextAnnotationsFileCitationObject_FileCitation {
6335    pub r#file_id: String,
6337
6338    pub r#quote: String,
6340}
6341
6342#[derive(Clone, Debug)]
6345#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6346pub struct MessageDeltaContentTextAnnotationsFilePathObject {
6347    pub r#index: i64,
6349
6350    pub r#type: String,
6352
6353    pub r#text: String,
6355
6356    pub r#file_path: MessageDeltaContentTextAnnotationsFilePathObject_FilePath,
6357
6358    pub r#start_index: i64,
6359
6360    pub r#end_index: i64,
6361}
6362
6363#[derive(Clone, Debug, Default)]
6364#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6365pub struct MessageDeltaContentTextAnnotationsFilePathObject_FilePath {
6366    pub r#file_id: String,
6368}
6369
6370#[derive(Clone, Debug)]
6372#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6373pub struct MessageDeltaContentTextObject {
6374    pub r#index: i64,
6376
6377    pub r#type: String,
6379
6380    pub r#text: MessageDeltaContentTextObject_Text,
6381}
6382
6383#[derive(Clone, Debug)]
6384#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6385pub struct MessageDeltaContentTextObject_Text {
6386    pub r#value: String,
6388
6389    pub r#annotations: Vec<MessageDeltaContentTextObject_Text_Annotations>,
6390}
6391
6392#[derive(Clone, Debug)]
6393#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6394pub enum MessageDeltaContentTextObject_Text_Annotations {
6395    MessageDeltaContentTextAnnotationsFileCitationObject(MessageDeltaContentTextAnnotationsFileCitationObject),
6396
6397    MessageDeltaContentTextAnnotationsFilePathObject(MessageDeltaContentTextAnnotationsFilePathObject),
6398}
6399
6400#[derive(Clone, Debug)]
6402#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6403pub struct MessageDeltaObject {
6404    pub r#id: String,
6406
6407    pub r#object: String,
6409
6410    pub r#delta: MessageDeltaObject_Delta,
6411}
6412
6413#[derive(Clone, Debug)]
6415#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6416pub struct MessageDeltaObject_Delta {
6417    pub r#role: String,
6419
6420    pub r#content: Vec<MessageDeltaObject_Delta_Content>,
6422}
6423
6424#[derive(Clone, Debug)]
6425#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6426pub enum MessageDeltaObject_Delta_Content {
6427    MessageDeltaContentImageFileObject(MessageDeltaContentImageFileObject),
6428
6429    MessageDeltaContentTextObject(MessageDeltaContentTextObject),
6430
6431    MessageDeltaContentRefusalObject(MessageDeltaContentRefusalObject),
6432
6433    MessageDeltaContentImageUrlObject(MessageDeltaContentImageUrlObject),
6434}
6435
6436#[derive(Clone, Debug)]
6438#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6439pub struct MessageObject {
6440    pub r#id: String,
6442
6443    pub r#object: String,
6445
6446    pub r#created_at: i64,
6448
6449    pub r#thread_id: String,
6452
6453    pub r#status: String,
6456
6457    pub r#incomplete_details: Option<MessageObject_IncompleteDetails>,
6458
6459    pub r#completed_at: Option<i64>,
6461
6462    pub r#incomplete_at: Option<i64>,
6465
6466    pub r#role: String,
6468
6469    pub r#content: Vec<MessageObject_Content>,
6471
6472    pub r#assistant_id: Option<String>,
6475
6476    pub r#run_id: Option<String>,
6479
6480    pub r#attachments: Option<Vec<MessageObject_Attachments>>,
6483
6484    pub r#metadata: Option<Metadata>,
6485}
6486
6487#[derive(Clone, Debug)]
6488#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6489pub struct MessageObject_Attachments {
6490    pub r#file_id: String,
6492
6493    pub r#tools: Vec<MessageObject_Attachments_Tools>,
6495}
6496
6497#[derive(Clone, Debug)]
6498#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6499pub enum MessageObject_Attachments_Tools {
6500    AssistantToolsCode(AssistantToolsCode),
6501
6502    AssistantToolsFileSearchTypeOnly(AssistantToolsFileSearchTypeOnly),
6503}
6504
6505#[derive(Clone, Debug)]
6506#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6507pub enum MessageObject_Content {
6508    MessageContentImageFileObject(MessageContentImageFileObject),
6509
6510    MessageContentImageUrlObject(MessageContentImageUrlObject),
6511
6512    MessageContentTextObject(MessageContentTextObject),
6513
6514    MessageContentRefusalObject(MessageContentRefusalObject),
6515}
6516
6517#[derive(Clone, Debug, Default)]
6519#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6520pub struct MessageObject_IncompleteDetails {
6521    pub r#reason: String,
6523}
6524
6525#[derive(Clone, Debug, Default)]
6527#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6528pub struct MessageRequestContentTextObject {
6529    pub r#type: String,
6531
6532    pub r#text: String,
6534}
6535
6536include!("components/message_stream_event.rs");
6537
6538#[derive(Clone, Debug)]
6540#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6541pub struct MessageStreamEvent_Variant1 {
6542    pub r#event: String,
6543
6544    pub r#data: MessageObject,
6545}
6546
6547#[derive(Clone, Debug)]
6550#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6551pub struct MessageStreamEvent_Variant2 {
6552    pub r#event: String,
6553
6554    pub r#data: MessageObject,
6555}
6556
6557#[derive(Clone, Debug)]
6560#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6561pub struct MessageStreamEvent_Variant3 {
6562    pub r#event: String,
6563
6564    pub r#data: MessageDeltaObject,
6565}
6566
6567#[derive(Clone, Debug)]
6569#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6570pub struct MessageStreamEvent_Variant4 {
6571    pub r#event: String,
6572
6573    pub r#data: MessageObject,
6574}
6575
6576#[derive(Clone, Debug)]
6579#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6580pub struct MessageStreamEvent_Variant5 {
6581    pub r#event: String,
6582
6583    pub r#data: MessageObject,
6584}
6585
6586#[derive(Clone, Debug, Default)]
6588#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6589pub struct Metadata;
6590
6591#[derive(Clone, Debug, Default)]
6593#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6594pub struct Model {
6595    pub r#id: String,
6597
6598    pub r#created: i64,
6600
6601    pub r#object: String,
6603
6604    pub r#owned_by: String,
6606}
6607
6608#[derive(Clone, Debug)]
6609#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6610pub enum ModelIds {
6611    ModelIdsShared(ModelIdsShared),
6612
6613    ModelIdsResponses(ModelIdsResponses),
6614}
6615
6616#[derive(Clone, Debug)]
6617#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6618pub enum ModelIdsResponses {
6619    ModelIdsShared(ModelIdsShared),
6620
6621    String(String),
6622}
6623
6624pub type ModelIdsShared = String;
6625
6626#[derive(Clone, Debug)]
6627#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6628pub struct ModelResponseProperties {
6629    pub r#metadata: Option<Metadata>,
6630
6631    pub r#temperature: Option<f64>,
6633
6634    pub r#top_p: Option<f64>,
6638
6639    pub r#user: String,
6642
6643    pub r#service_tier: Option<ServiceTier>,
6644}
6645
6646#[derive(Clone, Debug)]
6647#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6648pub struct ModifyAssistantRequest {
6649    pub r#model: ModifyAssistantRequest_Model,
6650
6651    pub r#reasoning_effort: Option<ReasoningEffort>,
6652
6653    pub r#name: Option<String>,
6655
6656    pub r#description: Option<String>,
6658
6659    pub r#instructions: Option<String>,
6661
6662    pub r#tools: Vec<ModifyAssistantRequest_Tools>,
6664
6665    pub r#tool_resources: Option<ModifyAssistantRequest_ToolResources>,
6666
6667    pub r#metadata: Option<Metadata>,
6668
6669    pub r#temperature: Option<f64>,
6671
6672    pub r#top_p: Option<f64>,
6676
6677    pub r#response_format: Option<AssistantsApiResponseFormatOption>,
6678}
6679
6680#[derive(Clone, Debug)]
6682#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6683pub enum ModifyAssistantRequest_Model {
6684    String(String),
6685
6686    AssistantSupportedModels(AssistantSupportedModels),
6687}
6688
6689#[derive(Clone, Debug)]
6691#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6692pub struct ModifyAssistantRequest_ToolResources {
6693    pub r#code_interpreter: ModifyAssistantRequest_ToolResources_CodeInterpreter,
6694
6695    pub r#file_search: ModifyAssistantRequest_ToolResources_FileSearch,
6696}
6697
6698#[derive(Clone, Debug)]
6699#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6700pub struct ModifyAssistantRequest_ToolResources_CodeInterpreter {
6701    pub r#file_ids: Vec<String>,
6704}
6705
6706#[derive(Clone, Debug)]
6707#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6708pub struct ModifyAssistantRequest_ToolResources_FileSearch {
6709    pub r#vector_store_ids: Vec<String>,
6712}
6713
6714#[derive(Clone, Debug)]
6715#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6716pub enum ModifyAssistantRequest_Tools {
6717    AssistantToolsCode(AssistantToolsCode),
6718
6719    AssistantToolsFileSearch(AssistantToolsFileSearch),
6720
6721    AssistantToolsFunction(AssistantToolsFunction),
6722}
6723
6724#[derive(Clone, Debug, Default)]
6725#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6726pub struct ModifyCertificateRequest {
6727    pub r#name: String,
6729}
6730
6731#[derive(Clone, Debug)]
6732#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6733pub struct ModifyMessageRequest {
6734    pub r#metadata: Option<Metadata>,
6735}
6736
6737#[derive(Clone, Debug)]
6738#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6739pub struct ModifyRunRequest {
6740    pub r#metadata: Option<Metadata>,
6741}
6742
6743#[derive(Clone, Debug)]
6744#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6745pub struct ModifyThreadRequest {
6746    pub r#tool_resources: Option<ModifyThreadRequest_ToolResources>,
6747
6748    pub r#metadata: Option<Metadata>,
6749}
6750
6751#[derive(Clone, Debug)]
6754#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6755pub struct ModifyThreadRequest_ToolResources {
6756    pub r#code_interpreter: ModifyThreadRequest_ToolResources_CodeInterpreter,
6757
6758    pub r#file_search: ModifyThreadRequest_ToolResources_FileSearch,
6759}
6760
6761#[derive(Clone, Debug)]
6762#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6763pub struct ModifyThreadRequest_ToolResources_CodeInterpreter {
6764    pub r#file_ids: Vec<String>,
6767}
6768
6769#[derive(Clone, Debug)]
6770#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6771pub struct ModifyThreadRequest_ToolResources_FileSearch {
6772    pub r#vector_store_ids: Vec<String>,
6775}
6776
6777#[derive(Clone, Debug, Default)]
6779#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6780pub struct Move {
6781    pub r#type: String,
6783
6784    pub r#x: i64,
6786
6787    pub r#y: i64,
6789}
6790
6791#[derive(Clone, Debug, Default)]
6793#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6794pub struct OpenAIFile {
6795    pub r#id: String,
6797
6798    pub r#bytes: i64,
6800
6801    pub r#created_at: i64,
6803
6804    pub r#expires_at: i64,
6806
6807    pub r#filename: String,
6809
6810    pub r#object: String,
6812
6813    pub r#purpose: String,
6815
6816    pub r#status: String,
6818
6819    pub r#status_details: String,
6821}
6822
6823#[derive(Clone, Debug, Default)]
6825#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6826pub struct OtherChunkingStrategyResponseParam {
6827    pub r#type: String,
6829}
6830
6831#[derive(Clone, Debug, Default)]
6833#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6834pub struct OutputAudio {
6835    pub r#type: String,
6837
6838    pub r#data: String,
6840
6841    pub r#transcript: String,
6843}
6844
6845#[derive(Clone, Debug)]
6846#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6847pub enum OutputContent {
6848    OutputTextContent(OutputTextContent),
6849
6850    RefusalContent(RefusalContent),
6851}
6852
6853#[derive(Clone, Debug)]
6854#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6855pub enum OutputItem {
6856    OutputMessage(OutputMessage),
6857
6858    FileSearchToolCall(FileSearchToolCall),
6859
6860    FunctionToolCall(FunctionToolCall),
6861
6862    WebSearchToolCall(WebSearchToolCall),
6863
6864    ComputerToolCall(ComputerToolCall),
6865
6866    ReasoningItem(ReasoningItem),
6867}
6868
6869#[derive(Clone, Debug)]
6871#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6872pub struct OutputMessage {
6873    pub r#id: String,
6875
6876    pub r#type: String,
6878
6879    pub r#role: String,
6881
6882    pub r#content: Vec<OutputContent>,
6884
6885    pub r#status: String,
6887}
6888
6889#[derive(Clone, Debug)]
6891#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6892pub struct OutputTextContent {
6893    pub r#type: String,
6895
6896    pub r#text: String,
6898
6899    pub r#annotations: Vec<Annotation>,
6901}
6902
6903#[derive(Clone, Debug)]
6907#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6908pub struct ParallelToolCalls(pub bool);
6909
6910#[derive(Clone, Debug)]
6913#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6914pub struct PredictionContent {
6915    pub r#type: String,
6917
6918    pub r#content: PredictionContent_Content,
6919}
6920
6921#[derive(Clone, Debug)]
6923#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6924pub enum PredictionContent_Content {
6925    String(String),
6927
6928    Array(Vec<ChatCompletionRequestMessageContentPartText>),
6930}
6931
6932#[derive(Clone, Debug, Default)]
6934#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6935pub struct Project {
6936    pub r#id: String,
6938
6939    pub r#object: String,
6941
6942    pub r#name: String,
6944
6945    pub r#created_at: i64,
6947
6948    pub r#archived_at: Option<i64>,
6951
6952    pub r#status: String,
6954}
6955
6956#[derive(Clone, Debug)]
6958#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6959pub struct ProjectApiKey {
6960    pub r#object: String,
6962
6963    pub r#redacted_value: String,
6965
6966    pub r#name: String,
6968
6969    pub r#created_at: i64,
6971
6972    pub r#last_used_at: i64,
6974
6975    pub r#id: String,
6977
6978    pub r#owner: ProjectApiKey_Owner,
6979}
6980
6981#[derive(Clone, Debug, Default)]
6982#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6983pub struct ProjectApiKeyDeleteResponse {
6984    pub r#object: String,
6985
6986    pub r#id: String,
6987
6988    pub r#deleted: bool,
6989}
6990
6991#[derive(Clone, Debug)]
6992#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
6993pub struct ProjectApiKeyListResponse {
6994    pub r#object: String,
6995
6996    pub r#data: Vec<ProjectApiKey>,
6997
6998    pub r#first_id: String,
6999
7000    pub r#last_id: String,
7001
7002    pub r#has_more: bool,
7003}
7004
7005#[derive(Clone, Debug)]
7006#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7007pub struct ProjectApiKey_Owner {
7008    pub r#type: String,
7010
7011    pub r#user: ProjectUser,
7012
7013    pub r#service_account: ProjectServiceAccount,
7014}
7015
7016#[derive(Clone, Debug, Default)]
7017#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7018pub struct ProjectCreateRequest {
7019    pub r#name: String,
7021}
7022
7023#[derive(Clone, Debug)]
7024#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7025pub struct ProjectListResponse {
7026    pub r#object: String,
7027
7028    pub r#data: Vec<Project>,
7029
7030    pub r#first_id: String,
7031
7032    pub r#last_id: String,
7033
7034    pub r#has_more: bool,
7035}
7036
7037#[derive(Clone, Debug, Default)]
7039#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7040pub struct ProjectRateLimit {
7041    pub r#object: String,
7043
7044    pub r#id: String,
7046
7047    pub r#model: String,
7049
7050    pub r#max_requests_per_1_minute: i64,
7052
7053    pub r#max_tokens_per_1_minute: i64,
7055
7056    pub r#max_images_per_1_minute: i64,
7058
7059    pub r#max_audio_megabytes_per_1_minute: i64,
7061
7062    pub r#max_requests_per_1_day: i64,
7064
7065    pub r#batch_1_day_max_input_tokens: i64,
7067}
7068
7069#[derive(Clone, Debug)]
7070#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7071pub struct ProjectRateLimitListResponse {
7072    pub r#object: String,
7073
7074    pub r#data: Vec<ProjectRateLimit>,
7075
7076    pub r#first_id: String,
7077
7078    pub r#last_id: String,
7079
7080    pub r#has_more: bool,
7081}
7082
7083#[derive(Clone, Debug, Default)]
7084#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7085pub struct ProjectRateLimitUpdateRequest {
7086    pub r#max_requests_per_1_minute: i64,
7088
7089    pub r#max_tokens_per_1_minute: i64,
7091
7092    pub r#max_images_per_1_minute: i64,
7094
7095    pub r#max_audio_megabytes_per_1_minute: i64,
7097
7098    pub r#max_requests_per_1_day: i64,
7100
7101    pub r#batch_1_day_max_input_tokens: i64,
7103}
7104
7105#[derive(Clone, Debug, Default)]
7107#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7108pub struct ProjectServiceAccount {
7109    pub r#object: String,
7111
7112    pub r#id: String,
7114
7115    pub r#name: String,
7117
7118    pub r#role: String,
7120
7121    pub r#created_at: i64,
7123}
7124
7125#[derive(Clone, Debug, Default)]
7126#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7127pub struct ProjectServiceAccountApiKey {
7128    pub r#object: String,
7131
7132    pub r#value: String,
7133
7134    pub r#name: String,
7135
7136    pub r#created_at: i64,
7137
7138    pub r#id: String,
7139}
7140
7141#[derive(Clone, Debug, Default)]
7142#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7143pub struct ProjectServiceAccountCreateRequest {
7144    pub r#name: String,
7146}
7147
7148#[derive(Clone, Debug)]
7149#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7150pub struct ProjectServiceAccountCreateResponse {
7151    pub r#object: String,
7152
7153    pub r#id: String,
7154
7155    pub r#name: String,
7156
7157    pub r#role: String,
7159
7160    pub r#created_at: i64,
7161
7162    pub r#api_key: ProjectServiceAccountApiKey,
7163}
7164
7165#[derive(Clone, Debug, Default)]
7166#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7167pub struct ProjectServiceAccountDeleteResponse {
7168    pub r#object: String,
7169
7170    pub r#id: String,
7171
7172    pub r#deleted: bool,
7173}
7174
7175#[derive(Clone, Debug)]
7176#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7177pub struct ProjectServiceAccountListResponse {
7178    pub r#object: String,
7179
7180    pub r#data: Vec<ProjectServiceAccount>,
7181
7182    pub r#first_id: String,
7183
7184    pub r#last_id: String,
7185
7186    pub r#has_more: bool,
7187}
7188
7189#[derive(Clone, Debug, Default)]
7190#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7191pub struct ProjectUpdateRequest {
7192    pub r#name: String,
7194}
7195
7196#[derive(Clone, Debug, Default)]
7198#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7199pub struct ProjectUser {
7200    pub r#object: String,
7202
7203    pub r#id: String,
7205
7206    pub r#name: String,
7208
7209    pub r#email: String,
7211
7212    pub r#role: String,
7214
7215    pub r#added_at: i64,
7217}
7218
7219#[derive(Clone, Debug, Default)]
7220#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7221pub struct ProjectUserCreateRequest {
7222    pub r#user_id: String,
7224
7225    pub r#role: String,
7227}
7228
7229#[derive(Clone, Debug, Default)]
7230#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7231pub struct ProjectUserDeleteResponse {
7232    pub r#object: String,
7233
7234    pub r#id: String,
7235
7236    pub r#deleted: bool,
7237}
7238
7239#[derive(Clone, Debug)]
7240#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7241pub struct ProjectUserListResponse {
7242    pub r#object: String,
7243
7244    pub r#data: Vec<ProjectUser>,
7245
7246    pub r#first_id: String,
7247
7248    pub r#last_id: String,
7249
7250    pub r#has_more: bool,
7251}
7252
7253#[derive(Clone, Debug, Default)]
7254#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7255pub struct ProjectUserUpdateRequest {
7256    pub r#role: String,
7258}
7259
7260#[derive(Clone, Debug, Default)]
7261#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7262pub struct RankingOptions {
7263    pub r#ranker: String,
7265
7266    pub r#score_threshold: f64,
7268}
7269
7270#[derive(Clone, Debug)]
7272#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7273pub enum RealtimeClientEvent {
7274    RealtimeClientEventConversationItemCreate(RealtimeClientEventConversationItemCreate),
7275
7276    RealtimeClientEventConversationItemDelete(RealtimeClientEventConversationItemDelete),
7277
7278    RealtimeClientEventConversationItemRetrieve(RealtimeClientEventConversationItemRetrieve),
7279
7280    RealtimeClientEventConversationItemTruncate(RealtimeClientEventConversationItemTruncate),
7281
7282    RealtimeClientEventInputAudioBufferAppend(RealtimeClientEventInputAudioBufferAppend),
7283
7284    RealtimeClientEventInputAudioBufferClear(RealtimeClientEventInputAudioBufferClear),
7285
7286    RealtimeClientEventOutputAudioBufferClear(RealtimeClientEventOutputAudioBufferClear),
7287
7288    RealtimeClientEventInputAudioBufferCommit(RealtimeClientEventInputAudioBufferCommit),
7289
7290    RealtimeClientEventResponseCancel(RealtimeClientEventResponseCancel),
7291
7292    RealtimeClientEventResponseCreate(RealtimeClientEventResponseCreate),
7293
7294    RealtimeClientEventSessionUpdate(RealtimeClientEventSessionUpdate),
7295
7296    RealtimeClientEventTranscriptionSessionUpdate(RealtimeClientEventTranscriptionSessionUpdate),
7297}
7298
7299#[derive(Clone, Debug)]
7302#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7303pub struct RealtimeClientEventConversationItemCreate {
7304    pub r#event_id: String,
7306
7307    pub r#type: String,
7309
7310    pub r#previous_item_id: String,
7312
7313    pub r#item: RealtimeConversationItem,
7314}
7315
7316#[derive(Clone, Debug, Default)]
7319#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7320pub struct RealtimeClientEventConversationItemDelete {
7321    pub r#event_id: String,
7323
7324    pub r#type: String,
7326
7327    pub r#item_id: String,
7329}
7330
7331#[derive(Clone, Debug, Default)]
7334#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7335pub struct RealtimeClientEventConversationItemRetrieve {
7336    pub r#event_id: String,
7338
7339    pub r#type: String,
7341
7342    pub r#item_id: String,
7344}
7345
7346#[derive(Clone, Debug, Default)]
7348#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7349pub struct RealtimeClientEventConversationItemTruncate {
7350    pub r#event_id: String,
7352
7353    pub r#type: String,
7355
7356    pub r#item_id: String,
7358
7359    pub r#content_index: i64,
7361
7362    pub r#audio_end_ms: i64,
7364}
7365
7366#[derive(Clone, Debug, Default)]
7368#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7369pub struct RealtimeClientEventInputAudioBufferAppend {
7370    pub r#event_id: String,
7372
7373    pub r#type: String,
7375
7376    pub r#audio: String,
7378}
7379
7380#[derive(Clone, Debug, Default)]
7382#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7383pub struct RealtimeClientEventInputAudioBufferClear {
7384    pub r#event_id: String,
7386
7387    pub r#type: String,
7389}
7390
7391#[derive(Clone, Debug, Default)]
7394#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7395pub struct RealtimeClientEventInputAudioBufferCommit {
7396    pub r#event_id: String,
7398
7399    pub r#type: String,
7401}
7402
7403#[derive(Clone, Debug, Default)]
7405#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7406pub struct RealtimeClientEventOutputAudioBufferClear {
7407    pub r#event_id: String,
7409
7410    pub r#type: String,
7412}
7413
7414#[derive(Clone, Debug, Default)]
7416#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7417pub struct RealtimeClientEventResponseCancel {
7418    pub r#event_id: String,
7420
7421    pub r#type: String,
7423
7424    pub r#response_id: String,
7427}
7428
7429#[derive(Clone, Debug)]
7432#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7433pub struct RealtimeClientEventResponseCreate {
7434    pub r#event_id: String,
7436
7437    pub r#type: String,
7439
7440    pub r#response: RealtimeResponseCreateParams,
7441}
7442
7443#[derive(Clone, Debug)]
7445#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7446pub struct RealtimeClientEventSessionUpdate {
7447    pub r#event_id: String,
7449
7450    pub r#type: String,
7452
7453    pub r#session: RealtimeSessionCreateRequest,
7454}
7455
7456#[derive(Clone, Debug)]
7458#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7459pub struct RealtimeClientEventTranscriptionSessionUpdate {
7460    pub r#event_id: String,
7462
7463    pub r#type: String,
7465
7466    pub r#session: RealtimeTranscriptionSessionCreateRequest,
7467}
7468
7469#[derive(Clone, Debug)]
7471#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7472pub struct RealtimeConversationItem {
7473    pub r#id: String,
7477
7478    pub r#type: String,
7481
7482    pub r#object: String,
7484
7485    pub r#status: String,
7487
7488    pub r#role: String,
7491
7492    pub r#content: Vec<RealtimeConversationItem_Content>,
7494
7495    pub r#call_id: String,
7498
7499    pub r#name: String,
7501
7502    pub r#arguments: String,
7504
7505    pub r#output: String,
7507}
7508
7509#[derive(Clone, Debug)]
7511#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7512pub struct RealtimeConversationItemWithReference {
7513    pub r#id: String,
7517
7518    pub r#type: String,
7521
7522    pub r#object: String,
7524
7525    pub r#status: String,
7527
7528    pub r#role: String,
7531
7532    pub r#content: Vec<RealtimeConversationItemWithReference_Content>,
7534
7535    pub r#call_id: String,
7538
7539    pub r#name: String,
7541
7542    pub r#arguments: String,
7544
7545    pub r#output: String,
7547}
7548
7549#[derive(Clone, Debug, Default)]
7550#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7551pub struct RealtimeConversationItemWithReference_Content {
7552    pub r#type: String,
7555
7556    pub r#text: String,
7558
7559    pub r#id: String,
7562
7563    pub r#audio: String,
7565
7566    pub r#transcript: String,
7568}
7569
7570#[derive(Clone, Debug, Default)]
7571#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7572pub struct RealtimeConversationItem_Content {
7573    pub r#type: String,
7576
7577    pub r#text: String,
7579
7580    pub r#id: String,
7583
7584    pub r#audio: String,
7586
7587    pub r#transcript: String,
7589}
7590
7591#[derive(Clone, Debug)]
7593#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7594pub struct RealtimeResponse {
7595    pub r#id: String,
7597
7598    pub r#object: String,
7600
7601    pub r#status: String,
7604
7605    pub r#status_details: RealtimeResponse_StatusDetails,
7606
7607    pub r#output: Vec<RealtimeConversationItem>,
7609
7610    pub r#metadata: Option<Metadata>,
7611
7612    pub r#usage: RealtimeResponse_Usage,
7613
7614    pub r#conversation_id: String,
7617
7618    pub r#voice: VoiceIdsShared,
7620
7621    pub r#modalities: Vec<String>,
7623
7624    pub r#output_audio_format: String,
7626
7627    pub r#temperature: f64,
7629
7630    pub r#max_output_tokens: RealtimeResponse_MaxOutputTokens,
7631}
7632
7633#[derive(Clone, Debug)]
7635#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7636pub struct RealtimeResponseCreateParams {
7637    pub r#modalities: Vec<String>,
7639
7640    pub r#instructions: String,
7642
7643    pub r#voice: VoiceIdsShared,
7645
7646    pub r#output_audio_format: String,
7648
7649    pub r#tools: Vec<RealtimeResponseCreateParams_Tools>,
7651
7652    pub r#tool_choice: String,
7654
7655    pub r#temperature: f64,
7657
7658    pub r#max_response_output_tokens: RealtimeResponseCreateParams_MaxResponseOutputTokens,
7659
7660    pub r#conversation: RealtimeResponseCreateParams_Conversation,
7661
7662    pub r#metadata: Option<Metadata>,
7663
7664    pub r#input: Vec<RealtimeConversationItemWithReference>,
7666}
7667
7668pub type RealtimeResponseCreateParams_Conversation = String;
7670
7671#[derive(Clone, Debug)]
7674#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7675pub enum RealtimeResponseCreateParams_MaxResponseOutputTokens {
7676    Integer(i64),
7677
7678    String(String),
7679}
7680
7681#[derive(Clone, Debug)]
7682#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7683pub struct RealtimeResponseCreateParams_Tools {
7684    pub r#type: String,
7686
7687    pub r#name: String,
7689
7690    pub r#description: String,
7694
7695    pub r#parameters: RealtimeResponseCreateParams_Tools_Parameters,
7697}
7698
7699#[derive(Clone, Debug, Default)]
7701#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7702pub struct RealtimeResponseCreateParams_Tools_Parameters;
7703
7704#[derive(Clone, Debug)]
7707#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7708pub enum RealtimeResponse_MaxOutputTokens {
7709    Integer(i64),
7710
7711    String(String),
7712}
7713
7714#[derive(Clone, Debug)]
7716#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7717pub struct RealtimeResponse_StatusDetails {
7718    pub r#type: String,
7721
7722    pub r#reason: String,
7724
7725    pub r#error: RealtimeResponse_StatusDetails_Error,
7726}
7727
7728#[derive(Clone, Debug, Default)]
7731#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7732pub struct RealtimeResponse_StatusDetails_Error {
7733    pub r#type: String,
7735
7736    pub r#code: String,
7738}
7739
7740#[derive(Clone, Debug)]
7742#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7743pub struct RealtimeResponse_Usage {
7744    pub r#total_tokens: i64,
7747
7748    pub r#input_tokens: i64,
7751
7752    pub r#output_tokens: i64,
7755
7756    pub r#input_token_details: RealtimeResponse_Usage_InputTokenDetails,
7757
7758    pub r#output_token_details: RealtimeResponse_Usage_OutputTokenDetails,
7759}
7760
7761#[derive(Clone, Debug, Default)]
7763#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7764pub struct RealtimeResponse_Usage_InputTokenDetails {
7765    pub r#cached_tokens: i64,
7767
7768    pub r#text_tokens: i64,
7770
7771    pub r#audio_tokens: i64,
7773}
7774
7775#[derive(Clone, Debug, Default)]
7777#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7778pub struct RealtimeResponse_Usage_OutputTokenDetails {
7779    pub r#text_tokens: i64,
7781
7782    pub r#audio_tokens: i64,
7784}
7785
7786#[derive(Clone, Debug)]
7788#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7789pub enum RealtimeServerEvent {
7790    RealtimeServerEventConversationCreated(RealtimeServerEventConversationCreated),
7791
7792    RealtimeServerEventConversationItemCreated(RealtimeServerEventConversationItemCreated),
7793
7794    RealtimeServerEventConversationItemDeleted(RealtimeServerEventConversationItemDeleted),
7795
7796    RealtimeServerEventConversationItemInputAudioTranscriptionCompleted(RealtimeServerEventConversationItemInputAudioTranscriptionCompleted),
7797
7798    RealtimeServerEventConversationItemInputAudioTranscriptionDelta(RealtimeServerEventConversationItemInputAudioTranscriptionDelta),
7799
7800    RealtimeServerEventConversationItemInputAudioTranscriptionFailed(RealtimeServerEventConversationItemInputAudioTranscriptionFailed),
7801
7802    RealtimeServerEventConversationItemRetrieved(RealtimeServerEventConversationItemRetrieved),
7803
7804    RealtimeServerEventConversationItemTruncated(RealtimeServerEventConversationItemTruncated),
7805
7806    RealtimeServerEventError(RealtimeServerEventError),
7807
7808    RealtimeServerEventInputAudioBufferCleared(RealtimeServerEventInputAudioBufferCleared),
7809
7810    RealtimeServerEventInputAudioBufferCommitted(RealtimeServerEventInputAudioBufferCommitted),
7811
7812    RealtimeServerEventInputAudioBufferSpeechStarted(RealtimeServerEventInputAudioBufferSpeechStarted),
7813
7814    RealtimeServerEventInputAudioBufferSpeechStopped(RealtimeServerEventInputAudioBufferSpeechStopped),
7815
7816    RealtimeServerEventRateLimitsUpdated(RealtimeServerEventRateLimitsUpdated),
7817
7818    RealtimeServerEventResponseAudioDelta(RealtimeServerEventResponseAudioDelta),
7819
7820    RealtimeServerEventResponseAudioDone(RealtimeServerEventResponseAudioDone),
7821
7822    RealtimeServerEventResponseAudioTranscriptDelta(RealtimeServerEventResponseAudioTranscriptDelta),
7823
7824    RealtimeServerEventResponseAudioTranscriptDone(RealtimeServerEventResponseAudioTranscriptDone),
7825
7826    RealtimeServerEventResponseContentPartAdded(RealtimeServerEventResponseContentPartAdded),
7827
7828    RealtimeServerEventResponseContentPartDone(RealtimeServerEventResponseContentPartDone),
7829
7830    RealtimeServerEventResponseCreated(RealtimeServerEventResponseCreated),
7831
7832    RealtimeServerEventResponseDone(RealtimeServerEventResponseDone),
7833
7834    RealtimeServerEventResponseFunctionCallArgumentsDelta(RealtimeServerEventResponseFunctionCallArgumentsDelta),
7835
7836    RealtimeServerEventResponseFunctionCallArgumentsDone(RealtimeServerEventResponseFunctionCallArgumentsDone),
7837
7838    RealtimeServerEventResponseOutputItemAdded(RealtimeServerEventResponseOutputItemAdded),
7839
7840    RealtimeServerEventResponseOutputItemDone(RealtimeServerEventResponseOutputItemDone),
7841
7842    RealtimeServerEventResponseTextDelta(RealtimeServerEventResponseTextDelta),
7843
7844    RealtimeServerEventResponseTextDone(RealtimeServerEventResponseTextDone),
7845
7846    RealtimeServerEventSessionCreated(RealtimeServerEventSessionCreated),
7847
7848    RealtimeServerEventSessionUpdated(RealtimeServerEventSessionUpdated),
7849
7850    RealtimeServerEventTranscriptionSessionUpdated(RealtimeServerEventTranscriptionSessionUpdated),
7851
7852    RealtimeServerEventOutputAudioBufferStarted(RealtimeServerEventOutputAudioBufferStarted),
7853
7854    RealtimeServerEventOutputAudioBufferStopped(RealtimeServerEventOutputAudioBufferStopped),
7855
7856    RealtimeServerEventOutputAudioBufferCleared(RealtimeServerEventOutputAudioBufferCleared),
7857}
7858
7859#[derive(Clone, Debug)]
7861#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7862pub struct RealtimeServerEventConversationCreated {
7863    pub r#event_id: String,
7865
7866    pub r#type: String,
7868
7869    pub r#conversation: RealtimeServerEventConversationCreated_Conversation,
7870}
7871
7872#[derive(Clone, Debug, Default)]
7874#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7875pub struct RealtimeServerEventConversationCreated_Conversation {
7876    pub r#id: String,
7878
7879    pub r#object: String,
7881}
7882
7883#[derive(Clone, Debug)]
7885#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7886pub struct RealtimeServerEventConversationItemCreated {
7887    pub r#event_id: String,
7889
7890    pub r#type: String,
7892
7893    pub r#previous_item_id: String,
7896
7897    pub r#item: RealtimeConversationItem,
7898}
7899
7900#[derive(Clone, Debug, Default)]
7903#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7904pub struct RealtimeServerEventConversationItemDeleted {
7905    pub r#event_id: String,
7907
7908    pub r#type: String,
7910
7911    pub r#item_id: String,
7913}
7914
7915#[derive(Clone, Debug)]
7918#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7919pub struct RealtimeServerEventConversationItemInputAudioTranscriptionCompleted {
7920    pub r#event_id: String,
7922
7923    pub r#type: String,
7926
7927    pub r#item_id: String,
7929
7930    pub r#content_index: i64,
7932
7933    pub r#transcript: String,
7935
7936    pub r#logprobs: Option<Vec<LogProbProperties>>,
7938}
7939
7940#[derive(Clone, Debug)]
7943#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7944pub struct RealtimeServerEventConversationItemInputAudioTranscriptionDelta {
7945    pub r#event_id: String,
7947
7948    pub r#type: String,
7951
7952    pub r#item_id: String,
7954
7955    pub r#content_index: i64,
7957
7958    pub r#delta: String,
7960
7961    pub r#logprobs: Option<Vec<LogProbProperties>>,
7963}
7964
7965#[derive(Clone, Debug)]
7968#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7969pub struct RealtimeServerEventConversationItemInputAudioTranscriptionFailed {
7970    pub r#event_id: String,
7972
7973    pub r#type: String,
7976
7977    pub r#item_id: String,
7979
7980    pub r#content_index: i64,
7982
7983    pub r#error: RealtimeServerEventConversationItemInputAudioTranscriptionFailed_Error,
7984}
7985
7986#[derive(Clone, Debug, Default)]
7988#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7989pub struct RealtimeServerEventConversationItemInputAudioTranscriptionFailed_Error {
7990    pub r#type: String,
7992
7993    pub r#code: String,
7995
7996    pub r#message: String,
7998
7999    pub r#param: String,
8001}
8002
8003#[derive(Clone, Debug)]
8006#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8007pub struct RealtimeServerEventConversationItemRetrieved {
8008    pub r#event_id: String,
8010
8011    pub r#type: String,
8013
8014    pub r#item: RealtimeConversationItem,
8015}
8016
8017#[derive(Clone, Debug, Default)]
8020#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8021pub struct RealtimeServerEventConversationItemTruncated {
8022    pub r#event_id: String,
8024
8025    pub r#type: String,
8027
8028    pub r#item_id: String,
8030
8031    pub r#content_index: i64,
8033
8034    pub r#audio_end_ms: i64,
8036}
8037
8038#[derive(Clone, Debug)]
8041#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8042pub struct RealtimeServerEventError {
8043    pub r#event_id: String,
8045
8046    pub r#type: String,
8048
8049    pub r#error: RealtimeServerEventError_Error,
8050}
8051
8052#[derive(Clone, Debug, Default)]
8054#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8055pub struct RealtimeServerEventError_Error {
8056    pub r#type: String,
8058
8059    pub r#code: Option<String>,
8061
8062    pub r#message: String,
8064
8065    pub r#param: Option<String>,
8067
8068    pub r#event_id: Option<String>,
8070}
8071
8072#[derive(Clone, Debug, Default)]
8075#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8076pub struct RealtimeServerEventInputAudioBufferCleared {
8077    pub r#event_id: String,
8079
8080    pub r#type: String,
8082}
8083
8084#[derive(Clone, Debug, Default)]
8087#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8088pub struct RealtimeServerEventInputAudioBufferCommitted {
8089    pub r#event_id: String,
8091
8092    pub r#type: String,
8094
8095    pub r#previous_item_id: String,
8097
8098    pub r#item_id: String,
8100}
8101
8102#[derive(Clone, Debug, Default)]
8105#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8106pub struct RealtimeServerEventInputAudioBufferSpeechStarted {
8107    pub r#event_id: String,
8109
8110    pub r#type: String,
8112
8113    pub r#audio_start_ms: i64,
8116
8117    pub r#item_id: String,
8119}
8120
8121#[derive(Clone, Debug, Default)]
8124#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8125pub struct RealtimeServerEventInputAudioBufferSpeechStopped {
8126    pub r#event_id: String,
8128
8129    pub r#type: String,
8131
8132    pub r#audio_end_ms: i64,
8134
8135    pub r#item_id: String,
8137}
8138
8139#[derive(Clone, Debug, Default)]
8141#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8142pub struct RealtimeServerEventOutputAudioBufferCleared {
8143    pub r#event_id: String,
8145
8146    pub r#type: String,
8148
8149    pub r#response_id: String,
8151}
8152
8153#[derive(Clone, Debug, Default)]
8156#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8157pub struct RealtimeServerEventOutputAudioBufferStarted {
8158    pub r#event_id: String,
8160
8161    pub r#type: String,
8163
8164    pub r#response_id: String,
8166}
8167
8168#[derive(Clone, Debug, Default)]
8171#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8172pub struct RealtimeServerEventOutputAudioBufferStopped {
8173    pub r#event_id: String,
8175
8176    pub r#type: String,
8178
8179    pub r#response_id: String,
8181}
8182
8183#[derive(Clone, Debug)]
8185#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8186pub struct RealtimeServerEventRateLimitsUpdated {
8187    pub r#event_id: String,
8189
8190    pub r#type: String,
8192
8193    pub r#rate_limits: Vec<RealtimeServerEventRateLimitsUpdated_RateLimits>,
8195}
8196
8197#[derive(Clone, Debug, Default)]
8198#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8199pub struct RealtimeServerEventRateLimitsUpdated_RateLimits {
8200    pub r#name: String,
8202
8203    pub r#limit: i64,
8205
8206    pub r#remaining: i64,
8208
8209    pub r#reset_seconds: f64,
8211}
8212
8213#[derive(Clone, Debug, Default)]
8215#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8216pub struct RealtimeServerEventResponseAudioDelta {
8217    pub r#event_id: String,
8219
8220    pub r#type: String,
8222
8223    pub r#response_id: String,
8225
8226    pub r#item_id: String,
8228
8229    pub r#output_index: i64,
8231
8232    pub r#content_index: i64,
8234
8235    pub r#delta: String,
8237}
8238
8239#[derive(Clone, Debug, Default)]
8241#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8242pub struct RealtimeServerEventResponseAudioDone {
8243    pub r#event_id: String,
8245
8246    pub r#type: String,
8248
8249    pub r#response_id: String,
8251
8252    pub r#item_id: String,
8254
8255    pub r#output_index: i64,
8257
8258    pub r#content_index: i64,
8260}
8261
8262#[derive(Clone, Debug, Default)]
8264#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8265pub struct RealtimeServerEventResponseAudioTranscriptDelta {
8266    pub r#event_id: String,
8268
8269    pub r#type: String,
8271
8272    pub r#response_id: String,
8274
8275    pub r#item_id: String,
8277
8278    pub r#output_index: i64,
8280
8281    pub r#content_index: i64,
8283
8284    pub r#delta: String,
8286}
8287
8288#[derive(Clone, Debug, Default)]
8291#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8292pub struct RealtimeServerEventResponseAudioTranscriptDone {
8293    pub r#event_id: String,
8295
8296    pub r#type: String,
8298
8299    pub r#response_id: String,
8301
8302    pub r#item_id: String,
8304
8305    pub r#output_index: i64,
8307
8308    pub r#content_index: i64,
8310
8311    pub r#transcript: String,
8313}
8314
8315#[derive(Clone, Debug)]
8318#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8319pub struct RealtimeServerEventResponseContentPartAdded {
8320    pub r#event_id: String,
8322
8323    pub r#type: String,
8325
8326    pub r#response_id: String,
8328
8329    pub r#item_id: String,
8331
8332    pub r#output_index: i64,
8334
8335    pub r#content_index: i64,
8337
8338    pub r#part: RealtimeServerEventResponseContentPartAdded_Part,
8339}
8340
8341#[derive(Clone, Debug, Default)]
8343#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8344pub struct RealtimeServerEventResponseContentPartAdded_Part {
8345    pub r#type: String,
8347
8348    pub r#text: String,
8350
8351    pub r#audio: String,
8353
8354    pub r#transcript: String,
8356}
8357
8358#[derive(Clone, Debug)]
8360#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8361pub struct RealtimeServerEventResponseContentPartDone {
8362    pub r#event_id: String,
8364
8365    pub r#type: String,
8367
8368    pub r#response_id: String,
8370
8371    pub r#item_id: String,
8373
8374    pub r#output_index: i64,
8376
8377    pub r#content_index: i64,
8379
8380    pub r#part: RealtimeServerEventResponseContentPartDone_Part,
8381}
8382
8383#[derive(Clone, Debug, Default)]
8385#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8386pub struct RealtimeServerEventResponseContentPartDone_Part {
8387    pub r#type: String,
8389
8390    pub r#text: String,
8392
8393    pub r#audio: String,
8395
8396    pub r#transcript: String,
8398}
8399
8400#[derive(Clone, Debug)]
8402#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8403pub struct RealtimeServerEventResponseCreated {
8404    pub r#event_id: String,
8406
8407    pub r#type: String,
8409
8410    pub r#response: RealtimeResponse,
8411}
8412
8413#[derive(Clone, Debug)]
8415#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8416pub struct RealtimeServerEventResponseDone {
8417    pub r#event_id: String,
8419
8420    pub r#type: String,
8422
8423    pub r#response: RealtimeResponse,
8424}
8425
8426#[derive(Clone, Debug, Default)]
8428#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8429pub struct RealtimeServerEventResponseFunctionCallArgumentsDelta {
8430    pub r#event_id: String,
8432
8433    pub r#type: String,
8435
8436    pub r#response_id: String,
8438
8439    pub r#item_id: String,
8441
8442    pub r#output_index: i64,
8444
8445    pub r#call_id: String,
8447
8448    pub r#delta: String,
8450}
8451
8452#[derive(Clone, Debug, Default)]
8455#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8456pub struct RealtimeServerEventResponseFunctionCallArgumentsDone {
8457    pub r#event_id: String,
8459
8460    pub r#type: String,
8462
8463    pub r#response_id: String,
8465
8466    pub r#item_id: String,
8468
8469    pub r#output_index: i64,
8471
8472    pub r#call_id: String,
8474
8475    pub r#arguments: String,
8477}
8478
8479#[derive(Clone, Debug)]
8481#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8482pub struct RealtimeServerEventResponseOutputItemAdded {
8483    pub r#event_id: String,
8485
8486    pub r#type: String,
8488
8489    pub r#response_id: String,
8491
8492    pub r#output_index: i64,
8494
8495    pub r#item: RealtimeConversationItem,
8496}
8497
8498#[derive(Clone, Debug)]
8500#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8501pub struct RealtimeServerEventResponseOutputItemDone {
8502    pub r#event_id: String,
8504
8505    pub r#type: String,
8507
8508    pub r#response_id: String,
8510
8511    pub r#output_index: i64,
8513
8514    pub r#item: RealtimeConversationItem,
8515}
8516
8517#[derive(Clone, Debug, Default)]
8519#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8520pub struct RealtimeServerEventResponseTextDelta {
8521    pub r#event_id: String,
8523
8524    pub r#type: String,
8526
8527    pub r#response_id: String,
8529
8530    pub r#item_id: String,
8532
8533    pub r#output_index: i64,
8535
8536    pub r#content_index: i64,
8538
8539    pub r#delta: String,
8541}
8542
8543#[derive(Clone, Debug, Default)]
8545#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8546pub struct RealtimeServerEventResponseTextDone {
8547    pub r#event_id: String,
8549
8550    pub r#type: String,
8552
8553    pub r#response_id: String,
8555
8556    pub r#item_id: String,
8558
8559    pub r#output_index: i64,
8561
8562    pub r#content_index: i64,
8564
8565    pub r#text: String,
8567}
8568
8569#[derive(Clone, Debug)]
8571#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8572pub struct RealtimeServerEventSessionCreated {
8573    pub r#event_id: String,
8575
8576    pub r#type: String,
8578
8579    pub r#session: RealtimeSession,
8580}
8581
8582#[derive(Clone, Debug)]
8585#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8586pub struct RealtimeServerEventSessionUpdated {
8587    pub r#event_id: String,
8589
8590    pub r#type: String,
8592
8593    pub r#session: RealtimeSession,
8594}
8595
8596#[derive(Clone, Debug)]
8599#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8600pub struct RealtimeServerEventTranscriptionSessionUpdated {
8601    pub r#event_id: String,
8603
8604    pub r#type: String,
8606
8607    pub r#session: RealtimeTranscriptionSessionCreateResponse,
8608}
8609
8610#[derive(Clone, Debug)]
8612#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8613pub struct RealtimeSession {
8614    pub r#id: String,
8617
8618    pub r#modalities: Vec<String>,
8620
8621    pub r#model: String,
8623
8624    pub r#instructions: String,
8626
8627    pub r#voice: VoiceIdsShared,
8629
8630    pub r#input_audio_format: String,
8632
8633    pub r#output_audio_format: String,
8635
8636    pub r#input_audio_transcription: RealtimeSession_InputAudioTranscription,
8637
8638    pub r#turn_detection: RealtimeSession_TurnDetection,
8639
8640    pub r#input_audio_noise_reduction: RealtimeSession_InputAudioNoiseReduction,
8641
8642    pub r#tools: Vec<RealtimeSession_Tools>,
8644
8645    pub r#tool_choice: String,
8647
8648    pub r#temperature: f64,
8650
8651    pub r#max_response_output_tokens: RealtimeSession_MaxResponseOutputTokens,
8652}
8653
8654#[derive(Clone, Debug)]
8656#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8657pub struct RealtimeSessionCreateRequest {
8658    pub r#modalities: Vec<String>,
8660
8661    pub r#model: String,
8663
8664    pub r#instructions: String,
8666
8667    pub r#voice: VoiceIdsShared,
8669
8670    pub r#input_audio_format: String,
8672
8673    pub r#output_audio_format: String,
8675
8676    pub r#input_audio_transcription: RealtimeSessionCreateRequest_InputAudioTranscription,
8677
8678    pub r#turn_detection: RealtimeSessionCreateRequest_TurnDetection,
8679
8680    pub r#input_audio_noise_reduction: RealtimeSessionCreateRequest_InputAudioNoiseReduction,
8681
8682    pub r#tools: Vec<RealtimeSessionCreateRequest_Tools>,
8684
8685    pub r#tool_choice: String,
8687
8688    pub r#temperature: f64,
8690
8691    pub r#max_response_output_tokens: RealtimeSessionCreateRequest_MaxResponseOutputTokens,
8692}
8693
8694#[derive(Clone, Debug, Default)]
8696#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8697pub struct RealtimeSessionCreateRequest_InputAudioNoiseReduction {
8698    pub r#type: String,
8700}
8701
8702#[derive(Clone, Debug, Default)]
8705#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8706pub struct RealtimeSessionCreateRequest_InputAudioTranscription {
8707    pub r#model: String,
8710
8711    pub r#language: String,
8713
8714    pub r#prompt: String,
8717}
8718
8719#[derive(Clone, Debug)]
8722#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8723pub enum RealtimeSessionCreateRequest_MaxResponseOutputTokens {
8724    Integer(i64),
8725
8726    String(String),
8727}
8728
8729#[derive(Clone, Debug)]
8730#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8731pub struct RealtimeSessionCreateRequest_Tools {
8732    pub r#type: String,
8734
8735    pub r#name: String,
8737
8738    pub r#description: String,
8742
8743    pub r#parameters: RealtimeSessionCreateRequest_Tools_Parameters,
8745}
8746
8747#[derive(Clone, Debug, Default)]
8749#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8750pub struct RealtimeSessionCreateRequest_Tools_Parameters;
8751
8752#[derive(Clone, Debug, Default)]
8754#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8755pub struct RealtimeSessionCreateRequest_TurnDetection {
8756    pub r#type: String,
8758
8759    pub r#eagerness: String,
8761
8762    pub r#threshold: f64,
8764
8765    pub r#prefix_padding_ms: i64,
8767
8768    pub r#silence_duration_ms: i64,
8770
8771    pub r#create_response: bool,
8774
8775    pub r#interrupt_response: bool,
8778}
8779
8780#[derive(Clone, Debug)]
8782#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8783pub struct RealtimeSessionCreateResponse {
8784    pub r#client_secret: RealtimeSessionCreateResponse_ClientSecret,
8785
8786    pub r#modalities: Vec<String>,
8788
8789    pub r#instructions: String,
8791
8792    pub r#voice: VoiceIdsShared,
8794
8795    pub r#input_audio_format: String,
8797
8798    pub r#output_audio_format: String,
8800
8801    pub r#input_audio_transcription: RealtimeSessionCreateResponse_InputAudioTranscription,
8802
8803    pub r#turn_detection: RealtimeSessionCreateResponse_TurnDetection,
8804
8805    pub r#tools: Vec<RealtimeSessionCreateResponse_Tools>,
8807
8808    pub r#tool_choice: String,
8810
8811    pub r#temperature: f64,
8813
8814    pub r#max_response_output_tokens: RealtimeSessionCreateResponse_MaxResponseOutputTokens,
8815}
8816
8817#[derive(Clone, Debug, Default)]
8819#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8820pub struct RealtimeSessionCreateResponse_ClientSecret {
8821    pub r#value: String,
8824
8825    pub r#expires_at: i64,
8827}
8828
8829#[derive(Clone, Debug, Default)]
8832#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8833pub struct RealtimeSessionCreateResponse_InputAudioTranscription {
8834    pub r#model: String,
8837}
8838
8839#[derive(Clone, Debug)]
8842#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8843pub enum RealtimeSessionCreateResponse_MaxResponseOutputTokens {
8844    Integer(i64),
8845
8846    String(String),
8847}
8848
8849#[derive(Clone, Debug)]
8850#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8851pub struct RealtimeSessionCreateResponse_Tools {
8852    pub r#type: String,
8854
8855    pub r#name: String,
8857
8858    pub r#description: String,
8862
8863    pub r#parameters: RealtimeSessionCreateResponse_Tools_Parameters,
8865}
8866
8867#[derive(Clone, Debug, Default)]
8869#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8870pub struct RealtimeSessionCreateResponse_Tools_Parameters;
8871
8872#[derive(Clone, Debug, Default)]
8874#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8875pub struct RealtimeSessionCreateResponse_TurnDetection {
8876    pub r#type: String,
8878
8879    pub r#threshold: f64,
8881
8882    pub r#prefix_padding_ms: i64,
8885
8886    pub r#silence_duration_ms: i64,
8888}
8889
8890#[derive(Clone, Debug, Default)]
8892#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8893pub struct RealtimeSession_InputAudioNoiseReduction {
8894    pub r#type: String,
8896}
8897
8898#[derive(Clone, Debug, Default)]
8901#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8902pub struct RealtimeSession_InputAudioTranscription {
8903    pub r#model: String,
8906
8907    pub r#language: String,
8909
8910    pub r#prompt: String,
8913}
8914
8915#[derive(Clone, Debug)]
8918#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8919pub enum RealtimeSession_MaxResponseOutputTokens {
8920    Integer(i64),
8921
8922    String(String),
8923}
8924
8925#[derive(Clone, Debug)]
8926#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8927pub struct RealtimeSession_Tools {
8928    pub r#type: String,
8930
8931    pub r#name: String,
8933
8934    pub r#description: String,
8938
8939    pub r#parameters: RealtimeSession_Tools_Parameters,
8941}
8942
8943#[derive(Clone, Debug, Default)]
8945#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8946pub struct RealtimeSession_Tools_Parameters;
8947
8948#[derive(Clone, Debug, Default)]
8950#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8951pub struct RealtimeSession_TurnDetection {
8952    pub r#type: String,
8954
8955    pub r#eagerness: String,
8957
8958    pub r#threshold: f64,
8960
8961    pub r#prefix_padding_ms: i64,
8963
8964    pub r#silence_duration_ms: i64,
8966
8967    pub r#create_response: bool,
8970
8971    pub r#interrupt_response: bool,
8974}
8975
8976#[derive(Clone, Debug)]
8978#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8979pub struct RealtimeTranscriptionSessionCreateRequest {
8980    pub r#modalities: Vec<String>,
8982
8983    pub r#input_audio_format: String,
8985
8986    pub r#input_audio_transcription: RealtimeTranscriptionSessionCreateRequest_InputAudioTranscription,
8987
8988    pub r#turn_detection: RealtimeTranscriptionSessionCreateRequest_TurnDetection,
8989
8990    pub r#input_audio_noise_reduction: RealtimeTranscriptionSessionCreateRequest_InputAudioNoiseReduction,
8991
8992    pub r#include: Vec<String>,
8994}
8995
8996#[derive(Clone, Debug, Default)]
8998#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8999pub struct RealtimeTranscriptionSessionCreateRequest_InputAudioNoiseReduction {
9000    pub r#type: String,
9002}
9003
9004#[derive(Clone, Debug, Default)]
9006#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9007pub struct RealtimeTranscriptionSessionCreateRequest_InputAudioTranscription {
9008    pub r#model: String,
9011
9012    pub r#language: String,
9014
9015    pub r#prompt: String,
9018}
9019
9020#[derive(Clone, Debug, Default)]
9022#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9023pub struct RealtimeTranscriptionSessionCreateRequest_TurnDetection {
9024    pub r#type: String,
9026
9027    pub r#eagerness: String,
9029
9030    pub r#threshold: f64,
9032
9033    pub r#prefix_padding_ms: i64,
9035
9036    pub r#silence_duration_ms: i64,
9038
9039    pub r#create_response: bool,
9042
9043    pub r#interrupt_response: bool,
9046}
9047
9048#[derive(Clone, Debug)]
9050#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9051pub struct RealtimeTranscriptionSessionCreateResponse {
9052    pub r#client_secret: RealtimeTranscriptionSessionCreateResponse_ClientSecret,
9053
9054    pub r#modalities: Vec<String>,
9056
9057    pub r#input_audio_format: String,
9059
9060    pub r#input_audio_transcription: RealtimeTranscriptionSessionCreateResponse_InputAudioTranscription,
9061
9062    pub r#turn_detection: RealtimeTranscriptionSessionCreateResponse_TurnDetection,
9063}
9064
9065#[derive(Clone, Debug, Default)]
9067#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9068pub struct RealtimeTranscriptionSessionCreateResponse_ClientSecret {
9069    pub r#value: String,
9072
9073    pub r#expires_at: i64,
9075}
9076
9077#[derive(Clone, Debug, Default)]
9079#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9080pub struct RealtimeTranscriptionSessionCreateResponse_InputAudioTranscription {
9081    pub r#model: String,
9083
9084    pub r#language: String,
9086
9087    pub r#prompt: String,
9090}
9091
9092#[derive(Clone, Debug, Default)]
9094#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9095pub struct RealtimeTranscriptionSessionCreateResponse_TurnDetection {
9096    pub r#type: String,
9098
9099    pub r#threshold: f64,
9101
9102    pub r#prefix_padding_ms: i64,
9105
9106    pub r#silence_duration_ms: i64,
9108}
9109
9110#[derive(Clone, Debug)]
9113#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9114pub struct Reasoning {
9115    pub r#effort: Option<ReasoningEffort>,
9116
9117    pub r#summary: Option<String>,
9119
9120    pub r#generate_summary: Option<String>,
9122}
9123
9124#[derive(Clone, Debug)]
9127#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9128pub struct ReasoningEffort(pub String);
9129
9130#[derive(Clone, Debug)]
9133#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9134pub struct ReasoningItem {
9135    pub r#type: String,
9137
9138    pub r#id: String,
9140
9141    pub r#summary: Vec<ReasoningItem_Summary>,
9143
9144    pub r#status: String,
9146}
9147
9148#[derive(Clone, Debug, Default)]
9149#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9150pub struct ReasoningItem_Summary {
9151    pub r#type: String,
9153
9154    pub r#text: String,
9157}
9158
9159#[derive(Clone, Debug, Default)]
9161#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9162pub struct RefusalContent {
9163    pub r#type: String,
9165
9166    pub r#refusal: String,
9168}
9169
9170#[derive(Clone, Debug, Default)]
9171#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9172pub struct Response(pub ());
9173
9174#[derive(Clone, Debug, Default)]
9176#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9177pub struct ResponseAudioDeltaEvent {
9178    pub r#type: String,
9180
9181    pub r#delta: String,
9183}
9184
9185#[derive(Clone, Debug, Default)]
9187#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9188pub struct ResponseAudioDoneEvent {
9189    pub r#type: String,
9191}
9192
9193#[derive(Clone, Debug, Default)]
9195#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9196pub struct ResponseAudioTranscriptDeltaEvent {
9197    pub r#type: String,
9199
9200    pub r#delta: String,
9202}
9203
9204#[derive(Clone, Debug, Default)]
9206#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9207pub struct ResponseAudioTranscriptDoneEvent {
9208    pub r#type: String,
9210}
9211
9212#[derive(Clone, Debug, Default)]
9214#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9215pub struct ResponseCodeInterpreterCallCodeDeltaEvent {
9216    pub r#type: String,
9218
9219    pub r#output_index: i64,
9222
9223    pub r#delta: String,
9225}
9226
9227#[derive(Clone, Debug, Default)]
9229#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9230pub struct ResponseCodeInterpreterCallCodeDoneEvent {
9231    pub r#type: String,
9233
9234    pub r#output_index: i64,
9237
9238    pub r#code: String,
9240}
9241
9242#[derive(Clone, Debug)]
9244#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9245pub struct ResponseCodeInterpreterCallCompletedEvent {
9246    pub r#type: String,
9248
9249    pub r#output_index: i64,
9252
9253    pub r#code_interpreter_call: CodeInterpreterToolCall,
9254}
9255
9256#[derive(Clone, Debug)]
9258#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9259pub struct ResponseCodeInterpreterCallInProgressEvent {
9260    pub r#type: String,
9262
9263    pub r#output_index: i64,
9266
9267    pub r#code_interpreter_call: CodeInterpreterToolCall,
9268}
9269
9270#[derive(Clone, Debug)]
9272#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9273pub struct ResponseCodeInterpreterCallInterpretingEvent {
9274    pub r#type: String,
9276
9277    pub r#output_index: i64,
9280
9281    pub r#code_interpreter_call: CodeInterpreterToolCall,
9282}
9283
9284#[derive(Clone, Debug)]
9286#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9287pub struct ResponseCompletedEvent {
9288    pub r#type: String,
9290
9291    pub r#response: Response,
9293}
9294
9295#[derive(Clone, Debug)]
9297#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9298pub struct ResponseContentPartAddedEvent {
9299    pub r#type: String,
9301
9302    pub r#item_id: String,
9304
9305    pub r#output_index: i64,
9307
9308    pub r#content_index: i64,
9310
9311    pub r#part: OutputContent,
9313}
9314
9315#[derive(Clone, Debug)]
9317#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9318pub struct ResponseContentPartDoneEvent {
9319    pub r#type: String,
9321
9322    pub r#item_id: String,
9324
9325    pub r#output_index: i64,
9327
9328    pub r#content_index: i64,
9330
9331    pub r#part: OutputContent,
9333}
9334
9335#[derive(Clone, Debug)]
9337#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9338pub struct ResponseCreatedEvent {
9339    pub r#type: String,
9341
9342    pub r#response: Response,
9344}
9345
9346#[derive(Clone, Debug)]
9348#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9349pub struct ResponseError {
9350    pub r#code: ResponseErrorCode,
9351
9352    pub r#message: String,
9354}
9355
9356#[derive(Clone, Debug)]
9358#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9359pub struct ResponseErrorCode(pub String);
9360
9361#[derive(Clone, Debug, Default)]
9363#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9364pub struct ResponseErrorEvent {
9365    pub r#type: String,
9367
9368    pub r#code: Option<String>,
9370
9371    pub r#message: String,
9373
9374    pub r#param: Option<String>,
9376}
9377
9378#[derive(Clone, Debug)]
9380#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9381pub struct ResponseFailedEvent {
9382    pub r#type: String,
9384
9385    pub r#response: Response,
9387}
9388
9389#[derive(Clone, Debug, Default)]
9391#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9392pub struct ResponseFileSearchCallCompletedEvent {
9393    pub r#type: String,
9395
9396    pub r#output_index: i64,
9398
9399    pub r#item_id: String,
9401}
9402
9403#[derive(Clone, Debug, Default)]
9405#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9406pub struct ResponseFileSearchCallInProgressEvent {
9407    pub r#type: String,
9409
9410    pub r#output_index: i64,
9412
9413    pub r#item_id: String,
9415}
9416
9417#[derive(Clone, Debug, Default)]
9419#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9420pub struct ResponseFileSearchCallSearchingEvent {
9421    pub r#type: String,
9423
9424    pub r#output_index: i64,
9426
9427    pub r#item_id: String,
9429}
9430
9431#[derive(Clone, Debug, Default)]
9433#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9434pub struct ResponseFormatJsonObject {
9435    pub r#type: String,
9437}
9438
9439#[derive(Clone, Debug)]
9441#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9442pub struct ResponseFormatJsonSchema {
9443    pub r#type: String,
9445
9446    pub r#json_schema: ResponseFormatJsonSchema_JsonSchema,
9447}
9448
9449#[derive(Clone, Debug, Default)]
9451#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9452pub struct ResponseFormatJsonSchemaSchema;
9453
9454#[derive(Clone, Debug)]
9456#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9457pub struct ResponseFormatJsonSchema_JsonSchema {
9458    pub r#description: String,
9461
9462    pub r#name: String,
9464
9465    pub r#schema: ResponseFormatJsonSchemaSchema,
9466
9467    pub r#strict: Option<bool>,
9469}
9470
9471#[derive(Clone, Debug, Default)]
9473#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9474pub struct ResponseFormatText {
9475    pub r#type: String,
9477}
9478
9479#[derive(Clone, Debug, Default)]
9481#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9482pub struct ResponseFunctionCallArgumentsDeltaEvent {
9483    pub r#type: String,
9485
9486    pub r#item_id: String,
9489
9490    pub r#output_index: i64,
9493
9494    pub r#delta: String,
9496}
9497
9498#[derive(Clone, Debug, Default)]
9500#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9501pub struct ResponseFunctionCallArgumentsDoneEvent {
9502    pub r#type: String,
9503
9504    pub r#item_id: String,
9506
9507    pub r#output_index: i64,
9509
9510    pub r#arguments: String,
9512}
9513
9514#[derive(Clone, Debug)]
9516#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9517pub struct ResponseInProgressEvent {
9518    pub r#type: String,
9520
9521    pub r#response: Response,
9523}
9524
9525#[derive(Clone, Debug)]
9527#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9528pub struct ResponseIncompleteEvent {
9529    pub r#type: String,
9531
9532    pub r#response: Response,
9534}
9535
9536#[derive(Clone, Debug)]
9538#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9539pub struct ResponseItemList {
9540    pub r#object: String,
9542
9543    pub r#data: Vec<ItemResource>,
9545
9546    pub r#has_more: bool,
9548
9549    pub r#first_id: String,
9551
9552    pub r#last_id: String,
9554}
9555
9556#[derive(Clone, Debug)]
9558#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9559pub struct ResponseModalities(pub Vec<String>);
9560
9561#[derive(Clone, Debug)]
9563#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9564pub struct ResponseOutputItemAddedEvent {
9565    pub r#type: String,
9567
9568    pub r#output_index: i64,
9570
9571    pub r#item: OutputItem,
9573}
9574
9575#[derive(Clone, Debug)]
9577#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9578pub struct ResponseOutputItemDoneEvent {
9579    pub r#type: String,
9581
9582    pub r#output_index: i64,
9584
9585    pub r#item: OutputItem,
9587}
9588
9589#[derive(Clone, Debug)]
9590#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9591pub struct ResponseProperties {
9592    pub r#previous_response_id: Option<String>,
9594
9595    pub r#model: ModelIdsResponses,
9597
9598    pub r#reasoning: Option<Reasoning>,
9599
9600    pub r#max_output_tokens: Option<i64>,
9604
9605    pub r#instructions: Option<String>,
9608
9609    pub r#text: ResponseProperties_Text,
9610
9611    pub r#tools: Vec<Tool>,
9613
9614    pub r#tool_choice: ResponseProperties_ToolChoice,
9615
9616    pub r#truncation: Option<String>,
9618}
9619
9620#[derive(Clone, Debug)]
9622#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9623pub struct ResponseProperties_Text {
9624    pub r#format: TextResponseFormatConfiguration,
9625}
9626
9627#[derive(Clone, Debug)]
9630#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9631pub enum ResponseProperties_ToolChoice {
9632    ToolChoiceOptions(ToolChoiceOptions),
9633
9634    ToolChoiceTypes(ToolChoiceTypes),
9635
9636    ToolChoiceFunction(ToolChoiceFunction),
9637}
9638
9639#[derive(Clone, Debug)]
9641#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9642pub struct ResponseReasoningSummaryPartAddedEvent {
9643    pub r#type: String,
9645
9646    pub r#item_id: String,
9648
9649    pub r#output_index: i64,
9651
9652    pub r#summary_index: i64,
9654
9655    pub r#part: ResponseReasoningSummaryPartAddedEvent_Part,
9656}
9657
9658#[derive(Clone, Debug, Default)]
9660#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9661pub struct ResponseReasoningSummaryPartAddedEvent_Part {
9662    pub r#type: String,
9664
9665    pub r#text: String,
9667}
9668
9669#[derive(Clone, Debug)]
9671#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9672pub struct ResponseReasoningSummaryPartDoneEvent {
9673    pub r#type: String,
9675
9676    pub r#item_id: String,
9678
9679    pub r#output_index: i64,
9681
9682    pub r#summary_index: i64,
9684
9685    pub r#part: ResponseReasoningSummaryPartDoneEvent_Part,
9686}
9687
9688#[derive(Clone, Debug, Default)]
9690#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9691pub struct ResponseReasoningSummaryPartDoneEvent_Part {
9692    pub r#type: String,
9694
9695    pub r#text: String,
9697}
9698
9699#[derive(Clone, Debug, Default)]
9701#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9702pub struct ResponseReasoningSummaryTextDeltaEvent {
9703    pub r#type: String,
9705
9706    pub r#item_id: String,
9708
9709    pub r#output_index: i64,
9711
9712    pub r#summary_index: i64,
9714
9715    pub r#delta: String,
9717}
9718
9719#[derive(Clone, Debug, Default)]
9721#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9722pub struct ResponseReasoningSummaryTextDoneEvent {
9723    pub r#type: String,
9725
9726    pub r#item_id: String,
9728
9729    pub r#output_index: i64,
9731
9732    pub r#summary_index: i64,
9734
9735    pub r#text: String,
9737}
9738
9739#[derive(Clone, Debug, Default)]
9741#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9742pub struct ResponseRefusalDeltaEvent {
9743    pub r#type: String,
9745
9746    pub r#item_id: String,
9748
9749    pub r#output_index: i64,
9751
9752    pub r#content_index: i64,
9754
9755    pub r#delta: String,
9757}
9758
9759#[derive(Clone, Debug, Default)]
9761#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9762pub struct ResponseRefusalDoneEvent {
9763    pub r#type: String,
9765
9766    pub r#item_id: String,
9768
9769    pub r#output_index: i64,
9771
9772    pub r#content_index: i64,
9774
9775    pub r#refusal: String,
9777}
9778
9779#[derive(Clone, Debug)]
9780#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9781pub enum ResponseStreamEvent {
9782    ResponseAudioDeltaEvent(ResponseAudioDeltaEvent),
9783
9784    ResponseAudioDoneEvent(ResponseAudioDoneEvent),
9785
9786    ResponseAudioTranscriptDeltaEvent(ResponseAudioTranscriptDeltaEvent),
9787
9788    ResponseAudioTranscriptDoneEvent(ResponseAudioTranscriptDoneEvent),
9789
9790    ResponseCodeInterpreterCallCodeDeltaEvent(ResponseCodeInterpreterCallCodeDeltaEvent),
9791
9792    ResponseCodeInterpreterCallCodeDoneEvent(ResponseCodeInterpreterCallCodeDoneEvent),
9793
9794    ResponseCodeInterpreterCallCompletedEvent(ResponseCodeInterpreterCallCompletedEvent),
9795
9796    ResponseCodeInterpreterCallInProgressEvent(ResponseCodeInterpreterCallInProgressEvent),
9797
9798    ResponseCodeInterpreterCallInterpretingEvent(ResponseCodeInterpreterCallInterpretingEvent),
9799
9800    ResponseCompletedEvent(ResponseCompletedEvent),
9801
9802    ResponseContentPartAddedEvent(ResponseContentPartAddedEvent),
9803
9804    ResponseContentPartDoneEvent(ResponseContentPartDoneEvent),
9805
9806    ResponseCreatedEvent(ResponseCreatedEvent),
9807
9808    ResponseErrorEvent(ResponseErrorEvent),
9809
9810    ResponseFileSearchCallCompletedEvent(ResponseFileSearchCallCompletedEvent),
9811
9812    ResponseFileSearchCallInProgressEvent(ResponseFileSearchCallInProgressEvent),
9813
9814    ResponseFileSearchCallSearchingEvent(ResponseFileSearchCallSearchingEvent),
9815
9816    ResponseFunctionCallArgumentsDeltaEvent(ResponseFunctionCallArgumentsDeltaEvent),
9817
9818    ResponseFunctionCallArgumentsDoneEvent(ResponseFunctionCallArgumentsDoneEvent),
9819
9820    ResponseInProgressEvent(ResponseInProgressEvent),
9821
9822    ResponseFailedEvent(ResponseFailedEvent),
9823
9824    ResponseIncompleteEvent(ResponseIncompleteEvent),
9825
9826    ResponseOutputItemAddedEvent(ResponseOutputItemAddedEvent),
9827
9828    ResponseOutputItemDoneEvent(ResponseOutputItemDoneEvent),
9829
9830    ResponseReasoningSummaryPartAddedEvent(ResponseReasoningSummaryPartAddedEvent),
9831
9832    ResponseReasoningSummaryPartDoneEvent(ResponseReasoningSummaryPartDoneEvent),
9833
9834    ResponseReasoningSummaryTextDeltaEvent(ResponseReasoningSummaryTextDeltaEvent),
9835
9836    ResponseReasoningSummaryTextDoneEvent(ResponseReasoningSummaryTextDoneEvent),
9837
9838    ResponseRefusalDeltaEvent(ResponseRefusalDeltaEvent),
9839
9840    ResponseRefusalDoneEvent(ResponseRefusalDoneEvent),
9841
9842    ResponseTextAnnotationDeltaEvent(ResponseTextAnnotationDeltaEvent),
9843
9844    ResponseTextDeltaEvent(ResponseTextDeltaEvent),
9845
9846    ResponseTextDoneEvent(ResponseTextDoneEvent),
9847
9848    ResponseWebSearchCallCompletedEvent(ResponseWebSearchCallCompletedEvent),
9849
9850    ResponseWebSearchCallInProgressEvent(ResponseWebSearchCallInProgressEvent),
9851
9852    ResponseWebSearchCallSearchingEvent(ResponseWebSearchCallSearchingEvent),
9853}
9854
9855#[derive(Clone, Debug)]
9857#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9858pub struct ResponseTextAnnotationDeltaEvent {
9859    pub r#type: String,
9861
9862    pub r#item_id: String,
9864
9865    pub r#output_index: i64,
9867
9868    pub r#content_index: i64,
9870
9871    pub r#annotation_index: i64,
9873
9874    pub r#annotation: Annotation,
9875}
9876
9877#[derive(Clone, Debug, Default)]
9879#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9880pub struct ResponseTextDeltaEvent {
9881    pub r#type: String,
9883
9884    pub r#item_id: String,
9886
9887    pub r#output_index: i64,
9889
9890    pub r#content_index: i64,
9892
9893    pub r#delta: String,
9895}
9896
9897#[derive(Clone, Debug, Default)]
9899#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9900pub struct ResponseTextDoneEvent {
9901    pub r#type: String,
9903
9904    pub r#item_id: String,
9906
9907    pub r#output_index: i64,
9909
9910    pub r#content_index: i64,
9912
9913    pub r#text: String,
9915}
9916
9917#[derive(Clone, Debug)]
9920#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9921pub struct ResponseUsage {
9922    pub r#input_tokens: i64,
9924
9925    pub r#input_tokens_details: ResponseUsage_InputTokensDetails,
9926
9927    pub r#output_tokens: i64,
9929
9930    pub r#output_tokens_details: ResponseUsage_OutputTokensDetails,
9931
9932    pub r#total_tokens: i64,
9934}
9935
9936#[derive(Clone, Debug, Default)]
9938#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9939pub struct ResponseUsage_InputTokensDetails {
9940    pub r#cached_tokens: i64,
9942}
9943
9944#[derive(Clone, Debug, Default)]
9946#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9947pub struct ResponseUsage_OutputTokensDetails {
9948    pub r#reasoning_tokens: i64,
9950}
9951
9952#[derive(Clone, Debug, Default)]
9954#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9955pub struct ResponseWebSearchCallCompletedEvent {
9956    pub r#type: String,
9958
9959    pub r#output_index: i64,
9962
9963    pub r#item_id: String,
9965}
9966
9967#[derive(Clone, Debug, Default)]
9969#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9970pub struct ResponseWebSearchCallInProgressEvent {
9971    pub r#type: String,
9973
9974    pub r#output_index: i64,
9977
9978    pub r#item_id: String,
9980}
9981
9982#[derive(Clone, Debug, Default)]
9984#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9985pub struct ResponseWebSearchCallSearchingEvent {
9986    pub r#type: String,
9988
9989    pub r#output_index: i64,
9992
9993    pub r#item_id: String,
9995}
9996
9997#[derive(Clone, Debug)]
9998#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
9999pub struct Response_Variant3 {
10000    pub r#id: String,
10002
10003    pub r#object: String,
10005
10006    pub r#status: String,
10008
10009    pub r#created_at: f64,
10011
10012    pub r#error: Option<ResponseError>,
10013
10014    pub r#incomplete_details: Option<Response_Variant3_IncompleteDetails>,
10015
10016    pub r#output: Vec<OutputItem>,
10018
10019    pub r#output_text: Option<String>,
10022
10023    pub r#usage: ResponseUsage,
10024
10025    pub r#parallel_tool_calls: bool,
10027}
10028
10029#[derive(Clone, Debug, Default)]
10031#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10032pub struct Response_Variant3_IncompleteDetails {
10033    pub r#reason: String,
10035}
10036
10037#[derive(Clone, Debug, Default)]
10039#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10040pub struct RunCompletionUsage {
10041    pub r#completion_tokens: i64,
10043
10044    pub r#prompt_tokens: i64,
10046
10047    pub r#total_tokens: i64,
10049}
10050
10051#[derive(Clone, Debug)]
10053#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10054pub struct RunObject {
10055    pub r#id: String,
10057
10058    pub r#object: String,
10060
10061    pub r#created_at: i64,
10063
10064    pub r#thread_id: String,
10067
10068    pub r#assistant_id: String,
10071
10072    pub r#status: String,
10076
10077    pub r#required_action: Option<RunObject_RequiredAction>,
10078
10079    pub r#last_error: Option<RunObject_LastError>,
10080
10081    pub r#expires_at: Option<i64>,
10083
10084    pub r#started_at: Option<i64>,
10086
10087    pub r#cancelled_at: Option<i64>,
10089
10090    pub r#failed_at: Option<i64>,
10092
10093    pub r#completed_at: Option<i64>,
10095
10096    pub r#incomplete_details: Option<RunObject_IncompleteDetails>,
10097
10098    pub r#model: String,
10101
10102    pub r#instructions: String,
10105
10106    pub r#tools: Vec<RunObject_Tools>,
10109
10110    pub r#metadata: Option<Metadata>,
10111
10112    pub r#usage: Option<RunCompletionUsage>,
10113
10114    pub r#temperature: Option<f64>,
10116
10117    pub r#top_p: Option<f64>,
10119
10120    pub r#max_prompt_tokens: Option<i64>,
10123
10124    pub r#max_completion_tokens: Option<i64>,
10127
10128    pub r#truncation_strategy: RunObject_TruncationStrategy,
10129
10130    pub r#tool_choice: RunObject_ToolChoice,
10131
10132    pub r#parallel_tool_calls: ParallelToolCalls,
10133
10134    pub r#response_format: Option<AssistantsApiResponseFormatOption>,
10135}
10136
10137#[derive(Clone, Debug, Default)]
10139#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10140pub struct RunObject_IncompleteDetails {
10141    pub r#reason: String,
10143}
10144
10145#[derive(Clone, Debug, Default)]
10147#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10148pub struct RunObject_LastError {
10149    pub r#code: String,
10151
10152    pub r#message: String,
10154}
10155
10156#[derive(Clone, Debug)]
10158#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10159pub struct RunObject_RequiredAction {
10160    pub r#type: String,
10162
10163    pub r#submit_tool_outputs: RunObject_RequiredAction_SubmitToolOutputs,
10164}
10165
10166#[derive(Clone, Debug)]
10168#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10169pub struct RunObject_RequiredAction_SubmitToolOutputs {
10170    pub r#tool_calls: Vec<RunToolCallObject>,
10172}
10173
10174#[derive(Clone, Debug, Default)]
10175#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10176pub struct RunObject_ToolChoice(pub ());
10177
10178#[derive(Clone, Debug)]
10179#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10180pub enum RunObject_Tools {
10181    AssistantToolsCode(AssistantToolsCode),
10182
10183    AssistantToolsFileSearch(AssistantToolsFileSearch),
10184
10185    AssistantToolsFunction(AssistantToolsFunction),
10186}
10187
10188#[derive(Clone, Debug, Default)]
10189#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10190pub struct RunObject_TruncationStrategy(pub ());
10191
10192#[derive(Clone, Debug, Default)]
10194#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10195pub struct RunStepCompletionUsage {
10196    pub r#completion_tokens: i64,
10198
10199    pub r#prompt_tokens: i64,
10201
10202    pub r#total_tokens: i64,
10204}
10205
10206#[derive(Clone, Debug)]
10208#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10209pub struct RunStepDeltaObject {
10210    pub r#id: String,
10213
10214    pub r#object: String,
10216
10217    pub r#delta: RunStepDeltaObject_Delta,
10218}
10219
10220#[derive(Clone, Debug)]
10222#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10223pub struct RunStepDeltaObject_Delta {
10224    pub r#step_details: RunStepDeltaObject_Delta_StepDetails,
10225}
10226
10227#[derive(Clone, Debug, Default)]
10229#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10230pub struct RunStepDeltaObject_Delta_StepDetails;
10231
10232#[derive(Clone, Debug)]
10234#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10235pub struct RunStepDeltaStepDetailsMessageCreationObject {
10236    pub r#type: String,
10238
10239    pub r#message_creation: RunStepDeltaStepDetailsMessageCreationObject_MessageCreation,
10240}
10241
10242#[derive(Clone, Debug, Default)]
10243#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10244pub struct RunStepDeltaStepDetailsMessageCreationObject_MessageCreation {
10245    pub r#message_id: String,
10247}
10248
10249#[derive(Clone, Debug)]
10251#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10252pub struct RunStepDeltaStepDetailsToolCallsCodeObject {
10253    pub r#index: i64,
10255
10256    pub r#id: String,
10258
10259    pub r#type: String,
10261
10262    pub r#code_interpreter: RunStepDeltaStepDetailsToolCallsCodeObject_CodeInterpreter,
10263}
10264
10265#[derive(Clone, Debug)]
10267#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10268pub struct RunStepDeltaStepDetailsToolCallsCodeObject_CodeInterpreter {
10269    pub r#input: String,
10271
10272    pub r#outputs: Vec<RunStepDeltaStepDetailsToolCallsCodeObject_CodeInterpreter_Outputs>,
10274}
10275
10276#[derive(Clone, Debug, Default)]
10277#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10278pub struct RunStepDeltaStepDetailsToolCallsCodeObject_CodeInterpreter_Outputs;
10279
10280#[derive(Clone, Debug)]
10281#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10282pub struct RunStepDeltaStepDetailsToolCallsCodeOutputImageObject {
10283    pub r#index: i64,
10285
10286    pub r#type: String,
10288
10289    pub r#image: RunStepDeltaStepDetailsToolCallsCodeOutputImageObject_Image,
10290}
10291
10292#[derive(Clone, Debug, Default)]
10293#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10294pub struct RunStepDeltaStepDetailsToolCallsCodeOutputImageObject_Image {
10295    pub r#file_id: String,
10297}
10298
10299#[derive(Clone, Debug, Default)]
10301#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10302pub struct RunStepDeltaStepDetailsToolCallsCodeOutputLogsObject {
10303    pub r#index: i64,
10305
10306    pub r#type: String,
10308
10309    pub r#logs: String,
10311}
10312
10313#[derive(Clone, Debug)]
10314#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10315pub struct RunStepDeltaStepDetailsToolCallsFileSearchObject {
10316    pub r#index: i64,
10318
10319    pub r#id: String,
10321
10322    pub r#type: String,
10324
10325    pub r#file_search: RunStepDeltaStepDetailsToolCallsFileSearchObject_FileSearch,
10327}
10328
10329#[derive(Clone, Debug, Default)]
10331#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10332pub struct RunStepDeltaStepDetailsToolCallsFileSearchObject_FileSearch;
10333
10334#[derive(Clone, Debug)]
10335#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10336pub struct RunStepDeltaStepDetailsToolCallsFunctionObject {
10337    pub r#index: i64,
10339
10340    pub r#id: String,
10342
10343    pub r#type: String,
10345
10346    pub r#function: RunStepDeltaStepDetailsToolCallsFunctionObject_Function,
10347}
10348
10349#[derive(Clone, Debug, Default)]
10351#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10352pub struct RunStepDeltaStepDetailsToolCallsFunctionObject_Function {
10353    pub r#name: String,
10355
10356    pub r#arguments: String,
10358
10359    pub r#output: Option<String>,
10361}
10362
10363#[derive(Clone, Debug)]
10365#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10366pub struct RunStepDeltaStepDetailsToolCallsObject {
10367    pub r#type: String,
10369
10370    pub r#tool_calls: Vec<RunStepDeltaStepDetailsToolCallsObject_ToolCalls>,
10372}
10373
10374#[derive(Clone, Debug)]
10375#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10376pub enum RunStepDeltaStepDetailsToolCallsObject_ToolCalls {
10377    RunStepDeltaStepDetailsToolCallsCodeObject(RunStepDeltaStepDetailsToolCallsCodeObject),
10378
10379    RunStepDeltaStepDetailsToolCallsFileSearchObject(RunStepDeltaStepDetailsToolCallsFileSearchObject),
10380
10381    RunStepDeltaStepDetailsToolCallsFunctionObject(RunStepDeltaStepDetailsToolCallsFunctionObject),
10382}
10383
10384#[derive(Clone, Debug)]
10386#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10387pub struct RunStepDetailsMessageCreationObject {
10388    pub r#type: String,
10390
10391    pub r#message_creation: RunStepDetailsMessageCreationObject_MessageCreation,
10392}
10393
10394#[derive(Clone, Debug, Default)]
10395#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10396pub struct RunStepDetailsMessageCreationObject_MessageCreation {
10397    pub r#message_id: String,
10399}
10400
10401#[derive(Clone, Debug)]
10403#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10404pub struct RunStepDetailsToolCallsCodeObject {
10405    pub r#id: String,
10407
10408    pub r#type: String,
10410
10411    pub r#code_interpreter: RunStepDetailsToolCallsCodeObject_CodeInterpreter,
10412}
10413
10414#[derive(Clone, Debug)]
10416#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10417pub struct RunStepDetailsToolCallsCodeObject_CodeInterpreter {
10418    pub r#input: String,
10420
10421    pub r#outputs: Vec<RunStepDetailsToolCallsCodeObject_CodeInterpreter_Outputs>,
10423}
10424
10425#[derive(Clone, Debug, Default)]
10426#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10427pub struct RunStepDetailsToolCallsCodeObject_CodeInterpreter_Outputs;
10428
10429#[derive(Clone, Debug)]
10430#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10431pub struct RunStepDetailsToolCallsCodeOutputImageObject {
10432    pub r#type: String,
10434
10435    pub r#image: RunStepDetailsToolCallsCodeOutputImageObject_Image,
10436}
10437
10438#[derive(Clone, Debug, Default)]
10439#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10440pub struct RunStepDetailsToolCallsCodeOutputImageObject_Image {
10441    pub r#file_id: String,
10443}
10444
10445#[derive(Clone, Debug, Default)]
10447#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10448pub struct RunStepDetailsToolCallsCodeOutputLogsObject {
10449    pub r#type: String,
10451
10452    pub r#logs: String,
10454}
10455
10456#[derive(Clone, Debug)]
10457#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10458pub struct RunStepDetailsToolCallsFileSearchObject {
10459    pub r#id: String,
10461
10462    pub r#type: String,
10464
10465    pub r#file_search: RunStepDetailsToolCallsFileSearchObject_FileSearch,
10466}
10467
10468#[derive(Clone, Debug)]
10470#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10471pub struct RunStepDetailsToolCallsFileSearchObject_FileSearch {
10472    pub r#ranking_options: RunStepDetailsToolCallsFileSearchRankingOptionsObject,
10473
10474    pub r#results: Vec<RunStepDetailsToolCallsFileSearchResultObject>,
10476}
10477
10478#[derive(Clone, Debug)]
10480#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10481pub struct RunStepDetailsToolCallsFileSearchRankingOptionsObject {
10482    pub r#ranker: FileSearchRanker,
10483
10484    pub r#score_threshold: f64,
10486}
10487
10488#[derive(Clone, Debug)]
10490#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10491pub struct RunStepDetailsToolCallsFileSearchResultObject {
10492    pub r#file_id: String,
10494
10495    pub r#file_name: String,
10497
10498    pub r#score: f64,
10500
10501    pub r#content: Vec<RunStepDetailsToolCallsFileSearchResultObject_Content>,
10503}
10504
10505#[derive(Clone, Debug, Default)]
10506#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10507pub struct RunStepDetailsToolCallsFileSearchResultObject_Content {
10508    pub r#type: String,
10510
10511    pub r#text: String,
10513}
10514
10515#[derive(Clone, Debug)]
10516#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10517pub struct RunStepDetailsToolCallsFunctionObject {
10518    pub r#id: String,
10520
10521    pub r#type: String,
10523
10524    pub r#function: RunStepDetailsToolCallsFunctionObject_Function,
10525}
10526
10527#[derive(Clone, Debug, Default)]
10529#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10530pub struct RunStepDetailsToolCallsFunctionObject_Function {
10531    pub r#name: String,
10533
10534    pub r#arguments: String,
10536
10537    pub r#output: Option<String>,
10539}
10540
10541#[derive(Clone, Debug)]
10543#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10544pub struct RunStepDetailsToolCallsObject {
10545    pub r#type: String,
10547
10548    pub r#tool_calls: Vec<RunStepDetailsToolCallsObject_ToolCalls>,
10550}
10551
10552#[derive(Clone, Debug)]
10553#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10554pub enum RunStepDetailsToolCallsObject_ToolCalls {
10555    RunStepDetailsToolCallsCodeObject(RunStepDetailsToolCallsCodeObject),
10556
10557    RunStepDetailsToolCallsFileSearchObject(RunStepDetailsToolCallsFileSearchObject),
10558
10559    RunStepDetailsToolCallsFunctionObject(RunStepDetailsToolCallsFunctionObject),
10560}
10561
10562#[derive(Clone, Debug)]
10564#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10565pub struct RunStepObject {
10566    pub r#id: String,
10569
10570    pub r#object: String,
10572
10573    pub r#created_at: i64,
10575
10576    pub r#assistant_id: String,
10579
10580    pub r#thread_id: String,
10582
10583    pub r#run_id: String,
10586
10587    pub r#type: String,
10590
10591    pub r#status: String,
10594
10595    pub r#step_details: RunStepObject_StepDetails,
10596
10597    pub r#last_error: Option<RunStepObject_LastError>,
10598
10599    pub r#expired_at: Option<i64>,
10601
10602    pub r#cancelled_at: Option<i64>,
10604
10605    pub r#failed_at: Option<i64>,
10607
10608    pub r#completed_at: Option<i64>,
10610
10611    pub r#metadata: Option<Metadata>,
10612
10613    pub r#usage: Option<RunStepCompletionUsage>,
10614}
10615
10616#[derive(Clone, Debug, Default)]
10618#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10619pub struct RunStepObject_LastError {
10620    pub r#code: String,
10622
10623    pub r#message: String,
10625}
10626
10627#[derive(Clone, Debug, Default)]
10629#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10630pub struct RunStepObject_StepDetails;
10631
10632include!("components/run_step_stream_event.rs");
10633
10634#[derive(Clone, Debug)]
10637#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10638pub struct RunStepStreamEvent_Variant1 {
10639    pub r#event: String,
10640
10641    pub r#data: RunStepObject,
10642}
10643
10644#[derive(Clone, Debug)]
10647#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10648pub struct RunStepStreamEvent_Variant2 {
10649    pub r#event: String,
10650
10651    pub r#data: RunStepObject,
10652}
10653
10654#[derive(Clone, Debug)]
10657#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10658pub struct RunStepStreamEvent_Variant3 {
10659    pub r#event: String,
10660
10661    pub r#data: RunStepDeltaObject,
10662}
10663
10664#[derive(Clone, Debug)]
10667#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10668pub struct RunStepStreamEvent_Variant4 {
10669    pub r#event: String,
10670
10671    pub r#data: RunStepObject,
10672}
10673
10674#[derive(Clone, Debug)]
10676#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10677pub struct RunStepStreamEvent_Variant5 {
10678    pub r#event: String,
10679
10680    pub r#data: RunStepObject,
10681}
10682
10683#[derive(Clone, Debug)]
10686#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10687pub struct RunStepStreamEvent_Variant6 {
10688    pub r#event: String,
10689
10690    pub r#data: RunStepObject,
10691}
10692
10693#[derive(Clone, Debug)]
10695#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10696pub struct RunStepStreamEvent_Variant7 {
10697    pub r#event: String,
10698
10699    pub r#data: RunStepObject,
10700}
10701
10702include!("components/run_stream_event.rs");
10703
10704#[derive(Clone, Debug)]
10706#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10707pub struct RunStreamEvent_Variant1 {
10708    pub r#event: String,
10709
10710    pub r#data: RunObject,
10711}
10712
10713#[derive(Clone, Debug)]
10715#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10716pub struct RunStreamEvent_Variant10 {
10717    pub r#event: String,
10718
10719    pub r#data: RunObject,
10720}
10721
10722#[derive(Clone, Debug)]
10725#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10726pub struct RunStreamEvent_Variant2 {
10727    pub r#event: String,
10728
10729    pub r#data: RunObject,
10730}
10731
10732#[derive(Clone, Debug)]
10735#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10736pub struct RunStreamEvent_Variant3 {
10737    pub r#event: String,
10738
10739    pub r#data: RunObject,
10740}
10741
10742#[derive(Clone, Debug)]
10745#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10746pub struct RunStreamEvent_Variant4 {
10747    pub r#event: String,
10748
10749    pub r#data: RunObject,
10750}
10751
10752#[derive(Clone, Debug)]
10754#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10755pub struct RunStreamEvent_Variant5 {
10756    pub r#event: String,
10757
10758    pub r#data: RunObject,
10759}
10760
10761#[derive(Clone, Debug)]
10764#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10765pub struct RunStreamEvent_Variant6 {
10766    pub r#event: String,
10767
10768    pub r#data: RunObject,
10769}
10770
10771#[derive(Clone, Debug)]
10773#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10774pub struct RunStreamEvent_Variant7 {
10775    pub r#event: String,
10776
10777    pub r#data: RunObject,
10778}
10779
10780#[derive(Clone, Debug)]
10783#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10784pub struct RunStreamEvent_Variant8 {
10785    pub r#event: String,
10786
10787    pub r#data: RunObject,
10788}
10789
10790#[derive(Clone, Debug)]
10792#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10793pub struct RunStreamEvent_Variant9 {
10794    pub r#event: String,
10795
10796    pub r#data: RunObject,
10797}
10798
10799#[derive(Clone, Debug)]
10801#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10802pub struct RunToolCallObject {
10803    pub r#id: String,
10805
10806    pub r#type: String,
10808
10809    pub r#function: RunToolCallObject_Function,
10810}
10811
10812#[derive(Clone, Debug, Default)]
10814#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10815pub struct RunToolCallObject_Function {
10816    pub r#name: String,
10818
10819    pub r#arguments: String,
10821}
10822
10823#[derive(Clone, Debug, Default)]
10825#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10826pub struct Screenshot {
10827    pub r#type: String,
10829}
10830
10831#[derive(Clone, Debug, Default)]
10833#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10834pub struct Scroll {
10835    pub r#type: String,
10837
10838    pub r#x: i64,
10840
10841    pub r#y: i64,
10843
10844    pub r#scroll_x: i64,
10846
10847    pub r#scroll_y: i64,
10849}
10850
10851#[derive(Clone, Debug)]
10853#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10854pub struct ServiceTier(pub String);
10855
10856#[derive(Clone, Debug, Default)]
10857#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10858pub struct StaticChunkingStrategy {
10859    pub r#max_chunk_size_tokens: i64,
10861
10862    pub r#chunk_overlap_tokens: i64,
10864}
10865
10866#[derive(Clone, Debug)]
10869#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10870pub struct StaticChunkingStrategyRequestParam {
10871    pub r#type: String,
10873
10874    pub r#static: StaticChunkingStrategy,
10875}
10876
10877#[derive(Clone, Debug)]
10878#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10879pub struct StaticChunkingStrategyResponseParam {
10880    pub r#type: String,
10882
10883    pub r#static: StaticChunkingStrategy,
10884}
10885
10886#[derive(Clone, Debug)]
10888#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10889pub enum StopConfiguration {
10890    Null,
10891
10892    String(String),
10893
10894    ArrayOfStrings(Vec<String>),
10895}
10896
10897#[derive(Clone, Debug)]
10898#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10899pub struct SubmitToolOutputsRunRequest {
10900    pub r#tool_outputs: Vec<SubmitToolOutputsRunRequest_ToolOutputs>,
10902
10903    pub r#stream: Option<bool>,
10907}
10908
10909#[derive(Clone, Debug, Default)]
10910#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10911pub struct SubmitToolOutputsRunRequest_ToolOutputs {
10912    pub r#tool_call_id: String,
10915
10916    pub r#output: String,
10918}
10919
10920#[derive(Clone, Debug)]
10922#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10923pub enum TextResponseFormatConfiguration {
10924    ResponseFormatText(ResponseFormatText),
10925
10926    TextResponseFormatJsonSchema(TextResponseFormatJsonSchema),
10927
10928    ResponseFormatJsonObject(ResponseFormatJsonObject),
10929}
10930
10931#[derive(Clone, Debug)]
10933#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10934pub struct TextResponseFormatJsonSchema {
10935    pub r#type: String,
10937
10938    pub r#description: String,
10941
10942    pub r#name: String,
10944
10945    pub r#schema: ResponseFormatJsonSchemaSchema,
10946
10947    pub r#strict: Option<bool>,
10949}
10950
10951#[derive(Clone, Debug)]
10953#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10954pub struct ThreadObject {
10955    pub r#id: String,
10957
10958    pub r#object: String,
10960
10961    pub r#created_at: i64,
10963
10964    pub r#tool_resources: Option<ThreadObject_ToolResources>,
10965
10966    pub r#metadata: Option<Metadata>,
10967}
10968
10969#[derive(Clone, Debug)]
10972#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10973pub struct ThreadObject_ToolResources {
10974    pub r#code_interpreter: ThreadObject_ToolResources_CodeInterpreter,
10975
10976    pub r#file_search: ThreadObject_ToolResources_FileSearch,
10977}
10978
10979#[derive(Clone, Debug)]
10980#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10981pub struct ThreadObject_ToolResources_CodeInterpreter {
10982    pub r#file_ids: Vec<String>,
10985}
10986
10987#[derive(Clone, Debug)]
10988#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10989pub struct ThreadObject_ToolResources_FileSearch {
10990    pub r#vector_store_ids: Vec<String>,
10993}
10994
10995include!("components/thread_stream_event.rs");
10996
10997#[derive(Clone, Debug)]
10998#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
10999pub struct ToggleCertificatesRequest {
11000    pub r#certificate_ids: Vec<String>,
11001}
11002
11003#[derive(Clone, Debug)]
11004#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11005pub enum Tool {
11006    FileSearchTool(FileSearchTool),
11007
11008    FunctionTool(FunctionTool),
11009
11010    WebSearchPreviewTool(WebSearchPreviewTool),
11011
11012    ComputerUsePreviewTool(ComputerUsePreviewTool),
11013}
11014
11015#[derive(Clone, Debug, Default)]
11017#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11018pub struct ToolChoiceFunction {
11019    pub r#type: String,
11021
11022    pub r#name: String,
11024}
11025
11026#[derive(Clone, Debug)]
11028#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11029pub struct ToolChoiceOptions(pub String);
11030
11031#[derive(Clone, Debug, Default)]
11033#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11034pub struct ToolChoiceTypes {
11035    pub r#type: String,
11037}
11038
11039#[derive(Clone, Debug)]
11041#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11042pub struct TranscriptTextDeltaEvent {
11043    pub r#type: String,
11045
11046    pub r#delta: String,
11048
11049    pub r#logprobs: Vec<TranscriptTextDeltaEvent_Logprobs>,
11051}
11052
11053#[derive(Clone, Debug)]
11054#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11055pub struct TranscriptTextDeltaEvent_Logprobs {
11056    pub r#token: String,
11058
11059    pub r#logprob: f64,
11061
11062    pub r#bytes: Vec<i64>,
11064}
11065
11066#[derive(Clone, Debug)]
11068#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11069pub struct TranscriptTextDoneEvent {
11070    pub r#type: String,
11072
11073    pub r#text: String,
11075
11076    pub r#logprobs: Vec<TranscriptTextDoneEvent_Logprobs>,
11078}
11079
11080#[derive(Clone, Debug)]
11081#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11082pub struct TranscriptTextDoneEvent_Logprobs {
11083    pub r#token: String,
11085
11086    pub r#logprob: f64,
11088
11089    pub r#bytes: Vec<i64>,
11091}
11092
11093#[derive(Clone, Debug)]
11094#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11095pub struct TranscriptionInclude(pub String);
11096
11097#[derive(Clone, Debug)]
11098#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11099pub struct TranscriptionSegment {
11100    pub r#id: i64,
11102
11103    pub r#seek: i64,
11105
11106    pub r#start: f64,
11108
11109    pub r#end: f64,
11111
11112    pub r#text: String,
11114
11115    pub r#tokens: Vec<i64>,
11117
11118    pub r#temperature: f64,
11120
11121    pub r#avg_logprob: f64,
11123
11124    pub r#compression_ratio: f64,
11126
11127    pub r#no_speech_prob: f64,
11129}
11130
11131#[derive(Clone, Debug, Default)]
11132#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11133pub struct TranscriptionWord {
11134    pub r#word: String,
11136
11137    pub r#start: f64,
11139
11140    pub r#end: f64,
11142}
11143
11144#[derive(Clone, Debug, Default)]
11146#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11147pub struct TruncationObject {
11148    pub r#type: String,
11150
11151    pub r#last_messages: Option<i64>,
11154}
11155
11156#[derive(Clone, Debug, Default)]
11158#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11159pub struct Type {
11160    pub r#type: String,
11162
11163    pub r#text: String,
11165}
11166
11167#[derive(Clone, Debug)]
11168#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11169pub struct UpdateVectorStoreFileAttributesRequest {
11170    pub r#attributes: Option<VectorStoreFileAttributes>,
11171}
11172
11173#[derive(Clone, Debug)]
11174#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11175pub struct UpdateVectorStoreRequest {
11176    pub r#name: Option<String>,
11178
11179    pub r#expires_after: UpdateVectorStoreRequest_ExpiresAfter,
11180
11181    pub r#metadata: Option<Metadata>,
11182}
11183
11184#[derive(Clone, Debug, Default)]
11185#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11186pub struct UpdateVectorStoreRequest_ExpiresAfter(pub ());
11187
11188#[derive(Clone, Debug)]
11190#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11191pub struct Upload {
11192    pub r#id: String,
11194
11195    pub r#created_at: i64,
11197
11198    pub r#filename: String,
11200
11201    pub r#bytes: i64,
11203
11204    pub r#purpose: String,
11206
11207    pub r#status: String,
11209
11210    pub r#expires_at: i64,
11212
11213    pub r#object: String,
11215
11216    pub r#file: Upload_File,
11217}
11218
11219#[derive(Clone, Debug, Default)]
11220#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11221pub struct UploadCertificateRequest {
11222    pub r#name: String,
11224
11225    pub r#content: String,
11227}
11228
11229#[derive(Clone, Debug, Default)]
11231#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11232pub struct UploadPart {
11233    pub r#id: String,
11236
11237    pub r#created_at: i64,
11239
11240    pub r#upload_id: String,
11242
11243    pub r#object: String,
11245}
11246
11247#[derive(Clone, Debug, Default)]
11248#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11249pub struct Upload_File(pub ());
11250
11251#[derive(Clone, Debug, Default)]
11253#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11254pub struct UrlCitationBody {
11255    pub r#type: String,
11257
11258    pub r#url: String,
11260
11261    pub r#start_index: i64,
11263
11264    pub r#end_index: i64,
11266
11267    pub r#title: String,
11269}
11270
11271#[derive(Clone, Debug, Default)]
11273#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11274pub struct UsageAudioSpeechesResult {
11275    pub r#object: String,
11276
11277    pub r#characters: i64,
11279
11280    pub r#num_model_requests: i64,
11282
11283    pub r#project_id: Option<String>,
11286
11287    pub r#user_id: Option<String>,
11290
11291    pub r#api_key_id: Option<String>,
11294
11295    pub r#model: Option<String>,
11298}
11299
11300#[derive(Clone, Debug, Default)]
11303#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11304pub struct UsageAudioTranscriptionsResult {
11305    pub r#object: String,
11306
11307    pub r#seconds: i64,
11309
11310    pub r#num_model_requests: i64,
11312
11313    pub r#project_id: Option<String>,
11316
11317    pub r#user_id: Option<String>,
11320
11321    pub r#api_key_id: Option<String>,
11324
11325    pub r#model: Option<String>,
11328}
11329
11330#[derive(Clone, Debug, Default)]
11333#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11334pub struct UsageCodeInterpreterSessionsResult {
11335    pub r#object: String,
11336
11337    pub r#num_sessions: i64,
11339
11340    pub r#project_id: Option<String>,
11343}
11344
11345#[derive(Clone, Debug, Default)]
11347#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11348pub struct UsageCompletionsResult {
11349    pub r#object: String,
11350
11351    pub r#input_tokens: i64,
11354
11355    pub r#input_cached_tokens: i64,
11358
11359    pub r#output_tokens: i64,
11361
11362    pub r#input_audio_tokens: i64,
11365
11366    pub r#output_audio_tokens: i64,
11368
11369    pub r#num_model_requests: i64,
11371
11372    pub r#project_id: Option<String>,
11375
11376    pub r#user_id: Option<String>,
11379
11380    pub r#api_key_id: Option<String>,
11383
11384    pub r#model: Option<String>,
11387
11388    pub r#batch: Option<bool>,
11391}
11392
11393#[derive(Clone, Debug, Default)]
11395#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11396pub struct UsageEmbeddingsResult {
11397    pub r#object: String,
11398
11399    pub r#input_tokens: i64,
11401
11402    pub r#num_model_requests: i64,
11404
11405    pub r#project_id: Option<String>,
11408
11409    pub r#user_id: Option<String>,
11412
11413    pub r#api_key_id: Option<String>,
11416
11417    pub r#model: Option<String>,
11420}
11421
11422#[derive(Clone, Debug, Default)]
11424#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11425pub struct UsageImagesResult {
11426    pub r#object: String,
11427
11428    pub r#images: i64,
11430
11431    pub r#num_model_requests: i64,
11433
11434    pub r#source: Option<String>,
11438
11439    pub r#size: Option<String>,
11442
11443    pub r#project_id: Option<String>,
11446
11447    pub r#user_id: Option<String>,
11450
11451    pub r#api_key_id: Option<String>,
11454
11455    pub r#model: Option<String>,
11458}
11459
11460#[derive(Clone, Debug, Default)]
11462#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11463pub struct UsageModerationsResult {
11464    pub r#object: String,
11465
11466    pub r#input_tokens: i64,
11468
11469    pub r#num_model_requests: i64,
11471
11472    pub r#project_id: Option<String>,
11475
11476    pub r#user_id: Option<String>,
11479
11480    pub r#api_key_id: Option<String>,
11483
11484    pub r#model: Option<String>,
11487}
11488
11489#[derive(Clone, Debug)]
11490#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11491pub struct UsageResponse {
11492    pub r#object: String,
11493
11494    pub r#data: Vec<UsageTimeBucket>,
11495
11496    pub r#has_more: bool,
11497
11498    pub r#next_page: String,
11499}
11500
11501#[derive(Clone, Debug)]
11502#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11503pub struct UsageTimeBucket {
11504    pub r#object: String,
11505
11506    pub r#start_time: i64,
11507
11508    pub r#end_time: i64,
11509
11510    pub r#result: Vec<UsageTimeBucket_Result>,
11511}
11512
11513#[derive(Clone, Debug)]
11514#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11515pub enum UsageTimeBucket_Result {
11516    UsageCompletionsResult(UsageCompletionsResult),
11517
11518    UsageEmbeddingsResult(UsageEmbeddingsResult),
11519
11520    UsageModerationsResult(UsageModerationsResult),
11521
11522    UsageImagesResult(UsageImagesResult),
11523
11524    UsageAudioSpeechesResult(UsageAudioSpeechesResult),
11525
11526    UsageAudioTranscriptionsResult(UsageAudioTranscriptionsResult),
11527
11528    UsageVectorStoresResult(UsageVectorStoresResult),
11529
11530    UsageCodeInterpreterSessionsResult(UsageCodeInterpreterSessionsResult),
11531
11532    CostsResult(CostsResult),
11533}
11534
11535#[derive(Clone, Debug, Default)]
11537#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11538pub struct UsageVectorStoresResult {
11539    pub r#object: String,
11540
11541    pub r#usage_bytes: i64,
11543
11544    pub r#project_id: Option<String>,
11547}
11548
11549#[derive(Clone, Debug, Default)]
11551#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11552pub struct User {
11553    pub r#object: String,
11555
11556    pub r#id: String,
11558
11559    pub r#name: String,
11561
11562    pub r#email: String,
11564
11565    pub r#role: String,
11567
11568    pub r#added_at: i64,
11570}
11571
11572#[derive(Clone, Debug, Default)]
11573#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11574pub struct UserDeleteResponse {
11575    pub r#object: String,
11576
11577    pub r#id: String,
11578
11579    pub r#deleted: bool,
11580}
11581
11582#[derive(Clone, Debug)]
11583#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11584pub struct UserListResponse {
11585    pub r#object: String,
11586
11587    pub r#data: Vec<User>,
11588
11589    pub r#first_id: String,
11590
11591    pub r#last_id: String,
11592
11593    pub r#has_more: bool,
11594}
11595
11596#[derive(Clone, Debug, Default)]
11597#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11598pub struct UserRoleUpdateRequest {
11599    pub r#role: String,
11601}
11602
11603#[derive(Clone, Debug, Default)]
11605#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11606pub struct VectorStoreExpirationAfter {
11607    pub r#anchor: String,
11609
11610    pub r#days: i64,
11613}
11614
11615#[derive(Clone, Debug, Default)]
11617#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11618pub struct VectorStoreFileAttributes;
11619
11620#[derive(Clone, Debug)]
11622#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11623pub struct VectorStoreFileBatchObject {
11624    pub r#id: String,
11626
11627    pub r#object: String,
11629
11630    pub r#created_at: i64,
11633
11634    pub r#vector_store_id: String,
11637
11638    pub r#status: String,
11641
11642    pub r#file_counts: VectorStoreFileBatchObject_FileCounts,
11643}
11644
11645#[derive(Clone, Debug, Default)]
11646#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11647pub struct VectorStoreFileBatchObject_FileCounts {
11648    pub r#in_progress: i64,
11650
11651    pub r#completed: i64,
11653
11654    pub r#failed: i64,
11656
11657    pub r#cancelled: i64,
11659
11660    pub r#total: i64,
11662}
11663
11664#[derive(Clone, Debug)]
11666#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11667pub struct VectorStoreFileContentResponse {
11668    pub r#object: String,
11670
11671    pub r#data: Vec<VectorStoreFileContentResponse_Data>,
11673
11674    pub r#has_more: bool,
11676
11677    pub r#next_page: Option<String>,
11679}
11680
11681#[derive(Clone, Debug, Default)]
11682#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11683pub struct VectorStoreFileContentResponse_Data {
11684    pub r#type: String,
11686
11687    pub r#text: String,
11689}
11690
11691#[derive(Clone, Debug)]
11693#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11694pub struct VectorStoreFileObject {
11695    pub r#id: String,
11697
11698    pub r#object: String,
11700
11701    pub r#usage_bytes: i64,
11703
11704    pub r#created_at: i64,
11707
11708    pub r#vector_store_id: String,
11711
11712    pub r#status: String,
11715
11716    pub r#last_error: Option<VectorStoreFileObject_LastError>,
11717
11718    pub r#chunking_strategy: VectorStoreFileObject_ChunkingStrategy,
11719
11720    pub r#attributes: Option<VectorStoreFileAttributes>,
11721}
11722
11723#[derive(Clone, Debug, Default)]
11725#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11726pub struct VectorStoreFileObject_ChunkingStrategy;
11727
11728#[derive(Clone, Debug, Default)]
11730#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11731pub struct VectorStoreFileObject_LastError {
11732    pub r#code: String,
11734
11735    pub r#message: String,
11737}
11738
11739#[derive(Clone, Debug)]
11742#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11743pub struct VectorStoreObject {
11744    pub r#id: String,
11746
11747    pub r#object: String,
11749
11750    pub r#created_at: i64,
11752
11753    pub r#name: String,
11755
11756    pub r#usage_bytes: i64,
11758
11759    pub r#file_counts: VectorStoreObject_FileCounts,
11760
11761    pub r#status: String,
11764
11765    pub r#expires_after: VectorStoreExpirationAfter,
11766
11767    pub r#expires_at: Option<i64>,
11769
11770    pub r#last_active_at: Option<i64>,
11773
11774    pub r#metadata: Option<Metadata>,
11775}
11776
11777#[derive(Clone, Debug, Default)]
11778#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11779pub struct VectorStoreObject_FileCounts {
11780    pub r#in_progress: i64,
11782
11783    pub r#completed: i64,
11785
11786    pub r#failed: i64,
11788
11789    pub r#cancelled: i64,
11791
11792    pub r#total: i64,
11794}
11795
11796#[derive(Clone, Debug)]
11797#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11798pub struct VectorStoreSearchRequest {
11799    pub r#query: VectorStoreSearchRequest_Query,
11800
11801    pub r#rewrite_query: bool,
11803
11804    pub r#max_num_results: i64,
11806
11807    pub r#filters: VectorStoreSearchRequest_Filters,
11808
11809    pub r#ranking_options: VectorStoreSearchRequest_RankingOptions,
11810}
11811
11812#[derive(Clone, Debug)]
11814#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11815pub enum VectorStoreSearchRequest_Filters {
11816    ComparisonFilter(ComparisonFilter),
11817
11818    CompoundFilter(CompoundFilter),
11819}
11820
11821#[derive(Clone, Debug)]
11823#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11824pub enum VectorStoreSearchRequest_Query {
11825    String(String),
11826
11827    ArrayOfStrings(Vec<String>),
11828}
11829
11830#[derive(Clone, Debug, Default)]
11832#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11833pub struct VectorStoreSearchRequest_RankingOptions {
11834    pub r#ranker: String,
11835
11836    pub r#score_threshold: f64,
11837}
11838
11839#[derive(Clone, Debug, Default)]
11840#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11841pub struct VectorStoreSearchResultContentObject {
11842    pub r#type: String,
11844
11845    pub r#text: String,
11847}
11848
11849#[derive(Clone, Debug)]
11850#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11851pub struct VectorStoreSearchResultItem {
11852    pub r#file_id: String,
11854
11855    pub r#filename: String,
11857
11858    pub r#score: f64,
11860
11861    pub r#attributes: Option<VectorStoreFileAttributes>,
11862
11863    pub r#content: Vec<VectorStoreSearchResultContentObject>,
11865}
11866
11867#[derive(Clone, Debug)]
11868#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11869pub struct VectorStoreSearchResultsPage {
11870    pub r#object: String,
11872
11873    pub r#search_query: Vec<String>,
11874
11875    pub r#data: Vec<VectorStoreSearchResultItem>,
11877
11878    pub r#has_more: bool,
11880
11881    pub r#next_page: Option<String>,
11883}
11884
11885pub type VoiceIdsShared = String;
11886
11887#[derive(Clone, Debug, Default)]
11889#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11890pub struct Wait {
11891    pub r#type: String,
11893}
11894
11895#[derive(Clone, Debug)]
11898#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11899pub struct WebSearchContextSize(pub String);
11900
11901#[derive(Clone, Debug, Default)]
11903#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11904pub struct WebSearchLocation {
11905    pub r#country: String,
11908
11909    pub r#region: String,
11911
11912    pub r#city: String,
11914
11915    pub r#timezone: String,
11918}
11919
11920#[derive(Clone, Debug)]
11922#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11923pub struct WebSearchPreviewTool {
11924    pub r#type: String,
11926
11927    pub r#user_location: WebSearchPreviewTool_UserLocation,
11928
11929    pub r#search_context_size: String,
11932}
11933
11934#[derive(Clone, Debug)]
11935#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11936pub enum WebSearchPreviewTool_UserLocation {
11937    ApproximateLocation(ApproximateLocation),
11939
11940    Null(()),
11941}
11942
11943#[derive(Clone, Debug, Default)]
11945#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
11946pub struct WebSearchToolCall {
11947    pub r#id: String,
11949
11950    pub r#type: String,
11952
11953    pub r#status: String,
11955}