#[non_exhaustive]pub struct Model {Show 35 fields
pub name: String,
pub version_id: String,
pub version_aliases: Vec<String>,
pub version_create_time: Option<Timestamp>,
pub version_update_time: Option<Timestamp>,
pub display_name: String,
pub description: String,
pub version_description: String,
pub default_checkpoint_id: String,
pub predict_schemata: Option<PredictSchemata>,
pub metadata_schema_uri: String,
pub metadata: Option<Value>,
pub supported_export_formats: Vec<ExportFormat>,
pub training_pipeline: String,
pub pipeline_job: String,
pub container_spec: Option<ModelContainerSpec>,
pub artifact_uri: String,
pub supported_deployment_resources_types: Vec<DeploymentResourcesType>,
pub supported_input_storage_formats: Vec<String>,
pub supported_output_storage_formats: Vec<String>,
pub create_time: Option<Timestamp>,
pub update_time: Option<Timestamp>,
pub deployed_models: Vec<DeployedModelRef>,
pub explanation_spec: Option<ExplanationSpec>,
pub etag: String,
pub labels: HashMap<String, String>,
pub data_stats: Option<DataStats>,
pub encryption_spec: Option<EncryptionSpec>,
pub model_source_info: Option<ModelSourceInfo>,
pub original_model_info: Option<OriginalModelInfo>,
pub metadata_artifact: String,
pub base_model_source: Option<BaseModelSource>,
pub satisfies_pzs: bool,
pub satisfies_pzi: bool,
pub checkpoints: Vec<Checkpoint>,
/* private fields */
}Expand description
A trained machine learning Model.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.name: StringThe resource name of the Model.
version_id: StringOutput only. Immutable. The version ID of the model. A new version is committed when a new model version is uploaded or trained under an existing model id. It is an auto-incrementing decimal number in string representation.
version_aliases: Vec<String>User provided version aliases so that a model version can be referenced via
alias (i.e.
projects/{project}/locations/{location}/models/{model_id}@{version_alias}
instead of auto-generated version id (i.e.
projects/{project}/locations/{location}/models/{model_id}@{version_id}).
The format is [a-z][a-zA-Z0-9-]{0,126}[a-z0-9] to distinguish from
version_id. A default version alias will be created for the first version
of the model, and there must be exactly one default version alias for a
model.
version_create_time: Option<Timestamp>Output only. Timestamp when this version was created.
version_update_time: Option<Timestamp>Output only. Timestamp when this version was most recently updated.
display_name: StringRequired. The display name of the Model. The name can be up to 128 characters long and can consist of any UTF-8 characters.
description: StringThe description of the Model.
version_description: StringThe description of this version.
default_checkpoint_id: StringThe default checkpoint id of a model version.
predict_schemata: Option<PredictSchemata>The schemata that describe formats of the Model’s predictions and explanations as given and returned via PredictionService.Predict and PredictionService.Explain.
metadata_schema_uri: StringImmutable. Points to a YAML file stored on Google Cloud Storage describing additional information about the Model, that is specific to it. Unset if the Model does not have any additional information. The schema is defined as an OpenAPI 3.0.2 Schema Object. AutoML Models always have this field populated by Vertex AI, if no additional metadata is needed, this field is set to an empty string. Note: The URI given on output will be immutable and probably different, including the URI scheme, than the one given on input. The output URI will point to a location where the user only has a read access.
metadata: Option<Value>Immutable. An additional information about the Model; the schema of the metadata can be found in metadata_schema. Unset if the Model does not have any additional information.
supported_export_formats: Vec<ExportFormat>Output only. The formats in which this Model may be exported. If empty, this Model is not available for export.
training_pipeline: StringOutput only. The resource name of the TrainingPipeline that uploaded this Model, if any.
pipeline_job: StringOptional. This field is populated if the model is produced by a pipeline job.
container_spec: Option<ModelContainerSpec>Input only. The specification of the container that is to be used when deploying this Model. The specification is ingested upon ModelService.UploadModel, and all binaries it contains are copied and stored internally by Vertex AI. Not required for AutoML Models.
artifact_uri: StringImmutable. The path to the directory containing the Model artifact and any of its supporting files. Not required for AutoML Models.
supported_deployment_resources_types: Vec<DeploymentResourcesType>Output only. When this Model is deployed, its prediction resources are
described by the prediction_resources field of the
Endpoint.deployed_models
object. Because not all Models support all resource configuration types,
the configuration types this Model supports are listed here. If no
configuration types are listed, the Model cannot be deployed to an
Endpoint and does not support
online predictions
(PredictionService.Predict
or
PredictionService.Explain).
Such a Model can serve predictions by using a
BatchPredictionJob, if it
has at least one entry each in
supported_input_storage_formats
and
supported_output_storage_formats.
supported_input_storage_formats: Vec<String>Output only. The formats this Model supports in BatchPredictionJob.input_config. If PredictSchemata.instance_schema_uri exists, the instances should be given as per that schema.
The possible formats are:
-
jsonlThe JSON Lines format, where each instance is a single line. Uses GcsSource. -
csvThe CSV format, where each instance is a single comma-separated line. The first line in the file is the header, containing comma-separated field names. Uses GcsSource. -
tf-recordThe TFRecord format, where each instance is a single record in tfrecord syntax. Uses GcsSource. -
tf-record-gzipSimilar totf-record, but the file is gzipped. Uses GcsSource. -
bigqueryEach instance is a single row in BigQuery. Uses BigQuerySource. -
file-listEach line of the file is the location of an instance to process, usesgcs_sourcefield of the InputConfig object.
If this Model doesn’t support any of these formats it means it cannot be used with a BatchPredictionJob. However, if it has supported_deployment_resources_types, it could serve online predictions by using PredictionService.Predict or PredictionService.Explain.
supported_output_storage_formats: Vec<String>Output only. The formats this Model supports in BatchPredictionJob.output_config. If both PredictSchemata.instance_schema_uri and PredictSchemata.prediction_schema_uri exist, the predictions are returned together with their instances. In other words, the prediction has the original instance data first, followed by the actual prediction content (as per the schema).
The possible formats are:
-
jsonlThe JSON Lines format, where each prediction is a single line. Uses GcsDestination. -
csvThe CSV format, where each prediction is a single comma-separated line. The first line in the file is the header, containing comma-separated field names. Uses GcsDestination. -
bigqueryEach prediction is a single row in a BigQuery table, uses BigQueryDestination .
If this Model doesn’t support any of these formats it means it cannot be used with a BatchPredictionJob. However, if it has supported_deployment_resources_types, it could serve online predictions by using PredictionService.Predict or PredictionService.Explain.
create_time: Option<Timestamp>Output only. Timestamp when this Model was uploaded into Vertex AI.
update_time: Option<Timestamp>Output only. Timestamp when this Model was most recently updated.
deployed_models: Vec<DeployedModelRef>Output only. The pointers to DeployedModels created from this Model. Note that Model could have been deployed to Endpoints in different Locations.
explanation_spec: Option<ExplanationSpec>The default explanation specification for this Model.
The Model can be used for requesting explanation after being deployed if it is populated. The Model can be used for batch explanation if it is populated.
All fields of the explanation_spec can be overridden by explanation_spec of DeployModelRequest.deployed_model, or explanation_spec of BatchPredictionJob.
If the default explanation specification is not set for this Model, this Model can still be used for requesting explanation by setting explanation_spec of DeployModelRequest.deployed_model and for batch explanation by setting explanation_spec of BatchPredictionJob.
etag: StringUsed to perform consistent read-modify-write updates. If not set, a blind “overwrite” update happens.
labels: HashMap<String, String>The labels with user-defined metadata to organize your Models.
Label keys and values can be no longer than 64 characters (Unicode codepoints), can only contain lowercase letters, numeric characters, underscores and dashes. International characters are allowed.
See https://goo.gl/xmQnxf for more information and examples of labels.
data_stats: Option<DataStats>Stats of data used for training or evaluating the Model.
Only populated when the Model is trained by a TrainingPipeline with data_input_config.
encryption_spec: Option<EncryptionSpec>Customer-managed encryption key spec for a Model. If set, this Model and all sub-resources of this Model will be secured by this key.
model_source_info: Option<ModelSourceInfo>Output only. Source of a model. It can either be automl training pipeline, custom training pipeline, BigQuery ML, or saved and tuned from Genie or Model Garden.
original_model_info: Option<OriginalModelInfo>Output only. If this Model is a copy of another Model, this contains info about the original.
metadata_artifact: StringOutput only. The resource name of the Artifact that was created in
MetadataStore when creating the Model. The Artifact resource name pattern
is
projects/{project}/locations/{location}/metadataStores/{metadata_store}/artifacts/{artifact}.
base_model_source: Option<BaseModelSource>Optional. User input field to specify the base model source. Currently it only supports specifing the Model Garden models and Genie models.
satisfies_pzs: boolOutput only. Reserved for future use.
satisfies_pzi: boolOutput only. Reserved for future use.
checkpoints: Vec<Checkpoint>Optional. Output only. The checkpoints of the model.
Implementations§
Source§impl Model
impl Model
pub fn new() -> Self
Sourcepub fn set_version_id<T: Into<String>>(self, v: T) -> Self
pub fn set_version_id<T: Into<String>>(self, v: T) -> Self
Sets the value of version_id.
Sourcepub fn set_version_aliases<T, V>(self, v: T) -> Self
pub fn set_version_aliases<T, V>(self, v: T) -> Self
Sets the value of version_aliases.
Sourcepub fn set_version_create_time<T: Into<Option<Timestamp>>>(self, v: T) -> Self
pub fn set_version_create_time<T: Into<Option<Timestamp>>>(self, v: T) -> Self
Sets the value of version_create_time.
Sourcepub fn set_version_update_time<T: Into<Option<Timestamp>>>(self, v: T) -> Self
pub fn set_version_update_time<T: Into<Option<Timestamp>>>(self, v: T) -> Self
Sets the value of version_update_time.
Sourcepub fn set_display_name<T: Into<String>>(self, v: T) -> Self
pub fn set_display_name<T: Into<String>>(self, v: T) -> Self
Sets the value of display_name.
Sourcepub fn set_description<T: Into<String>>(self, v: T) -> Self
pub fn set_description<T: Into<String>>(self, v: T) -> Self
Sets the value of description.
Sourcepub fn set_version_description<T: Into<String>>(self, v: T) -> Self
pub fn set_version_description<T: Into<String>>(self, v: T) -> Self
Sets the value of version_description.
Sourcepub fn set_default_checkpoint_id<T: Into<String>>(self, v: T) -> Self
pub fn set_default_checkpoint_id<T: Into<String>>(self, v: T) -> Self
Sets the value of default_checkpoint_id.
Sourcepub fn set_predict_schemata<T: Into<Option<PredictSchemata>>>(
self,
v: T,
) -> Self
pub fn set_predict_schemata<T: Into<Option<PredictSchemata>>>( self, v: T, ) -> Self
Sets the value of predict_schemata.
Sourcepub fn set_metadata_schema_uri<T: Into<String>>(self, v: T) -> Self
pub fn set_metadata_schema_uri<T: Into<String>>(self, v: T) -> Self
Sets the value of metadata_schema_uri.
Sourcepub fn set_supported_export_formats<T, V>(self, v: T) -> Self
pub fn set_supported_export_formats<T, V>(self, v: T) -> Self
Sets the value of supported_export_formats.
Sourcepub fn set_training_pipeline<T: Into<String>>(self, v: T) -> Self
pub fn set_training_pipeline<T: Into<String>>(self, v: T) -> Self
Sets the value of training_pipeline.
Sourcepub fn set_pipeline_job<T: Into<String>>(self, v: T) -> Self
pub fn set_pipeline_job<T: Into<String>>(self, v: T) -> Self
Sets the value of pipeline_job.
Sourcepub fn set_container_spec<T: Into<Option<ModelContainerSpec>>>(
self,
v: T,
) -> Self
pub fn set_container_spec<T: Into<Option<ModelContainerSpec>>>( self, v: T, ) -> Self
Sets the value of container_spec.
Sourcepub fn set_artifact_uri<T: Into<String>>(self, v: T) -> Self
pub fn set_artifact_uri<T: Into<String>>(self, v: T) -> Self
Sets the value of artifact_uri.
Sourcepub fn set_supported_deployment_resources_types<T, V>(self, v: T) -> Self
pub fn set_supported_deployment_resources_types<T, V>(self, v: T) -> Self
Sets the value of supported_deployment_resources_types.
Sourcepub fn set_supported_input_storage_formats<T, V>(self, v: T) -> Self
pub fn set_supported_input_storage_formats<T, V>(self, v: T) -> Self
Sets the value of supported_input_storage_formats.
Sourcepub fn set_supported_output_storage_formats<T, V>(self, v: T) -> Self
pub fn set_supported_output_storage_formats<T, V>(self, v: T) -> Self
Sets the value of supported_output_storage_formats.
Sourcepub fn set_create_time<T: Into<Option<Timestamp>>>(self, v: T) -> Self
pub fn set_create_time<T: Into<Option<Timestamp>>>(self, v: T) -> Self
Sets the value of create_time.
Sourcepub fn set_update_time<T: Into<Option<Timestamp>>>(self, v: T) -> Self
pub fn set_update_time<T: Into<Option<Timestamp>>>(self, v: T) -> Self
Sets the value of update_time.
Sourcepub fn set_deployed_models<T, V>(self, v: T) -> Self
pub fn set_deployed_models<T, V>(self, v: T) -> Self
Sets the value of deployed_models.
Sourcepub fn set_explanation_spec<T: Into<Option<ExplanationSpec>>>(
self,
v: T,
) -> Self
pub fn set_explanation_spec<T: Into<Option<ExplanationSpec>>>( self, v: T, ) -> Self
Sets the value of explanation_spec.
Sourcepub fn set_labels<T, K, V>(self, v: T) -> Self
pub fn set_labels<T, K, V>(self, v: T) -> Self
Sets the value of labels.
Sourcepub fn set_data_stats<T: Into<Option<DataStats>>>(self, v: T) -> Self
pub fn set_data_stats<T: Into<Option<DataStats>>>(self, v: T) -> Self
Sets the value of data_stats.
Sourcepub fn set_encryption_spec<T: Into<Option<EncryptionSpec>>>(self, v: T) -> Self
pub fn set_encryption_spec<T: Into<Option<EncryptionSpec>>>(self, v: T) -> Self
Sets the value of encryption_spec.
Sourcepub fn set_model_source_info<T: Into<Option<ModelSourceInfo>>>(
self,
v: T,
) -> Self
pub fn set_model_source_info<T: Into<Option<ModelSourceInfo>>>( self, v: T, ) -> Self
Sets the value of model_source_info.
Sourcepub fn set_original_model_info<T: Into<Option<OriginalModelInfo>>>(
self,
v: T,
) -> Self
pub fn set_original_model_info<T: Into<Option<OriginalModelInfo>>>( self, v: T, ) -> Self
Sets the value of original_model_info.
Sourcepub fn set_metadata_artifact<T: Into<String>>(self, v: T) -> Self
pub fn set_metadata_artifact<T: Into<String>>(self, v: T) -> Self
Sets the value of metadata_artifact.
Sourcepub fn set_base_model_source<T: Into<Option<BaseModelSource>>>(
self,
v: T,
) -> Self
pub fn set_base_model_source<T: Into<Option<BaseModelSource>>>( self, v: T, ) -> Self
Sets the value of base_model_source.
Sourcepub fn set_satisfies_pzs<T: Into<bool>>(self, v: T) -> Self
pub fn set_satisfies_pzs<T: Into<bool>>(self, v: T) -> Self
Sets the value of satisfies_pzs.
Sourcepub fn set_satisfies_pzi<T: Into<bool>>(self, v: T) -> Self
pub fn set_satisfies_pzi<T: Into<bool>>(self, v: T) -> Self
Sets the value of satisfies_pzi.
Sourcepub fn set_checkpoints<T, V>(self, v: T) -> Self
pub fn set_checkpoints<T, V>(self, v: T) -> Self
Sets the value of checkpoints.