Skip to main content

opensearch_client/ml/
create_model_meta_request_body_json.rs

1/*
2 * opensearch-client
3 *
4 * Rust Client for OpenSearch
5 *
6 * The version of the OpenAPI document: 3.1.0
7 * Contact: alberto.paro@gmail.com
8 * Generated by Paro OpenAPI Generator
9 */
10
11use crate::ml;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct CreateModelMetaRequestBodyJson {
16    #[serde(rename = "version")]
17    pub version: String,
18    /// The model name.
19    #[serde(rename = "name")]
20    pub name: String,
21    /// Number of chunks the model is split into.
22    #[serde(rename = "total_chunks")]
23    pub total_chunks: u32,
24    #[serde(rename = "model_config")]
25    pub model_config: ml::ModelConfig,
26    #[serde(
27        rename = "model_group_id",
28        default,
29        skip_serializing_if = "Option::is_none"
30    )]
31    pub model_group_id: Option<String>,
32    /// The model URL.
33    #[serde(rename = "url", default, skip_serializing_if = "Option::is_none")]
34    pub url: Option<String>,
35    /// The model description.
36    #[serde(
37        rename = "description",
38        default,
39        skip_serializing_if = "Option::is_none"
40    )]
41    pub description: Option<String>,
42    #[serde(rename = "model_format")]
43    pub model_format: String,
44    /// The model content hash value.
45    #[serde(rename = "model_content_hash_value")]
46    pub model_content_hash_value: String,
47}
48
49impl CreateModelMetaRequestBodyJson {
50    pub fn new(
51        version: String,
52        name: String,
53        total_chunks: u32,
54        model_config: ml::ModelConfig,
55        model_format: String,
56        model_content_hash_value: String,
57    ) -> CreateModelMetaRequestBodyJson {
58        CreateModelMetaRequestBodyJson {
59            version,
60            name,
61            total_chunks,
62            model_config,
63            model_group_id: None,
64            url: None,
65            description: None,
66            model_format,
67            model_content_hash_value,
68        }
69    }
70}