pub struct Model {
Show 29 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 predict_schemata: Option<PredictSchemata>, pub metadata_schema_uri: String, pub metadata: Option<Value>, pub supported_export_formats: Vec<ExportFormat>, pub training_pipeline: String, pub container_spec: Option<ModelContainerSpec>, pub artifact_uri: String, pub supported_deployment_resources_types: Vec<i32>, 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: BTreeMap<String, String>, 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>,
}
Expand description

A trained machine learning Model.

Fields§

§name: String

The resource name of the Model.

§version_id: String

Output 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: String

Required. The display name of the Model. The name can be up to 128 characters long and can consist of any UTF-8 characters.

§description: String

The description of the Model.

§version_description: String

The description of this version.

§predict_schemata: Option<PredictSchemata>

The schemata that describe formats of the Model’s predictions and explanations as given and returned via [PredictionService.Predict][google.cloud.aiplatform.v1beta1.PredictionService.Predict] and [PredictionService.Explain][google.cloud.aiplatform.v1beta1.PredictionService.Explain].

§metadata_schema_uri: String

Immutable. 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][google.cloud.aiplatform.v1beta1.Model.metadata_schema_uri]. 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: String

Output only. The resource name of the TrainingPipeline that uploaded this Model, if any.

§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][google.cloud.aiplatform.v1beta1.ModelService.UploadModel], and all binaries it contains are copied and stored internally by Vertex AI. Not required for AutoML Models.

§artifact_uri: String

Immutable. 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<i32>

Output only. When this Model is deployed, its prediction resources are described by the prediction_resources field of the [Endpoint.deployed_models][google.cloud.aiplatform.v1beta1.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][google.cloud.aiplatform.v1beta1.Endpoint] and does not support online predictions ([PredictionService.Predict][google.cloud.aiplatform.v1beta1.PredictionService.Predict] or [PredictionService.Explain][google.cloud.aiplatform.v1beta1.PredictionService.Explain]). Such a Model can serve predictions by using a [BatchPredictionJob][google.cloud.aiplatform.v1beta1.BatchPredictionJob], if it has at least one entry each in [supported_input_storage_formats][google.cloud.aiplatform.v1beta1.Model.supported_input_storage_formats] and [supported_output_storage_formats][google.cloud.aiplatform.v1beta1.Model.supported_output_storage_formats].

§supported_input_storage_formats: Vec<String>

Output only. The formats this Model supports in [BatchPredictionJob.input_config][google.cloud.aiplatform.v1beta1.BatchPredictionJob.input_config]. If [PredictSchemata.instance_schema_uri][google.cloud.aiplatform.v1beta1.PredictSchemata.instance_schema_uri] exists, the instances should be given as per that schema.

The possible formats are:

  • jsonl The JSON Lines format, where each instance is a single line. Uses [GcsSource][google.cloud.aiplatform.v1beta1.BatchPredictionJob.InputConfig.gcs_source].

  • csv The 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][google.cloud.aiplatform.v1beta1.BatchPredictionJob.InputConfig.gcs_source].

  • tf-record The TFRecord format, where each instance is a single record in tfrecord syntax. Uses [GcsSource][google.cloud.aiplatform.v1beta1.BatchPredictionJob.InputConfig.gcs_source].

  • tf-record-gzip Similar to tf-record, but the file is gzipped. Uses [GcsSource][google.cloud.aiplatform.v1beta1.BatchPredictionJob.InputConfig.gcs_source].

  • bigquery Each instance is a single row in BigQuery. Uses [BigQuerySource][google.cloud.aiplatform.v1beta1.BatchPredictionJob.InputConfig.bigquery_source].

  • file-list Each line of the file is the location of an instance to process, uses gcs_source field of the [InputConfig][google.cloud.aiplatform.v1beta1.BatchPredictionJob.InputConfig] object.

If this Model doesn’t support any of these formats it means it cannot be used with a [BatchPredictionJob][google.cloud.aiplatform.v1beta1.BatchPredictionJob]. However, if it has [supported_deployment_resources_types][google.cloud.aiplatform.v1beta1.Model.supported_deployment_resources_types], it could serve online predictions by using [PredictionService.Predict][google.cloud.aiplatform.v1beta1.PredictionService.Predict] or [PredictionService.Explain][google.cloud.aiplatform.v1beta1.PredictionService.Explain].

§supported_output_storage_formats: Vec<String>

Output only. The formats this Model supports in [BatchPredictionJob.output_config][google.cloud.aiplatform.v1beta1.BatchPredictionJob.output_config]. If both [PredictSchemata.instance_schema_uri][google.cloud.aiplatform.v1beta1.PredictSchemata.instance_schema_uri] and [PredictSchemata.prediction_schema_uri][google.cloud.aiplatform.v1beta1.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:

  • jsonl The JSON Lines format, where each prediction is a single line. Uses [GcsDestination][google.cloud.aiplatform.v1beta1.BatchPredictionJob.OutputConfig.gcs_destination].

  • csv The 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][google.cloud.aiplatform.v1beta1.BatchPredictionJob.OutputConfig.gcs_destination].

  • bigquery Each prediction is a single row in a BigQuery table, uses [BigQueryDestination][google.cloud.aiplatform.v1beta1.BatchPredictionJob.OutputConfig.bigquery_destination] .

