{
  "auth": {
    "oauth2": {
      "scopes": {
        "https://www.googleapis.com/auth/cloud-platform": {
          "description": "View and manage your data across Google Cloud Platform services"
        },
        "https://www.googleapis.com/auth/cloud-platform.read-only": {
          "description": "View your data across Google Cloud Platform services"
        }
      }
    }
  },
  "basePath": "",
  "baseUrl": "https://ml.googleapis.com/",
  "batchPath": "batch",
  "canonicalName": "Cloud Machine Learning Engine",
  "description": "An API to enable creating and using machine learning models.",
  "discoveryVersion": "v1",
  "documentationLink": "https://cloud.google.com/ml/",
  "fullyEncodeReservedExpansion": true,
  "icons": {
    "x16": "http://www.google.com/images/icons/product/search-16.gif",
    "x32": "http://www.google.com/images/icons/product/search-32.gif"
  },
  "id": "ml:v1",
  "kind": "discovery#restDescription",
  "mtlsRootUrl": "https://ml.mtls.googleapis.com/",
  "name": "ml",
  "ownerDomain": "google.com",
  "ownerName": "Google",
  "parameters": {
    "$.xgafv": {
      "description": "V1 error format.",
      "enum": [
        "1",
        "2"
      ],
      "enumDescriptions": [
        "v1 error format",
        "v2 error format"
      ],
      "location": "query",
      "type": "string"
    },
    "access_token": {
      "description": "OAuth access token.",
      "location": "query",
      "type": "string"
    },
    "alt": {
      "default": "json",
      "description": "Data format for response.",
      "enum": [
        "json",
        "media",
        "proto"
      ],
      "enumDescriptions": [
        "Responses with Content-Type of application/json",
        "Media download with context-dependent Content-Type",
        "Responses with Content-Type of application/x-protobuf"
      ],
      "location": "query",
      "type": "string"
    },
    "callback": {
      "description": "JSONP",
      "location": "query",
      "type": "string"
    },
    "fields": {
      "description": "Selector specifying which fields to include in a partial response.",
      "location": "query",
      "type": "string"
    },
    "key": {
      "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
      "location": "query",
      "type": "string"
    },
    "oauth_token": {
      "description": "OAuth 2.0 token for the current user.",
      "location": "query",
      "type": "string"
    },
    "prettyPrint": {
      "default": "true",
      "description": "Returns response with indentations and line breaks.",
      "location": "query",
      "type": "boolean"
    },
    "quotaUser": {
      "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.",
      "location": "query",
      "type": "string"
    },
    "uploadType": {
      "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
      "location": "query",
      "type": "string"
    },
    "upload_protocol": {
      "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
      "location": "query",
      "type": "string"
    }
  },
  "protocol": "rest",
  "resources": {
    "projects": {
      "methods": {
        "explain": {
          "description": "Performs explanation on the data in the request.\n\n\u003cdiv\u003e{% dynamic include \"/ai-platform/includes/___explain-request\" %}\u003c/div\u003e",
          "flatPath": "v1/projects/{projectsId}:explain",
          "httpMethod": "POST",
          "id": "ml.projects.explain",
          "parameterOrder": [
            "name"
          ],
          "parameters": {
            "name": {
              "description": "Required. The resource name of a model or a version.\n\nAuthorization: requires the `predict` permission on the specified resource.",
              "location": "path",
              "pattern": "^projects/.*$",
              "required": true,
              "type": "string"
            }
          },
          "path": "v1/{+name}:explain",
          "request": {
            "$ref": "GoogleCloudMlV1__ExplainRequest"
          },
          "response": {
            "$ref": "GoogleApi__HttpBody"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform"
          ]
        },
        "getConfig": {
          "description": "Get the service account information associated with your project. You need\nthis information in order to grant the service account permissions for\nthe Google Cloud Storage location where you put your model training code\nfor training the model with Google Cloud Machine Learning.",
          "flatPath": "v1/projects/{projectsId}:getConfig",
          "httpMethod": "GET",
          "id": "ml.projects.getConfig",
          "parameterOrder": [
            "name"
          ],
          "parameters": {
            "name": {
              "description": "Required. The project name.",
              "location": "path",
              "pattern": "^projects/[^/]+$",
              "required": true,
              "type": "string"
            }
          },
          "path": "v1/{+name}:getConfig",
          "response": {
            "$ref": "GoogleCloudMlV1__GetConfigResponse"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform"
          ]
        },
        "predict": {
          "description": "Performs online prediction on the data in the request.\n\n\u003cdiv\u003e{% dynamic include \"/ai-platform/includes/___predict-request\" %}\u003c/div\u003e",
          "flatPath": "v1/projects/{projectsId}:predict",
          "httpMethod": "POST",
          "id": "ml.projects.predict",
          "parameterOrder": [
            "name"
          ],
          "parameters": {
            "name": {
              "description": "Required. The resource name of a model or a version.\n\nAuthorization: requires the `predict` permission on the specified resource.",
              "location": "path",
              "pattern": "^projects/.*$",
              "required": true,
              "type": "string"
            }
          },
          "path": "v1/{+name}:predict",
          "request": {
            "$ref": "GoogleCloudMlV1__PredictRequest"
          },
          "response": {
            "$ref": "GoogleApi__HttpBody"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform"
          ]
        }
      },
      "resources": {
        "jobs": {
          "methods": {
            "cancel": {
              "description": "Cancels a running job.",
              "flatPath": "v1/projects/{projectsId}/jobs/{jobsId}:cancel",
              "httpMethod": "POST",
              "id": "ml.projects.jobs.cancel",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "description": "Required. The name of the job to cancel.",
                  "location": "path",
                  "pattern": "^projects/[^/]+/jobs/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1/{+name}:cancel",
              "request": {
                "$ref": "GoogleCloudMlV1__CancelJobRequest"
              },
              "response": {
                "$ref": "GoogleProtobuf__Empty"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            },
            "create": {
              "description": "Creates a training or a batch prediction job.",
              "flatPath": "v1/projects/{projectsId}/jobs",
              "httpMethod": "POST",
              "id": "ml.projects.jobs.create",
              "parameterOrder": [
                "parent"
              ],
              "parameters": {
                "parent": {
                  "description": "Required. The project name.",
                  "location": "path",
                  "pattern": "^projects/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1/{+parent}/jobs",
              "request": {
                "$ref": "GoogleCloudMlV1__Job"
              },
              "response": {
                "$ref": "GoogleCloudMlV1__Job"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            },
            "get": {
              "description": "Describes a job.",
              "flatPath": "v1/projects/{projectsId}/jobs/{jobsId}",
              "httpMethod": "GET",
              "id": "ml.projects.jobs.get",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "description": "Required. The name of the job to get the description of.",
                  "location": "path",
                  "pattern": "^projects/[^/]+/jobs/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1/{+name}",
              "response": {
                "$ref": "GoogleCloudMlV1__Job"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform",
                "https://www.googleapis.com/auth/cloud-platform.read-only"
              ]
            },
            "getIamPolicy": {
              "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.",
              "flatPath": "v1/projects/{projectsId}/jobs/{jobsId}:getIamPolicy",
              "httpMethod": "GET",
              "id": "ml.projects.jobs.getIamPolicy",
              "parameterOrder": [
                "resource"
              ],
              "parameters": {
                "options.requestedPolicyVersion": {
                  "description": "Optional. The policy format version to be returned.\n\nValid values are 0, 1, and 3. Requests specifying an invalid value will be\nrejected.\n\nRequests for policies with any conditional bindings must specify version 3.\nPolicies without any conditional bindings may specify any valid value or\nleave the field unset.\n\nTo learn which resources support conditions in their IAM policies, see the\n[IAM\ndocumentation](https://cloud.google.com/iam/help/conditions/resource-policies).",
                  "format": "int32",
                  "location": "query",
                  "type": "integer"
                },
                "resource": {
                  "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.",
                  "location": "path",
                  "pattern": "^projects/[^/]+/jobs/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1/{+resource}:getIamPolicy",
              "response": {
                "$ref": "GoogleIamV1__Policy"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            },
            "list": {
              "description": "Lists the jobs in the project.\n\nIf there are no jobs that match the request parameters, the list\nrequest returns an empty response body: {}.",
              "flatPath": "v1/projects/{projectsId}/jobs",
              "httpMethod": "GET",
              "id": "ml.projects.jobs.list",
              "parameterOrder": [
                "parent"
              ],
              "parameters": {
                "filter": {
                  "description": "Optional. Specifies the subset of jobs to retrieve.\nYou can filter on the value of one or more attributes of the job object.\nFor example, retrieve jobs with a job identifier that starts with 'census':\n\u003cp\u003e\u003ccode\u003egcloud ai-platform jobs list --filter='jobId:census*'\u003c/code\u003e\n\u003cp\u003eList all failed jobs with names that start with 'rnn':\n\u003cp\u003e\u003ccode\u003egcloud ai-platform jobs list --filter='jobId:rnn*\nAND state:FAILED'\u003c/code\u003e\n\u003cp\u003eFor more examples, see the guide to\n\u003ca href=\"/ml-engine/docs/tensorflow/monitor-training\"\u003emonitoring jobs\u003c/a\u003e.",
                  "location": "query",
                  "type": "string"
                },
                "pageSize": {
                  "description": "Optional. The number of jobs to retrieve per \"page\" of results. If there\nare more remaining results than this number, the response message will\ncontain a valid value in the `next_page_token` field.\n\nThe default value is 20, and the maximum page size is 100.",
                  "format": "int32",
                  "location": "query",
                  "type": "integer"
                },
                "pageToken": {
                  "description": "Optional. A page token to request the next page of results.\n\nYou get the token from the `next_page_token` field of the response from\nthe previous call.",
                  "location": "query",
                  "type": "string"
                },
                "parent": {
                  "description": "Required. The name of the project for which to list jobs.",
                  "location": "path",
                  "pattern": "^projects/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1/{+parent}/jobs",
              "response": {
                "$ref": "GoogleCloudMlV1__ListJobsResponse"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform",
                "https://www.googleapis.com/auth/cloud-platform.read-only"
              ]
            },
            "patch": {
              "description": "Updates a specific job resource.\n\nCurrently the only supported fields to update are `labels`.",
              "flatPath": "v1/projects/{projectsId}/jobs/{jobsId}",
              "httpMethod": "PATCH",
              "id": "ml.projects.jobs.patch",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "description": "Required. The job name.",
                  "location": "path",
                  "pattern": "^projects/[^/]+/jobs/[^/]+$",
                  "required": true,
                  "type": "string"
                },
                "updateMask": {
                  "description": "Required. Specifies the path, relative to `Job`, of the field to update.\nTo adopt etag mechanism, include `etag` field in the mask, and include the\n`etag` value in your job resource.\n\nFor example, to change the labels of a job, the `update_mask` parameter\nwould be specified as `labels`, `etag`, and the\n`PATCH` request body would specify the new value, as follows:\n    {\n      \"labels\": {\n         \"owner\": \"Google\",\n         \"color\": \"Blue\"\n      }\n      \"etag\": \"33a64df551425fcc55e4d42a148795d9f25f89d4\"\n    }\nIf `etag` matches the one on the server, the labels of the job will be\nreplaced with the given ones, and the server end `etag` will be\nrecalculated.\n\nCurrently the only supported update masks are `labels` and `etag`.",
                  "format": "google-fieldmask",
                  "location": "query",
                  "type": "string"
                }
              },
              "path": "v1/{+name}",
              "request": {
                "$ref": "GoogleCloudMlV1__Job"
              },
              "response": {
                "$ref": "GoogleCloudMlV1__Job"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            },
            "setIamPolicy": {
              "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.\n\nCan return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors.",
              "flatPath": "v1/projects/{projectsId}/jobs/{jobsId}:setIamPolicy",
              "httpMethod": "POST",
              "id": "ml.projects.jobs.setIamPolicy",
              "parameterOrder": [
                "resource"
              ],
              "parameters": {
                "resource": {
                  "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.",
                  "location": "path",
                  "pattern": "^projects/[^/]+/jobs/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1/{+resource}:setIamPolicy",
              "request": {
                "$ref": "GoogleIamV1__SetIamPolicyRequest"
              },
              "response": {
                "$ref": "GoogleIamV1__Policy"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            },
            "testIamPermissions": {
              "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a `NOT_FOUND` error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.",
              "flatPath": "v1/projects/{projectsId}/jobs/{jobsId}:testIamPermissions",
              "httpMethod": "POST",
              "id": "ml.projects.jobs.testIamPermissions",
              "parameterOrder": [
                "resource"
              ],
              "parameters": {
                "resource": {
                  "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.",
                  "location": "path",
                  "pattern": "^projects/[^/]+/jobs/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1/{+resource}:testIamPermissions",
              "request": {
                "$ref": "GoogleIamV1__TestIamPermissionsRequest"
              },
              "response": {
                "$ref": "GoogleIamV1__TestIamPermissionsResponse"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            }
          }
        },
        "locations": {
          "methods": {
            "get": {
              "description": "Get the complete list of CMLE capabilities in a location, along with their\nlocation-specific properties.",
              "flatPath": "v1/projects/{projectsId}/locations/{locationsId}",
              "httpMethod": "GET",
              "id": "ml.projects.locations.get",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "description": "Required. The name of the location.",
                  "location": "path",
                  "pattern": "^projects/[^/]+/locations/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1/{+name}",
              "response": {
                "$ref": "GoogleCloudMlV1__Location"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform",
                "https://www.googleapis.com/auth/cloud-platform.read-only"
              ]
            },
            "list": {
              "description": "List all locations that provides at least one type of CMLE capability.",
              "flatPath": "v1/projects/{projectsId}/locations",
              "httpMethod": "GET",
              "id": "ml.projects.locations.list",
              "parameterOrder": [
                "parent"
              ],
              "parameters": {
                "pageSize": {
                  "description": "Optional. The number of locations to retrieve per \"page\" of results. If\nthere are more remaining results than this number, the response message\nwill contain a valid value in the `next_page_token` field.\n\nThe default value is 20, and the maximum page size is 100.",
                  "format": "int32",
                  "location": "query",
                  "type": "integer"
                },
                "pageToken": {
                  "description": "Optional. A page token to request the next page of results.\n\nYou get the token from the `next_page_token` field of the response from\nthe previous call.",
                  "location": "query",
                  "type": "string"
                },
                "parent": {
                  "description": "Required. The name of the project for which available locations are to be\nlisted (since some locations might be whitelisted for specific projects).",
                  "location": "path",
                  "pattern": "^projects/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1/{+parent}/locations",
              "response": {
                "$ref": "GoogleCloudMlV1__ListLocationsResponse"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform",
                "https://www.googleapis.com/auth/cloud-platform.read-only"
              ]
            }
          },
          "resources": {
            "operations": {
              "methods": {
                "cancel": {
                  "description": "Starts asynchronous cancellation on a long-running operation.  The server\nmakes a best effort to cancel the operation, but success is not\nguaranteed.  If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`.  Clients can use\nOperations.GetOperation or\nother methods to check whether the cancellation succeeded or whether the\noperation completed despite cancellation. On successful cancellation,\nthe operation is not deleted; instead, it becomes an operation with\nan Operation.error value with a google.rpc.Status.code of 1,\ncorresponding to `Code.CANCELLED`.",
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}:cancel",
                  "httpMethod": "POST",
                  "id": "ml.projects.locations.operations.cancel",
                  "parameterOrder": [
                    "name"
                  ],
                  "parameters": {
                    "name": {
                      "description": "The name of the operation resource to be cancelled.",
                      "location": "path",
                      "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$",
                      "required": true,
                      "type": "string"
                    }
                  },
                  "path": "v1/{+name}:cancel",
                  "response": {
                    "$ref": "GoogleProtobuf__Empty"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ]
                },
                "get": {
                  "description": "Gets the latest state of a long-running operation.  Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.",
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}",
                  "httpMethod": "GET",
                  "id": "ml.projects.locations.operations.get",
                  "parameterOrder": [
                    "name"
                  ],
                  "parameters": {
                    "name": {
                      "description": "The name of the operation resource.",
                      "location": "path",
                      "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$",
                      "required": true,
                      "type": "string"
                    }
                  },
                  "path": "v1/{+name}",
                  "response": {
                    "$ref": "GoogleLongrunning__Operation"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ]
                }
              }
            },
            "studies": {
              "methods": {
                "create": {
                  "description": "Creates a study.",
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/studies",
                  "httpMethod": "POST",
                  "id": "ml.projects.locations.studies.create",
                  "parameterOrder": [
                    "parent"
                  ],
                  "parameters": {
                    "parent": {
                      "description": "Required. The project and location that the study belongs to.\nFormat: projects/{project}/locations/{location}",
                      "location": "path",
                      "pattern": "^projects/[^/]+/locations/[^/]+$",
                      "required": true,
                      "type": "string"
                    },
                    "studyId": {
                      "description": "Required. The ID to use for the study, which will become the final component of\nthe study's resource name.",
                      "location": "query",
                      "type": "string"
                    }
                  },
                  "path": "v1/{+parent}/studies",
                  "request": {
                    "$ref": "GoogleCloudMlV1__Study"
                  },
                  "response": {
                    "$ref": "GoogleCloudMlV1__Study"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ]
                },
                "delete": {
                  "description": "Deletes a study.",
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}",
                  "httpMethod": "DELETE",
                  "id": "ml.projects.locations.studies.delete",
                  "parameterOrder": [
                    "name"
                  ],
                  "parameters": {
                    "name": {
                      "description": "Required. The study name.",
                      "location": "path",
                      "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+$",
                      "required": true,
                      "type": "string"
                    }
                  },
                  "path": "v1/{+name}",
                  "response": {
                    "$ref": "GoogleProtobuf__Empty"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ]
                },
                "get": {
                  "description": "Gets a study.",
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}",
                  "httpMethod": "GET",
                  "id": "ml.projects.locations.studies.get",
                  "parameterOrder": [
                    "name"
                  ],
                  "parameters": {
                    "name": {
                      "description": "Required. The study name.",
                      "location": "path",
                      "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+$",
                      "required": true,
                      "type": "string"
                    }
                  },
                  "path": "v1/{+name}",
                  "response": {
                    "$ref": "GoogleCloudMlV1__Study"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ]
                },
                "list": {
                  "description": "Lists all the studies in a region for an associated project.",
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/studies",
                  "httpMethod": "GET",
                  "id": "ml.projects.locations.studies.list",
                  "parameterOrder": [
                    "parent"
                  ],
                  "parameters": {
                    "parent": {
                      "description": "Required. The project and location that the study belongs to.\nFormat: projects/{project}/locations/{location}",
                      "location": "path",
                      "pattern": "^projects/[^/]+/locations/[^/]+$",
                      "required": true,
                      "type": "string"
                    }
                  },
                  "path": "v1/{+parent}/studies",
                  "response": {
                    "$ref": "GoogleCloudMlV1__ListStudiesResponse"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ]
                }
              },
              "resources": {
                "trials": {
                  "methods": {
                    "addMeasurement": {
                      "description": "Adds a measurement of the objective metrics to a trial. This measurement\nis assumed to have been taken before the trial is complete.",
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/trials/{trialsId}:addMeasurement",
                      "httpMethod": "POST",
                      "id": "ml.projects.locations.studies.trials.addMeasurement",
                      "parameterOrder": [
                        "name"
                      ],
                      "parameters": {
                        "name": {
                          "description": "Required. The trial name.",
                          "location": "path",
                          "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+/trials/[^/]+$",
                          "required": true,
                          "type": "string"
                        }
                      },
                      "path": "v1/{+name}:addMeasurement",
                      "request": {
                        "$ref": "GoogleCloudMlV1__AddTrialMeasurementRequest"
                      },
                      "response": {
                        "$ref": "GoogleCloudMlV1__Trial"
                      },
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ]
                    },
                    "checkEarlyStoppingState": {
                      "description": "Checks  whether a trial should stop or not. Returns a\nlong-running operation. When the operation is successful,\nit will contain a\nCheckTrialEarlyStoppingStateResponse.",
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/trials/{trialsId}:checkEarlyStoppingState",
                      "httpMethod": "POST",
                      "id": "ml.projects.locations.studies.trials.checkEarlyStoppingState",
                      "parameterOrder": [
                        "name"
                      ],
                      "parameters": {
                        "name": {
                          "description": "Required. The trial name.",
                          "location": "path",
                          "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+/trials/[^/]+$",
                          "required": true,
                          "type": "string"
                        }
                      },
                      "path": "v1/{+name}:checkEarlyStoppingState",
                      "request": {
                        "$ref": "GoogleCloudMlV1__CheckTrialEarlyStoppingStateRequest"
                      },
                      "response": {
                        "$ref": "GoogleLongrunning__Operation"
                      },
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ]
                    },
                    "complete": {
                      "description": "Marks a trial as complete.",
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/trials/{trialsId}:complete",
                      "httpMethod": "POST",
                      "id": "ml.projects.locations.studies.trials.complete",
                      "parameterOrder": [
                        "name"
                      ],
                      "parameters": {
                        "name": {
                          "description": "Required. The trial name.metat",
                          "location": "path",
                          "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+/trials/[^/]+$",
                          "required": true,
                          "type": "string"
                        }
                      },
                      "path": "v1/{+name}:complete",
                      "request": {
                        "$ref": "GoogleCloudMlV1__CompleteTrialRequest"
                      },
                      "response": {
                        "$ref": "GoogleCloudMlV1__Trial"
                      },
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ]
                    },
                    "create": {
                      "description": "Adds a user provided trial to a study.",
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/trials",
                      "httpMethod": "POST",
                      "id": "ml.projects.locations.studies.trials.create",
                      "parameterOrder": [
                        "parent"
                      ],
                      "parameters": {
                        "parent": {
                          "description": "Required. The name of the study that the trial belongs to.",
                          "location": "path",
                          "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+$",
                          "required": true,
                          "type": "string"
                        }
                      },
                      "path": "v1/{+parent}/trials",
                      "request": {
                        "$ref": "GoogleCloudMlV1__Trial"
                      },
                      "response": {
                        "$ref": "GoogleCloudMlV1__Trial"
                      },
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ]
                    },
                    "delete": {
                      "description": "Deletes a trial.",
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/trials/{trialsId}",
                      "httpMethod": "DELETE",
                      "id": "ml.projects.locations.studies.trials.delete",
                      "parameterOrder": [
                        "name"
                      ],
                      "parameters": {
                        "name": {
                          "description": "Required. The trial name.",
                          "location": "path",
                          "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+/trials/[^/]+$",
                          "required": true,
                          "type": "string"
                        }
                      },
                      "path": "v1/{+name}",
                      "response": {
                        "$ref": "GoogleProtobuf__Empty"
                      },
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ]
                    },
                    "get": {
                      "description": "Gets a trial.",
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/trials/{trialsId}",
                      "httpMethod": "GET",
                      "id": "ml.projects.locations.studies.trials.get",
                      "parameterOrder": [
                        "name"
                      ],
                      "parameters": {
                        "name": {
                          "description": "Required. The trial name.",
                          "location": "path",
                          "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+/trials/[^/]+$",
                          "required": true,
                          "type": "string"
                        }
                      },
                      "path": "v1/{+name}",
                      "response": {
                        "$ref": "GoogleCloudMlV1__Trial"
                      },
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ]
                    },
                    "list": {
                      "description": "Lists the trials associated with a study.",
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/trials",
                      "httpMethod": "GET",
                      "id": "ml.projects.locations.studies.trials.list",
                      "parameterOrder": [
                        "parent"
                      ],
                      "parameters": {
                        "parent": {
                          "description": "Required. The name of the study that the trial belongs to.",
                          "location": "path",
                          "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+$",
                          "required": true,
                          "type": "string"
                        }
                      },
                      "path": "v1/{+parent}/trials",
                      "response": {
                        "$ref": "GoogleCloudMlV1__ListTrialsResponse"
                      },
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ]
                    },
                    "stop": {
                      "description": "Stops a trial.",
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/trials/{trialsId}:stop",
                      "httpMethod": "POST",
                      "id": "ml.projects.locations.studies.trials.stop",
                      "parameterOrder": [
                        "name"
                      ],
                      "parameters": {
                        "name": {
                          "description": "Required. The trial name.",
                          "location": "path",
                          "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+/trials/[^/]+$",
                          "required": true,
                          "type": "string"
                        }
                      },
                      "path": "v1/{+name}:stop",
                      "request": {
                        "$ref": "GoogleCloudMlV1__StopTrialRequest"
                      },
                      "response": {
                        "$ref": "GoogleCloudMlV1__Trial"
                      },
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ]
                    },
                    "suggest": {
                      "description": "Adds one or more trials to a study, with parameter values\nsuggested by AI Platform Optimizer. Returns a long-running\noperation associated with the generation of trial suggestions.\nWhen this long-running operation succeeds, it will contain\na SuggestTrialsResponse.",
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/studies/{studiesId}/trials:suggest",
                      "httpMethod": "POST",
                      "id": "ml.projects.locations.studies.trials.suggest",
                      "parameterOrder": [
                        "parent"
                      ],
                      "parameters": {
                        "parent": {
                          "description": "Required. The name of the study that the trial belongs to.",
                          "location": "path",
                          "pattern": "^projects/[^/]+/locations/[^/]+/studies/[^/]+$",
                          "required": true,
                          "type": "string"
                        }
                      },
                      "path": "v1/{+parent}/trials:suggest",
                      "request": {
                        "$ref": "GoogleCloudMlV1__SuggestTrialsRequest"
                      },
                      "response": {
                        "$ref": "GoogleLongrunning__Operation"
                      },
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ]
                    }
                  }
                }
              }
            }
          }
        },
        "models": {
          "methods": {
            "create": {
              "description": "Creates a model which will later contain one or more versions.\n\nYou must add at least one version before you can request predictions from\nthe model. Add versions by calling\nprojects.models.versions.create.",
              "flatPath": "v1/projects/{projectsId}/models",
              "httpMethod": "POST",
              "id": "ml.projects.models.create",
              "parameterOrder": [
                "parent"
              ],
              "parameters": {
                "parent": {
                  "description": "Required. The project name.",
                  "location": "path",
                  "pattern": "^projects/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1/{+parent}/models",
              "request": {
                "$ref": "GoogleCloudMlV1__Model"
              },
              "response": {
                "$ref": "GoogleCloudMlV1__Model"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            },
            "delete": {
              "description": "Deletes a model.\n\nYou can only delete a model if there are no versions in it. You can delete\nversions by calling\nprojects.models.versions.delete.",
              "flatPath": "v1/projects/{projectsId}/models/{modelsId}",
              "httpMethod": "DELETE",
              "id": "ml.projects.models.delete",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "description": "Required. The name of the model.",
                  "location": "path",
                  "pattern": "^projects/[^/]+/models/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1/{+name}",
              "response": {
                "$ref": "GoogleLongrunning__Operation"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            },
            "get": {
              "description": "Gets information about a model, including its name, the description (if\nset), and the default version (if at least one version of the model has\nbeen deployed).",
              "flatPath": "v1/projects/{projectsId}/models/{modelsId}",
              "httpMethod": "GET",
              "id": "ml.projects.models.get",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "description": "Required. The name of the model.",
                  "location": "path",
                  "pattern": "^projects/[^/]+/models/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1/{+name}",
              "response": {
                "$ref": "GoogleCloudMlV1__Model"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform",
                "https://www.googleapis.com/auth/cloud-platform.read-only"
              ]
            },
            "getIamPolicy": {
              "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.",
              "flatPath": "v1/projects/{projectsId}/models/{modelsId}:getIamPolicy",
              "httpMethod": "GET",
              "id": "ml.projects.models.getIamPolicy",
              "parameterOrder": [
                "resource"
              ],
              "parameters": {
                "options.requestedPolicyVersion": {
                  "description": "Optional. The policy format version to be returned.\n\nValid values are 0, 1, and 3. Requests specifying an invalid value will be\nrejected.\n\nRequests for policies with any conditional bindings must specify version 3.\nPolicies without any conditional bindings may specify any valid value or\nleave the field unset.\n\nTo learn which resources support conditions in their IAM policies, see the\n[IAM\ndocumentation](https://cloud.google.com/iam/help/conditions/resource-policies).",
                  "format": "int32",
                  "location": "query",
                  "type": "integer"
                },
                "resource": {
                  "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.",
                  "location": "path",
                  "pattern": "^projects/[^/]+/models/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1/{+resource}:getIamPolicy",
              "response": {
                "$ref": "GoogleIamV1__Policy"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            },
            "list": {
              "description": "Lists the models in a project.\n\nEach project can contain multiple models, and each model can have multiple\nversions.\n\nIf there are no models that match the request parameters, the list request\nreturns an empty response body: {}.",
              "flatPath": "v1/projects/{projectsId}/models",
              "httpMethod": "GET",
              "id": "ml.projects.models.list",
              "parameterOrder": [
                "parent"
              ],
              "parameters": {
                "filter": {
                  "description": "Optional. Specifies the subset of models to retrieve.",
                  "location": "query",
                  "type": "string"
                },
                "pageSize": {
                  "description": "Optional. The number of models to retrieve per \"page\" of results. If there\nare more remaining results than this number, the response message will\ncontain a valid value in the `next_page_token` field.\n\nThe default value is 20, and the maximum page size is 100.",
                  "format": "int32",
                  "location": "query",
                  "type": "integer"
                },
                "pageToken": {
                  "description": "Optional. A page token to request the next page of results.\n\nYou get the token from the `next_page_token` field of the response from\nthe previous call.",
                  "location": "query",
                  "type": "string"
                },
                "parent": {
                  "description": "Required. The name of the project whose models are to be listed.",
                  "location": "path",
                  "pattern": "^projects/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1/{+parent}/models",
              "response": {
                "$ref": "GoogleCloudMlV1__ListModelsResponse"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform",
                "https://www.googleapis.com/auth/cloud-platform.read-only"
              ]
            },
            "patch": {
              "description": "Updates a specific model resource.\n\nCurrently the only supported fields to update are `description` and\n`default_version.name`.",
              "flatPath": "v1/projects/{projectsId}/models/{modelsId}",
              "httpMethod": "PATCH",
              "id": "ml.projects.models.patch",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "description": "Required. The project name.",
                  "location": "path",
                  "pattern": "^projects/[^/]+/models/[^/]+$",
                  "required": true,
                  "type": "string"
                },
                "updateMask": {
                  "description": "Required. Specifies the path, relative to `Model`, of the field to update.\n\nFor example, to change the description of a model to \"foo\" and set its\ndefault version to \"version_1\", the `update_mask` parameter would be\nspecified as `description`, `default_version.name`, and the `PATCH`\nrequest body would specify the new value, as follows:\n    {\n      \"description\": \"foo\",\n      \"defaultVersion\": {\n        \"name\":\"version_1\"\n      }\n    }\n\nCurrently the supported update masks are `description` and\n`default_version.name`.",
                  "format": "google-fieldmask",
                  "location": "query",
                  "type": "string"
                }
              },
              "path": "v1/{+name}",
              "request": {
                "$ref": "GoogleCloudMlV1__Model"
              },
              "response": {
                "$ref": "GoogleLongrunning__Operation"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            },
            "setIamPolicy": {
              "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.\n\nCan return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors.",
              "flatPath": "v1/projects/{projectsId}/models/{modelsId}:setIamPolicy",
              "httpMethod": "POST",
              "id": "ml.projects.models.setIamPolicy",
              "parameterOrder": [
                "resource"
              ],
              "parameters": {
                "resource": {
                  "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.",
                  "location": "path",
                  "pattern": "^projects/[^/]+/models/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1/{+resource}:setIamPolicy",
              "request": {
                "$ref": "GoogleIamV1__SetIamPolicyRequest"
              },
              "response": {
                "$ref": "GoogleIamV1__Policy"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            },
            "testIamPermissions": {
              "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a `NOT_FOUND` error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.",
              "flatPath": "v1/projects/{projectsId}/models/{modelsId}:testIamPermissions",
              "httpMethod": "POST",
              "id": "ml.projects.models.testIamPermissions",
              "parameterOrder": [
                "resource"
              ],
              "parameters": {
                "resource": {
                  "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.",
                  "location": "path",
                  "pattern": "^projects/[^/]+/models/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1/{+resource}:testIamPermissions",
              "request": {
                "$ref": "GoogleIamV1__TestIamPermissionsRequest"
              },
              "response": {
                "$ref": "GoogleIamV1__TestIamPermissionsResponse"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            }
          },
          "resources": {
            "versions": {
              "methods": {
                "create": {
                  "description": "Creates a new version of a model from a trained TensorFlow model.\n\nIf the version created in the cloud by this call is the first deployed\nversion of the specified model, it will be made the default version of the\nmodel. When you add a version to a model that already has one or more\nversions, the default version does not automatically change. If you want a\nnew version to be the default, you must call\nprojects.models.versions.setDefault.",
                  "flatPath": "v1/projects/{projectsId}/models/{modelsId}/versions",
                  "httpMethod": "POST",
                  "id": "ml.projects.models.versions.create",
                  "parameterOrder": [
                    "parent"
                  ],
                  "parameters": {
                    "parent": {
                      "description": "Required. The name of the model.",
                      "location": "path",
                      "pattern": "^projects/[^/]+/models/[^/]+$",
                      "required": true,
                      "type": "string"
                    }
                  },
                  "path": "v1/{+parent}/versions",
                  "request": {
                    "$ref": "GoogleCloudMlV1__Version"
                  },
                  "response": {
                    "$ref": "GoogleLongrunning__Operation"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ]
                },
                "delete": {
                  "description": "Deletes a model version.\n\nEach model can have multiple versions deployed and in use at any given\ntime. Use this method to remove a single version.\n\nNote: You cannot delete the version that is set as the default version\nof the model unless it is the only remaining version.",
                  "flatPath": "v1/projects/{projectsId}/models/{modelsId}/versions/{versionsId}",
                  "httpMethod": "DELETE",
                  "id": "ml.projects.models.versions.delete",
                  "parameterOrder": [
                    "name"
                  ],
                  "parameters": {
                    "name": {
                      "description": "Required. The name of the version. You can get the names of all the\nversions of a model by calling\nprojects.models.versions.list.",
                      "location": "path",
                      "pattern": "^projects/[^/]+/models/[^/]+/versions/[^/]+$",
                      "required": true,
                      "type": "string"
                    }
                  },
                  "path": "v1/{+name}",
                  "response": {
                    "$ref": "GoogleLongrunning__Operation"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ]
                },
                "get": {
                  "description": "Gets information about a model version.\n\nModels can have multiple versions. You can call\nprojects.models.versions.list\nto get the same information that this method returns for all of the\nversions of a model.",
                  "flatPath": "v1/projects/{projectsId}/models/{modelsId}/versions/{versionsId}",
                  "httpMethod": "GET",
                  "id": "ml.projects.models.versions.get",
                  "parameterOrder": [
                    "name"
                  ],
                  "parameters": {
                    "name": {
                      "description": "Required. The name of the version.",
                      "location": "path",
                      "pattern": "^projects/[^/]+/models/[^/]+/versions/[^/]+$",
                      "required": true,
                      "type": "string"
                    }
                  },
                  "path": "v1/{+name}",
                  "response": {
                    "$ref": "GoogleCloudMlV1__Version"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ]
                },
                "list": {
                  "description": "Gets basic information about all the versions of a model.\n\nIf you expect that a model has many versions, or if you need to handle\nonly a limited number of results at a time, you can request that the list\nbe retrieved in batches (called pages).\n\nIf there are no versions that match the request parameters, the list\nrequest returns an empty response body: {}.",
                  "flatPath": "v1/projects/{projectsId}/models/{modelsId}/versions",
                  "httpMethod": "GET",
                  "id": "ml.projects.models.versions.list",
                  "parameterOrder": [
                    "parent"
                  ],
                  "parameters": {
                    "filter": {
                      "description": "Optional. Specifies the subset of versions to retrieve.",
                      "location": "query",
                      "type": "string"
                    },
                    "pageSize": {
                      "description": "Optional. The number of versions to retrieve per \"page\" of results. If\nthere are more remaining results than this number, the response message\nwill contain a valid value in the `next_page_token` field.\n\nThe default value is 20, and the maximum page size is 100.",
                      "format": "int32",
                      "location": "query",
                      "type": "integer"
                    },
                    "pageToken": {
                      "description": "Optional. A page token to request the next page of results.\n\nYou get the token from the `next_page_token` field of the response from\nthe previous call.",
                      "location": "query",
                      "type": "string"
                    },
                    "parent": {
                      "description": "Required. The name of the model for which to list the version.",
                      "location": "path",
                      "pattern": "^projects/[^/]+/models/[^/]+$",
                      "required": true,
                      "type": "string"
                    }
                  },
                  "path": "v1/{+parent}/versions",
                  "response": {
                    "$ref": "GoogleCloudMlV1__ListVersionsResponse"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform",
                    "https://www.googleapis.com/auth/cloud-platform.read-only"
                  ]
                },
                "patch": {
                  "description": "Updates the specified Version resource.\n\nCurrently the only update-able fields are `description`,\n`requestLoggingConfig`, `autoScaling.minNodes`, and `manualScaling.nodes`.",
                  "flatPath": "v1/projects/{projectsId}/models/{modelsId}/versions/{versionsId}",
                  "httpMethod": "PATCH",
                  "id": "ml.projects.models.versions.patch",
                  "parameterOrder": [
                    "name"
                  ],
                  "parameters": {
                    "name": {
                      "description": "Required. The name of the model.",
                      "location": "path",
                      "pattern": "^projects/[^/]+/models/[^/]+/versions/[^/]+$",
                      "required": true,
                      "type": "string"
                    },
                    "updateMask": {
                      "description": "Required. Specifies the path, relative to `Version`, of the field to\nupdate. Must be present and non-empty.\n\nFor example, to change the description of a version to \"foo\", the\n`update_mask` parameter would be specified as `description`, and the\n`PATCH` request body would specify the new value, as follows:\n\n```\n{\n  \"description\": \"foo\"\n}\n```\n\nCurrently the only supported update mask fields are `description`,\n`requestLoggingConfig`, `autoScaling.minNodes`, and `manualScaling.nodes`.\nHowever, you can only update `manualScaling.nodes` if the version uses a\n[Compute Engine (N1)\nmachine type](/ml-engine/docs/machine-types-online-prediction).",
                      "format": "google-fieldmask",
                      "location": "query",
                      "type": "string"
                    }
                  },
                  "path": "v1/{+name}",
                  "request": {
                    "$ref": "GoogleCloudMlV1__Version"
                  },
                  "response": {
                    "$ref": "GoogleLongrunning__Operation"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ]
                },
                "setDefault": {
                  "description": "Designates a version to be the default for the model.\n\nThe default version is used for prediction requests made against the model\nthat don't specify a version.\n\nThe first version to be created for a model is automatically set as the\ndefault. You must make any subsequent changes to the default version\nsetting manually using this method.",
                  "flatPath": "v1/projects/{projectsId}/models/{modelsId}/versions/{versionsId}:setDefault",
                  "httpMethod": "POST",
                  "id": "ml.projects.models.versions.setDefault",
                  "parameterOrder": [
                    "name"
                  ],
                  "parameters": {
                    "name": {
                      "description": "Required. The name of the version to make the default for the model. You\ncan get the names of all the versions of a model by calling\nprojects.models.versions.list.",
                      "location": "path",
                      "pattern": "^projects/[^/]+/models/[^/]+/versions/[^/]+$",
                      "required": true,
                      "type": "string"
                    }
                  },
                  "path": "v1/{+name}:setDefault",
                  "request": {
                    "$ref": "GoogleCloudMlV1__SetDefaultVersionRequest"
                  },
                  "response": {
                    "$ref": "GoogleCloudMlV1__Version"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ]
                }
              }
            }
          }
        },
        "operations": {
          "methods": {
            "cancel": {
              "description": "Starts asynchronous cancellation on a long-running operation.  The server\nmakes a best effort to cancel the operation, but success is not\nguaranteed.  If the server doesn't support this method, it returns\n`google.rpc.Code.UNIMPLEMENTED`.  Clients can use\nOperations.GetOperation or\nother methods to check whether the cancellation succeeded or whether the\noperation completed despite cancellation. On successful cancellation,\nthe operation is not deleted; instead, it becomes an operation with\nan Operation.error value with a google.rpc.Status.code of 1,\ncorresponding to `Code.CANCELLED`.",
              "flatPath": "v1/projects/{projectsId}/operations/{operationsId}:cancel",
              "httpMethod": "POST",
              "id": "ml.projects.operations.cancel",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "description": "The name of the operation resource to be cancelled.",
                  "location": "path",
                  "pattern": "^projects/[^/]+/operations/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1/{+name}:cancel",
              "response": {
                "$ref": "GoogleProtobuf__Empty"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            },
            "get": {
              "description": "Gets the latest state of a long-running operation.  Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.",
              "flatPath": "v1/projects/{projectsId}/operations/{operationsId}",
              "httpMethod": "GET",
              "id": "ml.projects.operations.get",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "description": "The name of the operation resource.",
                  "location": "path",
                  "pattern": "^projects/[^/]+/operations/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1/{+name}",
              "response": {
                "$ref": "GoogleLongrunning__Operation"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            },
            "list": {
              "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id.",
              "flatPath": "v1/projects/{projectsId}/operations",
              "httpMethod": "GET",
              "id": "ml.projects.operations.list",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "filter": {
                  "description": "The standard list filter.",
                  "location": "query",
                  "type": "string"
                },
                "name": {
                  "description": "The name of the operation's parent resource.",
                  "location": "path",
                  "pattern": "^projects/[^/]+$",
                  "required": true,
                  "type": "string"
                },
                "pageSize": {
                  "description": "The standard list page size.",
                  "format": "int32",
                  "location": "query",
                  "type": "integer"
                },
                "pageToken": {
                  "description": "The standard list page token.",
                  "location": "query",
                  "type": "string"
                }
              },
              "path": "v1/{+name}/operations",
              "response": {
                "$ref": "GoogleLongrunning__ListOperationsResponse"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            }
          }
        }
      }
    }
  },
  "revision": "20200624",
  "rootUrl": "https://ml.googleapis.com/",
  "schemas": {
    "GoogleApi__HttpBody": {
      "description": "Message that represents an arbitrary HTTP body. It should only be used for\npayload formats that can't be represented as JSON, such as raw binary or\nan HTML page.\n\n\nThis message can be used both in streaming and non-streaming API methods in\nthe request as well as the response.\n\nIt can be used as a top-level request field, which is convenient if one\nwants to extract parameters from either the URL or HTTP template into the\nrequest fields and also want access to the raw HTTP body.\n\nExample:\n\n    message GetResourceRequest {\n      // A unique request id.\n      string request_id = 1;\n\n      // The raw HTTP body is bound to this field.\n      google.api.HttpBody http_body = 2;\n    }\n\n    service ResourceService {\n      rpc GetResource(GetResourceRequest) returns (google.api.HttpBody);\n      rpc UpdateResource(google.api.HttpBody) returns\n      (google.protobuf.Empty);\n    }\n\nExample with streaming methods:\n\n    service CaldavService {\n      rpc GetCalendar(stream google.api.HttpBody)\n        returns (stream google.api.HttpBody);\n      rpc UpdateCalendar(stream google.api.HttpBody)\n        returns (stream google.api.HttpBody);\n    }\n\nUse of this type only changes how the request and response bodies are\nhandled, all other features will continue to work unchanged.",
      "id": "GoogleApi__HttpBody",
      "properties": {
        "contentType": {
          "description": "The HTTP Content-Type header value specifying the content type of the body.",
          "type": "string"
        },
        "data": {
          "description": "The HTTP request/response body as raw binary.",
          "format": "byte",
          "type": "string"
        },
        "extensions": {
          "description": "Application specific response metadata. Must be set in the first response\nfor streaming APIs.",
          "items": {
            "additionalProperties": {
              "description": "Properties of the object. Contains field @type with type URL.",
              "type": "any"
            },
            "type": "object"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1_AutomatedStoppingConfig_DecayCurveAutomatedStoppingConfig": {
      "id": "GoogleCloudMlV1_AutomatedStoppingConfig_DecayCurveAutomatedStoppingConfig",
      "properties": {
        "useElapsedTime": {
          "description": "If true, measurement.elapsed_time is used as the x-axis of each\nTrials Decay Curve. Otherwise, Measurement.steps will be used as the\nx-axis.",
          "type": "boolean"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1_AutomatedStoppingConfig_MedianAutomatedStoppingConfig": {
      "description": "The median automated stopping rule stops a pending trial if the trial's\nbest objective_value is strictly below the median 'performance' of all\ncompleted trials reported up to the trial's last measurement.\nCurrently, 'performance' refers to the running average of the objective\nvalues reported by the trial in each measurement.",
      "id": "GoogleCloudMlV1_AutomatedStoppingConfig_MedianAutomatedStoppingConfig",
      "properties": {
        "useElapsedTime": {
          "description": "If true, the median automated stopping rule applies to\nmeasurement.use_elapsed_time, which means the elapsed_time field of\nthe current trial's\nlatest measurement is used to compute the median objective\nvalue for each completed trial.",
          "type": "boolean"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1_HyperparameterOutput_HyperparameterMetric": {
      "description": "An observed value of a metric.",
      "id": "GoogleCloudMlV1_HyperparameterOutput_HyperparameterMetric",
      "properties": {
        "objectiveValue": {
          "description": "The objective value at this training step.",
          "format": "double",
          "type": "number"
        },
        "trainingStep": {
          "description": "The global training step for this metric.",
          "format": "int64",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1_Measurement_Metric": {
      "description": "A message representing a metric in the measurement.",
      "id": "GoogleCloudMlV1_Measurement_Metric",
      "properties": {
        "metric": {
          "description": "Required. Metric name.",
          "type": "string"
        },
        "value": {
          "description": "Required. The value for this metric.",
          "format": "double",
          "type": "number"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1_StudyConfigParameterSpec_CategoricalValueSpec": {
      "id": "GoogleCloudMlV1_StudyConfigParameterSpec_CategoricalValueSpec",
      "properties": {
        "values": {
          "description": "Must be specified if type is `CATEGORICAL`.\nThe list of possible categories.",
          "items": {
            "type": "string"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1_StudyConfigParameterSpec_DiscreteValueSpec": {
      "id": "GoogleCloudMlV1_StudyConfigParameterSpec_DiscreteValueSpec",
      "properties": {
        "values": {
          "description": "Must be specified if type is `DISCRETE`.\nA list of feasible points.\nThe list should be in strictly increasing order. For instance, this\nparameter might have possible settings of 1.5, 2.5, and 4.0. This list\nshould not contain more than 1,000 values.",
          "items": {
            "format": "double",
            "type": "number"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1_StudyConfigParameterSpec_DoubleValueSpec": {
      "id": "GoogleCloudMlV1_StudyConfigParameterSpec_DoubleValueSpec",
      "properties": {
        "maxValue": {
          "description": "Must be specified if type is `DOUBLE`. Maximum value of the parameter.",
          "format": "double",
          "type": "number"
        },
        "minValue": {
          "description": "Must be specified if type is `DOUBLE`. Minimum value of the parameter.",
          "format": "double",
          "type": "number"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1_StudyConfigParameterSpec_IntegerValueSpec": {
      "id": "GoogleCloudMlV1_StudyConfigParameterSpec_IntegerValueSpec",
      "properties": {
        "maxValue": {
          "description": "Must be specified if type is `INTEGER`. Maximum value of the parameter.",
          "format": "int64",
          "type": "string"
        },
        "minValue": {
          "description": "Must be specified if type is `INTEGER`. Minimum value of the parameter.",
          "format": "int64",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1_StudyConfigParameterSpec_MatchingParentCategoricalValueSpec": {
      "description": "Represents the spec to match categorical values from parent parameter.",
      "id": "GoogleCloudMlV1_StudyConfigParameterSpec_MatchingParentCategoricalValueSpec",
      "properties": {
        "values": {
          "description": "Matches values of the parent parameter with type 'CATEGORICAL'.\nAll values must exist in `categorical_value_spec` of parent parameter.",
          "items": {
            "type": "string"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1_StudyConfigParameterSpec_MatchingParentDiscreteValueSpec": {
      "description": "Represents the spec to match discrete values from parent parameter.",
      "id": "GoogleCloudMlV1_StudyConfigParameterSpec_MatchingParentDiscreteValueSpec",
      "properties": {
        "values": {
          "description": "Matches values of the parent parameter with type 'DISCRETE'.\nAll values must exist in `discrete_value_spec` of parent parameter.",
          "items": {
            "format": "double",
            "type": "number"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1_StudyConfigParameterSpec_MatchingParentIntValueSpec": {
      "description": "Represents the spec to match integer values from parent parameter.",
      "id": "GoogleCloudMlV1_StudyConfigParameterSpec_MatchingParentIntValueSpec",
      "properties": {
        "values": {
          "description": "Matches values of the parent parameter with type 'INTEGER'.\nAll values must lie in `integer_value_spec` of parent parameter.",
          "items": {
            "format": "int64",
            "type": "string"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1_StudyConfig_MetricSpec": {
      "description": "Represents a metric to optimize.",
      "id": "GoogleCloudMlV1_StudyConfig_MetricSpec",
      "properties": {
        "goal": {
          "description": "Required. The optimization goal of the metric.",
          "enum": [
            "GOAL_TYPE_UNSPECIFIED",
            "MAXIMIZE",
            "MINIMIZE"
          ],
          "enumDescriptions": [
            "Goal Type will default to maximize.",
            "Maximize the goal metric.",
            "Minimize the goal metric."
          ],
          "type": "string"
        },
        "metric": {
          "description": "Required. The name of the metric.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1_StudyConfig_ParameterSpec": {
      "description": "Represents a single parameter to optimize.",
      "id": "GoogleCloudMlV1_StudyConfig_ParameterSpec",
      "properties": {
        "categoricalValueSpec": {
          "$ref": "GoogleCloudMlV1_StudyConfigParameterSpec_CategoricalValueSpec",
          "description": "The value spec for a 'CATEGORICAL' parameter."
        },
        "childParameterSpecs": {
          "description": "A child node is active if the parameter's value matches the child node's\nmatching_parent_values.\n\nIf two items in child_parameter_specs have the same name, they must have\ndisjoint matching_parent_values.",
          "items": {
            "$ref": "GoogleCloudMlV1_StudyConfig_ParameterSpec"
          },
          "type": "array"
        },
        "discreteValueSpec": {
          "$ref": "GoogleCloudMlV1_StudyConfigParameterSpec_DiscreteValueSpec",
          "description": "The value spec for a 'DISCRETE' parameter."
        },
        "doubleValueSpec": {
          "$ref": "GoogleCloudMlV1_StudyConfigParameterSpec_DoubleValueSpec",
          "description": "The value spec for a 'DOUBLE' parameter."
        },
        "integerValueSpec": {
          "$ref": "GoogleCloudMlV1_StudyConfigParameterSpec_IntegerValueSpec",
          "description": "The value spec for an 'INTEGER' parameter."
        },
        "parameter": {
          "description": "Required. The parameter name must be unique amongst all ParameterSpecs.",
          "type": "string"
        },
        "parentCategoricalValues": {
          "$ref": "GoogleCloudMlV1_StudyConfigParameterSpec_MatchingParentCategoricalValueSpec"
        },
        "parentDiscreteValues": {
          "$ref": "GoogleCloudMlV1_StudyConfigParameterSpec_MatchingParentDiscreteValueSpec"
        },
        "parentIntValues": {
          "$ref": "GoogleCloudMlV1_StudyConfigParameterSpec_MatchingParentIntValueSpec"
        },
        "scaleType": {
          "description": "How the parameter should be scaled.\nLeave unset for categorical parameters.",
          "enum": [
            "SCALE_TYPE_UNSPECIFIED",
            "UNIT_LINEAR_SCALE",
            "UNIT_LOG_SCALE",
            "UNIT_REVERSE_LOG_SCALE"
          ],
          "enumDescriptions": [
            "By default, no scaling is applied.",
            "Scales the feasible space to (0, 1) linearly.",
            "Scales the feasible space logarithmically to (0, 1). The entire\nfeasible space must be strictly positive.",
            "Scales the feasible space \"reverse\" logarithmically to (0, 1). The\nresult is that values close to the top of the feasible space are spread\nout more than points near the bottom. The entire feasible space must be\nstrictly positive."
          ],
          "type": "string"
        },
        "type": {
          "description": "Required. The type of the parameter.",
          "enum": [
            "PARAMETER_TYPE_UNSPECIFIED",
            "DOUBLE",
            "INTEGER",
            "CATEGORICAL",
            "DISCRETE"
          ],
          "enumDescriptions": [
            "You must specify a valid type. Using this unspecified type will result\nin an error.",
            "Type for real-valued parameters.",
            "Type for integral parameters.",
            "The parameter is categorical, with a value chosen from the categories\nfield.",
            "The parameter is real valued, with a fixed set of feasible points. If\n`type==DISCRETE`, feasible_points must be provided, and\n{`min_value`, `max_value`} will be ignored."
          ],
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1_Trial_Parameter": {
      "description": "A message representing a parameter to be tuned. Contains the name of\nthe parameter and the suggested value to use for this trial.",
      "id": "GoogleCloudMlV1_Trial_Parameter",
      "properties": {
        "floatValue": {
          "description": "Must be set if ParameterType is DOUBLE or DISCRETE.",
          "format": "double",
          "type": "number"
        },
        "intValue": {
          "description": "Must be set if ParameterType is INTEGER",
          "format": "int64",
          "type": "string"
        },
        "parameter": {
          "description": "The name of the parameter.",
          "type": "string"
        },
        "stringValue": {
          "description": "Must be set if ParameterTypeis CATEGORICAL",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__AcceleratorConfig": {
      "description": "Represents a hardware accelerator request config.\nNote that the AcceleratorConfig can be used in both Jobs and Versions.\nLearn more about [accelerators for training](/ml-engine/docs/using-gpus) and\n[accelerators for online\nprediction](/ml-engine/docs/machine-types-online-prediction#gpus).",
      "id": "GoogleCloudMlV1__AcceleratorConfig",
      "properties": {
        "count": {
          "description": "The number of accelerators to attach to each machine running the job.",
          "format": "int64",
          "type": "string"
        },
        "type": {
          "description": "The type of accelerator to use.",
          "enum": [
            "ACCELERATOR_TYPE_UNSPECIFIED",
            "NVIDIA_TESLA_K80",
            "NVIDIA_TESLA_P100",
            "NVIDIA_TESLA_V100",
            "NVIDIA_TESLA_P4",
            "NVIDIA_TESLA_T4",
            "TPU_V2",
            "TPU_V3"
          ],
          "enumDescriptions": [
            "Unspecified accelerator type. Default to no GPU.",
            "Nvidia Tesla K80 GPU.",
            "Nvidia Tesla P100 GPU.",
            "Nvidia Tesla V100 GPU.",
            "Nvidia Tesla P4 GPU.",
            "Nvidia Tesla T4 GPU.",
            "TPU v2.",
            "TPU v3."
          ],
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__AddTrialMeasurementRequest": {
      "description": "The request message for the AddTrialMeasurement service method.",
      "id": "GoogleCloudMlV1__AddTrialMeasurementRequest",
      "properties": {
        "measurement": {
          "$ref": "GoogleCloudMlV1__Measurement",
          "description": "Required. The measurement to be added to a trial."
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__AutoScaling": {
      "description": "Options for automatically scaling a model.",
      "id": "GoogleCloudMlV1__AutoScaling",
      "properties": {
        "minNodes": {
          "description": "Optional. The minimum number of nodes to allocate for this model. These\nnodes are always up, starting from the time the model is deployed.\nTherefore, the cost of operating this model will be at least\n`rate` * `min_nodes` * number of hours since last billing cycle,\nwhere `rate` is the cost per node-hour as documented in the\n[pricing guide](/ml-engine/docs/pricing),\neven if no predictions are performed. There is additional cost for each\nprediction performed.\n\nUnlike manual scaling, if the load gets too heavy for the nodes\nthat are up, the service will automatically add nodes to handle the\nincreased load as well as scale back as traffic drops, always maintaining\nat least `min_nodes`. You will be charged for the time in which additional\nnodes are used.\n\nIf `min_nodes` is not specified and AutoScaling is used with a [legacy\n(MLS1) machine type](/ml-engine/docs/machine-types-online-prediction),\n`min_nodes` defaults to 0, in which case, when traffic to a model stops\n(and after a cool-down period), nodes will be shut down and no charges will\nbe incurred until traffic to the model resumes.\n\nIf `min_nodes` is not specified and AutoScaling is used with a [Compute\nEngine (N1) machine type](/ml-engine/docs/machine-types-online-prediction),\n`min_nodes` defaults to 1. `min_nodes` must be at least 1 for use with a\nCompute Engine machine type.\n\nNote that you cannot use AutoScaling if your version uses\n[GPUs](#Version.FIELDS.accelerator_config). Instead, you must use\nManualScaling.\n\nYou can set `min_nodes` when creating the model version, and you can also\nupdate `min_nodes` for an existing version:\n\u003cpre\u003e\nupdate_body.json:\n{\n  'autoScaling': {\n    'minNodes': 5\n  }\n}\n\u003c/pre\u003e\nHTTP request:\n\u003cpre style=\"max-width: 626px;\"\u003e\nPATCH\nhttps://ml.googleapis.com/v1/{name=projects/*/models/*/versions/*}?update_mask=autoScaling.minNodes\n-d @./update_body.json\n\u003c/pre\u003e",
          "format": "int32",
          "type": "integer"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__AutomatedStoppingConfig": {
      "description": "Configuration for Automated Early Stopping of Trials. If no\nimplementation_config is set, automated early stopping will not be run.",
      "id": "GoogleCloudMlV1__AutomatedStoppingConfig",
      "properties": {
        "decayCurveStoppingConfig": {
          "$ref": "GoogleCloudMlV1_AutomatedStoppingConfig_DecayCurveAutomatedStoppingConfig"
        },
        "medianAutomatedStoppingConfig": {
          "$ref": "GoogleCloudMlV1_AutomatedStoppingConfig_MedianAutomatedStoppingConfig"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__BuiltInAlgorithmOutput": {
      "description": "Represents output related to a built-in algorithm Job.",
      "id": "GoogleCloudMlV1__BuiltInAlgorithmOutput",
      "properties": {
        "framework": {
          "description": "Framework on which the built-in algorithm was trained.",
          "type": "string"
        },
        "modelPath": {
          "description": "The Cloud Storage path to the `model/` directory where the training job\nsaves the trained model. Only set for successful jobs that don't use\nhyperparameter tuning.",
          "type": "string"
        },
        "pythonVersion": {
          "description": "Python version on which the built-in algorithm was trained.",
          "type": "string"
        },
        "runtimeVersion": {
          "description": "AI Platform runtime version on which the built-in algorithm was\ntrained.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__CancelJobRequest": {
      "description": "Request message for the CancelJob method.",
      "id": "GoogleCloudMlV1__CancelJobRequest",
      "properties": {},
      "type": "object"
    },
    "GoogleCloudMlV1__Capability": {
      "id": "GoogleCloudMlV1__Capability",
      "properties": {
        "availableAccelerators": {
          "description": "Available accelerators for the capability.",
          "enumDescriptions": [
            "Unspecified accelerator type. Default to no GPU.",
            "Nvidia Tesla K80 GPU.",
            "Nvidia Tesla P100 GPU.",
            "Nvidia Tesla V100 GPU.",
            "Nvidia Tesla P4 GPU.",
            "Nvidia Tesla T4 GPU.",
            "TPU v2.",
            "TPU v3."
          ],
          "items": {
            "enum": [
              "ACCELERATOR_TYPE_UNSPECIFIED",
              "NVIDIA_TESLA_K80",
              "NVIDIA_TESLA_P100",
              "NVIDIA_TESLA_V100",
              "NVIDIA_TESLA_P4",
              "NVIDIA_TESLA_T4",
              "TPU_V2",
              "TPU_V3"
            ],
            "type": "string"
          },
          "type": "array"
        },
        "type": {
          "enum": [
            "TYPE_UNSPECIFIED",
            "TRAINING",
            "BATCH_PREDICTION",
            "ONLINE_PREDICTION"
          ],
          "enumDescriptions": [
            "",
            "",
            "",
            ""
          ],
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__CheckTrialEarlyStoppingStateMetatdata": {
      "description": "This message will be placed in the metadata field of a\ngoogle.longrunning.Operation associated with a CheckTrialEarlyStoppingState\nrequest.",
      "id": "GoogleCloudMlV1__CheckTrialEarlyStoppingStateMetatdata",
      "properties": {
        "createTime": {
          "description": "The time at which the operation was submitted.",
          "format": "google-datetime",
          "type": "string"
        },
        "study": {
          "description": "The name of the study that the trial belongs to.",
          "type": "string"
        },
        "trial": {
          "description": "The trial name.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__CheckTrialEarlyStoppingStateRequest": {
      "description": "The request message for the CheckTrialEarlyStoppingState service method.",
      "id": "GoogleCloudMlV1__CheckTrialEarlyStoppingStateRequest",
      "properties": {},
      "type": "object"
    },
    "GoogleCloudMlV1__CheckTrialEarlyStoppingStateResponse": {
      "description": "The message will be placed in the response field of a completed\ngoogle.longrunning.Operation associated with a CheckTrialEarlyStoppingState\nrequest.",
      "id": "GoogleCloudMlV1__CheckTrialEarlyStoppingStateResponse",
      "properties": {
        "endTime": {
          "description": "The time at which operation processing completed.",
          "format": "google-datetime",
          "type": "string"
        },
        "shouldStop": {
          "description": "True if the Trial should stop.",
          "type": "boolean"
        },
        "startTime": {
          "description": "The time at which the operation was started.",
          "format": "google-datetime",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__CompleteTrialRequest": {
      "description": "The request message for the CompleteTrial service method.",
      "id": "GoogleCloudMlV1__CompleteTrialRequest",
      "properties": {
        "finalMeasurement": {
          "$ref": "GoogleCloudMlV1__Measurement",
          "description": "Optional. If provided, it will be used as the completed trial's\nfinal_measurement; Otherwise, the service will auto-select a\npreviously reported measurement as the final-measurement"
        },
        "infeasibleReason": {
          "description": "Optional. A human readable reason why the trial was infeasible. This should\nonly be provided if `trial_infeasible` is true.",
          "type": "string"
        },
        "trialInfeasible": {
          "description": "Optional. True if the trial cannot be run with the given Parameter, and\nfinal_measurement will be ignored.",
          "type": "boolean"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__Config": {
      "id": "GoogleCloudMlV1__Config",
      "properties": {
        "tpuServiceAccount": {
          "description": "The service account Cloud ML uses to run on TPU node.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__EncryptionConfig": {
      "description": "Represents a custom encryption key configuration that can be applied to\na resource.",
      "id": "GoogleCloudMlV1__EncryptionConfig",
      "properties": {
        "kmsKeyName": {
          "description": "The Cloud KMS resource identifier of the customer-managed encryption key\nused to protect a resource, such as a training job. It has the following\nformat:\n`projects/{PROJECT_ID}/locations/{REGION}/keyRings/{KEY_RING_NAME}/cryptoKeys/{KEY_NAME}`",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__ExplainRequest": {
      "description": "Request for explanations to be issued against a trained model.",
      "id": "GoogleCloudMlV1__ExplainRequest",
      "properties": {
        "httpBody": {
          "$ref": "GoogleApi__HttpBody",
          "description": "Required.\nThe explanation request body."
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__ExplanationConfig": {
      "description": "Message holding configuration options for explaining model predictions.\nThere are two feature attribution methods supported for TensorFlow models:\nintegrated gradients and sampled Shapley.\n[Learn more about feature\nattributions.](/ai-platform/prediction/docs/ai-explanations/overview)",
      "id": "GoogleCloudMlV1__ExplanationConfig",
      "properties": {
        "integratedGradientsAttribution": {
          "$ref": "GoogleCloudMlV1__IntegratedGradientsAttribution",
          "description": "Attributes credit by computing the Aumann-Shapley value taking advantage\nof the model's fully differentiable structure. Refer to this paper for\nmore details: http://proceedings.mlr.press/v70/sundararajan17a.html"
        },
        "sampledShapleyAttribution": {
          "$ref": "GoogleCloudMlV1__SampledShapleyAttribution",
          "description": "An attribution method that approximates Shapley values for features that\ncontribute to the label being predicted. A sampling strategy is used to\napproximate the value rather than considering all subsets of features."
        },
        "xraiAttribution": {
          "$ref": "GoogleCloudMlV1__XraiAttribution",
          "description": "Attributes credit by computing the XRAI taking advantage\nof the model's fully differentiable structure. Refer to this paper for\nmore details: https://arxiv.org/abs/1906.02825\nCurrently only implemented for models with natural image inputs."
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__GetConfigResponse": {
      "description": "Returns service account information associated with a project.",
      "id": "GoogleCloudMlV1__GetConfigResponse",
      "properties": {
        "config": {
          "$ref": "GoogleCloudMlV1__Config"
        },
        "serviceAccount": {
          "description": "The service account Cloud ML uses to access resources in the project.",
          "type": "string"
        },
        "serviceAccountProject": {
          "description": "The project number for `service_account`.",
          "format": "int64",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__HyperparameterOutput": {
      "description": "Represents the result of a single hyperparameter tuning trial from a\ntraining job. The TrainingOutput object that is returned on successful\ncompletion of a training job with hyperparameter tuning includes a list\nof HyperparameterOutput objects, one for each successful trial.",
      "id": "GoogleCloudMlV1__HyperparameterOutput",
      "properties": {
        "allMetrics": {
          "description": "All recorded object metrics for this trial. This field is not currently\npopulated.",
          "items": {
            "$ref": "GoogleCloudMlV1_HyperparameterOutput_HyperparameterMetric"
          },
          "type": "array"
        },
        "builtInAlgorithmOutput": {
          "$ref": "GoogleCloudMlV1__BuiltInAlgorithmOutput",
          "description": "Details related to built-in algorithms jobs.\nOnly set for trials of built-in algorithms jobs that have succeeded."
        },
        "endTime": {
          "description": "Output only. End time for the trial.",
          "format": "google-datetime",
          "type": "string"
        },
        "finalMetric": {
          "$ref": "GoogleCloudMlV1_HyperparameterOutput_HyperparameterMetric",
          "description": "The final objective metric seen for this trial."
        },
        "hyperparameters": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "The hyperparameters given to this trial.",
          "type": "object"
        },
        "isTrialStoppedEarly": {
          "description": "True if the trial is stopped early.",
          "type": "boolean"
        },
        "startTime": {
          "description": "Output only. Start time for the trial.",
          "format": "google-datetime",
          "type": "string"
        },
        "state": {
          "description": "Output only. The detailed state of the trial.",
          "enum": [
            "STATE_UNSPECIFIED",
            "QUEUED",
            "PREPARING",
            "RUNNING",
            "SUCCEEDED",
            "FAILED",
            "CANCELLING",
            "CANCELLED"
          ],
          "enumDescriptions": [
            "The job state is unspecified.",
            "The job has been just created and processing has not yet begun.",
            "The service is preparing to run the job.",
            "The job is in progress.",
            "The job completed successfully.",
            "The job failed.\n`error_message` should contain the details of the failure.",
            "The job is being cancelled.\n`error_message` should describe the reason for the cancellation.",
            "The job has been cancelled.\n`error_message` should describe the reason for the cancellation."
          ],
          "type": "string"
        },
        "trialId": {
          "description": "The trial id for these results.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__HyperparameterSpec": {
      "description": "Represents a set of hyperparameters to optimize.",
      "id": "GoogleCloudMlV1__HyperparameterSpec",
      "properties": {
        "algorithm": {
          "description": "Optional. The search algorithm specified for the hyperparameter\ntuning job.\nUses the default AI Platform hyperparameter tuning\nalgorithm if unspecified.",
          "enum": [
            "ALGORITHM_UNSPECIFIED",
            "GRID_SEARCH",
            "RANDOM_SEARCH"
          ],
          "enumDescriptions": [
            "The default algorithm used by the hyperparameter tuning service. This is\na Bayesian optimization algorithm.",
            "Simple grid search within the feasible space. To use grid search,\nall parameters must be `INTEGER`, `CATEGORICAL`, or `DISCRETE`.",
            "Simple random search within the feasible space."
          ],
          "type": "string"
        },
        "enableTrialEarlyStopping": {
          "description": "Optional. Indicates if the hyperparameter tuning job enables auto trial\nearly stopping.",
          "type": "boolean"
        },
        "goal": {
          "description": "Required. The type of goal to use for tuning. Available types are\n`MAXIMIZE` and `MINIMIZE`.\n\nDefaults to `MAXIMIZE`.",
          "enum": [
            "GOAL_TYPE_UNSPECIFIED",
            "MAXIMIZE",
            "MINIMIZE"
          ],
          "enumDescriptions": [
            "Goal Type will default to maximize.",
            "Maximize the goal metric.",
            "Minimize the goal metric."
          ],
          "type": "string"
        },
        "hyperparameterMetricTag": {
          "description": "Optional. The TensorFlow summary tag name to use for optimizing trials. For\ncurrent versions of TensorFlow, this tag name should exactly match what is\nshown in TensorBoard, including all scopes.  For versions of TensorFlow\nprior to 0.12, this should be only the tag passed to tf.Summary.\nBy default, \"training/hptuning/metric\" will be used.",
          "type": "string"
        },
        "maxFailedTrials": {
          "description": "Optional. The number of failed trials that need to be seen before failing\nthe hyperparameter tuning job. You can specify this field to override the\ndefault failing criteria for AI Platform hyperparameter tuning jobs.\n\nDefaults to zero, which means the service decides when a hyperparameter\njob should fail.",
          "format": "int32",
          "type": "integer"
        },
        "maxParallelTrials": {
          "description": "Optional. The number of training trials to run concurrently.\nYou can reduce the time it takes to perform hyperparameter tuning by adding\ntrials in parallel. However, each trail only benefits from the information\ngained in completed trials. That means that a trial does not get access to\nthe results of trials running at the same time, which could reduce the\nquality of the overall optimization.\n\nEach trial will use the same scale tier and machine types.\n\nDefaults to one.",
          "format": "int32",
          "type": "integer"
        },
        "maxTrials": {
          "description": "Optional. How many training trials should be attempted to optimize\nthe specified hyperparameters.\n\nDefaults to one.",
          "format": "int32",
          "type": "integer"
        },
        "params": {
          "description": "Required. The set of parameters to tune.",
          "items": {
            "$ref": "GoogleCloudMlV1__ParameterSpec"
          },
          "type": "array"
        },
        "resumePreviousJobId": {
          "description": "Optional. The prior hyperparameter tuning job id that users hope to\ncontinue with. The job id will be used to find the corresponding vizier\nstudy guid and resume the study.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__IntegratedGradientsAttribution": {
      "description": "Attributes credit by computing the Aumann-Shapley value taking advantage\nof the model's fully differentiable structure. Refer to this paper for\nmore details: https://arxiv.org/abs/1703.01365",
      "id": "GoogleCloudMlV1__IntegratedGradientsAttribution",
      "properties": {
        "numIntegralSteps": {
          "description": "Number of steps for approximating the path integral.\nA good value to start is 50 and gradually increase until the\nsum to diff property is met within the desired error range.",
          "format": "int32",
          "type": "integer"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__Job": {
      "description": "Represents a training or prediction job.",
      "id": "GoogleCloudMlV1__Job",
      "properties": {
        "createTime": {
          "description": "Output only. When the job was created.",
          "format": "google-datetime",
          "type": "string"
        },
        "endTime": {
          "description": "Output only. When the job processing was completed.",
          "format": "google-datetime",
          "type": "string"
        },
        "errorMessage": {
          "description": "Output only. The details of a failure or a cancellation.",
          "type": "string"
        },
        "etag": {
          "description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a job from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform job updates in order to avoid race\nconditions: An `etag` is returned in the response to `GetJob`, and\nsystems are expected to put that etag in the request to `UpdateJob` to\nensure that their change will be applied to the same version of the job.",
          "format": "byte",
          "type": "string"
        },
        "jobId": {
          "description": "Required. The user-specified id of the job.",
          "type": "string"
        },
        "labels": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "Optional. One or more labels that you can add, to organize your jobs.\nEach label is a key-value pair, where both the key and the value are\narbitrary strings that you supply.\nFor more information, see the documentation on\n\u003ca href=\"/ml-engine/docs/tensorflow/resource-labels\"\u003eusing labels\u003c/a\u003e.",
          "type": "object"
        },
        "predictionInput": {
          "$ref": "GoogleCloudMlV1__PredictionInput",
          "description": "Input parameters to create a prediction job."
        },
        "predictionOutput": {
          "$ref": "GoogleCloudMlV1__PredictionOutput",
          "description": "The current prediction job result."
        },
        "startTime": {
          "description": "Output only. When the job processing was started.",
          "format": "google-datetime",
          "type": "string"
        },
        "state": {
          "description": "Output only. The detailed state of a job.",
          "enum": [
            "STATE_UNSPECIFIED",
            "QUEUED",
            "PREPARING",
            "RUNNING",
            "SUCCEEDED",
            "FAILED",
            "CANCELLING",
            "CANCELLED"
          ],
          "enumDescriptions": [
            "The job state is unspecified.",
            "The job has been just created and processing has not yet begun.",
            "The service is preparing to run the job.",
            "The job is in progress.",
            "The job completed successfully.",
            "The job failed.\n`error_message` should contain the details of the failure.",
            "The job is being cancelled.\n`error_message` should describe the reason for the cancellation.",
            "The job has been cancelled.\n`error_message` should describe the reason for the cancellation."
          ],
          "type": "string"
        },
        "trainingInput": {
          "$ref": "GoogleCloudMlV1__TrainingInput",
          "description": "Input parameters to create a training job."
        },
        "trainingOutput": {
          "$ref": "GoogleCloudMlV1__TrainingOutput",
          "description": "The current training job result."
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__ListJobsResponse": {
      "description": "Response message for the ListJobs method.",
      "id": "GoogleCloudMlV1__ListJobsResponse",
      "properties": {
        "jobs": {
          "description": "The list of jobs.",
          "items": {
            "$ref": "GoogleCloudMlV1__Job"
          },
          "type": "array"
        },
        "nextPageToken": {
          "description": "Optional. Pass this token as the `page_token` field of the request for a\nsubsequent call.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__ListLocationsResponse": {
      "id": "GoogleCloudMlV1__ListLocationsResponse",
      "properties": {
        "locations": {
          "description": "Locations where at least one type of CMLE capability is available.",
          "items": {
            "$ref": "GoogleCloudMlV1__Location"
          },
          "type": "array"
        },
        "nextPageToken": {
          "description": "Optional. Pass this token as the `page_token` field of the request for a\nsubsequent call.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__ListModelsResponse": {
      "description": "Response message for the ListModels method.",
      "id": "GoogleCloudMlV1__ListModelsResponse",
      "properties": {
        "models": {
          "description": "The list of models.",
          "items": {
            "$ref": "GoogleCloudMlV1__Model"
          },
          "type": "array"
        },
        "nextPageToken": {
          "description": "Optional. Pass this token as the `page_token` field of the request for a\nsubsequent call.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__ListStudiesResponse": {
      "id": "GoogleCloudMlV1__ListStudiesResponse",
      "properties": {
        "studies": {
          "description": "The studies associated with the project.",
          "items": {
            "$ref": "GoogleCloudMlV1__Study"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__ListTrialsResponse": {
      "description": "The response message for the ListTrials method.",
      "id": "GoogleCloudMlV1__ListTrialsResponse",
      "properties": {
        "trials": {
          "description": "The trials associated with the study.",
          "items": {
            "$ref": "GoogleCloudMlV1__Trial"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__ListVersionsResponse": {
      "description": "Response message for the ListVersions method.",
      "id": "GoogleCloudMlV1__ListVersionsResponse",
      "properties": {
        "nextPageToken": {
          "description": "Optional. Pass this token as the `page_token` field of the request for a\nsubsequent call.",
          "type": "string"
        },
        "versions": {
          "description": "The list of versions.",
          "items": {
            "$ref": "GoogleCloudMlV1__Version"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__Location": {
      "id": "GoogleCloudMlV1__Location",
      "properties": {
        "capabilities": {
          "description": "Capabilities available in the location.",
          "items": {
            "$ref": "GoogleCloudMlV1__Capability"
          },
          "type": "array"
        },
        "name": {
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__ManualScaling": {
      "description": "Options for manually scaling a model.",
      "id": "GoogleCloudMlV1__ManualScaling",
      "properties": {
        "nodes": {
          "description": "The number of nodes to allocate for this model. These nodes are always up,\nstarting from the time the model is deployed, so the cost of operating\nthis model will be proportional to `nodes` * number of hours since\nlast billing cycle plus the cost for each prediction performed.",
          "format": "int32",
          "type": "integer"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__Measurement": {
      "description": "A message representing a measurement.",
      "id": "GoogleCloudMlV1__Measurement",
      "properties": {
        "elapsedTime": {
          "description": "Output only. Time that the trial has been running at the point of\nthis measurement.",
          "format": "google-duration",
          "type": "string"
        },
        "metrics": {
          "description": "Provides a list of metrics that act as inputs into the objective\nfunction.",
          "items": {
            "$ref": "GoogleCloudMlV1_Measurement_Metric"
          },
          "type": "array"
        },
        "stepCount": {
          "description": "The number of steps a machine learning model has been trained for.\nMust be non-negative.",
          "format": "int64",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__Model": {
      "description": "Represents a machine learning solution.\n\nA model can have multiple versions, each of which is a deployed, trained\nmodel ready to receive prediction requests. The model itself is just a\ncontainer.",
      "id": "GoogleCloudMlV1__Model",
      "properties": {
        "defaultVersion": {
          "$ref": "GoogleCloudMlV1__Version",
          "description": "Output only. The default version of the model. This version will be used to\nhandle prediction requests that do not specify a version.\n\nYou can change the default version by calling\nprojects.models.versions.setDefault."
        },
        "description": {
          "description": "Optional. The description specified for the model when it was created.",
          "type": "string"
        },
        "etag": {
          "description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a model from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform model updates in order to avoid race\nconditions: An `etag` is returned in the response to `GetModel`, and\nsystems are expected to put that etag in the request to `UpdateModel` to\nensure that their change will be applied to the model as intended.",
          "format": "byte",
          "type": "string"
        },
        "labels": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "Optional. One or more labels that you can add, to organize your models.\nEach label is a key-value pair, where both the key and the value are\narbitrary strings that you supply.\nFor more information, see the documentation on\n\u003ca href=\"/ml-engine/docs/tensorflow/resource-labels\"\u003eusing labels\u003c/a\u003e.",
          "type": "object"
        },
        "name": {
          "description": "Required. The name specified for the model when it was created.\n\nThe model name must be unique within the project it is created in.",
          "type": "string"
        },
        "onlinePredictionConsoleLogging": {
          "description": "Optional. If true, online prediction nodes send `stderr` and `stdout`\nstreams to Stackdriver Logging. These can be more verbose than the standard\naccess logs (see `onlinePredictionLogging`) and can incur higher cost.\nHowever, they are helpful for debugging. Note that\n[Stackdriver logs may incur a cost](/stackdriver/pricing), especially if\nyour project receives prediction requests at a high QPS. Estimate your\ncosts before enabling this option.\n\nDefault is false.",
          "type": "boolean"
        },
        "onlinePredictionLogging": {
          "description": "Optional. If true, online prediction access logs are sent to StackDriver\nLogging. These logs are like standard server access logs, containing\ninformation like timestamp and latency for each request. Note that\n[Stackdriver logs may incur a cost](/stackdriver/pricing), especially if\nyour project receives prediction requests at a high queries per second rate\n(QPS). Estimate your costs before enabling this option.\n\nDefault is false.",
          "type": "boolean"
        },
        "regions": {
          "description": "Optional. The list of regions where the model is going to be deployed.\nOnly one region per model is supported.\nDefaults to 'us-central1' if nothing is set.\nSee the \u003ca href=\"/ml-engine/docs/tensorflow/regions\"\u003eavailable regions\u003c/a\u003e\nfor AI Platform services.\nNote:\n*   No matter where a model is deployed, it can always be accessed by\n    users from anywhere, both for online and batch prediction.\n*   The region for a batch prediction job is set by the region field when\n    submitting the batch prediction job and does not take its value from\n    this field.",
          "items": {
            "type": "string"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__OperationMetadata": {
      "description": "Represents the metadata of the long-running operation.",
      "id": "GoogleCloudMlV1__OperationMetadata",
      "properties": {
        "createTime": {
          "description": "The time the operation was submitted.",
          "format": "google-datetime",
          "type": "string"
        },
        "endTime": {
          "description": "The time operation processing completed.",
          "format": "google-datetime",
          "type": "string"
        },
        "isCancellationRequested": {
          "description": "Indicates whether a request to cancel this operation has been made.",
          "type": "boolean"
        },
        "labels": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "The user labels, inherited from the model or the model version being\noperated on.",
          "type": "object"
        },
        "modelName": {
          "description": "Contains the name of the model associated with the operation.",
          "type": "string"
        },
        "operationType": {
          "description": "The operation type.",
          "enum": [
            "OPERATION_TYPE_UNSPECIFIED",
            "CREATE_VERSION",
            "DELETE_VERSION",
            "DELETE_MODEL",
            "UPDATE_MODEL",
            "UPDATE_VERSION",
            "UPDATE_CONFIG"
          ],
          "enumDescriptions": [
            "Unspecified operation type.",
            "An operation to create a new version.",
            "An operation to delete an existing version.",
            "An operation to delete an existing model.",
            "An operation to update an existing model.",
            "An operation to update an existing version.",
            "An operation to update project configuration."
          ],
          "type": "string"
        },
        "projectNumber": {
          "description": "Contains the project number associated with the operation.",
          "format": "int64",
          "type": "string"
        },
        "startTime": {
          "description": "The time operation processing started.",
          "format": "google-datetime",
          "type": "string"
        },
        "version": {
          "$ref": "GoogleCloudMlV1__Version",
          "description": "Contains the version associated with the operation."
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__ParameterSpec": {
      "description": "Represents a single hyperparameter to optimize.",
      "id": "GoogleCloudMlV1__ParameterSpec",
      "properties": {
        "categoricalValues": {
          "description": "Required if type is `CATEGORICAL`. The list of possible categories.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "discreteValues": {
          "description": "Required if type is `DISCRETE`.\nA list of feasible points.\nThe list should be in strictly increasing order. For instance, this\nparameter might have possible settings of 1.5, 2.5, and 4.0. This list\nshould not contain more than 1,000 values.",
          "items": {
            "format": "double",
            "type": "number"
          },
          "type": "array"
        },
        "maxValue": {
          "description": "Required if type is `DOUBLE` or `INTEGER`. This field\nshould be unset if type is `CATEGORICAL`. This value should be integers if\ntype is `INTEGER`.",
          "format": "double",
          "type": "number"
        },
        "minValue": {
          "description": "Required if type is `DOUBLE` or `INTEGER`. This field\nshould be unset if type is `CATEGORICAL`. This value should be integers if\ntype is INTEGER.",
          "format": "double",
          "type": "number"
        },
        "parameterName": {
          "description": "Required. The parameter name must be unique amongst all ParameterConfigs in\na HyperparameterSpec message. E.g., \"learning_rate\".",
          "type": "string"
        },
        "scaleType": {
          "description": "Optional. How the parameter should be scaled to the hypercube.\nLeave unset for categorical parameters.\nSome kind of scaling is strongly recommended for real or integral\nparameters (e.g., `UNIT_LINEAR_SCALE`).",
          "enum": [
            "NONE",
            "UNIT_LINEAR_SCALE",
            "UNIT_LOG_SCALE",
            "UNIT_REVERSE_LOG_SCALE"
          ],
          "enumDescriptions": [
            "By default, no scaling is applied.",
            "Scales the feasible space to (0, 1) linearly.",
            "Scales the feasible space logarithmically to (0, 1). The entire feasible\nspace must be strictly positive.",
            "Scales the feasible space \"reverse\" logarithmically to (0, 1). The result\nis that values close to the top of the feasible space are spread out more\nthan points near the bottom. The entire feasible space must be strictly\npositive."
          ],
          "type": "string"
        },
        "type": {
          "description": "Required. The type of the parameter.",
          "enum": [
            "PARAMETER_TYPE_UNSPECIFIED",
            "DOUBLE",
            "INTEGER",
            "CATEGORICAL",
            "DISCRETE"
          ],
          "enumDescriptions": [
            "You must specify a valid type. Using this unspecified type will result in\nan error.",
            "Type for real-valued parameters.",
            "Type for integral parameters.",
            "The parameter is categorical, with a value chosen from the categories\nfield.",
            "The parameter is real valued, with a fixed set of feasible points. If\n`type==DISCRETE`, feasible_points must be provided, and\n{`min_value`, `max_value`} will be ignored."
          ],
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__PredictRequest": {
      "description": "Request for predictions to be issued against a trained model.",
      "id": "GoogleCloudMlV1__PredictRequest",
      "properties": {
        "httpBody": {
          "$ref": "GoogleApi__HttpBody",
          "description": "\nRequired. The prediction request body. Refer to the [request body details\nsection](#request-body-details) for more information on how to structure\nyour request."
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__PredictionInput": {
      "description": "Represents input parameters for a prediction job.",
      "id": "GoogleCloudMlV1__PredictionInput",
      "properties": {
        "batchSize": {
          "description": "Optional. Number of records per batch, defaults to 64.\nThe service will buffer batch_size number of records in memory before\ninvoking one Tensorflow prediction call internally. So take the record\nsize and memory available into consideration when setting this parameter.",
          "format": "int64",
          "type": "string"
        },
        "dataFormat": {
          "description": "Required. The format of the input data files.",
          "enum": [
            "DATA_FORMAT_UNSPECIFIED",
            "JSON",
            "TEXT",
            "TF_RECORD",
            "TF_RECORD_GZIP",
            "CSV"
          ],
          "enumDescriptions": [
            "Unspecified format.",
            "Each line of the file is a JSON dictionary representing one record.",
            "Deprecated. Use JSON instead.",
            "The source file is a TFRecord file.\nCurrently available only for input data.",
            "The source file is a GZIP-compressed TFRecord file.\nCurrently available only for input data.",
            "Values are comma-separated rows, with keys in a separate file.\nCurrently available only for output data."
          ],
          "type": "string"
        },
        "inputPaths": {
          "description": "Required. The Cloud Storage location of the input data files. May contain\n\u003ca href=\"/storage/docs/gsutil/addlhelp/WildcardNames\"\u003ewildcards\u003c/a\u003e.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "maxWorkerCount": {
          "description": "Optional. The maximum number of workers to be used for parallel processing.\nDefaults to 10 if not specified.",
          "format": "int64",
          "type": "string"
        },
        "modelName": {
          "description": "Use this field if you want to use the default version for the specified\nmodel. The string must use the following format:\n\n`\"projects/YOUR_PROJECT/models/YOUR_MODEL\"`",
          "type": "string"
        },
        "outputDataFormat": {
          "description": "Optional. Format of the output data files, defaults to JSON.",
          "enum": [
            "DATA_FORMAT_UNSPECIFIED",
            "JSON",
            "TEXT",
            "TF_RECORD",
            "TF_RECORD_GZIP",
            "CSV"
          ],
          "enumDescriptions": [
            "Unspecified format.",
            "Each line of the file is a JSON dictionary representing one record.",
            "Deprecated. Use JSON instead.",
            "The source file is a TFRecord file.\nCurrently available only for input data.",
            "The source file is a GZIP-compressed TFRecord file.\nCurrently available only for input data.",
            "Values are comma-separated rows, with keys in a separate file.\nCurrently available only for output data."
          ],
          "type": "string"
        },
        "outputPath": {
          "description": "Required. The output Google Cloud Storage location.",
          "type": "string"
        },
        "region": {
          "description": "Required. The Google Compute Engine region to run the prediction job in.\nSee the \u003ca href=\"/ml-engine/docs/tensorflow/regions\"\u003eavailable regions\u003c/a\u003e\nfor AI Platform services.",
          "type": "string"
        },
        "runtimeVersion": {
          "description": "Optional. The AI Platform runtime version to use for this batch\nprediction. If not set, AI Platform will pick the runtime version used\nduring the CreateVersion request for this model version, or choose the\nlatest stable version when model version information is not available\nsuch as when the model is specified by uri.",
          "type": "string"
        },
        "signatureName": {
          "description": "Optional. The name of the signature defined in the SavedModel to use for\nthis job. Please refer to\n[SavedModel](https://tensorflow.github.io/serving/serving_basic.html)\nfor information about how to use signatures.\n\nDefaults to\n[DEFAULT_SERVING_SIGNATURE_DEF_KEY](https://www.tensorflow.org/api_docs/python/tf/saved_model/signature_constants)\n, which is \"serving_default\".",
          "type": "string"
        },
        "uri": {
          "description": "Use this field if you want to specify a Google Cloud Storage path for\nthe model to use.",
          "type": "string"
        },
        "versionName": {
          "description": "Use this field if you want to specify a version of the model to use. The\nstring is formatted the same way as `model_version`, with the addition\nof the version information:\n\n`\"projects/YOUR_PROJECT/models/YOUR_MODEL/versions/YOUR_VERSION\"`",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__PredictionOutput": {
      "description": "Represents results of a prediction job.",
      "id": "GoogleCloudMlV1__PredictionOutput",
      "properties": {
        "errorCount": {
          "description": "The number of data instances which resulted in errors.",
          "format": "int64",
          "type": "string"
        },
        "nodeHours": {
          "description": "Node hours used by the batch prediction job.",
          "format": "double",
          "type": "number"
        },
        "outputPath": {
          "description": "The output Google Cloud Storage location provided at the job creation time.",
          "type": "string"
        },
        "predictionCount": {
          "description": "The number of generated predictions.",
          "format": "int64",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__ReplicaConfig": {
      "description": "Represents the configuration for a replica in a cluster.",
      "id": "GoogleCloudMlV1__ReplicaConfig",
      "properties": {
        "acceleratorConfig": {
          "$ref": "GoogleCloudMlV1__AcceleratorConfig",
          "description": "Represents the type and number of accelerators used by the replica.\n[Learn about restrictions on accelerator configurations for\ntraining.](/ai-platform/training/docs/using-gpus#compute-engine-machine-types-with-gpu)"
        },
        "containerArgs": {
          "description": "Arguments to the entrypoint command.\nThe following rules apply for container_command and container_args:\n- If you do not supply command or args:\n  The defaults defined in the Docker image are used.\n- If you supply a command but no args:\n  The default EntryPoint and the default Cmd defined in the Docker image\n  are ignored. Your command is run without any arguments.\n- If you supply only args:\n  The default Entrypoint defined in the Docker image is run with the args\n  that you supplied.\n- If you supply a command and args:\n  The default Entrypoint and the default Cmd defined in the Docker image\n  are ignored. Your command is run with your args.\nIt cannot be set if custom container image is\nnot provided.\nNote that this field and [TrainingInput.args] are mutually exclusive, i.e.,\nboth cannot be set at the same time.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "containerCommand": {
          "description": "The command with which the replica's custom container is run.\nIf provided, it will override default ENTRYPOINT of the docker image.\nIf not provided, the docker image's ENTRYPOINT is used.\nIt cannot be set if custom container image is\nnot provided.\nNote that this field and [TrainingInput.args] are mutually exclusive, i.e.,\nboth cannot be set at the same time.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "imageUri": {
          "description": "The Docker image to run on the replica. This image must be in Container\nRegistry. Learn more about [configuring custom\ncontainers](/ai-platform/training/docs/distributed-training-containers).",
          "type": "string"
        },
        "tpuTfVersion": {
          "description": "The AI Platform runtime version that includes a TensorFlow version matching\nthe one used in the custom container. This field is required if the replica\nis a TPU worker that uses a custom container. Otherwise, do not specify\nthis field. This must be a [runtime version that currently supports\ntraining with\nTPUs](/ml-engine/docs/tensorflow/runtime-version-list#tpu-support).\n\nNote that the version of TensorFlow included in a runtime version may\ndiffer from the numbering of the runtime version itself, because it may\nhave a different [patch\nversion](https://www.tensorflow.org/guide/version_compat#semantic_versioning_20).\nIn this field, you must specify the runtime version (TensorFlow minor\nversion). For example, if your custom container runs TensorFlow `1.x.y`,\nspecify `1.x`.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__RequestLoggingConfig": {
      "description": "Configuration for logging request-response pairs to a BigQuery table.\nOnline prediction requests to a model version and the responses to these\nrequests are converted to raw strings and saved to the specified BigQuery\ntable. Logging is constrained by [BigQuery quotas and\nlimits](/bigquery/quotas). If your project exceeds BigQuery quotas or limits,\nAI Platform Prediction does not log request-response pairs, but it continues\nto serve predictions.\n\nIf you are using [continuous\nevaluation](/ml-engine/docs/continuous-evaluation/), you do not need to\nspecify this configuration manually. Setting up continuous evaluation\nautomatically enables logging of request-response pairs.",
      "id": "GoogleCloudMlV1__RequestLoggingConfig",
      "properties": {
        "bigqueryTableName": {
          "description": "Required. Fully qualified BigQuery table name in the following format:\n\"\u003cvar\u003eproject_id\u003c/var\u003e.\u003cvar\u003edataset_name\u003c/var\u003e.\u003cvar\u003etable_name\u003c/var\u003e\"\n\nThe specified table must already exist, and the \"Cloud ML Service Agent\"\nfor your project must have permission to write to it. The table must have\nthe following [schema](/bigquery/docs/schemas):\n\n\u003ctable\u003e\n  \u003ctr\u003e\u003cth\u003eField name\u003c/th\u003e\u003cth style=\"display: table-cell\"\u003eType\u003c/th\u003e\n    \u003cth style=\"display: table-cell\"\u003eMode\u003c/th\u003e\u003c/tr\u003e\n  \u003ctr\u003e\u003ctd\u003emodel\u003c/td\u003e\u003ctd\u003eSTRING\u003c/td\u003e\u003ctd\u003eREQUIRED\u003c/td\u003e\u003c/tr\u003e\n  \u003ctr\u003e\u003ctd\u003emodel_version\u003c/td\u003e\u003ctd\u003eSTRING\u003c/td\u003e\u003ctd\u003eREQUIRED\u003c/td\u003e\u003c/tr\u003e\n  \u003ctr\u003e\u003ctd\u003etime\u003c/td\u003e\u003ctd\u003eTIMESTAMP\u003c/td\u003e\u003ctd\u003eREQUIRED\u003c/td\u003e\u003c/tr\u003e\n  \u003ctr\u003e\u003ctd\u003eraw_data\u003c/td\u003e\u003ctd\u003eSTRING\u003c/td\u003e\u003ctd\u003eREQUIRED\u003c/td\u003e\u003c/tr\u003e\n  \u003ctr\u003e\u003ctd\u003eraw_prediction\u003c/td\u003e\u003ctd\u003eSTRING\u003c/td\u003e\u003ctd\u003eNULLABLE\u003c/td\u003e\u003c/tr\u003e\n  \u003ctr\u003e\u003ctd\u003egroundtruth\u003c/td\u003e\u003ctd\u003eSTRING\u003c/td\u003e\u003ctd\u003eNULLABLE\u003c/td\u003e\u003c/tr\u003e\n\u003c/table\u003e",
          "type": "string"
        },
        "samplingPercentage": {
          "description": "Percentage of requests to be logged, expressed as a fraction from 0 to 1.\nFor example, if you want to log 10% of requests, enter `0.1`. The sampling\nwindow is the lifetime of the model version. Defaults to 0.",
          "format": "double",
          "type": "number"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__SampledShapleyAttribution": {
      "description": "An attribution method that approximates Shapley values for features that\ncontribute to the label being predicted. A sampling strategy is used to\napproximate the value rather than considering all subsets of features.",
      "id": "GoogleCloudMlV1__SampledShapleyAttribution",
      "properties": {
        "numPaths": {
          "description": "The number of feature permutations to consider when approximating the\nShapley values.",
          "format": "int32",
          "type": "integer"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__Scheduling": {
      "description": "All parameters related to scheduling of training jobs.",
      "id": "GoogleCloudMlV1__Scheduling",
      "properties": {
        "maxRunningTime": {
          "description": "Optional. The maximum job running time, expressed in seconds. The field can\ncontain up to nine fractional digits, terminated by `s`. If not specified,\nthis field defaults to `604800s` (seven days).\n\nIf the training job is still running after this duration, AI Platform\nTraining cancels it.\n\nFor example, if you want to ensure your job runs for no more than 2 hours,\nset this field to `7200s` (2 hours * 60 minutes / hour * 60 seconds /\nminute).\n\nIf you submit your training job using the `gcloud` tool, you can [provide\nthis field in a `config.yaml`\nfile](/ai-platform/training/docs/training-jobs#formatting_your_configuration_parameters).\nFor example:\n\n```yaml\ntrainingInput:\n  ...\n  scheduling:\n    maxRunningTime: 7200s\n  ...\n```",
          "format": "google-duration",
          "type": "string"
        },
        "maxWaitTime": {
          "format": "google-duration",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__SetDefaultVersionRequest": {
      "description": "Request message for the SetDefaultVersion request.",
      "id": "GoogleCloudMlV1__SetDefaultVersionRequest",
      "properties": {},
      "type": "object"
    },
    "GoogleCloudMlV1__StopTrialRequest": {
      "id": "GoogleCloudMlV1__StopTrialRequest",
      "properties": {},
      "type": "object"
    },
    "GoogleCloudMlV1__Study": {
      "description": "A message representing a Study.",
      "id": "GoogleCloudMlV1__Study",
      "properties": {
        "createTime": {
          "description": "Output only. Time at which the study was created.",
          "format": "google-datetime",
          "type": "string"
        },
        "inactiveReason": {
          "description": "Output only. A human readable reason why the Study is inactive.\nThis should be empty if a study is ACTIVE or COMPLETED.",
          "type": "string"
        },
        "name": {
          "description": "Output only. The name of a study.",
          "type": "string"
        },
        "state": {
          "description": "Output only. The detailed state of a study.",
          "enum": [
            "STATE_UNSPECIFIED",
            "ACTIVE",
            "INACTIVE",
            "COMPLETED"
          ],
          "enumDescriptions": [
            "The study state is unspecified.",
            "The study is active.",
            "The study is stopped due to an internal error.",
            "The study is done when the service exhausts the parameter search space\nor max_trial_count is reached."
          ],
          "type": "string"
        },
        "studyConfig": {
          "$ref": "GoogleCloudMlV1__StudyConfig",
          "description": "Required. Configuration of the study."
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__StudyConfig": {
      "description": "Represents configuration of a study.",
      "id": "GoogleCloudMlV1__StudyConfig",
      "properties": {
        "algorithm": {
          "description": "The search algorithm specified for the study.",
          "enum": [
            "ALGORITHM_UNSPECIFIED",
            "GAUSSIAN_PROCESS_BANDIT",
            "GRID_SEARCH",
            "RANDOM_SEARCH"
          ],
          "enumDescriptions": [
            "The default algorithm used by the Cloud AI Platform Optimization service.",
            "Gaussian Process Bandit.",
            "Simple grid search within the feasible space. To use grid search,\nall parameters must be `INTEGER`, `CATEGORICAL`, or `DISCRETE`.",
            "Simple random search within the feasible space."
          ],
          "type": "string"
        },
        "automatedStoppingConfig": {
          "$ref": "GoogleCloudMlV1__AutomatedStoppingConfig",
          "description": "Configuration for automated stopping of unpromising Trials."
        },
        "metrics": {
          "description": "Metric specs for the study.",
          "items": {
            "$ref": "GoogleCloudMlV1_StudyConfig_MetricSpec"
          },
          "type": "array"
        },
        "parameters": {
          "description": "Required. The set of parameters to tune.",
          "items": {
            "$ref": "GoogleCloudMlV1_StudyConfig_ParameterSpec"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__SuggestTrialsMetadata": {
      "description": "Metadata field of a google.longrunning.Operation associated\nwith a SuggestTrialsRequest.",
      "id": "GoogleCloudMlV1__SuggestTrialsMetadata",
      "properties": {
        "clientId": {
          "description": "The identifier of the client that is requesting the suggestion.",
          "type": "string"
        },
        "createTime": {
          "description": "The time operation was submitted.",
          "format": "google-datetime",
          "type": "string"
        },
        "study": {
          "description": "The name of the study that the trial belongs to.",
          "type": "string"
        },
        "suggestionCount": {
          "description": "The number of suggestions requested.",
          "format": "int32",
          "type": "integer"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__SuggestTrialsRequest": {
      "description": "The request message for the SuggestTrial service method.",
      "id": "GoogleCloudMlV1__SuggestTrialsRequest",
      "properties": {
        "clientId": {
          "description": "Required. The identifier of the client that is requesting the suggestion.\n\nIf multiple SuggestTrialsRequests have the same `client_id`,\nthe service will return the identical suggested trial if the trial is\npending, and provide a new trial if the last suggested trial was completed.",
          "type": "string"
        },
        "suggestionCount": {
          "description": "Required. The number of suggestions requested.",
          "format": "int32",
          "type": "integer"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__SuggestTrialsResponse": {
      "description": "This message will be placed in the response field of a completed\ngoogle.longrunning.Operation associated with a SuggestTrials request.",
      "id": "GoogleCloudMlV1__SuggestTrialsResponse",
      "properties": {
        "endTime": {
          "description": "The time at which operation processing completed.",
          "format": "google-datetime",
          "type": "string"
        },
        "startTime": {
          "description": "The time at which the operation was started.",
          "format": "google-datetime",
          "type": "string"
        },
        "studyState": {
          "description": "The state of the study.",
          "enum": [
            "STATE_UNSPECIFIED",
            "ACTIVE",
            "INACTIVE",
            "COMPLETED"
          ],
          "enumDescriptions": [
            "The study state is unspecified.",
            "The study is active.",
            "The study is stopped due to an internal error.",
            "The study is done when the service exhausts the parameter search space\nor max_trial_count is reached."
          ],
          "type": "string"
        },
        "trials": {
          "description": "A list of trials.",
          "items": {
            "$ref": "GoogleCloudMlV1__Trial"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__TrainingInput": {
      "description": "Represents input parameters for a training job. When using the gcloud command\nto submit your training job, you can specify the input parameters as\ncommand-line arguments and/or in a YAML configuration file referenced from\nthe --config command-line argument. For details, see the guide to [submitting\na training job](/ai-platform/training/docs/training-jobs).",
      "id": "GoogleCloudMlV1__TrainingInput",
      "properties": {
        "args": {
          "description": "Optional. Command-line arguments passed to the training application when it\nstarts. If your job uses a custom container, then the arguments are passed\nto the container's \u003ca class=\"external\" target=\"_blank\"\nhref=\"https://docs.docker.com/engine/reference/builder/#entrypoint\"\u003e\n`ENTRYPOINT`\u003c/a\u003e command.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "encryptionConfig": {
          "$ref": "GoogleCloudMlV1__EncryptionConfig",
          "description": "Optional. Options for using customer-managed encryption keys (CMEK) to\nprotect resources created by a training job, instead of using Google's\ndefault encryption. If this is set, then all resources created by the\ntraining job will be encrypted with the customer-managed encryption key\nthat you specify.\n\n[Learn how and when to use CMEK with AI Platform\nTraining](/ai-platform/training/docs/cmek)."
        },
        "evaluatorConfig": {
          "$ref": "GoogleCloudMlV1__ReplicaConfig",
          "description": "Optional. The configuration for evaluators.\n\nYou should only set `evaluatorConfig.acceleratorConfig` if\n`evaluatorType` is set to a Compute Engine machine type. [Learn\nabout restrictions on accelerator configurations for\ntraining.](/ai-platform/training/docs/using-gpus#compute-engine-machine-types-with-gpu)\n\nSet `evaluatorConfig.imageUri` only if you build a custom image for\nyour evaluator. If `evaluatorConfig.imageUri` has not been\nset, AI Platform uses the value of `masterConfig.imageUri`. Learn more about [configuring custom\ncontainers](/ai-platform/training/docs/distributed-training-containers)."
        },
        "evaluatorCount": {
          "description": "Optional. The number of evaluator replicas to use for the training job.\nEach replica in the cluster will be of the type specified in\n`evaluator_type`.\n\nThis value can only be used when `scale_tier` is set to `CUSTOM`. If you\nset this value, you must also set `evaluator_type`.\n\nThe default value is zero.",
          "format": "int64",
          "type": "string"
        },
        "evaluatorType": {
          "description": "Optional. Specifies the type of virtual machine to use for your training\njob's evaluator nodes.\n\nThe supported values are the same as those described in the entry for\n`masterType`.\n\nThis value must be consistent with the category of machine type that\n`masterType` uses. In other words, both must be Compute Engine machine\ntypes or both must be legacy machine types.\n\nThis value must be present when `scaleTier` is set to `CUSTOM` and\n`evaluatorCount` is greater than zero.",
          "type": "string"
        },
        "hyperparameters": {
          "$ref": "GoogleCloudMlV1__HyperparameterSpec",
          "description": "Optional. The set of Hyperparameters to tune."
        },
        "jobDir": {
          "description": "Optional. A Google Cloud Storage path in which to store training outputs\nand other data needed for training. This path is passed to your TensorFlow\nprogram as the '--job-dir' command-line argument. The benefit of specifying\nthis field is that Cloud ML validates the path for use in training.",
          "type": "string"
        },
        "masterConfig": {
          "$ref": "GoogleCloudMlV1__ReplicaConfig",
          "description": "Optional. The configuration for your master worker.\n\nYou should only set `masterConfig.acceleratorConfig` if `masterType` is set\nto a Compute Engine machine type. Learn about [restrictions on accelerator\nconfigurations for\ntraining.](/ai-platform/training/docs/using-gpus#compute-engine-machine-types-with-gpu)\n\nSet `masterConfig.imageUri` only if you build a custom image. Only one of\n`masterConfig.imageUri` and `runtimeVersion` should be set. Learn more\nabout [configuring custom\ncontainers](/ai-platform/training/docs/distributed-training-containers)."
        },
        "masterType": {
          "description": "Optional. Specifies the type of virtual machine to use for your training\njob's master worker. You must specify this field when `scaleTier` is set to\n`CUSTOM`.\n\nYou can use certain Compute Engine machine types directly in this field.\nThe following types are supported:\n\n- `n1-standard-4`\n- `n1-standard-8`\n- `n1-standard-16`\n- `n1-standard-32`\n- `n1-standard-64`\n- `n1-standard-96`\n- `n1-highmem-2`\n- `n1-highmem-4`\n- `n1-highmem-8`\n- `n1-highmem-16`\n- `n1-highmem-32`\n- `n1-highmem-64`\n- `n1-highmem-96`\n- `n1-highcpu-16`\n- `n1-highcpu-32`\n- `n1-highcpu-64`\n- `n1-highcpu-96`\n\nLearn more about [using Compute Engine machine\ntypes](/ml-engine/docs/machine-types#compute-engine-machine-types).\n\nAlternatively, you can use the following legacy machine types:\n\n- `standard`\n- `large_model`\n- `complex_model_s`\n- `complex_model_m`\n- `complex_model_l`\n- `standard_gpu`\n- `complex_model_m_gpu`\n- `complex_model_l_gpu`\n- `standard_p100`\n- `complex_model_m_p100`\n- `standard_v100`\n- `large_model_v100`\n- `complex_model_m_v100`\n- `complex_model_l_v100`\n\nLearn more about [using legacy machine\ntypes](/ml-engine/docs/machine-types#legacy-machine-types).\n\nFinally, if you want to use a TPU for training, specify `cloud_tpu` in this\nfield. Learn more about the [special configuration options for training\nwith\nTPUs](/ml-engine/docs/tensorflow/using-tpus#configuring_a_custom_tpu_machine).",
          "type": "string"
        },
        "network": {
          "description": "Optional. The full name of the Google Compute Engine\n[network](/compute/docs/networks-and-firewalls#networks) to which the Job\nis peered. For example, projects/12345/global/networks/myVPC. Format is of\nthe form projects/{project}/global/networks/{network}. Where {project} is a\nproject number, as in '12345', and {network} is network name.\".\n\nPrivate services access must already be configured for the network. If left\nunspecified, the Job is not peered with any network. Learn more -\nConnecting Job to user network over private\nIP.",
          "type": "string"
        },
        "packageUris": {
          "description": "Required. The Google Cloud Storage location of the packages with\nthe training program and any additional dependencies.\nThe maximum number of package URIs is 100.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "parameterServerConfig": {
          "$ref": "GoogleCloudMlV1__ReplicaConfig",
          "description": "Optional. The configuration for parameter servers.\n\nYou should only set `parameterServerConfig.acceleratorConfig` if\n`parameterServerType` is set to a Compute Engine machine type. [Learn\nabout restrictions on accelerator configurations for\ntraining.](/ai-platform/training/docs/using-gpus#compute-engine-machine-types-with-gpu)\n\nSet `parameterServerConfig.imageUri` only if you build a custom image for\nyour parameter server. If `parameterServerConfig.imageUri` has not been\nset, AI Platform uses the value of `masterConfig.imageUri`. Learn more about [configuring custom\ncontainers](/ai-platform/training/docs/distributed-training-containers)."
        },
        "parameterServerCount": {
          "description": "Optional. The number of parameter server replicas to use for the training\njob. Each replica in the cluster will be of the type specified in\n`parameter_server_type`.\n\nThis value can only be used when `scale_tier` is set to `CUSTOM`. If you\nset this value, you must also set `parameter_server_type`.\n\nThe default value is zero.",
          "format": "int64",
          "type": "string"
        },
        "parameterServerType": {
          "description": "Optional. Specifies the type of virtual machine to use for your training\njob's parameter server.\n\nThe supported values are the same as those described in the entry for\n`master_type`.\n\nThis value must be consistent with the category of machine type that\n`masterType` uses. In other words, both must be Compute Engine machine\ntypes or both must be legacy machine types.\n\nThis value must be present when `scaleTier` is set to `CUSTOM` and\n`parameter_server_count` is greater than zero.",
          "type": "string"
        },
        "pythonModule": {
          "description": "Required. The Python module name to run after installing the packages.",
          "type": "string"
        },
        "pythonVersion": {
          "description": "Optional. The version of Python used in training. You must either specify\nthis field or specify `masterConfig.imageUri`.\n\nThe following Python versions are available:\n\n* Python '3.7' is available when `runtime_version` is set to '1.15' or\n  later.\n* Python '3.5' is available when `runtime_version` is set to a version\n  from '1.4' to '1.14'.\n* Python '2.7' is available when `runtime_version` is set to '1.15' or\n  earlier.\n\nRead more about the Python versions available for [each runtime\nversion](/ml-engine/docs/runtime-version-list).",
          "type": "string"
        },
        "region": {
          "description": "Required. The region to run the training job in. See the [available\nregions](/ai-platform/training/docs/regions) for AI Platform Training.",
          "type": "string"
        },
        "runtimeVersion": {
          "description": "Optional. The AI Platform runtime version to use for training. You must\neither specify this field or specify `masterConfig.imageUri`.\n\nFor more information, see the [runtime version\nlist](/ai-platform/training/docs/runtime-version-list) and learn [how to\nmanage runtime versions](/ai-platform/training/docs/versioning).",
          "type": "string"
        },
        "scaleTier": {
          "description": "Required. Specifies the machine types, the number of replicas for workers\nand parameter servers.",
          "enum": [
            "BASIC",
            "STANDARD_1",
            "PREMIUM_1",
            "BASIC_GPU",
            "BASIC_TPU",
            "CUSTOM"
          ],
          "enumDescriptions": [
            "A single worker instance. This tier is suitable for learning how to use\nCloud ML, and for experimenting with new models using small datasets.",
            "Many workers and a few parameter servers.",
            "A large number of workers with many parameter servers.",
            "A single worker instance [with a\nGPU](/ai-platform/training/docs/using-gpus).",
            "A single worker instance with a\n[Cloud TPU](/ml-engine/docs/tensorflow/using-tpus).",
            "The CUSTOM tier is not a set tier, but rather enables you to use your\nown cluster specification. When you use this tier, set values to\nconfigure your processing cluster according to these guidelines:\n\n*   You _must_ set `TrainingInput.masterType` to specify the type\n    of machine to use for your master node. This is the only required\n    setting.\n\n*   You _may_ set `TrainingInput.workerCount` to specify the number of\n    workers to use. If you specify one or more workers, you _must_ also\n    set `TrainingInput.workerType` to specify the type of machine to use\n    for your worker nodes.\n\n*   You _may_ set `TrainingInput.parameterServerCount` to specify the\n    number of parameter servers to use. If you specify one or more\n    parameter servers, you _must_ also set\n    `TrainingInput.parameterServerType` to specify the type of machine to\n    use for your parameter servers.\n\nNote that all of your workers must use the same machine type, which can\nbe different from your parameter server type and master type. Your\nparameter servers must likewise use the same machine type, which can be\ndifferent from your worker type and master type."
          ],
          "type": "string"
        },
        "scheduling": {
          "$ref": "GoogleCloudMlV1__Scheduling",
          "description": "Optional. Scheduling options for a training job."
        },
        "serviceAccount": {
          "description": "Optional. Specifies the service account for workload run-as account.\nUsers submitting jobs must have act-as permission on this run-as account.\nIf not specified, then CMLE P4SA will be used by default.",
          "type": "string"
        },
        "useChiefInTfConfig": {
          "description": "Optional. Use `chief` instead of `master` in the `TF_CONFIG` environment\nvariable when training with a custom container. Defaults to `false`. [Learn\nmore about this\nfield.](/ai-platform/training/docs/distributed-training-details#chief-versus-master)\n\nThis field has no effect for training jobs that don't use a custom\ncontainer.",
          "type": "boolean"
        },
        "workerConfig": {
          "$ref": "GoogleCloudMlV1__ReplicaConfig",
          "description": "Optional. The configuration for workers.\n\nYou should only set `workerConfig.acceleratorConfig` if `workerType` is set\nto a Compute Engine machine type. [Learn about restrictions on accelerator\nconfigurations for\ntraining.](/ai-platform/training/docs/using-gpus#compute-engine-machine-types-with-gpu)\n\nSet `workerConfig.imageUri` only if you build a custom image for your\nworker. If `workerConfig.imageUri` has not been set, AI Platform uses\nthe value of `masterConfig.imageUri`. Learn more about [configuring custom\ncontainers](/ai-platform/training/docs/distributed-training-containers)."
        },
        "workerCount": {
          "description": "Optional. The number of worker replicas to use for the training job. Each\nreplica in the cluster will be of the type specified in `worker_type`.\n\nThis value can only be used when `scale_tier` is set to `CUSTOM`. If you\nset this value, you must also set `worker_type`.\n\nThe default value is zero.",
          "format": "int64",
          "type": "string"
        },
        "workerType": {
          "description": "Optional. Specifies the type of virtual machine to use for your training\njob's worker nodes.\n\nThe supported values are the same as those described in the entry for\n`masterType`.\n\nThis value must be consistent with the category of machine type that\n`masterType` uses. In other words, both must be Compute Engine machine\ntypes or both must be legacy machine types.\n\nIf you use `cloud_tpu` for this value, see special instructions for\n[configuring a custom TPU\nmachine](/ml-engine/docs/tensorflow/using-tpus#configuring_a_custom_tpu_machine).\n\nThis value must be present when `scaleTier` is set to `CUSTOM` and\n`workerCount` is greater than zero.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__TrainingOutput": {
      "description": "Represents results of a training job. Output only.",
      "id": "GoogleCloudMlV1__TrainingOutput",
      "properties": {
        "builtInAlgorithmOutput": {
          "$ref": "GoogleCloudMlV1__BuiltInAlgorithmOutput",
          "description": "Details related to built-in algorithms jobs.\nOnly set for built-in algorithms jobs."
        },
        "completedTrialCount": {
          "description": "The number of hyperparameter tuning trials that completed successfully.\nOnly set for hyperparameter tuning jobs.",
          "format": "int64",
          "type": "string"
        },
        "consumedMLUnits": {
          "description": "The amount of ML units consumed by the job.",
          "format": "double",
          "type": "number"
        },
        "hyperparameterMetricTag": {
          "description": "The TensorFlow summary tag name used for optimizing hyperparameter tuning\ntrials. See\n[`HyperparameterSpec.hyperparameterMetricTag`](#HyperparameterSpec.FIELDS.hyperparameter_metric_tag)\nfor more information. Only set for hyperparameter tuning jobs.",
          "type": "string"
        },
        "isBuiltInAlgorithmJob": {
          "description": "Whether this job is a built-in Algorithm job.",
          "type": "boolean"
        },
        "isHyperparameterTuningJob": {
          "description": "Whether this job is a hyperparameter tuning job.",
          "type": "boolean"
        },
        "trials": {
          "description": "Results for individual Hyperparameter trials.\nOnly set for hyperparameter tuning jobs.",
          "items": {
            "$ref": "GoogleCloudMlV1__HyperparameterOutput"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__Trial": {
      "description": "A message representing a trial.",
      "id": "GoogleCloudMlV1__Trial",
      "properties": {
        "clientId": {
          "description": "Output only. The identifier of the client that originally requested this trial.",
          "type": "string"
        },
        "endTime": {
          "description": "Output only. Time at which the trial's status changed to COMPLETED.",
          "format": "google-datetime",
          "type": "string"
        },
        "finalMeasurement": {
          "$ref": "GoogleCloudMlV1__Measurement",
          "description": "The final measurement containing the objective value."
        },
        "infeasibleReason": {
          "description": "Output only. A human readable string describing why the trial is\ninfeasible. This should only be set if trial_infeasible is true.",
          "type": "string"
        },
        "measurements": {
          "description": "A list of measurements that are strictly lexicographically\nordered by their induced tuples (steps, elapsed_time).\nThese are used for early stopping computations.",
          "items": {
            "$ref": "GoogleCloudMlV1__Measurement"
          },
          "type": "array"
        },
        "name": {
          "description": "Output only. Name of the trial assigned by the service.",
          "type": "string"
        },
        "parameters": {
          "description": "The parameters of the trial.",
          "items": {
            "$ref": "GoogleCloudMlV1_Trial_Parameter"
          },
          "type": "array"
        },
        "startTime": {
          "description": "Output only. Time at which the trial was started.",
          "format": "google-datetime",
          "type": "string"
        },
        "state": {
          "description": "The detailed state of a trial.",
          "enum": [
            "STATE_UNSPECIFIED",
            "REQUESTED",
            "ACTIVE",
            "COMPLETED",
            "STOPPING"
          ],
          "enumDescriptions": [
            "The trial state is unspecified.",
            "Indicates that a specific trial has been requested, but it has not yet\nbeen suggested by the service.",
            "Indicates that the trial has been suggested.",
            "Indicates that the trial is done, and either has a final_measurement\nset, or is marked as trial_infeasible.",
            "Indicates that the trial should stop according to the service."
          ],
          "type": "string"
        },
        "trialInfeasible": {
          "description": "Output only. If true, the parameters in this trial are not attempted again.",
          "type": "boolean"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__Version": {
      "description": "Represents a version of the model.\n\nEach version is a trained model deployed in the cloud, ready to handle\nprediction requests. A model can have multiple versions. You can get\ninformation about all of the versions of a given model by calling\nprojects.models.versions.list.",
      "id": "GoogleCloudMlV1__Version",
      "properties": {
        "acceleratorConfig": {
          "$ref": "GoogleCloudMlV1__AcceleratorConfig",
          "description": "Optional. Accelerator config for using GPUs for online prediction (beta).\nOnly specify this field if you have specified a Compute Engine (N1) machine\ntype in the `machineType` field. Learn more about [using GPUs for online\nprediction](/ml-engine/docs/machine-types-online-prediction#gpus)."
        },
        "autoScaling": {
          "$ref": "GoogleCloudMlV1__AutoScaling",
          "description": "Automatically scale the number of nodes used to serve the model in\nresponse to increases and decreases in traffic. Care should be\ntaken to ramp up traffic according to the model's ability to scale\nor you will start seeing increases in latency and 429 response codes.\n\nNote that you cannot use AutoScaling if your version uses\n[GPUs](#Version.FIELDS.accelerator_config). Instead, you must use specify\n`manual_scaling`."
        },
        "createTime": {
          "description": "Output only. The time the version was created.",
          "format": "google-datetime",
          "type": "string"
        },
        "deploymentUri": {
          "description": "Required. The Cloud Storage location of the trained model used to\ncreate the version. See the\n[guide to model\ndeployment](/ml-engine/docs/tensorflow/deploying-models) for more\ninformation.\n\nWhen passing Version to\nprojects.models.versions.create\nthe model service uses the specified location as the source of the model.\nOnce deployed, the model version is hosted by the prediction service, so\nthis location is useful only as a historical record.\nThe total number of model files can't exceed 1000.",
          "type": "string"
        },
        "description": {
          "description": "Optional. The description specified for the version when it was created.",
          "type": "string"
        },
        "errorMessage": {
          "description": "Output only. The details of a failure or a cancellation.",
          "type": "string"
        },
        "etag": {
          "description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a model from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform model updates in order to avoid race\nconditions: An `etag` is returned in the response to `GetVersion`, and\nsystems are expected to put that etag in the request to `UpdateVersion` to\nensure that their change will be applied to the model as intended.",
          "format": "byte",
          "type": "string"
        },
        "explanationConfig": {
          "$ref": "GoogleCloudMlV1__ExplanationConfig",
          "description": "Optional. Configures explainability features on the model's version.\nSome explanation features require additional metadata to be loaded\nas part of the model payload."
        },
        "framework": {
          "description": "Optional. The machine learning framework AI Platform uses to train\nthis version of the model. Valid values are `TENSORFLOW`, `SCIKIT_LEARN`,\n`XGBOOST`. If you do not specify a framework, AI Platform\nwill analyze files in the deployment_uri to determine a framework. If you\nchoose `SCIKIT_LEARN` or `XGBOOST`, you must also set the runtime version\nof the model to 1.4 or greater.\n\nDo **not** specify a framework if you're deploying a [custom\nprediction routine](/ml-engine/docs/tensorflow/custom-prediction-routines).\n\nIf you specify a [Compute Engine (N1) machine\ntype](/ml-engine/docs/machine-types-online-prediction) in the\n`machineType` field, you must specify `TENSORFLOW`\nfor the framework.",
          "enum": [
            "FRAMEWORK_UNSPECIFIED",
            "TENSORFLOW",
            "SCIKIT_LEARN",
            "XGBOOST"
          ],
          "enumDescriptions": [
            "Unspecified framework. Assigns a value based on the file suffix.",
            "Tensorflow framework.",
            "Scikit-learn framework.",
            "XGBoost framework."
          ],
          "type": "string"
        },
        "isDefault": {
          "description": "Output only. If true, this version will be used to handle prediction\nrequests that do not specify a version.\n\nYou can change the default version by calling\nprojects.methods.versions.setDefault.",
          "type": "boolean"
        },
        "labels": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "Optional. One or more labels that you can add, to organize your model\nversions. Each label is a key-value pair, where both the key and the value\nare arbitrary strings that you supply.\nFor more information, see the documentation on\n\u003ca href=\"/ml-engine/docs/tensorflow/resource-labels\"\u003eusing labels\u003c/a\u003e.",
          "type": "object"
        },
        "lastUseTime": {
          "description": "Output only. The time the version was last used for prediction.",
          "format": "google-datetime",
          "type": "string"
        },
        "machineType": {
          "description": "Optional. The type of machine on which to serve the model. Currently only\napplies to online prediction service. If this field is not specified, it\ndefaults to `mls1-c1-m2`.\n\nOnline prediction supports the following machine types:\n\n* `mls1-c1-m2`\n* `mls1-c4-m2`\n* `n1-standard-2`\n* `n1-standard-4`\n* `n1-standard-8`\n* `n1-standard-16`\n* `n1-standard-32`\n* `n1-highmem-2`\n* `n1-highmem-4`\n* `n1-highmem-8`\n* `n1-highmem-16`\n* `n1-highmem-32`\n* `n1-highcpu-2`\n* `n1-highcpu-4`\n* `n1-highcpu-8`\n* `n1-highcpu-16`\n* `n1-highcpu-32`\n\n`mls1-c1-m2` is generally available. All other machine types are available\nin beta. Learn more about the [differences between machine\ntypes](/ml-engine/docs/machine-types-online-prediction).",
          "type": "string"
        },
        "manualScaling": {
          "$ref": "GoogleCloudMlV1__ManualScaling",
          "description": "Manually select the number of nodes to use for serving the\nmodel. You should generally use `auto_scaling` with an appropriate\n`min_nodes` instead, but this option is available if you want more\npredictable billing. Beware that latency and error rates will increase\nif the traffic exceeds that capability of the system to serve it based\non the selected number of nodes."
        },
        "name": {
          "description": "Required. The name specified for the version when it was created.\n\nThe version name must be unique within the model it is created in.",
          "type": "string"
        },
        "packageUris": {
          "description": "Optional. Cloud Storage paths (`gs://…`) of packages for [custom\nprediction routines](/ml-engine/docs/tensorflow/custom-prediction-routines)\nor [scikit-learn pipelines with custom\ncode](/ml-engine/docs/scikit/exporting-for-prediction#custom-pipeline-code).\n\nFor a custom prediction routine, one of these packages must contain your\nPredictor class (see\n[`predictionClass`](#Version.FIELDS.prediction_class)). Additionally,\ninclude any dependencies used by your Predictor or scikit-learn pipeline\nuses that are not already included in your selected [runtime\nversion](/ml-engine/docs/tensorflow/runtime-version-list).\n\nIf you specify this field, you must also set\n[`runtimeVersion`](#Version.FIELDS.runtime_version) to 1.4 or greater.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "predictionClass": {
          "description": "Optional. The fully qualified name\n(\u003cvar\u003emodule_name\u003c/var\u003e.\u003cvar\u003eclass_name\u003c/var\u003e) of a class that implements\nthe Predictor interface described in this reference field. The module\ncontaining this class should be included in a package provided to the\n[`packageUris` field](#Version.FIELDS.package_uris).\n\nSpecify this field if and only if you are deploying a [custom prediction\nroutine (beta)](/ml-engine/docs/tensorflow/custom-prediction-routines).\nIf you specify this field, you must set\n[`runtimeVersion`](#Version.FIELDS.runtime_version) to 1.4 or greater and\nyou must set `machineType` to a [legacy (MLS1)\nmachine type](/ml-engine/docs/machine-types-online-prediction).\n\nThe following code sample provides the Predictor interface:\n\n\u003cpre style=\"max-width: 626px;\"\u003e\nclass Predictor(object):\n\"\"\"Interface for constructing custom predictors.\"\"\"\n\ndef predict(self, instances, **kwargs):\n    \"\"\"Performs custom prediction.\n\n    Instances are the decoded values from the request. They have already\n    been deserialized from JSON.\n\n    Args:\n        instances: A list of prediction input instances.\n        **kwargs: A dictionary of keyword args provided as additional\n            fields on the predict request body.\n\n    Returns:\n        A list of outputs containing the prediction results. This list must\n        be JSON serializable.\n    \"\"\"\n    raise NotImplementedError()\n\n@classmethod\ndef from_path(cls, model_dir):\n    \"\"\"Creates an instance of Predictor using the given path.\n\n    Loading of the predictor should be done in this method.\n\n    Args:\n        model_dir: The local directory that contains the exported model\n            file along with any additional files uploaded when creating the\n            version resource.\n\n    Returns:\n        An instance implementing this Predictor class.\n    \"\"\"\n    raise NotImplementedError()\n\u003c/pre\u003e\n\nLearn more about [the Predictor interface and custom prediction\nroutines](/ml-engine/docs/tensorflow/custom-prediction-routines).",
          "type": "string"
        },
        "pythonVersion": {
          "description": "Required. The version of Python used in prediction.\n\nThe following Python versions are available:\n\n* Python '3.7' is available when `runtime_version` is set to '1.15' or\n  later.\n* Python '3.5' is available when `runtime_version` is set to a version\n  from '1.4' to '1.14'.\n* Python '2.7' is available when `runtime_version` is set to '1.15' or\n  earlier.\n\nRead more about the Python versions available for [each runtime\nversion](/ml-engine/docs/runtime-version-list).",
          "type": "string"
        },
        "requestLoggingConfig": {
          "$ref": "GoogleCloudMlV1__RequestLoggingConfig",
          "description": "Optional. *Only* specify this field in a\nprojects.models.versions.patch\nrequest. Specifying it in a\nprojects.models.versions.create\nrequest has no effect.\n\nConfigures the request-response pair logging on predictions from this\nVersion."
        },
        "runtimeVersion": {
          "description": "Required. The AI Platform runtime version to use for this deployment.\n\nFor more information, see the\n[runtime version list](/ml-engine/docs/runtime-version-list) and\n[how to manage runtime versions](/ml-engine/docs/versioning).",
          "type": "string"
        },
        "serviceAccount": {
          "description": "Optional. Specifies the service account for resource access control.",
          "type": "string"
        },
        "state": {
          "description": "Output only. The state of a version.",
          "enum": [
            "UNKNOWN",
            "READY",
            "CREATING",
            "FAILED",
            "DELETING",
            "UPDATING"
          ],
          "enumDescriptions": [
            "The version state is unspecified.",
            "The version is ready for prediction.",
            "The version is being created. New UpdateVersion and DeleteVersion\nrequests will fail if a version is in the CREATING state.",
            "The version failed to be created, possibly cancelled.\n`error_message` should contain the details of the failure.",
            "The version is being deleted. New UpdateVersion and DeleteVersion\nrequests will fail if a version is in the DELETING state.",
            "The version is being updated. New UpdateVersion and DeleteVersion\nrequests will fail if a version is in the UPDATING state."
          ],
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleCloudMlV1__XraiAttribution": {
      "description": "Attributes credit by computing the XRAI taking advantage\nof the model's fully differentiable structure. Refer to this paper for\nmore details: https://arxiv.org/abs/1906.02825\nCurrently only implemented for models with natural image inputs.",
      "id": "GoogleCloudMlV1__XraiAttribution",
      "properties": {
        "numIntegralSteps": {
          "description": "Number of steps for approximating the path integral.\nA good value to start is 50 and gradually increase until the\nsum to diff property is met within the desired error range.",
          "format": "int32",
          "type": "integer"
        }
      },
      "type": "object"
    },
    "GoogleIamV1__AuditConfig": {
      "description": "Specifies the audit configuration for a service.\nThe configuration determines which permission types are logged, and what\nidentities, if any, are exempted from logging.\nAn AuditConfig must have one or more AuditLogConfigs.\n\nIf there are AuditConfigs for both `allServices` and a specific service,\nthe union of the two AuditConfigs is used for that service: the log_types\nspecified in each AuditConfig are enabled, and the exempted_members in each\nAuditLogConfig are exempted.\n\nExample Policy with multiple AuditConfigs:\n\n    {\n      \"audit_configs\": [\n        {\n          \"service\": \"allServices\"\n          \"audit_log_configs\": [\n            {\n              \"log_type\": \"DATA_READ\",\n              \"exempted_members\": [\n                \"user:jose@example.com\"\n              ]\n            },\n            {\n              \"log_type\": \"DATA_WRITE\",\n            },\n            {\n              \"log_type\": \"ADMIN_READ\",\n            }\n          ]\n        },\n        {\n          \"service\": \"sampleservice.googleapis.com\"\n          \"audit_log_configs\": [\n            {\n              \"log_type\": \"DATA_READ\",\n            },\n            {\n              \"log_type\": \"DATA_WRITE\",\n              \"exempted_members\": [\n                \"user:aliya@example.com\"\n              ]\n            }\n          ]\n        }\n      ]\n    }\n\nFor sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ\nlogging. It also exempts jose@example.com from DATA_READ logging, and\naliya@example.com from DATA_WRITE logging.",
      "id": "GoogleIamV1__AuditConfig",
      "properties": {
        "auditLogConfigs": {
          "description": "The configuration for logging of each type of permission.",
          "items": {
            "$ref": "GoogleIamV1__AuditLogConfig"
          },
          "type": "array"
        },
        "service": {
          "description": "Specifies a service that will be enabled for audit logging.\nFor example, `storage.googleapis.com`, `cloudsql.googleapis.com`.\n`allServices` is a special value that covers all services.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleIamV1__AuditLogConfig": {
      "description": "Provides the configuration for logging a type of permissions.\nExample:\n\n    {\n      \"audit_log_configs\": [\n        {\n          \"log_type\": \"DATA_READ\",\n          \"exempted_members\": [\n            \"user:jose@example.com\"\n          ]\n        },\n        {\n          \"log_type\": \"DATA_WRITE\",\n        }\n      ]\n    }\n\nThis enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting\njose@example.com from DATA_READ logging.",
      "id": "GoogleIamV1__AuditLogConfig",
      "properties": {
        "exemptedMembers": {
          "description": "Specifies the identities that do not cause logging for this type of\npermission.\nFollows the same format of Binding.members.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "logType": {
          "description": "The log type that this config enables.",
          "enum": [
            "LOG_TYPE_UNSPECIFIED",
            "ADMIN_READ",
            "DATA_WRITE",
            "DATA_READ"
          ],
          "enumDescriptions": [
            "Default case. Should never be this.",
            "Admin reads. Example: CloudIAM getIamPolicy",
            "Data writes. Example: CloudSQL Users create",
            "Data reads. Example: CloudSQL Users list"
          ],
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleIamV1__Binding": {
      "description": "Associates `members` with a `role`.",
      "id": "GoogleIamV1__Binding",
      "properties": {
        "condition": {
          "$ref": "GoogleType__Expr",
          "description": "The condition that is associated with this binding.\n\nIf the condition evaluates to `true`, then this binding applies to the\ncurrent request.\n\nIf the condition evaluates to `false`, then this binding does not apply to\nthe current request. However, a different role binding might grant the same\nrole to one or more of the members in this binding.\n\nTo learn which resources support conditions in their IAM policies, see the\n[IAM\ndocumentation](https://cloud.google.com/iam/help/conditions/resource-policies)."
        },
        "members": {
          "description": "Specifies the identities requesting access for a Cloud Platform resource.\n`members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is\n   on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone\n   who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google\n   account. For example, `alice@example.com` .\n\n\n* `serviceAccount:{emailid}`: An email address that represents a service\n   account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group.\n   For example, `admins@example.com`.\n\n* `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique\n   identifier) representing a user that has been recently deleted. For\n   example, `alice@example.com?uid=123456789012345678901`. If the user is\n   recovered, this value reverts to `user:{emailid}` and the recovered user\n   retains the role in the binding.\n\n* `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus\n   unique identifier) representing a service account that has been recently\n   deleted. For example,\n   `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.\n   If the service account is undeleted, this value reverts to\n   `serviceAccount:{emailid}` and the undeleted service account retains the\n   role in the binding.\n\n* `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique\n   identifier) representing a Google group that has been recently\n   deleted. For example, `admins@example.com?uid=123456789012345678901`. If\n   the group is recovered, this value reverts to `group:{emailid}` and the\n   recovered group retains the role in the binding.\n\n\n* `domain:{domain}`: The G Suite domain (primary) that represents all the\n   users of that domain. For example, `google.com` or `example.com`.\n\n",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "role": {
          "description": "Role that is assigned to `members`.\nFor example, `roles/viewer`, `roles/editor`, or `roles/owner`.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleIamV1__Policy": {
      "description": "An Identity and Access Management (IAM) policy, which specifies access\ncontrols for Google Cloud resources.\n\n\nA `Policy` is a collection of `bindings`. A `binding` binds one or more\n`members` to a single `role`. Members can be user accounts, service accounts,\nGoogle groups, and domains (such as G Suite). A `role` is a named list of\npermissions; each `role` can be an IAM predefined role or a user-created\ncustom role.\n\nFor some types of Google Cloud resources, a `binding` can also specify a\n`condition`, which is a logical expression that allows access to a resource\nonly if the expression evaluates to `true`. A condition can add constraints\nbased on attributes of the request, the resource, or both. To learn which\nresources support conditions in their IAM policies, see the\n[IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).\n\n**JSON example:**\n\n    {\n      \"bindings\": [\n        {\n          \"role\": \"roles/resourcemanager.organizationAdmin\",\n          \"members\": [\n            \"user:mike@example.com\",\n            \"group:admins@example.com\",\n            \"domain:google.com\",\n            \"serviceAccount:my-project-id@appspot.gserviceaccount.com\"\n          ]\n        },\n        {\n          \"role\": \"roles/resourcemanager.organizationViewer\",\n          \"members\": [\n            \"user:eve@example.com\"\n          ],\n          \"condition\": {\n            \"title\": \"expirable access\",\n            \"description\": \"Does not grant access after Sep 2020\",\n            \"expression\": \"request.time \u003c timestamp('2020-10-01T00:00:00.000Z')\",\n          }\n        }\n      ],\n      \"etag\": \"BwWWja0YfJA=\",\n      \"version\": 3\n    }\n\n**YAML example:**\n\n    bindings:\n    - members:\n      - user:mike@example.com\n      - group:admins@example.com\n      - domain:google.com\n      - serviceAccount:my-project-id@appspot.gserviceaccount.com\n      role: roles/resourcemanager.organizationAdmin\n    - members:\n      - user:eve@example.com\n      role: roles/resourcemanager.organizationViewer\n      condition:\n        title: expirable access\n        description: Does not grant access after Sep 2020\n        expression: request.time \u003c timestamp('2020-10-01T00:00:00.000Z')\n    - etag: BwWWja0YfJA=\n    - version: 3\n\nFor a description of IAM and its features, see the\n[IAM documentation](https://cloud.google.com/iam/docs/).",
      "id": "GoogleIamV1__Policy",
      "properties": {
        "auditConfigs": {
          "description": "Specifies cloud audit logging configuration for this policy.",
          "items": {
            "$ref": "GoogleIamV1__AuditConfig"
          },
          "type": "array"
        },
        "bindings": {
          "description": "Associates a list of `members` to a `role`. Optionally, may specify a\n`condition` that determines how and when the `bindings` are applied. Each\nof the `bindings` must contain at least one member.",
          "items": {
            "$ref": "GoogleIamV1__Binding"
          },
          "type": "array"
        },
        "etag": {
          "description": "`etag` is used for optimistic concurrency control as a way to help\nprevent simultaneous updates of a policy from overwriting each other.\nIt is strongly suggested that systems make use of the `etag` in the\nread-modify-write cycle to perform policy updates in order to avoid race\nconditions: An `etag` is returned in the response to `getIamPolicy`, and\nsystems are expected to put that etag in the request to `setIamPolicy` to\nensure that their change will be applied to the same version of the policy.\n\n**Important:** If you use IAM Conditions, you must include the `etag` field\nwhenever you call `setIamPolicy`. If you omit this field, then IAM allows\nyou to overwrite a version `3` policy with a version `1` policy, and all of\nthe conditions in the version `3` policy are lost.",
          "format": "byte",
          "type": "string"
        },
        "version": {
          "description": "Specifies the format of the policy.\n\nValid values are `0`, `1`, and `3`. Requests that specify an invalid value\nare rejected.\n\nAny operation that affects conditional role bindings must specify version\n`3`. This requirement applies to the following operations:\n\n* Getting a policy that includes a conditional role binding\n* Adding a conditional role binding to a policy\n* Changing a conditional role binding in a policy\n* Removing any role binding, with or without a condition, from a policy\n  that includes conditions\n\n**Important:** If you use IAM Conditions, you must include the `etag` field\nwhenever you call `setIamPolicy`. If you omit this field, then IAM allows\nyou to overwrite a version `3` policy with a version `1` policy, and all of\nthe conditions in the version `3` policy are lost.\n\nIf a policy does not include any conditions, operations on that policy may\nspecify any valid version or leave the field unset.\n\nTo learn which resources support conditions in their IAM policies, see the\n[IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).",
          "format": "int32",
          "type": "integer"
        }
      },
      "type": "object"
    },
    "GoogleIamV1__SetIamPolicyRequest": {
      "description": "Request message for `SetIamPolicy` method.",
      "id": "GoogleIamV1__SetIamPolicyRequest",
      "properties": {
        "policy": {
          "$ref": "GoogleIamV1__Policy",
          "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of\nthe policy is limited to a few 10s of KB. An empty policy is a\nvalid policy but certain Cloud Platform services (such as Projects)\nmight reject them."
        },
        "updateMask": {
          "description": "OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only\nthe fields in the mask will be modified. If no mask is provided, the\nfollowing default mask is used:\n\n`paths: \"bindings, etag\"`",
          "format": "google-fieldmask",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleIamV1__TestIamPermissionsRequest": {
      "description": "Request message for `TestIamPermissions` method.",
      "id": "GoogleIamV1__TestIamPermissionsRequest",
      "properties": {
        "permissions": {
          "description": "The set of permissions to check for the `resource`. Permissions with\nwildcards (such as '*' or 'storage.*') are not allowed. For more\ninformation see\n[IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).",
          "items": {
            "type": "string"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "GoogleIamV1__TestIamPermissionsResponse": {
      "description": "Response message for `TestIamPermissions` method.",
      "id": "GoogleIamV1__TestIamPermissionsResponse",
      "properties": {
        "permissions": {
          "description": "A subset of `TestPermissionsRequest.permissions` that the caller is\nallowed.",
          "items": {
            "type": "string"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "GoogleLongrunning__ListOperationsResponse": {
      "description": "The response message for Operations.ListOperations.",
      "id": "GoogleLongrunning__ListOperationsResponse",
      "properties": {
        "nextPageToken": {
          "description": "The standard List next-page token.",
          "type": "string"
        },
        "operations": {
          "description": "A list of operations that matches the specified filter in the request.",
          "items": {
            "$ref": "GoogleLongrunning__Operation"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "GoogleLongrunning__Operation": {
      "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.",
      "id": "GoogleLongrunning__Operation",
      "properties": {
        "done": {
          "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.",
          "type": "boolean"
        },
        "error": {
          "$ref": "GoogleRpc__Status",
          "description": "The error result of the operation in case of failure or cancellation."
        },
        "metadata": {
          "additionalProperties": {
            "description": "Properties of the object. Contains field @type with type URL.",
            "type": "any"
          },
          "description": "Service-specific metadata associated with the operation.  It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata.  Any method that returns a\nlong-running operation should document the metadata type, if any.",
          "type": "object"
        },
        "name": {
          "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should be a resource name ending with `operations/{unique_id}`.",
          "type": "string"
        },
        "response": {
          "additionalProperties": {
            "description": "Properties of the object. Contains field @type with type URL.",
            "type": "any"
          },
          "description": "The normal response of the operation in case of success.  If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`.  If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource.  For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name.  For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.",
          "type": "object"
        }
      },
      "type": "object"
    },
    "GoogleProtobuf__Empty": {
      "description": "A generic empty message that you can re-use to avoid defining duplicated\nempty messages in your APIs. A typical example is to use it as the request\nor the response type of an API method. For instance:\n\n    service Foo {\n      rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n    }\n\nThe JSON representation for `Empty` is empty JSON object `{}`.",
      "id": "GoogleProtobuf__Empty",
      "properties": {},
      "type": "object"
    },
    "GoogleRpc__Status": {
      "description": "The `Status` type defines a logical error model that is suitable for\ndifferent programming environments, including REST APIs and RPC APIs. It is\nused by [gRPC](https://github.com/grpc). Each `Status` message contains\nthree pieces of data: error code, error message, and error details.\n\nYou can find out more about this error model and how to work with it in the\n[API Design Guide](https://cloud.google.com/apis/design/errors).",
      "id": "GoogleRpc__Status",
      "properties": {
        "code": {
          "description": "The status code, which should be an enum value of google.rpc.Code.",
          "format": "int32",
          "type": "integer"
        },
        "details": {
          "description": "A list of messages that carry the error details.  There is a common set of\nmessage types for APIs to use.",
          "items": {
            "additionalProperties": {
              "description": "Properties of the object. Contains field @type with type URL.",
              "type": "any"
            },
            "type": "object"
          },
          "type": "array"
        },
        "message": {
          "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleType__Expr": {
      "description": "Represents a textual expression in the Common Expression Language (CEL)\nsyntax. CEL is a C-like expression language. The syntax and semantics of CEL\nare documented at https://github.com/google/cel-spec.\n\nExample (Comparison):\n\n    title: \"Summary size limit\"\n    description: \"Determines if a summary is less than 100 chars\"\n    expression: \"document.summary.size() \u003c 100\"\n\nExample (Equality):\n\n    title: \"Requestor is owner\"\n    description: \"Determines if requestor is the document owner\"\n    expression: \"document.owner == request.auth.claims.email\"\n\nExample (Logic):\n\n    title: \"Public documents\"\n    description: \"Determine whether the document should be publicly visible\"\n    expression: \"document.type != 'private' \u0026\u0026 document.type != 'internal'\"\n\nExample (Data Manipulation):\n\n    title: \"Notification string\"\n    description: \"Create a notification string with a timestamp.\"\n    expression: \"'New message received at ' + string(document.create_time)\"\n\nThe exact variables and functions that may be referenced within an expression\nare determined by the service that evaluates it. See the service\ndocumentation for additional information.",
      "id": "GoogleType__Expr",
      "properties": {
        "description": {
          "description": "Optional. Description of the expression. This is a longer text which\ndescribes the expression, e.g. when hovered over it in a UI.",
          "type": "string"
        },
        "expression": {
          "description": "Textual representation of an expression in Common Expression Language\nsyntax.",
          "type": "string"
        },
        "location": {
          "description": "Optional. String indicating the location of the expression for error\nreporting, e.g. a file name and a position in the file.",
          "type": "string"
        },
        "title": {
          "description": "Optional. Title for the expression, i.e. a short string describing\nits purpose. This can be used e.g. in UIs which allow to enter the\nexpression.",
          "type": "string"
        }
      },
      "type": "object"
    }
  },
  "servicePath": "",
  "title": "AI Platform Training \u0026 Prediction API",
  "version": "v1",
  "version_module": true
}