Regen all docs. (#700)
* Stop recursing if discovery == {}
* Generate docs with 'make docs'.
diff --git a/docs/dyn/ml_v1.projects.models.versions.html b/docs/dyn/ml_v1.projects.models.versions.html
index 1df296a..d77bf26 100644
--- a/docs/dyn/ml_v1.projects.models.versions.html
+++ b/docs/dyn/ml_v1.projects.models.versions.html
@@ -72,7 +72,7 @@
</style>
-<h1><a href="ml_v1.html">Google Cloud Machine Learning Engine</a> . <a href="ml_v1.projects.html">projects</a> . <a href="ml_v1.projects.models.html">models</a> . <a href="ml_v1.projects.models.versions.html">versions</a></h1>
+<h1><a href="ml_v1.html">Cloud Machine Learning Engine</a> . <a href="ml_v1.projects.html">projects</a> . <a href="ml_v1.projects.models.html">models</a> . <a href="ml_v1.projects.models.versions.html">versions</a></h1>
<h2>Instance Methods</h2>
<p class="toc_element">
<code><a href="#create">create(parent, body, x__xgafv=None)</a></code></p>
@@ -84,13 +84,16 @@
<code><a href="#get">get(name, x__xgafv=None)</a></code></p>
<p class="firstline">Gets information about a model version.</p>
<p class="toc_element">
- <code><a href="#list">list(parent, pageToken=None, x__xgafv=None, pageSize=None)</a></code></p>
+ <code><a href="#list">list(parent, pageToken=None, x__xgafv=None, pageSize=None, filter=None)</a></code></p>
<p class="firstline">Gets basic information about all the versions of a model.</p>
<p class="toc_element">
<code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
<p class="firstline">Retrieves the next page of results.</p>
<p class="toc_element">
- <code><a href="#setDefault">setDefault(name, body, x__xgafv=None)</a></code></p>
+ <code><a href="#patch">patch(name, body, updateMask=None, x__xgafv=None)</a></code></p>
+<p class="firstline">Updates the specified Version resource.</p>
+<p class="toc_element">
+ <code><a href="#setDefault">setDefault(name, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Designates a version to be the default for the model.</p>
<h3>Method Details</h3>
<div class="method">
@@ -105,9 +108,7 @@
[projects.models.versions.setDefault](/ml-engine/reference/rest/v1/projects.models.versions/setDefault).
Args:
- parent: string, Required. The name of the model.
-
-Authorization: requires `Editor` role on the parent project. (required)
+ parent: string, Required. The name of the model. (required)
body: object, The request body. (required)
The object takes the form of:
@@ -117,11 +118,36 @@
# 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](/ml-engine/reference/rest/v1/projects.models.versions/list).
+ "errorMessage": "A String", # Output only. The details of a failure or a cancellation.
+ "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
+ # <a href="/ml-engine/docs/tensorflow/resource-labels">using labels</a>.
+ "a_key": "A String",
+ },
+ "machineType": "A String", # Optional. The type of machine on which to serve the model. Currently only
+ # applies to online prediction service.
+ # <dl>
+ # <dt>mls1-c1-m2</dt>
+ # <dd>
+ # The <b>default</b> machine type, with 1 core and 2 GB RAM. The deprecated
+ # name for this machine type is "mls1-highmem-1".
+ # </dd>
+ # <dt>mls1-c4-m2</dt>
+ # <dd>
+ # In <b>Beta</b>. This machine type has 4 cores and 2 GB RAM. The
+ # deprecated name for this machine type is "mls1-highcpu-4".
+ # </dd>
+ # </dl>
"description": "A String", # Optional. The description specified for the version when it was created.
- "runtimeVersion": "A String", # Optional. The Google Cloud ML runtime version to use for this deployment.
- # If not set, Google Cloud ML will choose a version.
+ "runtimeVersion": "A String", # Optional. The AI Platform runtime version to use for this deployment.
+ # If not set, AI Platform uses the default stable version, 1.0. For more
+ # information, see the
+ # [runtime version list](/ml-engine/docs/runtime-version-list) and
+ # [how to manage runtime versions](/ml-engine/docs/versioning).
"manualScaling": { # Options for manually scaling a model. # Manually select the number of nodes to use for serving the
- # model. You should generally use `automatic_scaling` with an appropriate
+ # 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
@@ -131,29 +157,69 @@
# this model will be proportional to `nodes` * number of hours since
# last billing cycle plus the cost for each prediction performed.
},
- "deploymentUri": "A String", # Required. The Google Cloud Storage location of the trained model used to
- # create the version. See the
- # [overview of model
- # deployment](/ml-engine/docs/concepts/deployment-overview) for more
- # informaiton.
+ "predictionClass": "A String", # Optional. The fully qualified name
+ # (<var>module_name</var>.<var>class_name</var>) 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](#Version.FIELDS.package_uris).
#
- # When passing Version to
- # [projects.models.versions.create](/ml-engine/reference/rest/v1/projects.models.versions/create)
- # the model service uses the specified location as the source of the model.
- # Once deployed, the model version is hosted by the prediction service, so
- # this location is useful only as a historical record.
- # The total number of model files can't exceed 1000.
- "lastUseTime": "A String", # Output only. The time the version was last used for prediction.
- "automaticScaling": { # Options for automatically scaling a model. # Automatically scale the number of nodes used to serve the model in
+ # Specify this field if and only if you are deploying a [custom prediction
+ # routine (beta)](/ml-engine/docs/tensorflow/custom-prediction-routines).
+ # If you specify this field, you must set
+ # [`runtimeVersion`](#Version.FIELDS.runtime_version) to 1.4 or greater.
+ #
+ # The following code sample provides the Predictor interface:
+ #
+ # ```py
+ # 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](/ml-engine/docs/tensorflow/custom-prediction-routines).
+ "autoScaling": { # Options for automatically scaling a model. # 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.
"minNodes": 42, # Optional. The minimum number of nodes to allocate for this model. These
- # nodes are always up, starting from the time the model is deployed, so the
- # cost of operating this model will be at least
+ # nodes are always up, starting from the time the model is deployed.
+ # Therefore, the cost of operating this model will be at least
# `rate` * `min_nodes` * number of hours since last billing cycle,
- # where `rate` is the cost per node-hour as documented in
- # [pricing](https://cloud.google.com/ml-engine/pricing#prediction_pricing),
+ # where `rate` is the cost per node-hour as documented in the
+ # [pricing guide](/ml-engine/docs/pricing),
# even if no predictions are performed. There is additional cost for each
# prediction performed.
#
@@ -166,7 +232,74 @@
# If not specified, `min_nodes` defaults to 0, in which case, when traffic
# to a model stops (and after a cool-down period), nodes will be shut down
# and no charges will be incurred until traffic to the model resumes.
+ #
+ # You can set `min_nodes` when creating the model version, and you can also
+ # update `min_nodes` for an existing version:
+ # <pre>
+ # update_body.json:
+ # {
+ # 'autoScaling': {
+ # 'minNodes': 5
+ # }
+ # }
+ # </pre>
+ # HTTP request:
+ # <pre>
+ # PATCH
+ # https://ml.googleapis.com/v1/{name=projects/*/models/*/versions/*}?update_mask=autoScaling.minNodes
+ # -d @./update_body.json
+ # </pre>
},
+ "serviceAccount": "A String", # Optional. Specifies the service account for resource access control.
+ "state": "A String", # Output only. The state of a version.
+ "pythonVersion": "A String", # Optional. The version of Python used in prediction. If not set, the default
+ # version is '2.7'. Python '3.5' is available when `runtime_version` is set
+ # to '1.4' and above. Python '2.7' works with all supported runtime versions.
+ "framework": "A String", # 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](/ml-engine/docs/tensorflow/custom-prediction-routines).
+ "packageUris": [ # Optional. Cloud Storage paths (`gs://…`) of packages for [custom
+ # prediction routines](/ml-engine/docs/tensorflow/custom-prediction-routines)
+ # or [scikit-learn pipelines with custom
+ # code](/ml-engine/docs/scikit/exporting-for-prediction#custom-pipeline-code).
+ #
+ # For a custom prediction routine, one of these packages must contain your
+ # Predictor class (see
+ # [`predictionClass`](#Version.FIELDS.prediction_class)). Additionally,
+ # include any dependencies used by your Predictor or scikit-learn pipeline
+ # uses that are not already included in your selected [runtime
+ # version](/ml-engine/docs/tensorflow/runtime-version-list).
+ #
+ # If you specify this field, you must also set
+ # [`runtimeVersion`](#Version.FIELDS.runtime_version) to 1.4 or greater.
+ "A String",
+ ],
+ "etag": "A String", # `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.
+ "lastUseTime": "A String", # Output only. The time the version was last used for prediction.
+ "deploymentUri": "A String", # Required. The Cloud Storage location of the trained model used to
+ # create the version. See the
+ # [guide to model
+ # deployment](/ml-engine/docs/tensorflow/deploying-models) for more
+ # information.
+ #
+ # When passing Version to
+ # [projects.models.versions.create](/ml-engine/reference/rest/v1/projects.models.versions/create)
+ # the model service uses the specified location as the source of the model.
+ # Once deployed, the model version is hosted by the prediction service, so
+ # this location is useful only as a historical record.
+ # The total number of model files can't exceed 1000.
"createTime": "A String", # Output only. The time the version was created.
"isDefault": True or False, # Output only. If true, this version will be used to handle prediction
# requests that do not specify a version.
@@ -194,71 +327,26 @@
# long-running operation should document the metadata type, if any.
"a_key": "", # Properties of the object. Contains field @type with type URL.
},
- "error": { # The `Status` type defines a logical error model that is suitable for different # The error result of the operation in case of failure or cancellation.
- # programming environments, including REST APIs and RPC APIs. It is used by
- # [gRPC](https://github.com/grpc). The error model is designed to be:
+ "error": { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation.
+ # different programming environments, including REST APIs and RPC APIs. It is
+ # used by [gRPC](https://github.com/grpc). Each `Status` message contains
+ # three pieces of data: error code, error message, and error details.
#
- # - Simple to use and understand for most users
- # - Flexible enough to meet unexpected needs
- #
- # # Overview
- #
- # The `Status` message contains three pieces of data: error code, error message,
- # and error details. The error code should be an enum value of
- # google.rpc.Code, but it may accept additional error codes if needed. The
- # error message should be a developer-facing English message that helps
- # developers *understand* and *resolve* the error. If a localized user-facing
- # error message is needed, put the localized message in the error details or
- # localize it in the client. The optional error details may contain arbitrary
- # information about the error. There is a predefined set of error detail types
- # in the package `google.rpc` that can be used for common error conditions.
- #
- # # Language mapping
- #
- # The `Status` message is the logical representation of the error model, but it
- # is not necessarily the actual wire format. When the `Status` message is
- # exposed in different client libraries and different wire protocols, it can be
- # mapped differently. For example, it will likely be mapped to some exceptions
- # in Java, but more likely mapped to some error codes in C.
- #
- # # Other uses
- #
- # The error model and the `Status` message can be used in a variety of
- # environments, either with or without APIs, to provide a
- # consistent developer experience across different environments.
- #
- # Example uses of this error model include:
- #
- # - Partial errors. If a service needs to return partial errors to the client,
- # it may embed the `Status` in the normal response to indicate the partial
- # errors.
- #
- # - Workflow errors. A typical workflow has multiple steps. Each step may
- # have a `Status` message for error reporting.
- #
- # - Batch operations. If a client uses batch request and batch response, the
- # `Status` message should be used directly inside batch response, one for
- # each error sub-response.
- #
- # - Asynchronous operations. If an API call embeds asynchronous operation
- # results in its response, the status of those operations should be
- # represented directly using the `Status` message.
- #
- # - Logging. If some API errors are stored in logs, the message `Status` could
- # be used directly after any stripping needed for security/privacy reasons.
+ # You can find out more about this error model and how to work with it in the
+ # [API Design Guide](https://cloud.google.com/apis/design/errors).
"message": "A String", # A developer-facing error message, which should be in English. Any
# user-facing error message should be localized and sent in the
# google.rpc.Status.details field, or localized by the client.
"code": 42, # The status code, which should be an enum value of google.rpc.Code.
- "details": [ # A list of messages that carry the error details. There will be a
- # common set of message types for APIs to use.
+ "details": [ # A list of messages that carry the error details. There is a common set of
+ # message types for APIs to use.
{
"a_key": "", # Properties of the object. Contains field @type with type URL.
},
],
},
"done": True or False, # If the value is `false`, it means the operation is still in progress.
- # If true, the operation is completed, and either `error` or `response` is
+ # If `true`, the operation is completed, and either `error` or `response` is
# available.
"response": { # The normal response of the operation in case of success. If the original
# method returns no data on success, such as `Delete`, the response is
@@ -272,7 +360,7 @@
},
"name": "A String", # The server-assigned name, which is only unique within the same service that
# originally returns it. If you use the default HTTP mapping, the
- # `name` should have the format of `operations/some/unique/name`.
+ # `name` should be a resource name ending with `operations/{unique_id}`.
}</pre>
</div>
@@ -289,9 +377,7 @@
Args:
name: string, Required. The name of the version. You can get the names of all the
versions of a model by calling
-[projects.models.versions.list](/ml-engine/reference/rest/v1/projects.models.versions/list).
-
-Authorization: requires `Editor` role on the parent project. (required)
+[projects.models.versions.list](/ml-engine/reference/rest/v1/projects.models.versions/list). (required)
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
@@ -308,71 +394,26 @@
# long-running operation should document the metadata type, if any.
"a_key": "", # Properties of the object. Contains field @type with type URL.
},
- "error": { # The `Status` type defines a logical error model that is suitable for different # The error result of the operation in case of failure or cancellation.
- # programming environments, including REST APIs and RPC APIs. It is used by
- # [gRPC](https://github.com/grpc). The error model is designed to be:
+ "error": { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation.
+ # different programming environments, including REST APIs and RPC APIs. It is
+ # used by [gRPC](https://github.com/grpc). Each `Status` message contains
+ # three pieces of data: error code, error message, and error details.
#
- # - Simple to use and understand for most users
- # - Flexible enough to meet unexpected needs
- #
- # # Overview
- #
- # The `Status` message contains three pieces of data: error code, error message,
- # and error details. The error code should be an enum value of
- # google.rpc.Code, but it may accept additional error codes if needed. The
- # error message should be a developer-facing English message that helps
- # developers *understand* and *resolve* the error. If a localized user-facing
- # error message is needed, put the localized message in the error details or
- # localize it in the client. The optional error details may contain arbitrary
- # information about the error. There is a predefined set of error detail types
- # in the package `google.rpc` that can be used for common error conditions.
- #
- # # Language mapping
- #
- # The `Status` message is the logical representation of the error model, but it
- # is not necessarily the actual wire format. When the `Status` message is
- # exposed in different client libraries and different wire protocols, it can be
- # mapped differently. For example, it will likely be mapped to some exceptions
- # in Java, but more likely mapped to some error codes in C.
- #
- # # Other uses
- #
- # The error model and the `Status` message can be used in a variety of
- # environments, either with or without APIs, to provide a
- # consistent developer experience across different environments.
- #
- # Example uses of this error model include:
- #
- # - Partial errors. If a service needs to return partial errors to the client,
- # it may embed the `Status` in the normal response to indicate the partial
- # errors.
- #
- # - Workflow errors. A typical workflow has multiple steps. Each step may
- # have a `Status` message for error reporting.
- #
- # - Batch operations. If a client uses batch request and batch response, the
- # `Status` message should be used directly inside batch response, one for
- # each error sub-response.
- #
- # - Asynchronous operations. If an API call embeds asynchronous operation
- # results in its response, the status of those operations should be
- # represented directly using the `Status` message.
- #
- # - Logging. If some API errors are stored in logs, the message `Status` could
- # be used directly after any stripping needed for security/privacy reasons.
+ # You can find out more about this error model and how to work with it in the
+ # [API Design Guide](https://cloud.google.com/apis/design/errors).
"message": "A String", # A developer-facing error message, which should be in English. Any
# user-facing error message should be localized and sent in the
# google.rpc.Status.details field, or localized by the client.
"code": 42, # The status code, which should be an enum value of google.rpc.Code.
- "details": [ # A list of messages that carry the error details. There will be a
- # common set of message types for APIs to use.
+ "details": [ # A list of messages that carry the error details. There is a common set of
+ # message types for APIs to use.
{
"a_key": "", # Properties of the object. Contains field @type with type URL.
},
],
},
"done": True or False, # If the value is `false`, it means the operation is still in progress.
- # If true, the operation is completed, and either `error` or `response` is
+ # If `true`, the operation is completed, and either `error` or `response` is
# available.
"response": { # The normal response of the operation in case of success. If the original
# method returns no data on success, such as `Delete`, the response is
@@ -386,7 +427,7 @@
},
"name": "A String", # The server-assigned name, which is only unique within the same service that
# originally returns it. If you use the default HTTP mapping, the
- # `name` should have the format of `operations/some/unique/name`.
+ # `name` should be a resource name ending with `operations/{unique_id}`.
}</pre>
</div>
@@ -400,9 +441,7 @@
versions of a model.
Args:
- name: string, Required. The name of the version.
-
-Authorization: requires `Viewer` role on the parent project. (required)
+ name: string, Required. The name of the version. (required)
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
@@ -417,11 +456,36 @@
# 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](/ml-engine/reference/rest/v1/projects.models.versions/list).
+ "errorMessage": "A String", # Output only. The details of a failure or a cancellation.
+ "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
+ # <a href="/ml-engine/docs/tensorflow/resource-labels">using labels</a>.
+ "a_key": "A String",
+ },
+ "machineType": "A String", # Optional. The type of machine on which to serve the model. Currently only
+ # applies to online prediction service.
+ # <dl>
+ # <dt>mls1-c1-m2</dt>
+ # <dd>
+ # The <b>default</b> machine type, with 1 core and 2 GB RAM. The deprecated
+ # name for this machine type is "mls1-highmem-1".
+ # </dd>
+ # <dt>mls1-c4-m2</dt>
+ # <dd>
+ # In <b>Beta</b>. This machine type has 4 cores and 2 GB RAM. The
+ # deprecated name for this machine type is "mls1-highcpu-4".
+ # </dd>
+ # </dl>
"description": "A String", # Optional. The description specified for the version when it was created.
- "runtimeVersion": "A String", # Optional. The Google Cloud ML runtime version to use for this deployment.
- # If not set, Google Cloud ML will choose a version.
+ "runtimeVersion": "A String", # Optional. The AI Platform runtime version to use for this deployment.
+ # If not set, AI Platform uses the default stable version, 1.0. For more
+ # information, see the
+ # [runtime version list](/ml-engine/docs/runtime-version-list) and
+ # [how to manage runtime versions](/ml-engine/docs/versioning).
"manualScaling": { # Options for manually scaling a model. # Manually select the number of nodes to use for serving the
- # model. You should generally use `automatic_scaling` with an appropriate
+ # 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
@@ -431,29 +495,69 @@
# this model will be proportional to `nodes` * number of hours since
# last billing cycle plus the cost for each prediction performed.
},
- "deploymentUri": "A String", # Required. The Google Cloud Storage location of the trained model used to
- # create the version. See the
- # [overview of model
- # deployment](/ml-engine/docs/concepts/deployment-overview) for more
- # informaiton.
+ "predictionClass": "A String", # Optional. The fully qualified name
+ # (<var>module_name</var>.<var>class_name</var>) 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](#Version.FIELDS.package_uris).
#
- # When passing Version to
- # [projects.models.versions.create](/ml-engine/reference/rest/v1/projects.models.versions/create)
- # the model service uses the specified location as the source of the model.
- # Once deployed, the model version is hosted by the prediction service, so
- # this location is useful only as a historical record.
- # The total number of model files can't exceed 1000.
- "lastUseTime": "A String", # Output only. The time the version was last used for prediction.
- "automaticScaling": { # Options for automatically scaling a model. # Automatically scale the number of nodes used to serve the model in
+ # Specify this field if and only if you are deploying a [custom prediction
+ # routine (beta)](/ml-engine/docs/tensorflow/custom-prediction-routines).
+ # If you specify this field, you must set
+ # [`runtimeVersion`](#Version.FIELDS.runtime_version) to 1.4 or greater.
+ #
+ # The following code sample provides the Predictor interface:
+ #
+ # ```py
+ # 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](/ml-engine/docs/tensorflow/custom-prediction-routines).
+ "autoScaling": { # Options for automatically scaling a model. # 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.
"minNodes": 42, # Optional. The minimum number of nodes to allocate for this model. These
- # nodes are always up, starting from the time the model is deployed, so the
- # cost of operating this model will be at least
+ # nodes are always up, starting from the time the model is deployed.
+ # Therefore, the cost of operating this model will be at least
# `rate` * `min_nodes` * number of hours since last billing cycle,
- # where `rate` is the cost per node-hour as documented in
- # [pricing](https://cloud.google.com/ml-engine/pricing#prediction_pricing),
+ # where `rate` is the cost per node-hour as documented in the
+ # [pricing guide](/ml-engine/docs/pricing),
# even if no predictions are performed. There is additional cost for each
# prediction performed.
#
@@ -466,7 +570,74 @@
# If not specified, `min_nodes` defaults to 0, in which case, when traffic
# to a model stops (and after a cool-down period), nodes will be shut down
# and no charges will be incurred until traffic to the model resumes.
+ #
+ # You can set `min_nodes` when creating the model version, and you can also
+ # update `min_nodes` for an existing version:
+ # <pre>
+ # update_body.json:
+ # {
+ # 'autoScaling': {
+ # 'minNodes': 5
+ # }
+ # }
+ # </pre>
+ # HTTP request:
+ # <pre>
+ # PATCH
+ # https://ml.googleapis.com/v1/{name=projects/*/models/*/versions/*}?update_mask=autoScaling.minNodes
+ # -d @./update_body.json
+ # </pre>
},
+ "serviceAccount": "A String", # Optional. Specifies the service account for resource access control.
+ "state": "A String", # Output only. The state of a version.
+ "pythonVersion": "A String", # Optional. The version of Python used in prediction. If not set, the default
+ # version is '2.7'. Python '3.5' is available when `runtime_version` is set
+ # to '1.4' and above. Python '2.7' works with all supported runtime versions.
+ "framework": "A String", # 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](/ml-engine/docs/tensorflow/custom-prediction-routines).
+ "packageUris": [ # Optional. Cloud Storage paths (`gs://…`) of packages for [custom
+ # prediction routines](/ml-engine/docs/tensorflow/custom-prediction-routines)
+ # or [scikit-learn pipelines with custom
+ # code](/ml-engine/docs/scikit/exporting-for-prediction#custom-pipeline-code).
+ #
+ # For a custom prediction routine, one of these packages must contain your
+ # Predictor class (see
+ # [`predictionClass`](#Version.FIELDS.prediction_class)). Additionally,
+ # include any dependencies used by your Predictor or scikit-learn pipeline
+ # uses that are not already included in your selected [runtime
+ # version](/ml-engine/docs/tensorflow/runtime-version-list).
+ #
+ # If you specify this field, you must also set
+ # [`runtimeVersion`](#Version.FIELDS.runtime_version) to 1.4 or greater.
+ "A String",
+ ],
+ "etag": "A String", # `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.
+ "lastUseTime": "A String", # Output only. The time the version was last used for prediction.
+ "deploymentUri": "A String", # Required. The Cloud Storage location of the trained model used to
+ # create the version. See the
+ # [guide to model
+ # deployment](/ml-engine/docs/tensorflow/deploying-models) for more
+ # information.
+ #
+ # When passing Version to
+ # [projects.models.versions.create](/ml-engine/reference/rest/v1/projects.models.versions/create)
+ # the model service uses the specified location as the source of the model.
+ # Once deployed, the model version is hosted by the prediction service, so
+ # this location is useful only as a historical record.
+ # The total number of model files can't exceed 1000.
"createTime": "A String", # Output only. The time the version was created.
"isDefault": True or False, # Output only. If true, this version will be used to handle prediction
# requests that do not specify a version.
@@ -480,17 +651,18 @@
</div>
<div class="method">
- <code class="details" id="list">list(parent, pageToken=None, x__xgafv=None, pageSize=None)</code>
+ <code class="details" id="list">list(parent, pageToken=None, x__xgafv=None, pageSize=None, filter=None)</code>
<pre>Gets basic information about all the versions of a model.
-If you expect that a model has a lot of versions, or if you need to handle
+If you expect that a model has many versions, or if you need to handle
only a limited number of results at a time, you can request that the list
-be retrieved in batches (called pages):
+be retrieved in batches (called pages).
+
+If there are no versions that match the request parameters, the list
+request returns an empty response body: {}.
Args:
- parent: string, Required. The name of the model for which to list the version.
-
-Authorization: requires `Viewer` role on the parent project. (required)
+ parent: string, Required. The name of the model for which to list the version. (required)
pageToken: string, Optional. A page token to request the next page of results.
You get the token from the `next_page_token` field of the response from
@@ -504,6 +676,7 @@
will contain a valid value in the `next_page_token` field.
The default value is 20, and the maximum page size is 100.
+ filter: string, Optional. Specifies the subset of versions to retrieve.
Returns:
An object of the form:
@@ -518,11 +691,36 @@
# 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](/ml-engine/reference/rest/v1/projects.models.versions/list).
+ "errorMessage": "A String", # Output only. The details of a failure or a cancellation.
+ "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
+ # <a href="/ml-engine/docs/tensorflow/resource-labels">using labels</a>.
+ "a_key": "A String",
+ },
+ "machineType": "A String", # Optional. The type of machine on which to serve the model. Currently only
+ # applies to online prediction service.
+ # <dl>
+ # <dt>mls1-c1-m2</dt>
+ # <dd>
+ # The <b>default</b> machine type, with 1 core and 2 GB RAM. The deprecated
+ # name for this machine type is "mls1-highmem-1".
+ # </dd>
+ # <dt>mls1-c4-m2</dt>
+ # <dd>
+ # In <b>Beta</b>. This machine type has 4 cores and 2 GB RAM. The
+ # deprecated name for this machine type is "mls1-highcpu-4".
+ # </dd>
+ # </dl>
"description": "A String", # Optional. The description specified for the version when it was created.
- "runtimeVersion": "A String", # Optional. The Google Cloud ML runtime version to use for this deployment.
- # If not set, Google Cloud ML will choose a version.
+ "runtimeVersion": "A String", # Optional. The AI Platform runtime version to use for this deployment.
+ # If not set, AI Platform uses the default stable version, 1.0. For more
+ # information, see the
+ # [runtime version list](/ml-engine/docs/runtime-version-list) and
+ # [how to manage runtime versions](/ml-engine/docs/versioning).
"manualScaling": { # Options for manually scaling a model. # Manually select the number of nodes to use for serving the
- # model. You should generally use `automatic_scaling` with an appropriate
+ # 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
@@ -532,29 +730,69 @@
# this model will be proportional to `nodes` * number of hours since
# last billing cycle plus the cost for each prediction performed.
},
- "deploymentUri": "A String", # Required. The Google Cloud Storage location of the trained model used to
- # create the version. See the
- # [overview of model
- # deployment](/ml-engine/docs/concepts/deployment-overview) for more
- # informaiton.
+ "predictionClass": "A String", # Optional. The fully qualified name
+ # (<var>module_name</var>.<var>class_name</var>) 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](#Version.FIELDS.package_uris).
#
- # When passing Version to
- # [projects.models.versions.create](/ml-engine/reference/rest/v1/projects.models.versions/create)
- # the model service uses the specified location as the source of the model.
- # Once deployed, the model version is hosted by the prediction service, so
- # this location is useful only as a historical record.
- # The total number of model files can't exceed 1000.
- "lastUseTime": "A String", # Output only. The time the version was last used for prediction.
- "automaticScaling": { # Options for automatically scaling a model. # Automatically scale the number of nodes used to serve the model in
+ # Specify this field if and only if you are deploying a [custom prediction
+ # routine (beta)](/ml-engine/docs/tensorflow/custom-prediction-routines).
+ # If you specify this field, you must set
+ # [`runtimeVersion`](#Version.FIELDS.runtime_version) to 1.4 or greater.
+ #
+ # The following code sample provides the Predictor interface:
+ #
+ # ```py
+ # 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](/ml-engine/docs/tensorflow/custom-prediction-routines).
+ "autoScaling": { # Options for automatically scaling a model. # 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.
"minNodes": 42, # Optional. The minimum number of nodes to allocate for this model. These
- # nodes are always up, starting from the time the model is deployed, so the
- # cost of operating this model will be at least
+ # nodes are always up, starting from the time the model is deployed.
+ # Therefore, the cost of operating this model will be at least
# `rate` * `min_nodes` * number of hours since last billing cycle,
- # where `rate` is the cost per node-hour as documented in
- # [pricing](https://cloud.google.com/ml-engine/pricing#prediction_pricing),
+ # where `rate` is the cost per node-hour as documented in the
+ # [pricing guide](/ml-engine/docs/pricing),
# even if no predictions are performed. There is additional cost for each
# prediction performed.
#
@@ -567,7 +805,74 @@
# If not specified, `min_nodes` defaults to 0, in which case, when traffic
# to a model stops (and after a cool-down period), nodes will be shut down
# and no charges will be incurred until traffic to the model resumes.
+ #
+ # You can set `min_nodes` when creating the model version, and you can also
+ # update `min_nodes` for an existing version:
+ # <pre>
+ # update_body.json:
+ # {
+ # 'autoScaling': {
+ # 'minNodes': 5
+ # }
+ # }
+ # </pre>
+ # HTTP request:
+ # <pre>
+ # PATCH
+ # https://ml.googleapis.com/v1/{name=projects/*/models/*/versions/*}?update_mask=autoScaling.minNodes
+ # -d @./update_body.json
+ # </pre>
},
+ "serviceAccount": "A String", # Optional. Specifies the service account for resource access control.
+ "state": "A String", # Output only. The state of a version.
+ "pythonVersion": "A String", # Optional. The version of Python used in prediction. If not set, the default
+ # version is '2.7'. Python '3.5' is available when `runtime_version` is set
+ # to '1.4' and above. Python '2.7' works with all supported runtime versions.
+ "framework": "A String", # 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](/ml-engine/docs/tensorflow/custom-prediction-routines).
+ "packageUris": [ # Optional. Cloud Storage paths (`gs://…`) of packages for [custom
+ # prediction routines](/ml-engine/docs/tensorflow/custom-prediction-routines)
+ # or [scikit-learn pipelines with custom
+ # code](/ml-engine/docs/scikit/exporting-for-prediction#custom-pipeline-code).
+ #
+ # For a custom prediction routine, one of these packages must contain your
+ # Predictor class (see
+ # [`predictionClass`](#Version.FIELDS.prediction_class)). Additionally,
+ # include any dependencies used by your Predictor or scikit-learn pipeline
+ # uses that are not already included in your selected [runtime
+ # version](/ml-engine/docs/tensorflow/runtime-version-list).
+ #
+ # If you specify this field, you must also set
+ # [`runtimeVersion`](#Version.FIELDS.runtime_version) to 1.4 or greater.
+ "A String",
+ ],
+ "etag": "A String", # `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.
+ "lastUseTime": "A String", # Output only. The time the version was last used for prediction.
+ "deploymentUri": "A String", # Required. The Cloud Storage location of the trained model used to
+ # create the version. See the
+ # [guide to model
+ # deployment](/ml-engine/docs/tensorflow/deploying-models) for more
+ # information.
+ #
+ # When passing Version to
+ # [projects.models.versions.create](/ml-engine/reference/rest/v1/projects.models.versions/create)
+ # the model service uses the specified location as the source of the model.
+ # Once deployed, the model version is hosted by the prediction service, so
+ # this location is useful only as a historical record.
+ # The total number of model files can't exceed 1000.
"createTime": "A String", # Output only. The time the version was created.
"isDefault": True or False, # Output only. If true, this version will be used to handle prediction
# requests that do not specify a version.
@@ -597,7 +902,283 @@
</div>
<div class="method">
- <code class="details" id="setDefault">setDefault(name, body, x__xgafv=None)</code>
+ <code class="details" id="patch">patch(name, body, updateMask=None, x__xgafv=None)</code>
+ <pre>Updates the specified Version resource.
+
+Currently the only update-able fields are `description` and
+`autoScaling.minNodes`.
+
+Args:
+ name: string, Required. The name of the model. (required)
+ body: object, The request body. (required)
+ The object takes the form of:
+
+{ # 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](/ml-engine/reference/rest/v1/projects.models.versions/list).
+ "errorMessage": "A String", # Output only. The details of a failure or a cancellation.
+ "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
+ # <a href="/ml-engine/docs/tensorflow/resource-labels">using labels</a>.
+ "a_key": "A String",
+ },
+ "machineType": "A String", # Optional. The type of machine on which to serve the model. Currently only
+ # applies to online prediction service.
+ # <dl>
+ # <dt>mls1-c1-m2</dt>
+ # <dd>
+ # The <b>default</b> machine type, with 1 core and 2 GB RAM. The deprecated
+ # name for this machine type is "mls1-highmem-1".
+ # </dd>
+ # <dt>mls1-c4-m2</dt>
+ # <dd>
+ # In <b>Beta</b>. This machine type has 4 cores and 2 GB RAM. The
+ # deprecated name for this machine type is "mls1-highcpu-4".
+ # </dd>
+ # </dl>
+ "description": "A String", # Optional. The description specified for the version when it was created.
+ "runtimeVersion": "A String", # Optional. The AI Platform runtime version to use for this deployment.
+ # If not set, AI Platform uses the default stable version, 1.0. For more
+ # information, see the
+ # [runtime version list](/ml-engine/docs/runtime-version-list) and
+ # [how to manage runtime versions](/ml-engine/docs/versioning).
+ "manualScaling": { # Options for manually scaling a model. # 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.
+ "nodes": 42, # The number of nodes to allocate for this model. These nodes are always up,
+ # starting from the time the model is deployed, so the cost of operating
+ # this model will be proportional to `nodes` * number of hours since
+ # last billing cycle plus the cost for each prediction performed.
+ },
+ "predictionClass": "A String", # Optional. The fully qualified name
+ # (<var>module_name</var>.<var>class_name</var>) 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](#Version.FIELDS.package_uris).
+ #
+ # Specify this field if and only if you are deploying a [custom prediction
+ # routine (beta)](/ml-engine/docs/tensorflow/custom-prediction-routines).
+ # If you specify this field, you must set
+ # [`runtimeVersion`](#Version.FIELDS.runtime_version) to 1.4 or greater.
+ #
+ # The following code sample provides the Predictor interface:
+ #
+ # ```py
+ # 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](/ml-engine/docs/tensorflow/custom-prediction-routines).
+ "autoScaling": { # Options for automatically scaling a model. # 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.
+ "minNodes": 42, # Optional. The minimum number of nodes to allocate for this model. These
+ # nodes are always up, starting from the time the model is deployed.
+ # Therefore, the cost of operating this model will be at least
+ # `rate` * `min_nodes` * number of hours since last billing cycle,
+ # where `rate` is the cost per node-hour as documented in the
+ # [pricing guide](/ml-engine/docs/pricing),
+ # even if no predictions are performed. There is additional cost for each
+ # prediction performed.
+ #
+ # Unlike manual scaling, if the load gets too heavy for the nodes
+ # that are up, the service will automatically add nodes to handle the
+ # increased load as well as scale back as traffic drops, always maintaining
+ # at least `min_nodes`. You will be charged for the time in which additional
+ # nodes are used.
+ #
+ # If not specified, `min_nodes` defaults to 0, in which case, when traffic
+ # to a model stops (and after a cool-down period), nodes will be shut down
+ # and no charges will be incurred until traffic to the model resumes.
+ #
+ # You can set `min_nodes` when creating the model version, and you can also
+ # update `min_nodes` for an existing version:
+ # <pre>
+ # update_body.json:
+ # {
+ # 'autoScaling': {
+ # 'minNodes': 5
+ # }
+ # }
+ # </pre>
+ # HTTP request:
+ # <pre>
+ # PATCH
+ # https://ml.googleapis.com/v1/{name=projects/*/models/*/versions/*}?update_mask=autoScaling.minNodes
+ # -d @./update_body.json
+ # </pre>
+ },
+ "serviceAccount": "A String", # Optional. Specifies the service account for resource access control.
+ "state": "A String", # Output only. The state of a version.
+ "pythonVersion": "A String", # Optional. The version of Python used in prediction. If not set, the default
+ # version is '2.7'. Python '3.5' is available when `runtime_version` is set
+ # to '1.4' and above. Python '2.7' works with all supported runtime versions.
+ "framework": "A String", # 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](/ml-engine/docs/tensorflow/custom-prediction-routines).
+ "packageUris": [ # Optional. Cloud Storage paths (`gs://…`) of packages for [custom
+ # prediction routines](/ml-engine/docs/tensorflow/custom-prediction-routines)
+ # or [scikit-learn pipelines with custom
+ # code](/ml-engine/docs/scikit/exporting-for-prediction#custom-pipeline-code).
+ #
+ # For a custom prediction routine, one of these packages must contain your
+ # Predictor class (see
+ # [`predictionClass`](#Version.FIELDS.prediction_class)). Additionally,
+ # include any dependencies used by your Predictor or scikit-learn pipeline
+ # uses that are not already included in your selected [runtime
+ # version](/ml-engine/docs/tensorflow/runtime-version-list).
+ #
+ # If you specify this field, you must also set
+ # [`runtimeVersion`](#Version.FIELDS.runtime_version) to 1.4 or greater.
+ "A String",
+ ],
+ "etag": "A String", # `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.
+ "lastUseTime": "A String", # Output only. The time the version was last used for prediction.
+ "deploymentUri": "A String", # Required. The Cloud Storage location of the trained model used to
+ # create the version. See the
+ # [guide to model
+ # deployment](/ml-engine/docs/tensorflow/deploying-models) for more
+ # information.
+ #
+ # When passing Version to
+ # [projects.models.versions.create](/ml-engine/reference/rest/v1/projects.models.versions/create)
+ # the model service uses the specified location as the source of the model.
+ # Once deployed, the model version is hosted by the prediction service, so
+ # this location is useful only as a historical record.
+ # The total number of model files can't exceed 1000.
+ "createTime": "A String", # Output only. The time the version was created.
+ "isDefault": True or False, # 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](/ml-engine/reference/rest/v1/projects.models.versions/setDefault).
+ "name": "A String", # Required.The name specified for the version when it was created.
+ #
+ # The version name must be unique within the model it is created in.
+}
+
+ updateMask: string, Required. Specifies the path, relative to `Version`, of the field to
+update. Must be present and non-empty.
+
+For example, to change the description of a version to "foo", the
+`update_mask` parameter would be specified as `description`, and the
+`PATCH` request body would specify the new value, as follows:
+ {
+ "description": "foo"
+ }
+
+Currently the only supported update mask fields are `description` and
+`autoScaling.minNodes`.
+ x__xgafv: string, V1 error format.
+ Allowed values
+ 1 - v1 error format
+ 2 - v2 error format
+
+Returns:
+ An object of the form:
+
+ { # This resource represents a long-running operation that is the result of a
+ # network API call.
+ "metadata": { # Service-specific metadata associated with the operation. It typically
+ # contains progress information and common metadata such as create time.
+ # Some services might not provide such metadata. Any method that returns a
+ # long-running operation should document the metadata type, if any.
+ "a_key": "", # Properties of the object. Contains field @type with type URL.
+ },
+ "error": { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation.
+ # different programming environments, including REST APIs and RPC APIs. It is
+ # used by [gRPC](https://github.com/grpc). Each `Status` message contains
+ # three pieces of data: error code, error message, and error details.
+ #
+ # You can find out more about this error model and how to work with it in the
+ # [API Design Guide](https://cloud.google.com/apis/design/errors).
+ "message": "A String", # A developer-facing error message, which should be in English. Any
+ # user-facing error message should be localized and sent in the
+ # google.rpc.Status.details field, or localized by the client.
+ "code": 42, # The status code, which should be an enum value of google.rpc.Code.
+ "details": [ # A list of messages that carry the error details. There is a common set of
+ # message types for APIs to use.
+ {
+ "a_key": "", # Properties of the object. Contains field @type with type URL.
+ },
+ ],
+ },
+ "done": True or False, # If the value is `false`, it means the operation is still in progress.
+ # If `true`, the operation is completed, and either `error` or `response` is
+ # available.
+ "response": { # The normal response of the operation in case of success. If the original
+ # method returns no data on success, such as `Delete`, the response is
+ # `google.protobuf.Empty`. If the original method is standard
+ # `Get`/`Create`/`Update`, the response should be the resource. For other
+ # methods, the response should have the type `XxxResponse`, where `Xxx`
+ # is the original method name. For example, if the original method name
+ # is `TakeSnapshot()`, the inferred response type is
+ # `TakeSnapshotResponse`.
+ "a_key": "", # Properties of the object. Contains field @type with type URL.
+ },
+ "name": "A String", # The server-assigned name, which is only unique within the same service that
+ # originally returns it. If you use the default HTTP mapping, the
+ # `name` should be a resource name ending with `operations/{unique_id}`.
+ }</pre>
+</div>
+
+<div class="method">
+ <code class="details" id="setDefault">setDefault(name, body=None, x__xgafv=None)</code>
<pre>Designates a version to be the default for the model.
The default version is used for prediction requests made against the model
@@ -610,10 +1191,8 @@
Args:
name: string, Required. The name of the version to make the default for the model. You
can get the names of all the versions of a model by calling
-[projects.models.versions.list](/ml-engine/reference/rest/v1/projects.models.versions/list).
-
-Authorization: requires `Editor` role on the parent project. (required)
- body: object, The request body. (required)
+[projects.models.versions.list](/ml-engine/reference/rest/v1/projects.models.versions/list). (required)
+ body: object, The request body.
The object takes the form of:
{ # Request message for the SetDefaultVersion request.
@@ -633,11 +1212,36 @@
# 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](/ml-engine/reference/rest/v1/projects.models.versions/list).
+ "errorMessage": "A String", # Output only. The details of a failure or a cancellation.
+ "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
+ # <a href="/ml-engine/docs/tensorflow/resource-labels">using labels</a>.
+ "a_key": "A String",
+ },
+ "machineType": "A String", # Optional. The type of machine on which to serve the model. Currently only
+ # applies to online prediction service.
+ # <dl>
+ # <dt>mls1-c1-m2</dt>
+ # <dd>
+ # The <b>default</b> machine type, with 1 core and 2 GB RAM. The deprecated
+ # name for this machine type is "mls1-highmem-1".
+ # </dd>
+ # <dt>mls1-c4-m2</dt>
+ # <dd>
+ # In <b>Beta</b>. This machine type has 4 cores and 2 GB RAM. The
+ # deprecated name for this machine type is "mls1-highcpu-4".
+ # </dd>
+ # </dl>
"description": "A String", # Optional. The description specified for the version when it was created.
- "runtimeVersion": "A String", # Optional. The Google Cloud ML runtime version to use for this deployment.
- # If not set, Google Cloud ML will choose a version.
+ "runtimeVersion": "A String", # Optional. The AI Platform runtime version to use for this deployment.
+ # If not set, AI Platform uses the default stable version, 1.0. For more
+ # information, see the
+ # [runtime version list](/ml-engine/docs/runtime-version-list) and
+ # [how to manage runtime versions](/ml-engine/docs/versioning).
"manualScaling": { # Options for manually scaling a model. # Manually select the number of nodes to use for serving the
- # model. You should generally use `automatic_scaling` with an appropriate
+ # 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
@@ -647,29 +1251,69 @@
# this model will be proportional to `nodes` * number of hours since
# last billing cycle plus the cost for each prediction performed.
},
- "deploymentUri": "A String", # Required. The Google Cloud Storage location of the trained model used to
- # create the version. See the
- # [overview of model
- # deployment](/ml-engine/docs/concepts/deployment-overview) for more
- # informaiton.
+ "predictionClass": "A String", # Optional. The fully qualified name
+ # (<var>module_name</var>.<var>class_name</var>) 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](#Version.FIELDS.package_uris).
#
- # When passing Version to
- # [projects.models.versions.create](/ml-engine/reference/rest/v1/projects.models.versions/create)
- # the model service uses the specified location as the source of the model.
- # Once deployed, the model version is hosted by the prediction service, so
- # this location is useful only as a historical record.
- # The total number of model files can't exceed 1000.
- "lastUseTime": "A String", # Output only. The time the version was last used for prediction.
- "automaticScaling": { # Options for automatically scaling a model. # Automatically scale the number of nodes used to serve the model in
+ # Specify this field if and only if you are deploying a [custom prediction
+ # routine (beta)](/ml-engine/docs/tensorflow/custom-prediction-routines).
+ # If you specify this field, you must set
+ # [`runtimeVersion`](#Version.FIELDS.runtime_version) to 1.4 or greater.
+ #
+ # The following code sample provides the Predictor interface:
+ #
+ # ```py
+ # 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](/ml-engine/docs/tensorflow/custom-prediction-routines).
+ "autoScaling": { # Options for automatically scaling a model. # 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.
"minNodes": 42, # Optional. The minimum number of nodes to allocate for this model. These
- # nodes are always up, starting from the time the model is deployed, so the
- # cost of operating this model will be at least
+ # nodes are always up, starting from the time the model is deployed.
+ # Therefore, the cost of operating this model will be at least
# `rate` * `min_nodes` * number of hours since last billing cycle,
- # where `rate` is the cost per node-hour as documented in
- # [pricing](https://cloud.google.com/ml-engine/pricing#prediction_pricing),
+ # where `rate` is the cost per node-hour as documented in the
+ # [pricing guide](/ml-engine/docs/pricing),
# even if no predictions are performed. There is additional cost for each
# prediction performed.
#
@@ -682,7 +1326,74 @@
# If not specified, `min_nodes` defaults to 0, in which case, when traffic
# to a model stops (and after a cool-down period), nodes will be shut down
# and no charges will be incurred until traffic to the model resumes.
+ #
+ # You can set `min_nodes` when creating the model version, and you can also
+ # update `min_nodes` for an existing version:
+ # <pre>
+ # update_body.json:
+ # {
+ # 'autoScaling': {
+ # 'minNodes': 5
+ # }
+ # }
+ # </pre>
+ # HTTP request:
+ # <pre>
+ # PATCH
+ # https://ml.googleapis.com/v1/{name=projects/*/models/*/versions/*}?update_mask=autoScaling.minNodes
+ # -d @./update_body.json
+ # </pre>
},
+ "serviceAccount": "A String", # Optional. Specifies the service account for resource access control.
+ "state": "A String", # Output only. The state of a version.
+ "pythonVersion": "A String", # Optional. The version of Python used in prediction. If not set, the default
+ # version is '2.7'. Python '3.5' is available when `runtime_version` is set
+ # to '1.4' and above. Python '2.7' works with all supported runtime versions.
+ "framework": "A String", # 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](/ml-engine/docs/tensorflow/custom-prediction-routines).
+ "packageUris": [ # Optional. Cloud Storage paths (`gs://…`) of packages for [custom
+ # prediction routines](/ml-engine/docs/tensorflow/custom-prediction-routines)
+ # or [scikit-learn pipelines with custom
+ # code](/ml-engine/docs/scikit/exporting-for-prediction#custom-pipeline-code).
+ #
+ # For a custom prediction routine, one of these packages must contain your
+ # Predictor class (see
+ # [`predictionClass`](#Version.FIELDS.prediction_class)). Additionally,
+ # include any dependencies used by your Predictor or scikit-learn pipeline
+ # uses that are not already included in your selected [runtime
+ # version](/ml-engine/docs/tensorflow/runtime-version-list).
+ #
+ # If you specify this field, you must also set
+ # [`runtimeVersion`](#Version.FIELDS.runtime_version) to 1.4 or greater.
+ "A String",
+ ],
+ "etag": "A String", # `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.
+ "lastUseTime": "A String", # Output only. The time the version was last used for prediction.
+ "deploymentUri": "A String", # Required. The Cloud Storage location of the trained model used to
+ # create the version. See the
+ # [guide to model
+ # deployment](/ml-engine/docs/tensorflow/deploying-models) for more
+ # information.
+ #
+ # When passing Version to
+ # [projects.models.versions.create](/ml-engine/reference/rest/v1/projects.models.versions/create)
+ # the model service uses the specified location as the source of the model.
+ # Once deployed, the model version is hosted by the prediction service, so
+ # this location is useful only as a historical record.
+ # The total number of model files can't exceed 1000.
"createTime": "A String", # Output only. The time the version was created.
"isDefault": True or False, # Output only. If true, this version will be used to handle prediction
# requests that do not specify a version.