opensearch_client/ml/
model_profile.rs1use crate::ml;
12use crate::common;
13use serde::{Deserialize, Serialize};
14
15
16
17
18#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
19pub struct ModelProfile { #[serde(rename = "predictor", default, skip_serializing_if = "Option::is_none")]
21 pub predictor: Option<String>,
22 #[serde(rename = "train", default, skip_serializing_if = "Option::is_none")]
23 pub train: Option<ml::ModelStats>, #[serde(rename = "model_state", default, skip_serializing_if = "Option::is_none")]
25 pub model_state: Option<String>,
26 #[serde(rename = "undeploy", default, skip_serializing_if = "Option::is_none")]
27 pub undeploy: Option<ml::ModelStats>,
28 #[serde(rename = "register", default, skip_serializing_if = "Option::is_none")]
29 pub register: Option<ml::ModelStats>,
30 #[serde(rename = "predict", default, skip_serializing_if = "Option::is_none")]
31 pub predict: Option<ml::ModelStats>, #[serde(rename = "memory_size_estimation_cpu", default, skip_serializing_if = "Option::is_none")]
33 pub memory_size_estimation_cpu: Option<u32>,
34 #[serde(rename = "deploy", default, skip_serializing_if = "Option::is_none")]
35 pub deploy: Option<ml::ModelStats>,
36 #[serde(rename = "target_worker_nodes", default, skip_serializing_if = "Option::is_none")]
37 pub target_worker_nodes: Option<Vec<common::NodeIds>>,
38 #[serde(rename = "train_predict", default, skip_serializing_if = "Option::is_none")]
39 pub train_predict: Option<ml::ModelStats>,
40 #[serde(rename = "predict_request_stats", default, skip_serializing_if = "Option::is_none")]
41 pub predict_request_stats: Option<ml::PredictRequestStats>,
42 #[serde(rename = "execute", default, skip_serializing_if = "Option::is_none")]
43 pub execute: Option<ml::ModelStats>,
44 #[serde(rename = "worker_nodes", default, skip_serializing_if = "Option::is_none")]
45 pub worker_nodes: Option<Vec<common::NodeIds>>, #[serde(rename = "memory_size_estimation_gpu", default, skip_serializing_if = "Option::is_none")]
47 pub memory_size_estimation_gpu: Option<u32>,
48}
49
50impl ModelProfile {
51
52 pub fn new() -> ModelProfile {
53 ModelProfile {
54 predictor: None,
55 train: None,
56 model_state: None,
57 undeploy: None,
58 register: None,
59 predict: None,
60 memory_size_estimation_cpu: None,
61 deploy: None,
62 target_worker_nodes: None,
63 train_predict: None,
64 predict_request_stats: None,
65 execute: None,
66 worker_nodes: None,
67 memory_size_estimation_gpu: None,
68 }
69 }
70}