mistral_openapi_client/models/
batch_job_out.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct BatchJobOut {
16 #[serde(rename = "id")]
17 pub id: String,
18 #[serde(rename = "object", skip_serializing_if = "Option::is_none")]
19 pub object: Option<Object>,
20 #[serde(rename = "input_files")]
21 pub input_files: Vec<uuid::Uuid>,
22 #[serde(rename = "metadata", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
23 pub metadata: Option<Option<std::collections::HashMap<String, serde_json::Value>>>,
24 #[serde(rename = "endpoint")]
25 pub endpoint: String,
26 #[serde(rename = "model", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
27 pub model: Option<Option<String>>,
28 #[serde(rename = "agent_id", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
29 pub agent_id: Option<Option<String>>,
30 #[serde(rename = "output_file", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
31 pub output_file: Option<Option<uuid::Uuid>>,
32 #[serde(rename = "error_file", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
33 pub error_file: Option<Option<uuid::Uuid>>,
34 #[serde(rename = "errors")]
35 pub errors: Vec<models::BatchError>,
36 #[serde(rename = "outputs", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
37 pub outputs: Option<Option<Vec<std::collections::HashMap<String, serde_json::Value>>>>,
38 #[serde(rename = "status")]
39 pub status: models::BatchJobStatus,
40 #[serde(rename = "created_at")]
41 pub created_at: i32,
42 #[serde(rename = "total_requests")]
43 pub total_requests: i32,
44 #[serde(rename = "completed_requests")]
45 pub completed_requests: i32,
46 #[serde(rename = "succeeded_requests")]
47 pub succeeded_requests: i32,
48 #[serde(rename = "failed_requests")]
49 pub failed_requests: i32,
50 #[serde(rename = "started_at", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
51 pub started_at: Option<Option<i32>>,
52 #[serde(rename = "completed_at", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
53 pub completed_at: Option<Option<i32>>,
54}
55
56impl BatchJobOut {
57 pub fn new(id: String, input_files: Vec<uuid::Uuid>, endpoint: String, errors: Vec<models::BatchError>, status: models::BatchJobStatus, created_at: i32, total_requests: i32, completed_requests: i32, succeeded_requests: i32, failed_requests: i32) -> BatchJobOut {
58 BatchJobOut {
59 id,
60 object: None,
61 input_files,
62 metadata: None,
63 endpoint,
64 model: None,
65 agent_id: None,
66 output_file: None,
67 error_file: None,
68 errors,
69 outputs: None,
70 status,
71 created_at,
72 total_requests,
73 completed_requests,
74 succeeded_requests,
75 failed_requests,
76 started_at: None,
77 completed_at: None,
78 }
79 }
80}
81#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
83pub enum Object {
84 #[serde(rename = "batch")]
85 Batch,
86}
87
88impl Default for Object {
89 fn default() -> Object {
90 Self::Batch
91 }
92}
93