If this Model doesn’t support any of these formats it means it cannot be used with a [BatchPredictionJob][google.cloud.aiplatform.v1beta1.BatchPredictionJob]. However, if it has [supported_deployment_resources_types][google.cloud.aiplatform.v1beta1.Model.supported_deployment_resources_types], it could serve online predictions by using [PredictionService.Predict][google.cloud.aiplatform.v1beta1.PredictionService.Predict] or [PredictionService.Explain][google.cloud.aiplatform.v1beta1.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][google.cloud.aiplatform.v1beta1.PredictionService.Explain] after being [deployed][google.cloud.aiplatform.v1beta1.EndpointService.DeployModel] if it is populated. The Model can be used for [batch explanation][google.cloud.aiplatform.v1beta1.BatchPredictionJob.generate_explanation] if it is populated.

All fields of the explanation_spec can be overridden by [explanation_spec][google.cloud.aiplatform.v1beta1.DeployedModel.explanation_spec] of [DeployModelRequest.deployed_model][google.cloud.aiplatform.v1beta1.DeployModelRequest.deployed_model], or [explanation_spec][google.cloud.aiplatform.v1beta1.BatchPredictionJob.explanation_spec] of [BatchPredictionJob][google.cloud.aiplatform.v1beta1.BatchPredictionJob].

If the default explanation specification is not set for this Model, this Model can still be used for [requesting explanation][google.cloud.aiplatform.v1beta1.PredictionService.Explain] by setting [explanation_spec][google.cloud.aiplatform.v1beta1.DeployedModel.explanation_spec] of [DeployModelRequest.deployed_model][google.cloud.aiplatform.v1beta1.DeployModelRequest.deployed_model] and for [batch explanation][google.cloud.aiplatform.v1beta1.BatchPredictionJob.generate_explanation] by setting [explanation_spec][google.cloud.aiplatform.v1beta1.BatchPredictionJob.explanation_spec] of [BatchPredictionJob][google.cloud.aiplatform.v1beta1.BatchPredictionJob].

§etag: String

Used to perform consistent read-modify-write updates. If not set, a blind “overwrite” update happens.

§labels: BTreeMap<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.

§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: String

Output 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.

Implementations§

source§

impl Model

source

pub fn supported_deployment_resources_types( &self ) -> FilterMap<Cloned<Iter<'_, i32>>, fn(_: i32) -> Option<DeploymentResourcesType>>

Returns an iterator which yields the valid enum values contained in supported_deployment_resources_types.

source

pub fn push_supported_deployment_resources_types( &mut self, value: DeploymentResourcesType )

Appends the provided enum value to supported_deployment_resources_types.

Trait Implementations§

source§

impl Clone for Model

source§

fn clone(&self) -> Model

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for Model

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for Model

source§

fn default() -> Self

Returns the “default value” for a type. Read more
source§

impl Message for Model

source§

fn encoded_len(&self) -> usize

Returns the encoded length of the message without a length delimiter.
source§

fn clear(&mut self)

Clears the message, resetting all fields to their default.
source§

fn encode<B>(&self, buf: &mut B) -> Result<(), EncodeError>
where B: BufMut, Self: Sized,

Encodes the message to a buffer. Read more
source§

fn encode_to_vec(&self) -> Vec<u8>
where Self: Sized,

Encodes the message to a newly allocated buffer.
source§

fn encode_length_delimited<B>(&self, buf: &mut B) -> Result<(), EncodeError>
where B: BufMut, Self: Sized,

Encodes the message with a length-delimiter to a buffer. Read more
source§

fn encode_length_delimited_to_vec(&self) -> Vec<u8>
where Self: Sized,

Encodes the message with a length-delimiter to a newly allocated buffer.
source§

fn decode<B>(buf: B) -> Result<Self, DecodeError>
where B: Buf, Self: Default,

Decodes an instance of the message from a buffer. Read more
source§

fn decode_length_delimited<B>(buf: B) -> Result<Self, DecodeError>
where B: Buf, Self: Default,

Decodes a length-delimited instance of the message from the buffer.
source§

fn merge<B>(&mut self, buf: B) -> Result<(), DecodeError>
where B: Buf, Self: Sized,

Decodes an instance of the message from a buffer, and merges it into self. Read more
source§

fn merge_length_delimited<B>(&mut self, buf: B) -> Result<(), DecodeError>
where B: Buf, Self: Sized,

Decodes a length-delimited instance of the message from buffer, and merges it into self.
source§

impl PartialEq for Model

source§

fn eq(&self, other: &Model) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl StructuralPartialEq for Model

Auto Trait Implementations§

§

impl Freeze for Model

§

impl RefUnwindSafe for Model

§

impl Send for Model

§

impl Sync for Model

§

impl Unpin for Model

§

impl UnwindSafe for Model

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> FromRef<T> for T
where T: Clone,

§

fn from_ref(input: &T) -> T

Converts to this type from a reference to the input type.
§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> IntoRequest<T> for T

source§

fn into_request(self) -> Request<T>

Wrap the input message T in a tonic::Request
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more