Class GoogleCloudMlV1Version
Represents a version of the model. Each version is a trained model deployed in the cloud, ready to handle prediction requests. A model can have multiple versions. You can get information about all of the versions of a given model by calling projects.models.versions.list.
Implements
Inherited Members
Namespace: Google.Apis.CloudMachineLearningEngine.v1.Data
Assembly: Google.Apis.CloudMachineLearningEngine.v1.dll
Syntax
public class GoogleCloudMlV1Version : IDirectResponseSchema
Properties
AcceleratorConfig
Optional. Accelerator config for using GPUs for online prediction (beta). Only specify this field if you
have specified a Compute Engine (N1) machine type in the machineType
field. Learn more about using GPUs
for online prediction.
Declaration
[JsonProperty("acceleratorConfig")]
public virtual GoogleCloudMlV1AcceleratorConfig AcceleratorConfig { get; set; }
Property Value
Type | Description |
---|---|
GoogleCloudMlV1AcceleratorConfig |
AutoScaling
Automatically scale the number of nodes used to serve the model in response to increases and decreases in traffic. Care should be taken to ramp up traffic according to the model's ability to scale or you will start seeing increases in latency and 429 response codes.
Declaration
[JsonProperty("autoScaling")]
public virtual GoogleCloudMlV1AutoScaling AutoScaling { get; set; }
Property Value
Type | Description |
---|---|
GoogleCloudMlV1AutoScaling |
Container
Optional. Specifies a custom container to use for serving predictions. If you specify this field, then
machineType
is required. If you specify this field, then deploymentUri
is optional. If you specify this
field, then you must not specify runtimeVersion
, packageUris
, framework
, pythonVersion
, or
predictionClass
.
Declaration
[JsonProperty("container")]
public virtual GoogleCloudMlV1ContainerSpec Container { get; set; }
Property Value
Type | Description |
---|---|
GoogleCloudMlV1ContainerSpec |
CreateTime
object representation of CreateTimeRaw.
Declaration
[JsonIgnore]
[Obsolete("This property is obsolete and may behave unexpectedly; please use CreateTimeDateTimeOffset instead.")]
public virtual object CreateTime { get; set; }
Property Value
Type | Description |
---|---|
object |
CreateTimeDateTimeOffset
DateTimeOffset representation of CreateTimeRaw.
Declaration
[JsonIgnore]
public virtual DateTimeOffset? CreateTimeDateTimeOffset { get; set; }
Property Value
Type | Description |
---|---|
DateTimeOffset? |
CreateTimeRaw
Output only. The time the version was created.
Declaration
[JsonProperty("createTime")]
public virtual string CreateTimeRaw { get; set; }
Property Value
Type | Description |
---|---|
string |
DeploymentUri
The Cloud Storage URI of a directory containing trained model artifacts to be used to create the model version. See the guide to deploying models for more information. The total number of files under this directory must not exceed 1000. During projects.models.versions.create, AI Platform Prediction copies all files from the specified directory to a location managed by the service. From then on, AI Platform Prediction uses these copies of the model artifacts to serve predictions, not the original files in Cloud Storage, so this location is useful only as a historical record. If you specify container, then this field is optional. Otherwise, it is required. Learn how to use this field with a custom container.
Declaration
[JsonProperty("deploymentUri")]
public virtual string DeploymentUri { get; set; }
Property Value
Type | Description |
---|---|
string |
Description
Optional. The description specified for the version when it was created.
Declaration
[JsonProperty("description")]
public virtual string Description { get; set; }
Property Value
Type | Description |
---|---|
string |
ETag
etag
is used for optimistic concurrency control as a way to help prevent simultaneous updates of a model
from overwriting each other. It is strongly suggested that systems make use of the etag
in the
read-modify-write cycle to perform model updates in order to avoid race conditions: An etag
is returned in
the response to GetVersion
, and systems are expected to put that etag in the request to UpdateVersion
to
ensure that their change will be applied to the model as intended.
Declaration
[JsonProperty("etag")]
public virtual string ETag { get; set; }
Property Value
Type | Description |
---|---|
string |
ErrorMessage
Output only. The details of a failure or a cancellation.
Declaration
[JsonProperty("errorMessage")]
public virtual string ErrorMessage { get; set; }
Property Value
Type | Description |
---|---|
string |
ExplanationConfig
Optional. Configures explainability features on the model's version. Some explanation features require additional metadata to be loaded as part of the model payload.
Declaration
[JsonProperty("explanationConfig")]
public virtual GoogleCloudMlV1ExplanationConfig ExplanationConfig { get; set; }
Property Value
Type | Description |
---|---|
GoogleCloudMlV1ExplanationConfig |
Framework
Optional. The machine learning framework AI Platform uses to train this version of the model. Valid values
are TENSORFLOW
, SCIKIT_LEARN
, XGBOOST
. If you do not specify a framework, AI Platform will analyze
files in the deployment_uri to determine a framework. If you choose SCIKIT_LEARN
or XGBOOST
, you must
also set the runtime version of the model to 1.4 or greater. Do not specify a framework if you're
deploying a custom prediction routine or if
you're using a custom container.
Declaration
[JsonProperty("framework")]
public virtual string Framework { get; set; }
Property Value
Type | Description |
---|---|
string |
IsDefault
Output only. If true, this version will be used to handle prediction requests that do not specify a version. You can change the default version by calling projects.methods.versions.setDefault.
Declaration
[JsonProperty("isDefault")]
public virtual bool? IsDefault { get; set; }
Property Value
Type | Description |
---|---|
bool? |
Labels
Optional. One or more labels that you can add, to organize your model versions. Each label is a key-value pair, where both the key and the value are arbitrary strings that you supply. For more information, see the documentation on using labels. Note that this field is not updatable for mls1* models.
Declaration
[JsonProperty("labels")]
public virtual IDictionary<string, string> Labels { get; set; }
Property Value
Type | Description |
---|---|
IDictionary<string, string> |
LastMigrationModelId
Output only. The AI Platform (Unified)
Model
ID for the last model
migration.
Declaration
[JsonProperty("lastMigrationModelId")]
public virtual string LastMigrationModelId { get; set; }
Property Value
Type | Description |
---|---|
string |
LastMigrationTime
object representation of LastMigrationTimeRaw.
Declaration
[JsonIgnore]
[Obsolete("This property is obsolete and may behave unexpectedly; please use LastMigrationTimeDateTimeOffset instead.")]
public virtual object LastMigrationTime { get; set; }
Property Value
Type | Description |
---|---|
object |
LastMigrationTimeDateTimeOffset
DateTimeOffset representation of LastMigrationTimeRaw.
Declaration
[JsonIgnore]
public virtual DateTimeOffset? LastMigrationTimeDateTimeOffset { get; set; }
Property Value
Type | Description |
---|---|
DateTimeOffset? |
LastMigrationTimeRaw
Output only. The last time this version was successfully migrated to AI Platform (Unified).
Declaration
[JsonProperty("lastMigrationTime")]
public virtual string LastMigrationTimeRaw { get; set; }
Property Value
Type | Description |
---|---|
string |
LastUseTime
object representation of LastUseTimeRaw.
Declaration
[JsonIgnore]
[Obsolete("This property is obsolete and may behave unexpectedly; please use LastUseTimeDateTimeOffset instead.")]
public virtual object LastUseTime { get; set; }
Property Value
Type | Description |
---|---|
object |
LastUseTimeDateTimeOffset
DateTimeOffset representation of LastUseTimeRaw.
Declaration
[JsonIgnore]
public virtual DateTimeOffset? LastUseTimeDateTimeOffset { get; set; }
Property Value
Type | Description |
---|---|
DateTimeOffset? |
LastUseTimeRaw
Output only. The time the version was last used for prediction.
Declaration
[JsonProperty("lastUseTime")]
public virtual string LastUseTimeRaw { get; set; }
Property Value
Type | Description |
---|---|
string |
MachineType
Optional. The type of machine on which to serve the model. Currently only applies to online prediction
service. To learn about valid values for this field, read Choosing a machine type for online
prediction. If this field is not specified
and you are using a regional endpoint, then the machine
type defaults to n1-standard-2
. If this field is not specified and you are using the global endpoint
(ml.googleapis.com
), then the machine type defaults to mls1-c1-m2
.
Declaration
[JsonProperty("machineType")]
public virtual string MachineType { get; set; }
Property Value
Type | Description |
---|---|
string |
ManualScaling
Manually select the number of nodes to use for serving the model. You should generally use auto_scaling
with an appropriate min_nodes
instead, but this option is available if you want more predictable billing.
Beware that latency and error rates will increase if the traffic exceeds that capability of the system to
serve it based on the selected number of nodes.
Declaration
[JsonProperty("manualScaling")]
public virtual GoogleCloudMlV1ManualScaling ManualScaling { get; set; }
Property Value
Type | Description |
---|---|
GoogleCloudMlV1ManualScaling |
Name
Required. The name specified for the version when it was created. The version name must be unique within the model it is created in.
Declaration
[JsonProperty("name")]
public virtual string Name { get; set; }
Property Value
Type | Description |
---|---|
string |
PackageUris
Optional. Cloud Storage paths (gs://…
) of packages for custom prediction
routines or scikit-learn pipelines with custom
code. For a custom prediction
routine, one of these packages must contain your Predictor class (see
predictionClass
). Additionally, include any dependencies used by your
Predictor or scikit-learn pipeline uses that are not already included in your selected runtime
version. If you specify this field, you must also set
runtimeVersion
to 1.4 or greater.
Declaration
[JsonProperty("packageUris")]
public virtual IList<string> PackageUris { get; set; }
Property Value
Type | Description |
---|---|
IList<string> |
PredictionClass
Optional. The fully qualified name (module_name.class_name) of a class that implements the Predictor
interface described in this reference field. The module containing this class should be included in a
package provided to the packageUris
field. Specify this field if and only
if you are deploying a custom prediction routine
(beta). If you specify this field, you must set
runtimeVersion
to 1.4 or greater and you must set machineType
to a
legacy (MLS1) machine type. The following code sample
provides the Predictor interface: class Predictor(object): """Interface for constructing custom
predictors.""" def predict(self, instances, **kwargs): """Performs custom prediction. Instances are the
decoded values from the request. They have already been deserialized from JSON. Args: instances: A list of
prediction input instances. **kwargs: A dictionary of keyword args provided as additional fields on the
predict request body. Returns: A list of outputs containing the prediction results. This list must be JSON
serializable. """ raise NotImplementedError() @classmethod def from_path(cls, model_dir): """Creates an
instance of Predictor using the given path. Loading of the predictor should be done in this method. Args:
model_dir: The local directory that contains the exported model file along with any additional files
uploaded when creating the version resource. Returns: An instance implementing this Predictor class. """
raise NotImplementedError() Learn more about the Predictor interface and custom prediction
routines.
Declaration
[JsonProperty("predictionClass")]
public virtual string PredictionClass { get; set; }
Property Value
Type | Description |
---|---|
string |
PythonVersion
Required. The version of Python used in prediction. The following Python versions are available: * Python
'3.7' is available when runtime_version
is set to '1.15' or later. * Python '3.5' is available when
runtime_version
is set to a version from '1.4' to '1.14'. * Python '2.7' is available when
runtime_version
is set to '1.15' or earlier. Read more about the Python versions available for each
runtime version.
Declaration
[JsonProperty("pythonVersion")]
public virtual string PythonVersion { get; set; }
Property Value
Type | Description |
---|---|
string |
RequestLoggingConfig
Optional. Only specify this field in a projects.models.versions.patch request. Specifying it in a projects.models.versions.create request has no effect. Configures the request-response pair logging on predictions from this Version.
Declaration
[JsonProperty("requestLoggingConfig")]
public virtual GoogleCloudMlV1RequestLoggingConfig RequestLoggingConfig { get; set; }
Property Value
Type | Description |
---|---|
GoogleCloudMlV1RequestLoggingConfig |
Routes
Optional. Specifies paths on a custom container's HTTP server where AI Platform Prediction sends certain
requests. If you specify this field, then you must also specify the container
field. If you specify the
container
field and do not specify this field, it defaults to the following:
json { "predict":
"/v1/models/MODEL/versions/VERSION:predict", "health": "/v1/models/MODEL/versions/VERSION" }
See RouteMap for more details about these default values.
Declaration
[JsonProperty("routes")]
public virtual GoogleCloudMlV1RouteMap Routes { get; set; }
Property Value
Type | Description |
---|---|
GoogleCloudMlV1RouteMap |
RuntimeVersion
Required. The AI Platform runtime version to use for this deployment. For more information, see the runtime version list and how to manage runtime versions.
Declaration
[JsonProperty("runtimeVersion")]
public virtual string RuntimeVersion { get; set; }
Property Value
Type | Description |
---|---|
string |
ServiceAccount
Optional. Specifies the service account for resource access control. If you specify this field, then you
must also specify either the containerSpec
or the predictionClass
field. Learn more about using a
custom service account.
Declaration
[JsonProperty("serviceAccount")]
public virtual string ServiceAccount { get; set; }
Property Value
Type | Description |
---|---|
string |
State
Output only. The state of a version.
Declaration
[JsonProperty("state")]
public virtual string State { get; set; }
Property Value
Type | Description |
---|---|
string |