#[non_exhaustive]pub struct InstanceConfig {
pub instance_type: String,
pub key_field: String,
pub included_fields: Vec<String>,
pub excluded_fields: Vec<String>,
/* private fields */
}job-service only.Expand description
Configuration defining how to transform batch prediction input instances to the instances that the Model accepts.
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.instance_type: StringThe format of the instance that the Model accepts. Vertex AI will convert compatible batch prediction input instance formats to the specified format.
Supported values are:
-
object: Each input is converted to JSON object format.- For
bigquery, each row is converted to an object. - For
jsonl, each line of the JSONL input must be an object. - Does not apply to
csv,file-list,tf-record, ortf-record-gzip.
- For
-
array: Each input is converted to JSON array format.- For
bigquery, each row is converted to an array. The order of columns is determined by the BigQuery column order, unless included_fields is populated. included_fields must be populated for specifying field orders. - For
jsonl, if each line of the JSONL input is an object, included_fields must be populated for specifying field orders. - Does not apply to
csv,file-list,tf-record, ortf-record-gzip.
- For
If not specified, Vertex AI converts the batch prediction input as follows:
- For
bigqueryandcsv, the behavior is the same asarray. The order of columns is the same as defined in the file or table, unless included_fields is populated. - For
jsonl, the prediction instance format is determined by each line of the input. - For
tf-record/tf-record-gzip, each record will be converted to an object in the format of{"b64": <value>}, where<value>is the Base64-encoded string of the content of the record. - For
file-list, each file in the list will be converted to an object in the format of{"b64": <value>}, where<value>is the Base64-encoded string of the content of the file.
key_field: StringThe name of the field that is considered as a key.
The values identified by the key field is not included in the transformed
instances that is sent to the Model. This is similar to
specifying this name of the field in
excluded_fields.
In addition, the batch prediction output will not include the instances.
Instead the output will only include the value of the key field, in a
field named key in the output:
- For
jsonloutput format, the output will have akeyfield instead of theinstancefield. - For
csv/bigqueryoutput format, the output will have have akeycolumn instead of the instance feature columns.
The input must be JSONL with objects at each line, CSV, BigQuery or TfRecord.
included_fields: Vec<String>Fields that will be included in the prediction instance that is sent to the Model.
If
instance_type
is array, the order of field names in included_fields also determines
the order of the values in the array.
When included_fields is populated, excluded_fields must be empty.
The input must be JSONL with objects at each line, BigQuery or TfRecord.
excluded_fields: Vec<String>Fields that will be excluded in the prediction instance that is sent to the Model.
Excluded will be attached to the batch prediction output if key_field is not specified.
When excluded_fields is populated, included_fields must be empty.
The input must be JSONL with objects at each line, BigQuery or TfRecord.
Implementations§
Source§impl InstanceConfig
impl InstanceConfig
pub fn new() -> Self
Sourcepub fn set_instance_type<T: Into<String>>(self, v: T) -> Self
pub fn set_instance_type<T: Into<String>>(self, v: T) -> Self
Sets the value of instance_type.
§Example
let x = InstanceConfig::new().set_instance_type("example");Sourcepub fn set_key_field<T: Into<String>>(self, v: T) -> Self
pub fn set_key_field<T: Into<String>>(self, v: T) -> Self
Sourcepub fn set_included_fields<T, V>(self, v: T) -> Self
pub fn set_included_fields<T, V>(self, v: T) -> Self
Sets the value of included_fields.
§Example
let x = InstanceConfig::new().set_included_fields(["a", "b", "c"]);Sourcepub fn set_excluded_fields<T, V>(self, v: T) -> Self
pub fn set_excluded_fields<T, V>(self, v: T) -> Self
Sets the value of excluded_fields.
§Example
let x = InstanceConfig::new().set_excluded_fields(["a", "b", "c"]);Trait Implementations§
Source§impl Clone for InstanceConfig
impl Clone for InstanceConfig
Source§fn clone(&self) -> InstanceConfig
fn clone(&self) -> InstanceConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more