blob: 2e81f41198650d53a09fa26da08c79e6e27063d6 [file] [log] [blame]
// Copyright 2019 Google LLC.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
// Code generated file. DO NOT EDIT.
// Package ml provides access to the Cloud Machine Learning Engine.
//
// For product documentation, see: https://cloud.google.com/ml/
//
// Creating a client
//
// Usage example:
//
// import "google.golang.org/api/ml/v1"
// ...
// ctx := context.Background()
// mlService, err := ml.NewService(ctx)
//
// In this example, Google Application Default Credentials are used for authentication.
//
// For information on how to create and obtain Application Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials.
//
// Other authentication options
//
// To use an API key for authentication (note: some APIs do not support API keys), use option.WithAPIKey:
//
// mlService, err := ml.NewService(ctx, option.WithAPIKey("AIza..."))
//
// To use an OAuth token (e.g., a user token obtained via a three-legged OAuth flow), use option.WithTokenSource:
//
// config := &oauth2.Config{...}
// // ...
// token, err := config.Exchange(ctx, ...)
// mlService, err := ml.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token)))
//
// See https://godoc.org/google.golang.org/api/option/ for details on options.
package ml // import "google.golang.org/api/ml/v1"
import (
"bytes"
"context"
"encoding/json"
"errors"
"fmt"
"io"
"net/http"
"net/url"
"strconv"
"strings"
googleapi "google.golang.org/api/googleapi"
gensupport "google.golang.org/api/internal/gensupport"
option "google.golang.org/api/option"
htransport "google.golang.org/api/transport/http"
)
// Always reference these packages, just in case the auto-generated code
// below doesn't.
var _ = bytes.NewBuffer
var _ = strconv.Itoa
var _ = fmt.Sprintf
var _ = json.NewDecoder
var _ = io.Copy
var _ = url.Parse
var _ = gensupport.MarshalJSON
var _ = googleapi.Version
var _ = errors.New
var _ = strings.Replace
var _ = context.Canceled
const apiId = "ml:v1"
const apiName = "ml"
const apiVersion = "v1"
const basePath = "https://ml.googleapis.com/"
// OAuth2 scopes used by this API.
const (
// View and manage your data across Google Cloud Platform services
CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform"
)
// NewService creates a new Service.
func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) {
scopesOption := option.WithScopes(
"https://www.googleapis.com/auth/cloud-platform",
)
// NOTE: prepend, so we don't override user-specified scopes.
opts = append([]option.ClientOption{scopesOption}, opts...)
client, endpoint, err := htransport.NewClient(ctx, opts...)
if err != nil {
return nil, err
}
s, err := New(client)
if err != nil {
return nil, err
}
if endpoint != "" {
s.BasePath = endpoint
}
return s, nil
}
// New creates a new Service. It uses the provided http.Client for requests.
//
// Deprecated: please use NewService instead.
// To provide a custom HTTP client, use option.WithHTTPClient.
// If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead.
func New(client *http.Client) (*Service, error) {
if client == nil {
return nil, errors.New("client is nil")
}
s := &Service{client: client, BasePath: basePath}
s.Projects = NewProjectsService(s)
return s, nil
}
type Service struct {
client *http.Client
BasePath string // API endpoint base URL
UserAgent string // optional additional User-Agent fragment
Projects *ProjectsService
}
func (s *Service) userAgent() string {
if s.UserAgent == "" {
return googleapi.UserAgent
}
return googleapi.UserAgent + " " + s.UserAgent
}
func NewProjectsService(s *Service) *ProjectsService {
rs := &ProjectsService{s: s}
rs.Jobs = NewProjectsJobsService(s)
rs.Locations = NewProjectsLocationsService(s)
rs.Models = NewProjectsModelsService(s)
rs.Operations = NewProjectsOperationsService(s)
return rs
}
type ProjectsService struct {
s *Service
Jobs *ProjectsJobsService
Locations *ProjectsLocationsService
Models *ProjectsModelsService
Operations *ProjectsOperationsService
}
func NewProjectsJobsService(s *Service) *ProjectsJobsService {
rs := &ProjectsJobsService{s: s}
return rs
}
type ProjectsJobsService struct {
s *Service
}
func NewProjectsLocationsService(s *Service) *ProjectsLocationsService {
rs := &ProjectsLocationsService{s: s}
return rs
}
type ProjectsLocationsService struct {
s *Service
}
func NewProjectsModelsService(s *Service) *ProjectsModelsService {
rs := &ProjectsModelsService{s: s}
rs.Versions = NewProjectsModelsVersionsService(s)
return rs
}
type ProjectsModelsService struct {
s *Service
Versions *ProjectsModelsVersionsService
}
func NewProjectsModelsVersionsService(s *Service) *ProjectsModelsVersionsService {
rs := &ProjectsModelsVersionsService{s: s}
return rs
}
type ProjectsModelsVersionsService struct {
s *Service
}
func NewProjectsOperationsService(s *Service) *ProjectsOperationsService {
rs := &ProjectsOperationsService{s: s}
return rs
}
type ProjectsOperationsService struct {
s *Service
}
// GoogleApi__HttpBody: Message that represents an arbitrary HTTP body.
// It should only be used for
// payload formats that can't be represented as JSON, such as raw binary
// or
// an HTML page.
//
//
// This message can be used both in streaming and non-streaming API
// methods in
// the request as well as the response.
//
// It can be used as a top-level request field, which is convenient if
// one
// wants to extract parameters from either the URL or HTTP template into
// the
// request fields and also want access to the raw HTTP body.
//
// Example:
//
// message GetResourceRequest {
// // A unique request id.
// string request_id = 1;
//
// // The raw HTTP body is bound to this field.
// google.api.HttpBody http_body = 2;
// }
//
// service ResourceService {
// rpc GetResource(GetResourceRequest) returns
// (google.api.HttpBody);
// rpc UpdateResource(google.api.HttpBody) returns
// (google.protobuf.Empty);
// }
//
// Example with streaming methods:
//
// service CaldavService {
// rpc GetCalendar(stream google.api.HttpBody)
// returns (stream google.api.HttpBody);
// rpc UpdateCalendar(stream google.api.HttpBody)
// returns (stream google.api.HttpBody);
// }
//
// Use of this type only changes how the request and response bodies
// are
// handled, all other features will continue to work unchanged.
type GoogleApi__HttpBody struct {
// ContentType: The HTTP Content-Type header value specifying the
// content type of the body.
ContentType string `json:"contentType,omitempty"`
// Data: The HTTP request/response body as raw binary.
Data string `json:"data,omitempty"`
// Extensions: Application specific response metadata. Must be set in
// the first response
// for streaming APIs.
Extensions []googleapi.RawMessage `json:"extensions,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "ContentType") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ContentType") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleApi__HttpBody) MarshalJSON() ([]byte, error) {
type NoMethod GoogleApi__HttpBody
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleCloudMlV1HyperparameterOutputHyperparameterMetric: An observed
// value of a metric.
type GoogleCloudMlV1HyperparameterOutputHyperparameterMetric struct {
// ObjectiveValue: The objective value at this training step.
ObjectiveValue float64 `json:"objectiveValue,omitempty"`
// TrainingStep: The global training step for this metric.
TrainingStep int64 `json:"trainingStep,omitempty,string"`
// ForceSendFields is a list of field names (e.g. "ObjectiveValue") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ObjectiveValue") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *GoogleCloudMlV1HyperparameterOutputHyperparameterMetric) MarshalJSON() ([]byte, error) {
type NoMethod GoogleCloudMlV1HyperparameterOutputHyperparameterMetric
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
func (s *GoogleCloudMlV1HyperparameterOutputHyperparameterMetric) UnmarshalJSON(data []byte) error {
type NoMethod GoogleCloudMlV1HyperparameterOutputHyperparameterMetric
var s1 struct {
ObjectiveValue gensupport.JSONFloat64 `json:"objectiveValue"`
*NoMethod
}
s1.NoMethod = (*NoMethod)(s)
if err := json.Unmarshal(data, &s1); err != nil {
return err
}
s.ObjectiveValue = float64(s1.ObjectiveValue)
return nil
}
// GoogleCloudMlV1__AcceleratorConfig: Represents a hardware accelerator
// request config.
// Note that the AcceleratorConfig could be used in both Jobs and
// Versions.
type GoogleCloudMlV1__AcceleratorConfig struct {
// Count: The number of accelerators to attach to each machine running
// the job.
Count int64 `json:"count,omitempty,string"`
// Type: The type of accelerator to use.
//
// Possible values:
// "ACCELERATOR_TYPE_UNSPECIFIED" - Unspecified accelerator type.
// Default to no GPU.
// "NVIDIA_TESLA_K80" - Nvidia Tesla K80 GPU.
// "NVIDIA_TESLA_P100" - Nvidia Tesla P100 GPU.
// "NVIDIA_TESLA_V100" - Nvidia Tesla V100 GPU.
// "NVIDIA_TESLA_P4" - Nvidia Tesla P4 GPU.
// "NVIDIA_TESLA_T4" - Nvidia Tesla T4 GPU.
// "TPU_V2" - TPU v2.
// "TPU_V3" - TPU v3.
Type string `json:"type,omitempty"`
// ForceSendFields is a list of field names (e.g. "Count") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Count") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleCloudMlV1__AcceleratorConfig) MarshalJSON() ([]byte, error) {
type NoMethod GoogleCloudMlV1__AcceleratorConfig
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleCloudMlV1__AutoScaling: Options for automatically scaling a
// model.
type GoogleCloudMlV1__AutoScaling struct {
// MinNodes: Optional. The minimum number of nodes to allocate for this
// model. These
// nodes are always up, starting from the time the model is
// deployed.
// Therefore, the cost of operating this model will be at least
// `rate` * `min_nodes` * number of hours since last billing
// cycle,
// where `rate` is the cost per node-hour as documented in the
// [pricing guide](/ml-engine/docs/pricing),
// even if no predictions are performed. There is additional cost for
// each
// prediction performed.
//
// Unlike manual scaling, if the load gets too heavy for the nodes
// that are up, the service will automatically add nodes to handle
// the
// increased load as well as scale back as traffic drops, always
// maintaining
// at least `min_nodes`. You will be charged for the time in which
// additional
// nodes are used.
//
// If not specified, `min_nodes` defaults to 0, in which case, when
// traffic
// to a model stops (and after a cool-down period), nodes will be shut
// down
// and no charges will be incurred until traffic to the model
// resumes.
//
// You can set `min_nodes` when creating the model version, and you can
// also
// update `min_nodes` for an existing
// version:
// <pre>
// update_body.json:
// {
// 'autoScaling': {
// 'minNodes': 5
// }
// }
// </pre>
// HTTP
// request:
// <pre>
// PATCH
// https://ml.googleapis.com/v1/{name=projects/*/mod
// els/*/versions/*}?update_mask=autoScaling.minNodes
// -d @./update_body.json
// </pre>
MinNodes int64 `json:"minNodes,omitempty"`
// ForceSendFields is a list of field names (e.g. "MinNodes") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "MinNodes") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleCloudMlV1__AutoScaling) MarshalJSON() ([]byte, error) {
type NoMethod GoogleCloudMlV1__AutoScaling
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleCloudMlV1__BuiltInAlgorithmOutput: Represents output related to
// a built-in algorithm Job.
type GoogleCloudMlV1__BuiltInAlgorithmOutput struct {
// Framework: Framework on which the built-in algorithm was trained.
Framework string `json:"framework,omitempty"`
// ModelPath: The Cloud Storage path to the `model/` directory where the
// training job
// saves the trained model. Only set for successful jobs that don't
// use
// hyperparameter tuning.
ModelPath string `json:"modelPath,omitempty"`
// PythonVersion: Python version on which the built-in algorithm was
// trained.
PythonVersion string `json:"pythonVersion,omitempty"`
// RuntimeVersion: AI Platform runtime version on which the built-in
// algorithm was
// trained.
RuntimeVersion string `json:"runtimeVersion,omitempty"`
// ForceSendFields is a list of field names (e.g. "Framework") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Framework") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleCloudMlV1__BuiltInAlgorithmOutput) MarshalJSON() ([]byte, error) {
type NoMethod GoogleCloudMlV1__BuiltInAlgorithmOutput
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleCloudMlV1__CancelJobRequest: Request message for the CancelJob
// method.
type GoogleCloudMlV1__CancelJobRequest struct {
}
type GoogleCloudMlV1__Capability struct {
// AvailableAccelerators: Available accelerators for the capability.
//
// Possible values:
// "ACCELERATOR_TYPE_UNSPECIFIED" - Unspecified accelerator type.
// Default to no GPU.
// "NVIDIA_TESLA_K80" - Nvidia Tesla K80 GPU.
// "NVIDIA_TESLA_P100" - Nvidia Tesla P100 GPU.
// "NVIDIA_TESLA_V100" - Nvidia Tesla V100 GPU.
// "NVIDIA_TESLA_P4" - Nvidia Tesla P4 GPU.
// "NVIDIA_TESLA_T4" - Nvidia Tesla T4 GPU.
// "TPU_V2" - TPU v2.
// "TPU_V3" - TPU v3.
AvailableAccelerators []string `json:"availableAccelerators,omitempty"`
// Possible values:
// "TYPE_UNSPECIFIED"
// "TRAINING"
// "BATCH_PREDICTION"
// "ONLINE_PREDICTION"
Type string `json:"type,omitempty"`
// ForceSendFields is a list of field names (e.g.
// "AvailableAccelerators") to unconditionally include in API requests.
// By default, fields with empty values are omitted from API requests.
// However, any non-pointer, non-interface field appearing in
// ForceSendFields will be sent to the server regardless of whether the
// field is empty or not. This may be used to include empty fields in
// Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AvailableAccelerators") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *GoogleCloudMlV1__Capability) MarshalJSON() ([]byte, error) {
type NoMethod GoogleCloudMlV1__Capability
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type GoogleCloudMlV1__Config struct {
// TpuServiceAccount: The service account Cloud ML uses to run on TPU
// node.
TpuServiceAccount string `json:"tpuServiceAccount,omitempty"`
// ForceSendFields is a list of field names (e.g. "TpuServiceAccount")
// to unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "TpuServiceAccount") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *GoogleCloudMlV1__Config) MarshalJSON() ([]byte, error) {
type NoMethod GoogleCloudMlV1__Config
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleCloudMlV1__GetConfigResponse: Returns service account
// information associated with a project.
type GoogleCloudMlV1__GetConfigResponse struct {
Config *GoogleCloudMlV1__Config `json:"config,omitempty"`
// ServiceAccount: The service account Cloud ML uses to access resources
// in the project.
ServiceAccount string `json:"serviceAccount,omitempty"`
// ServiceAccountProject: The project number for `service_account`.
ServiceAccountProject int64 `json:"serviceAccountProject,omitempty,string"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Config") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Config") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleCloudMlV1__GetConfigResponse) MarshalJSON() ([]byte, error) {
type NoMethod GoogleCloudMlV1__GetConfigResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleCloudMlV1__HyperparameterOutput: Represents the result of a
// single hyperparameter tuning trial from a
// training job. The TrainingOutput object that is returned on
// successful
// completion of a training job with hyperparameter tuning includes a
// list
// of HyperparameterOutput objects, one for each successful trial.
type GoogleCloudMlV1__HyperparameterOutput struct {
// AllMetrics: All recorded object metrics for this trial. This field is
// not currently
// populated.
AllMetrics []*GoogleCloudMlV1HyperparameterOutputHyperparameterMetric `json:"allMetrics,omitempty"`
// BuiltInAlgorithmOutput: Details related to built-in algorithms
// jobs.
// Only set for trials of built-in algorithms jobs that have succeeded.
BuiltInAlgorithmOutput *GoogleCloudMlV1__BuiltInAlgorithmOutput `json:"builtInAlgorithmOutput,omitempty"`
// EndTime: Output only. End time for the trial.
EndTime string `json:"endTime,omitempty"`
// FinalMetric: The final objective metric seen for this trial.
FinalMetric *GoogleCloudMlV1HyperparameterOutputHyperparameterMetric `json:"finalMetric,omitempty"`
// Hyperparameters: The hyperparameters given to this trial.
Hyperparameters map[string]string `json:"hyperparameters,omitempty"`
// IsTrialStoppedEarly: True if the trial is stopped early.
IsTrialStoppedEarly bool `json:"isTrialStoppedEarly,omitempty"`
// StartTime: Output only. Start time for the trial.
StartTime string `json:"startTime,omitempty"`
// State: Output only. The detailed state of the trial.
//
// Possible values:
// "STATE_UNSPECIFIED" - The job state is unspecified.
// "QUEUED" - The job has been just created and processing has not yet
// begun.
// "PREPARING" - The service is preparing to run the job.
// "RUNNING" - The job is in progress.
// "SUCCEEDED" - The job completed successfully.
// "FAILED" - The job failed.
// `error_message` should contain the details of the failure.
// "CANCELLING" - The job is being cancelled.
// `error_message` should describe the reason for the cancellation.
// "CANCELLED" - The job has been cancelled.
// `error_message` should describe the reason for the cancellation.
State string `json:"state,omitempty"`
// TrialId: The trial id for these results.
TrialId string `json:"trialId,omitempty"`
// ForceSendFields is a list of field names (e.g. "AllMetrics") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AllMetrics") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleCloudMlV1__HyperparameterOutput) MarshalJSON() ([]byte, error) {
type NoMethod GoogleCloudMlV1__HyperparameterOutput
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleCloudMlV1__HyperparameterSpec: Represents a set of
// hyperparameters to optimize.
type GoogleCloudMlV1__HyperparameterSpec struct {
// Algorithm: Optional. The search algorithm specified for the
// hyperparameter
// tuning job.
// Uses the default AI Platform hyperparameter tuning
// algorithm if unspecified.
//
// Possible values:
// "ALGORITHM_UNSPECIFIED" - The default algorithm used by the
// hyperparameter tuning service. This is
// a Bayesian optimization algorithm.
// "GRID_SEARCH" - Simple grid search within the feasible space. To
// use grid search,
// all parameters must be `INTEGER`, `CATEGORICAL`, or `DISCRETE`.
// "RANDOM_SEARCH" - Simple random search within the feasible space.
Algorithm string `json:"algorithm,omitempty"`
// EnableTrialEarlyStopping: Optional. Indicates if the hyperparameter
// tuning job enables auto trial
// early stopping.
EnableTrialEarlyStopping bool `json:"enableTrialEarlyStopping,omitempty"`
// Goal: Required. The type of goal to use for tuning. Available types
// are
// `MAXIMIZE` and `MINIMIZE`.
//
// Defaults to `MAXIMIZE`.
//
// Possible values:
// "GOAL_TYPE_UNSPECIFIED" - Goal Type will default to maximize.
// "MAXIMIZE" - Maximize the goal metric.
// "MINIMIZE" - Minimize the goal metric.
Goal string `json:"goal,omitempty"`
// HyperparameterMetricTag: Optional. The TensorFlow summary tag name to
// use for optimizing trials. For
// current versions of TensorFlow, this tag name should exactly match
// what is
// shown in TensorBoard, including all scopes. For versions of
// TensorFlow
// prior to 0.12, this should be only the tag passed to tf.Summary.
// By default, "training/hptuning/metric" will be used.
HyperparameterMetricTag string `json:"hyperparameterMetricTag,omitempty"`
// MaxFailedTrials: Optional. The number of failed trials that need to
// be seen before failing
// the hyperparameter tuning job. You can specify this field to override
// the
// default failing criteria for AI Platform hyperparameter tuning
// jobs.
//
// Defaults to zero, which means the service decides when a
// hyperparameter
// job should fail.
MaxFailedTrials int64 `json:"maxFailedTrials,omitempty"`
// MaxParallelTrials: Optional. The number of training trials to run
// concurrently.
// You can reduce the time it takes to perform hyperparameter tuning by
// adding
// trials in parallel. However, each trail only benefits from the
// information
// gained in completed trials. That means that a trial does not get
// access to
// the results of trials running at the same time, which could reduce
// the
// quality of the overall optimization.
//
// Each trial will use the same scale tier and machine types.
//
// Defaults to one.
MaxParallelTrials int64 `json:"maxParallelTrials,omitempty"`
// MaxTrials: Optional. How many training trials should be attempted to
// optimize
// the specified hyperparameters.
//
// Defaults to one.
MaxTrials int64 `json:"maxTrials,omitempty"`
// Params: Required. The set of parameters to tune.
Params []*GoogleCloudMlV1__ParameterSpec `json:"params,omitempty"`
// ResumePreviousJobId: Optional. The prior hyperparameter tuning job id
// that users hope to
// continue with. The job id will be used to find the corresponding
// vizier
// study guid and resume the study.
ResumePreviousJobId string `json:"resumePreviousJobId,omitempty"`
// ForceSendFields is a list of field names (e.g. "Algorithm") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Algorithm") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleCloudMlV1__HyperparameterSpec) MarshalJSON() ([]byte, error) {
type NoMethod GoogleCloudMlV1__HyperparameterSpec
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleCloudMlV1__Job: Represents a training or prediction job.
type GoogleCloudMlV1__Job struct {
// CreateTime: Output only. When the job was created.
CreateTime string `json:"createTime,omitempty"`
// EndTime: Output only. When the job processing was completed.
EndTime string `json:"endTime,omitempty"`
// ErrorMessage: Output only. The details of a failure or a
// cancellation.
ErrorMessage string `json:"errorMessage,omitempty"`
// Etag: `etag` is used for optimistic concurrency control as a way to
// help
// prevent simultaneous updates of a job from overwriting each other.
// It is strongly suggested that systems make use of the `etag` in
// the
// read-modify-write cycle to perform job updates in order to avoid
// race
// conditions: An `etag` is returned in the response to `GetJob`,
// and
// systems are expected to put that etag in the request to `UpdateJob`
// to
// ensure that their change will be applied to the same version of the
// job.
Etag string `json:"etag,omitempty"`
// JobId: Required. The user-specified id of the job.
JobId string `json:"jobId,omitempty"`
// Labels: Optional. One or more labels that you can add, to organize
// your jobs.
// Each label is a key-value pair, where both the key and the value
// are
// arbitrary strings that you supply.
// For more information, see the documentation on
// <a href="/ml-engine/docs/tensorflow/resource-labels">using
// labels</a>.
Labels map[string]string `json:"labels,omitempty"`
// PredictionInput: Input parameters to create a prediction job.
PredictionInput *GoogleCloudMlV1__PredictionInput `json:"predictionInput,omitempty"`
// PredictionOutput: The current prediction job result.
PredictionOutput *GoogleCloudMlV1__PredictionOutput `json:"predictionOutput,omitempty"`
// StartTime: Output only. When the job processing was started.
StartTime string `json:"startTime,omitempty"`
// State: Output only. The detailed state of a job.
//
// Possible values:
// "STATE_UNSPECIFIED" - The job state is unspecified.
// "QUEUED" - The job has been just created and processing has not yet
// begun.
// "PREPARING" - The service is preparing to run the job.
// "RUNNING" - The job is in progress.
// "SUCCEEDED" - The job completed successfully.
// "FAILED" - The job failed.
// `error_message` should contain the details of the failure.
// "CANCELLING" - The job is being cancelled.
// `error_message` should describe the reason for the cancellation.
// "CANCELLED" - The job has been cancelled.
// `error_message` should describe the reason for the cancellation.
State string `json:"state,omitempty"`
// TrainingInput: Input parameters to create a training job.
TrainingInput *GoogleCloudMlV1__TrainingInput `json:"trainingInput,omitempty"`
// TrainingOutput: The current training job result.
TrainingOutput *GoogleCloudMlV1__TrainingOutput `json:"trainingOutput,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "CreateTime") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CreateTime") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleCloudMlV1__Job) MarshalJSON() ([]byte, error) {
type NoMethod GoogleCloudMlV1__Job
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleCloudMlV1__ListJobsResponse: Response message for the ListJobs
// method.
type GoogleCloudMlV1__ListJobsResponse struct {
// Jobs: The list of jobs.
Jobs []*GoogleCloudMlV1__Job `json:"jobs,omitempty"`
// NextPageToken: Optional. Pass this token as the `page_token` field of
// the request for a
// subsequent call.
NextPageToken string `json:"nextPageToken,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Jobs") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Jobs") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleCloudMlV1__ListJobsResponse) MarshalJSON() ([]byte, error) {
type NoMethod GoogleCloudMlV1__ListJobsResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type GoogleCloudMlV1__ListLocationsResponse struct {
// Locations: Locations where at least one type of CMLE capability is
// available.
Locations []*GoogleCloudMlV1__Location `json:"locations,omitempty"`
// NextPageToken: Optional. Pass this token as the `page_token` field of
// the request for a
// subsequent call.
NextPageToken string `json:"nextPageToken,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Locations") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Locations") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleCloudMlV1__ListLocationsResponse) MarshalJSON() ([]byte, error) {
type NoMethod GoogleCloudMlV1__ListLocationsResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleCloudMlV1__ListModelsResponse: Response message for the
// ListModels method.
type GoogleCloudMlV1__ListModelsResponse struct {
// Models: The list of models.
Models []*GoogleCloudMlV1__Model `json:"models,omitempty"`
// NextPageToken: Optional. Pass this token as the `page_token` field of
// the request for a
// subsequent call.
NextPageToken string `json:"nextPageToken,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Models") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Models") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleCloudMlV1__ListModelsResponse) MarshalJSON() ([]byte, error) {
type NoMethod GoogleCloudMlV1__ListModelsResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleCloudMlV1__ListVersionsResponse: Response message for the
// ListVersions method.
type GoogleCloudMlV1__ListVersionsResponse struct {
// NextPageToken: Optional. Pass this token as the `page_token` field of
// the request for a
// subsequent call.
NextPageToken string `json:"nextPageToken,omitempty"`
// Versions: The list of versions.
Versions []*GoogleCloudMlV1__Version `json:"versions,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "NextPageToken") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "NextPageToken") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleCloudMlV1__ListVersionsResponse) MarshalJSON() ([]byte, error) {
type NoMethod GoogleCloudMlV1__ListVersionsResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type GoogleCloudMlV1__Location struct {
// Capabilities: Capabilities available in the location.
Capabilities []*GoogleCloudMlV1__Capability `json:"capabilities,omitempty"`
Name string `json:"name,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Capabilities") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Capabilities") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleCloudMlV1__Location) MarshalJSON() ([]byte, error) {
type NoMethod GoogleCloudMlV1__Location
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleCloudMlV1__ManualScaling: Options for manually scaling a model.
type GoogleCloudMlV1__ManualScaling struct {
// Nodes: The number of nodes to allocate for this model. These nodes
// are always up,
// starting from the time the model is deployed, so the cost of
// operating
// this model will be proportional to `nodes` * number of hours
// since
// last billing cycle plus the cost for each prediction performed.
Nodes int64 `json:"nodes,omitempty"`
// ForceSendFields is a list of field names (e.g. "Nodes") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Nodes") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleCloudMlV1__ManualScaling) MarshalJSON() ([]byte, error) {
type NoMethod GoogleCloudMlV1__ManualScaling
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleCloudMlV1__Model: Represents a machine learning solution.
//
// A model can have multiple versions, each of which is a deployed,
// trained
// model ready to receive prediction requests. The model itself is just
// a
// container.
type GoogleCloudMlV1__Model struct {
// DefaultVersion: Output only. The default version of the model. This
// version will be used to
// handle prediction requests that do not specify a version.
//
// You can change the default version by
// calling
// [projects.methods.versions.setDefault](/ml-engine/reference/re
// st/v1/projects.models.versions/setDefault).
DefaultVersion *GoogleCloudMlV1__Version `json:"defaultVersion,omitempty"`
// Description: Optional. The description specified for the model when
// it was created.
Description string `json:"description,omitempty"`
// Etag: `etag` is used for optimistic concurrency control as a way to
// help
// prevent simultaneous updates of a model from overwriting each
// other.
// It is strongly suggested that systems make use of the `etag` in
// the
// read-modify-write cycle to perform model updates in order to avoid
// race
// conditions: An `etag` is returned in the response to `GetModel`,
// and
// systems are expected to put that etag in the request to `UpdateModel`
// to
// ensure that their change will be applied to the model as intended.
Etag string `json:"etag,omitempty"`
// Labels: Optional. One or more labels that you can add, to organize
// your models.
// Each label is a key-value pair, where both the key and the value
// are
// arbitrary strings that you supply.
// For more information, see the documentation on
// <a href="/ml-engine/docs/tensorflow/resource-labels">using
// labels</a>.
Labels map[string]string `json:"labels,omitempty"`
// Name: Required. The name specified for the model when it was
// created.
//
// The model name must be unique within the project it is created in.
Name string `json:"name,omitempty"`
// OnlinePredictionConsoleLogging: Optional. If true, online prediction
// nodes send `stderr` and `stdout`
// streams to Stackdriver Logging. These can be more verbose than the
// standard
// access logs (see `onlinePredictionLogging`) and can incur higher
// cost.
// However, they are helpful for debugging. Note that
// [Stackdriver logs may incur a cost](/stackdriver/pricing), especially
// if
// your project receives prediction requests at a high QPS. Estimate
// your
// costs before enabling this option.
//
// Default is false.
OnlinePredictionConsoleLogging bool `json:"onlinePredictionConsoleLogging,omitempty"`
// OnlinePredictionLogging: Optional. If true, online prediction access
// logs are sent to StackDriver
// Logging. These logs are like standard server access logs,
// containing
// information like timestamp and latency for each request. Note
// that
// [Stackdriver logs may incur a cost](/stackdriver/pricing), especially
// if
// your project receives prediction requests at a high queries per
// second rate
// (QPS). Estimate your costs before enabling this option.
//
// Default is false.
OnlinePredictionLogging bool `json:"onlinePredictionLogging,omitempty"`
// Regions: Optional. The list of regions where the model is going to be
// deployed.
// Currently only one region per model is supported.
// Defaults to 'us-central1' if nothing is set.
// See the <a href="/ml-engine/docs/tensorflow/regions">available
// regions</a>
// for AI Platform services.
// Note:
// * No matter where a model is deployed, it can always be accessed
// by
// users from anywhere, both for online and batch prediction.
// * The region for a batch prediction job is set by the region field
// when
// submitting the batch prediction job and does not take its value
// from
// this field.
Regions []string `json:"regions,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "DefaultVersion") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "DefaultVersion") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *GoogleCloudMlV1__Model) MarshalJSON() ([]byte, error) {
type NoMethod GoogleCloudMlV1__Model
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleCloudMlV1__OperationMetadata: Represents the metadata of the
// long-running operation.
type GoogleCloudMlV1__OperationMetadata struct {
// CreateTime: The time the operation was submitted.
CreateTime string `json:"createTime,omitempty"`
// EndTime: The time operation processing completed.
EndTime string `json:"endTime,omitempty"`
// IsCancellationRequested: Indicates whether a request to cancel this
// operation has been made.
IsCancellationRequested bool `json:"isCancellationRequested,omitempty"`
// Labels: The user labels, inherited from the model or the model
// version being
// operated on.
Labels map[string]string `json:"labels,omitempty"`
// ModelName: Contains the name of the model associated with the
// operation.
ModelName string `json:"modelName,omitempty"`
// OperationType: The operation type.
//
// Possible values:
// "OPERATION_TYPE_UNSPECIFIED" - Unspecified operation type.
// "CREATE_VERSION" - An operation to create a new version.
// "DELETE_VERSION" - An operation to delete an existing version.
// "DELETE_MODEL" - An operation to delete an existing model.
// "UPDATE_MODEL" - An operation to update an existing model.
// "UPDATE_VERSION" - An operation to update an existing version.
// "UPDATE_CONFIG" - An operation to update project configuration.
OperationType string `json:"operationType,omitempty"`
// ProjectNumber: Contains the project number associated with the
// operation.
ProjectNumber int64 `json:"projectNumber,omitempty,string"`
// StartTime: The time operation processing started.
StartTime string `json:"startTime,omitempty"`
// Version: Contains the version associated with the operation.
Version *GoogleCloudMlV1__Version `json:"version,omitempty"`
// ForceSendFields is a list of field names (e.g. "CreateTime") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CreateTime") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleCloudMlV1__OperationMetadata) MarshalJSON() ([]byte, error) {
type NoMethod GoogleCloudMlV1__OperationMetadata
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleCloudMlV1__ParameterSpec: Represents a single hyperparameter to
// optimize.
type GoogleCloudMlV1__ParameterSpec struct {
// CategoricalValues: Required if type is `CATEGORICAL`. The list of
// possible categories.
CategoricalValues []string `json:"categoricalValues,omitempty"`
// DiscreteValues: Required if type is `DISCRETE`.
// A list of feasible points.
// The list should be in strictly increasing order. For instance,
// this
// parameter might have possible settings of 1.5, 2.5, and 4.0. This
// list
// should not contain more than 1,000 values.
DiscreteValues []float64 `json:"discreteValues,omitempty"`
// MaxValue: Required if type is `DOUBLE` or `INTEGER`. This
// field
// should be unset if type is `CATEGORICAL`. This value should be
// integers if
// type is `INTEGER`.
MaxValue float64 `json:"maxValue,omitempty"`
// MinValue: Required if type is `DOUBLE` or `INTEGER`. This
// field
// should be unset if type is `CATEGORICAL`. This value should be
// integers if
// type is INTEGER.
MinValue float64 `json:"minValue,omitempty"`
// ParameterName: Required. The parameter name must be unique amongst
// all ParameterConfigs in
// a HyperparameterSpec message. E.g., "learning_rate".
ParameterName string `json:"parameterName,omitempty"`
// ScaleType: Optional. How the parameter should be scaled to the
// hypercube.
// Leave unset for categorical parameters.
// Some kind of scaling is strongly recommended for real or
// integral
// parameters (e.g., `UNIT_LINEAR_SCALE`).
//
// Possible values:
// "NONE" - By default, no scaling is applied.
// "UNIT_LINEAR_SCALE" - Scales the feasible space to (0, 1) linearly.
// "UNIT_LOG_SCALE" - Scales the feasible space logarithmically to (0,
// 1). The entire feasible
// space must be strictly positive.
// "UNIT_REVERSE_LOG_SCALE" - Scales the feasible space "reverse"
// logarithmically to (0, 1). The result
// is that values close to the top of the feasible space are spread out
// more
// than points near the bottom. The entire feasible space must be
// strictly
// positive.
ScaleType string `json:"scaleType,omitempty"`
// Type: Required. The type of the parameter.
//
// Possible values:
// "PARAMETER_TYPE_UNSPECIFIED" - You must specify a valid type. Using
// this unspecified type will result in
// an error.
// "DOUBLE" - Type for real-valued parameters.
// "INTEGER" - Type for integral parameters.
// "CATEGORICAL" - The parameter is categorical, with a value chosen
// from the categories
// field.
// "DISCRETE" - The parameter is real valued, with a fixed set of
// feasible points. If
// `type==DISCRETE`, feasible_points must be provided, and
// {`min_value`, `max_value`} will be ignored.
Type string `json:"type,omitempty"`
// ForceSendFields is a list of field names (e.g. "CategoricalValues")
// to unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CategoricalValues") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *GoogleCloudMlV1__ParameterSpec) MarshalJSON() ([]byte, error) {
type NoMethod GoogleCloudMlV1__ParameterSpec
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
func (s *GoogleCloudMlV1__ParameterSpec) UnmarshalJSON(data []byte) error {
type NoMethod GoogleCloudMlV1__ParameterSpec
var s1 struct {
MaxValue gensupport.JSONFloat64 `json:"maxValue"`
MinValue gensupport.JSONFloat64 `json:"minValue"`
*NoMethod
}
s1.NoMethod = (*NoMethod)(s)
if err := json.Unmarshal(data, &s1); err != nil {
return err
}
s.MaxValue = float64(s1.MaxValue)
s.MinValue = float64(s1.MinValue)
return nil
}
// GoogleCloudMlV1__PredictRequest: Request for predictions to be issued
// against a trained model.
type GoogleCloudMlV1__PredictRequest struct {
// HttpBody:
// Required. The prediction request body.
HttpBody *GoogleApi__HttpBody `json:"httpBody,omitempty"`
// ForceSendFields is a list of field names (e.g. "HttpBody") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "HttpBody") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleCloudMlV1__PredictRequest) MarshalJSON() ([]byte, error) {
type NoMethod GoogleCloudMlV1__PredictRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleCloudMlV1__PredictionInput: Represents input parameters for a
// prediction job.
type GoogleCloudMlV1__PredictionInput struct {
// BatchSize: Optional. Number of records per batch, defaults to 64.
// The service will buffer batch_size number of records in memory
// before
// invoking one Tensorflow prediction call internally. So take the
// record
// size and memory available into consideration when setting this
// parameter.
BatchSize int64 `json:"batchSize,omitempty,string"`
// DataFormat: Required. The format of the input data files.
//
// Possible values:
// "DATA_FORMAT_UNSPECIFIED" - Unspecified format.
// "JSON" - Each line of the file is a JSON dictionary representing
// one record.
// "TEXT" - Deprecated. Use JSON instead.
// "TF_RECORD" - The source file is a TFRecord file.
// Currently available only for input data.
// "TF_RECORD_GZIP" - The source file is a GZIP-compressed TFRecord
// file.
// Currently available only for input data.
// "CSV" - Values are comma-separated rows, with keys in a separate
// file.
// Currently available only for output data.
DataFormat string `json:"dataFormat,omitempty"`
// InputPaths: Required. The Cloud Storage location of the input data
// files. May contain
// <a href="/storage/docs/gsutil/addlhelp/WildcardNames">wildcards</a>.
InputPaths []string `json:"inputPaths,omitempty"`
// MaxWorkerCount: Optional. The maximum number of workers to be used
// for parallel processing.
// Defaults to 10 if not specified.
MaxWorkerCount int64 `json:"maxWorkerCount,omitempty,string"`
// ModelName: Use this field if you want to use the default version for
// the specified
// model. The string must use the following
// format:
//
// "projects/YOUR_PROJECT/models/YOUR_MODEL"
ModelName string `json:"modelName,omitempty"`
// OutputDataFormat: Optional. Format of the output data files, defaults
// to JSON.
//
// Possible values:
// "DATA_FORMAT_UNSPECIFIED" - Unspecified format.
// "JSON" - Each line of the file is a JSON dictionary representing
// one record.
// "TEXT" - Deprecated. Use JSON instead.
// "TF_RECORD" - The source file is a TFRecord file.
// Currently available only for input data.
// "TF_RECORD_GZIP" - The source file is a GZIP-compressed TFRecord
// file.
// Currently available only for input data.
// "CSV" - Values are comma-separated rows, with keys in a separate
// file.
// Currently available only for output data.
OutputDataFormat string `json:"outputDataFormat,omitempty"`
// OutputPath: Required. The output Google Cloud Storage location.
OutputPath string `json:"outputPath,omitempty"`
// Region: Required. The Google Compute Engine region to run the
// prediction job in.
// See the <a href="/ml-engine/docs/tensorflow/regions">available
// regions</a>
// for AI Platform services.
Region string `json:"region,omitempty"`
// RuntimeVersion: Optional. The AI Platform runtime version to use for
// this batch
// prediction. If not set, AI Platform will pick the runtime version
// used
// during the CreateVersion request for this model version, or choose
// the
// latest stable version when model version information is not
// available
// such as when the model is specified by uri.
RuntimeVersion string `json:"runtimeVersion,omitempty"`
// SignatureName: Optional. The name of the signature defined in the
// SavedModel to use for
// this job. Please refer
// to
// [SavedModel](https://tensorflow.github.io/serving/serving_basic.htm
// l)
// for information about how to use signatures.
//
// Defaults
// to
// [DEFAULT_SERVING_SIGNATURE_DEF_KEY](https://www.tensorflow.org/api_
// docs/python/tf/saved_model/signature_constants)
// , which is "serving_default".
SignatureName string `json:"signatureName,omitempty"`
// Uri: Use this field if you want to specify a Google Cloud Storage
// path for
// the model to use.
Uri string `json:"uri,omitempty"`
// VersionName: Use this field if you want to specify a version of the
// model to use. The
// string is formatted the same way as `model_version`, with the
// addition
// of the version
// information:
//
// "projects/YOUR_PROJECT/models/YOUR_MODEL/versions/YOUR_
// VERSION"
VersionName string `json:"versionName,omitempty"`
// ForceSendFields is a list of field names (e.g. "BatchSize") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "BatchSize") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleCloudMlV1__PredictionInput) MarshalJSON() ([]byte, error) {
type NoMethod GoogleCloudMlV1__PredictionInput
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleCloudMlV1__PredictionOutput: Represents results of a prediction
// job.
type GoogleCloudMlV1__PredictionOutput struct {
// ErrorCount: The number of data instances which resulted in errors.
ErrorCount int64 `json:"errorCount,omitempty,string"`
// NodeHours: Node hours used by the batch prediction job.
NodeHours float64 `json:"nodeHours,omitempty"`
// OutputPath: The output Google Cloud Storage location provided at the
// job creation time.
OutputPath string `json:"outputPath,omitempty"`
// PredictionCount: The number of generated predictions.
PredictionCount int64 `json:"predictionCount,omitempty,string"`
// ForceSendFields is a list of field names (e.g. "ErrorCount") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ErrorCount") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleCloudMlV1__PredictionOutput) MarshalJSON() ([]byte, error) {
type NoMethod GoogleCloudMlV1__PredictionOutput
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
func (s *GoogleCloudMlV1__PredictionOutput) UnmarshalJSON(data []byte) error {
type NoMethod GoogleCloudMlV1__PredictionOutput
var s1 struct {
NodeHours gensupport.JSONFloat64 `json:"nodeHours"`
*NoMethod
}
s1.NoMethod = (*NoMethod)(s)
if err := json.Unmarshal(data, &s1); err != nil {
return err
}
s.NodeHours = float64(s1.NodeHours)
return nil
}
// GoogleCloudMlV1__ReplicaConfig: Represents the configuration for a
// replica in a cluster.
type GoogleCloudMlV1__ReplicaConfig struct {
// AcceleratorConfig: Represents the type and number of accelerators
// used by the replica.
// [Learn about restrictions on accelerator configurations
// for
// training.](/ml-engine/docs/tensorflow/using-gpus#compute-engine-ma
// chine-types-with-gpu)
AcceleratorConfig *GoogleCloudMlV1__AcceleratorConfig `json:"acceleratorConfig,omitempty"`
// ImageUri: The Docker image to run on the replica. This image must be
// in Container
// Registry. Learn more about [configuring
// custom
// containers](/ml-engine/docs/distributed-training-containers).
ImageUri string `json:"imageUri,omitempty"`
// TpuTfVersion: The AI Platform runtime version that includes a
// TensorFlow version matching
// the one used in the custom container. This field is required if the
// replica
// is a TPU worker that uses a custom container. Otherwise, do not
// specify
// this field. This must be a [runtime version that currently
// supports
// training
// with
// TPUs](/ml-engine/docs/tensorflow/runtime-version-list#tpu-support
// ).
//
// Note that the version of TensorFlow included in a runtime version
// may
// differ from the numbering of the runtime version itself, because it
// may
// have a different
// [patch
// version](https://www.tensorflow.org/guide/version_compat#semant
// ic_versioning_20).
// In this field, you must specify the runtime version (TensorFlow
// minor
// version). For example, if your custom container runs TensorFlow
// `1.x.y`,
// specify `1.x`.
TpuTfVersion string `json:"tpuTfVersion,omitempty"`
// ForceSendFields is a list of field names (e.g. "AcceleratorConfig")
// to unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AcceleratorConfig") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *GoogleCloudMlV1__ReplicaConfig) MarshalJSON() ([]byte, error) {
type NoMethod GoogleCloudMlV1__ReplicaConfig
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleCloudMlV1__RequestLoggingConfig: Configuration for logging
// request-response pairs to a BigQuery table.
// Online prediction requests to a model version and the responses to
// these
// requests are converted to raw strings and saved to the specified
// BigQuery
// table. Logging is constrained by [BigQuery quotas
// and
// limits](/bigquery/quotas). If your project exceeds BigQuery quotas or
// limits,
// AI Platform Prediction does not log request-response pairs, but it
// continues
// to serve predictions.
//
// If you are using
// [continuous
// evaluation](/ml-engine/docs/continuous-evaluation/), you do not need
// to
// specify this configuration manually. Setting up continuous
// evaluation
// automatically enables logging of request-response pairs.
type GoogleCloudMlV1__RequestLoggingConfig struct {
// BigqueryTableName: Required. Fully qualified BigQuery table name in
// the following
// format:
// "<var>project_id</var>.<var>dataset_name</var>.<var>table_name
// </var>"
//
// The specifcied table must already exist, and the "Cloud ML Service
// Agent"
// for your project must have permission to write to it. The table must
// have
// the following [schema](/bigquery/docs/schemas):
//
// <table>
// <tr><th>Field name</th><th style="display: table-cell">Type</th>
// <th style="display: table-cell">Mode</th></tr>
// <tr><td>model</td><td>STRING</td><td>REQUIRED</td></tr>
// <tr><td>model_version</td><td>STRING</td><td>REQUIRED</td></tr>
// <tr><td>time</td><td>TIMESTAMP</td><td>REQUIRED</td></tr>
// <tr><td>raw_data</td><td>STRING</td><td>REQUIRED</td></tr>
// <tr><td>raw_prediction</td><td>STRING</td><td>NULLABLE</td></tr>
//
// <tr><td>groundtruth</td><td>STRING</td><td>NULLABLE</td></tr>
// </table>
BigqueryTableName string `json:"bigqueryTableName,omitempty"`
// SamplingPercentage: Percentage of requests to be logged, expressed as
// a fraction from 0 to 1.
// For example, if you want to log 10% of requests, enter `0.1`. The
// sampling
// window is the lifetime of the model version. Defaults to 0.
SamplingPercentage float64 `json:"samplingPercentage,omitempty"`
// ForceSendFields is a list of field names (e.g. "BigqueryTableName")
// to unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "BigqueryTableName") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *GoogleCloudMlV1__RequestLoggingConfig) MarshalJSON() ([]byte, error) {
type NoMethod GoogleCloudMlV1__RequestLoggingConfig
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
func (s *GoogleCloudMlV1__RequestLoggingConfig) UnmarshalJSON(data []byte) error {
type NoMethod GoogleCloudMlV1__RequestLoggingConfig
var s1 struct {
SamplingPercentage gensupport.JSONFloat64 `json:"samplingPercentage"`
*NoMethod
}
s1.NoMethod = (*NoMethod)(s)
if err := json.Unmarshal(data, &s1); err != nil {
return err
}
s.SamplingPercentage = float64(s1.SamplingPercentage)
return nil
}
// GoogleCloudMlV1__SetDefaultVersionRequest: Request message for the
// SetDefaultVersion request.
type GoogleCloudMlV1__SetDefaultVersionRequest struct {
}
// GoogleCloudMlV1__TrainingInput: Represents input parameters for a
// training job. When using the
// gcloud command to submit your training job, you can specify
// the input parameters as command-line arguments and/or in a YAML
// configuration
// file referenced from the --config command-line argument. For
// details, see the guide to
// <a href="/ml-engine/docs/tensorflow/training-jobs">submitting a
// training
// job</a>.
type GoogleCloudMlV1__TrainingInput struct {
// Args: Optional. Command line arguments to pass to the program.
Args []string `json:"args,omitempty"`
// Hyperparameters: Optional. The set of Hyperparameters to tune.
Hyperparameters *GoogleCloudMlV1__HyperparameterSpec `json:"hyperparameters,omitempty"`
// JobDir: Optional. A Google Cloud Storage path in which to store
// training outputs
// and other data needed for training. This path is passed to your
// TensorFlow
// program as the '--job-dir' command-line argument. The benefit of
// specifying
// this field is that Cloud ML validates the path for use in training.
JobDir string `json:"jobDir,omitempty"`
// MasterConfig: Optional. The configuration for your master
// worker.
//
// You should only set `masterConfig.acceleratorConfig` if `masterType`
// is set
// to a Compute Engine machine type. Learn about [restrictions on
// accelerator
// configurations
// for
// training.](/ml-engine/docs/tensorflow/using-gpus#compute-engine-ma
// chine-types-with-gpu)
//
// Set `masterConfig.imageUri` only if you build a custom image. Only
// one of
// `masterConfig.imageUri` and `runtimeVersion` should be set. Learn
// more about
// [configuring
// custom
// containers](/ml-engine/docs/distributed-training-containers).
MasterConfig *GoogleCloudMlV1__ReplicaConfig `json:"masterConfig,omitempty"`
// MasterType: Optional. Specifies the type of virtual machine to use
// for your training
// job's master worker.
//
// The following types are supported:
//
// <dl>
// <dt>standard</dt>
// <dd>
// A basic machine configuration suitable for training simple models
// with
// small to moderate datasets.
// </dd>
// <dt>large_model</dt>
// <dd>
// A machine with a lot of memory, specially suited for parameter
// servers
// when your model is large (having many hidden layers or layers with
// very
// large numbers of nodes).
// </dd>
// <dt>complex_model_s</dt>
// <dd>
// A machine suitable for the master and workers of the cluster when
// your
// model requires more computation than the standard machine can
// handle
// satisfactorily.
// </dd>
// <dt>complex_model_m</dt>
// <dd>
// A machine with roughly twice the number of cores and roughly double
// the
// memory of <i>complex_model_s</i>.
// </dd>
// <dt>complex_model_l</dt>
// <dd>
// A machine with roughly twice the number of cores and roughly double
// the
// memory of <i>complex_model_m</i>.
// </dd>
// <dt>standard_gpu</dt>
// <dd>
// A machine equivalent to <i>standard</i> that
// also includes a single NVIDIA Tesla K80 GPU. See more about
// <a href="/ml-engine/docs/tensorflow/using-gpus">using GPUs to
// train your model</a>.
// </dd>
// <dt>complex_model_m_gpu</dt>
// <dd>
// A machine equivalent to <i>complex_model_m</i> that also includes
// four NVIDIA Tesla K80 GPUs.
// </dd>
// <dt>complex_model_l_gpu</dt>
// <dd>
// A machine equivalent to <i>complex_model_l</i> that also includes
// eight NVIDIA Tesla K80 GPUs.
// </dd>
// <dt>standard_p100</dt>
// <dd>
// A machine equivalent to <i>standard</i> that
// also includes a single NVIDIA Tesla P100 GPU.
// </dd>
// <dt>complex_model_m_p100</dt>
// <dd>
// A machine equivalent to <i>complex_model_m</i> that also includes
// four NVIDIA Tesla P100 GPUs.
// </dd>
// <dt>standard_v100</dt>
// <dd>
// A machine equivalent to <i>standard</i> that
// also includes a single NVIDIA Tesla V100 GPU.
// </dd>
// <dt>large_model_v100</dt>
// <dd>
// A machine equivalent to <i>large_model</i> that
// also includes a single NVIDIA Tesla V100 GPU.
// </dd>
// <dt>complex_model_m_v100</dt>
// <dd>
// A machine equivalent to <i>complex_model_m</i> that
// also includes four NVIDIA Tesla V100 GPUs.
// </dd>
// <dt>complex_model_l_v100</dt>
// <dd>
// A machine equivalent to <i>complex_model_l</i> that
// also includes eight NVIDIA Tesla V100 GPUs.
// </dd>
// <dt>cloud_tpu</dt>
// <dd>
// A TPU VM including one Cloud TPU. See more about
// <a href="/ml-engine/docs/tensorflow/using-tpus">using TPUs to
// train
// your model</a>.
// </dd>
// </dl>
//
// You may also use certain Compute Engine machine types directly in
// this
// field. The following types are supported:
//
// - `n1-standard-4`
// - `n1-standard-8`
// - `n1-standard-16`
// - `n1-standard-32`
// - `n1-standard-64`
// - `n1-standard-96`
// - `n1-highmem-2`
// - `n1-highmem-4`
// - `n1-highmem-8`
// - `n1-highmem-16`
// - `n1-highmem-32`
// - `n1-highmem-64`
// - `n1-highmem-96`
// - `n1-highcpu-16`
// - `n1-highcpu-32`
// - `n1-highcpu-64`
// - `n1-highcpu-96`
//
// See more about [using Compute Engine
// machine
// types](/ml-engine/docs/tensorflow/machine-types#compute-engine
// -machine-types).
//
// You must set this value when `scaleTier` is set to `CUSTOM`.
MasterType string `json:"masterType,omitempty"`
// PackageUris: Required. The Google Cloud Storage location of the
// packages with
// the training program and any additional dependencies.
// The maximum number of package URIs is 100.
PackageUris []string `json:"packageUris,omitempty"`
// ParameterServerConfig: Optional. The configuration for parameter
// servers.
//
// You should only set `parameterServerConfig.acceleratorConfig`
// if
// `parameterServerConfigType` is set to a Compute Engine machine type.
// [Learn
// about restrictions on accelerator configurations
// for
// training.](/ml-engine/docs/tensorflow/using-gpus#compute-engine-ma
// chine-types-with-gpu)
//
// Set `parameterServerConfig.imageUri` only if you build a custom image
// for
// your parameter server. If `parameterServerConfig.imageUri` has not
// been
// set, AI Platform uses the value of `masterConfig.imageUri`.
// Learn more about [configuring
// custom
// containers](/ml-engine/docs/distributed-training-containers).
ParameterServerConfig *GoogleCloudMlV1__ReplicaConfig `json:"parameterServerConfig,omitempty"`
// ParameterServerCount: Optional. The number of parameter server
// replicas to use for the training
// job. Each replica in the cluster will be of the type specified
// in
// `parameter_server_type`.
//
// This value can only be used when `scale_tier` is set to `CUSTOM`.If
// you
// set this value, you must also set `parameter_server_type`.
//
// The default value is zero.
ParameterServerCount int64 `json:"parameterServerCount,omitempty,string"`
// ParameterServerType: Optional. Specifies the type of virtual machine
// to use for your training
// job's parameter server.
//
// The supported values are the same as those described in the entry
// for
// `master_type`.
//
// This value must be consistent with the category of machine type
// that
// `masterType` uses. In other words, both must be AI Platform
// machine
// types or both must be Compute Engine machine types.
//
// This value must be present when `scaleTier` is set to `CUSTOM`
// and
// `parameter_server_count` is greater than zero.
ParameterServerType string `json:"parameterServerType,omitempty"`
// PythonModule: Required. The Python module name to run after
// installing the packages.
PythonModule string `json:"pythonModule,omitempty"`
// PythonVersion: Optional. The version of Python used in training. If
// not set, the default
// version is '2.7'. Python '3.5' is available when `runtime_version` is
// set
// to '1.4' and above. Python '2.7' works with all supported
// <a href="/ml-engine/docs/runtime-version-list">runtime versions</a>.
PythonVersion string `json:"pythonVersion,omitempty"`
// Region: Required. The Google Compute Engine region to run the
// training job in.
// See the <a href="/ml-engine/docs/tensorflow/regions">available
// regions</a>
// for AI Platform services.
Region string `json:"region,omitempty"`
// RuntimeVersion: Optional. The AI Platform runtime version to use for
// training. If not
// set, AI Platform uses the default stable version, 1.0. For
// more
// information, see the
// <a href="/ml-engine/docs/runtime-version-list">runtime version
// list</a>
// and
// <a href="/ml-engine/docs/versioning">how to manage runtime
// versions</a>.
RuntimeVersion string `json:"runtimeVersion,omitempty"`
// ScaleTier: Required. Specifies the machine types, the number of
// replicas for workers
// and parameter servers.
//
// Possible values:
// "BASIC" - A single worker instance. This tier is suitable for
// learning how to use
// Cloud ML, and for experimenting with new models using small datasets.
// "STANDARD_1" - Many workers and a few parameter servers.
// "PREMIUM_1" - A large number of workers with many parameter
// servers.
// "BASIC_GPU" - A single worker instance [with
// a
// GPU](/ml-engine/docs/tensorflow/using-gpus).
// "BASIC_TPU" - A single worker instance with a
// [Cloud TPU](/ml-engine/docs/tensorflow/using-tpus).
// "CUSTOM" - The CUSTOM tier is not a set tier, but rather enables
// you to use your
// own cluster specification. When you use this tier, set values
// to
// configure your processing cluster according to these guidelines:
//
// * You _must_ set `TrainingInput.masterType` to specify the type
// of machine to use for your master node. This is the only
// required
// setting.
//
// * You _may_ set `TrainingInput.workerCount` to specify the number
// of
// workers to use. If you specify one or more workers, you _must_
// also
// set `TrainingInput.workerType` to specify the type of machine to
// use
// for your worker nodes.
//
// * You _may_ set `TrainingInput.parameterServerCount` to specify
// the
// number of parameter servers to use. If you specify one or more
// parameter servers, you _must_ also set
// `TrainingInput.parameterServerType` to specify the type of
// machine to
// use for your parameter servers.
//
// Note that all of your workers must use the same machine type, which
// can
// be different from your parameter server type and master type.
// Your
// parameter servers must likewise use the same machine type, which can
// be
// different from your worker type and master type.
ScaleTier string `json:"scaleTier,omitempty"`
// WorkerConfig: Optional. The configuration for workers.
//
// You should only set `workerConfig.acceleratorConfig` if `workerType`
// is set
// to a Compute Engine machine type. [Learn about restrictions on
// accelerator
// configurations
// for
// training.](/ml-engine/docs/tensorflow/using-gpus#compute-engine-ma
// chine-types-with-gpu)
//
// Set `workerConfig.imageUri` only if you build a custom image for
// your
// worker. If `workerConfig.imageUri` has not been set, AI Platform
// uses
// the value of `masterConfig.imageUri`. Learn more about
// [configuring
// custom
// containers](/ml-engine/docs/distributed-training-containers).
WorkerConfig *GoogleCloudMlV1__ReplicaConfig `json:"workerConfig,omitempty"`
// WorkerCount: Optional. The number of worker replicas to use for the
// training job. Each
// replica in the cluster will be of the type specified in
// `worker_type`.
//
// This value can only be used when `scale_tier` is set to `CUSTOM`. If
// you
// set this value, you must also set `worker_type`.
//
// The default value is zero.
WorkerCount int64 `json:"workerCount,omitempty,string"`
// WorkerType: Optional. Specifies the type of virtual machine to use
// for your training
// job's worker nodes.
//
// The supported values are the same as those described in the entry
// for
// `masterType`.
//
// This value must be consistent with the category of machine type
// that
// `masterType` uses. In other words, both must be AI Platform
// machine
// types or both must be Compute Engine machine types.
//
// If you use `cloud_tpu` for this value, see special instructions
// for
// [configuring a custom
// TPU
// machine](/ml-engine/docs/tensorflow/using-tpus#configuring_a_custo
// m_tpu_machine).
//
// This value must be present when `scaleTier` is set to `CUSTOM`
// and
// `workerCount` is greater than zero.
WorkerType string `json:"workerType,omitempty"`
// ForceSendFields is a list of field names (e.g. "Args") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Args") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleCloudMlV1__TrainingInput) MarshalJSON() ([]byte, error) {
type NoMethod GoogleCloudMlV1__TrainingInput
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleCloudMlV1__TrainingOutput: Represents results of a training
// job. Output only.
type GoogleCloudMlV1__TrainingOutput struct {
// BuiltInAlgorithmOutput: Details related to built-in algorithms
// jobs.
// Only set for built-in algorithms jobs.
BuiltInAlgorithmOutput *GoogleCloudMlV1__BuiltInAlgorithmOutput `json:"builtInAlgorithmOutput,omitempty"`
// CompletedTrialCount: The number of hyperparameter tuning trials that
// completed successfully.
// Only set for hyperparameter tuning jobs.
CompletedTrialCount int64 `json:"completedTrialCount,omitempty,string"`
// ConsumedMLUnits: The amount of ML units consumed by the job.
ConsumedMLUnits float64 `json:"consumedMLUnits,omitempty"`
// HyperparameterMetricTag: The TensorFlow summary tag name used for
// optimizing hyperparameter tuning
// trials.
// See
// [`HyperparameterSpec.hyperparameterMetricTag`](#HyperparameterSpec
// .FIELDS.hyperparameter_metric_tag)
// for more information. Only set for hyperparameter tuning jobs.
HyperparameterMetricTag string `json:"hyperparameterMetricTag,omitempty"`
// IsBuiltInAlgorithmJob: Whether this job is a built-in Algorithm job.
IsBuiltInAlgorithmJob bool `json:"isBuiltInAlgorithmJob,omitempty"`
// IsHyperparameterTuningJob: Whether this job is a hyperparameter
// tuning job.
IsHyperparameterTuningJob bool `json:"isHyperparameterTuningJob,omitempty"`
// Trials: Results for individual Hyperparameter trials.
// Only set for hyperparameter tuning jobs.
Trials []*GoogleCloudMlV1__HyperparameterOutput `json:"trials,omitempty"`
// ForceSendFields is a list of field names (e.g.
// "BuiltInAlgorithmOutput") to unconditionally include in API requests.
// By default, fields with empty values are omitted from API requests.
// However, any non-pointer, non-interface field appearing in
// ForceSendFields will be sent to the server regardless of whether the
// field is empty or not. This may be used to include empty fields in
// Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "BuiltInAlgorithmOutput")
// to include in API requests with the JSON null value. By default,
// fields with empty values are omitted from API requests. However, any
// field with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *GoogleCloudMlV1__TrainingOutput) MarshalJSON() ([]byte, error) {
type NoMethod GoogleCloudMlV1__TrainingOutput
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
func (s *GoogleCloudMlV1__TrainingOutput) UnmarshalJSON(data []byte) error {
type NoMethod GoogleCloudMlV1__TrainingOutput
var s1 struct {
ConsumedMLUnits gensupport.JSONFloat64 `json:"consumedMLUnits"`
*NoMethod
}
s1.NoMethod = (*NoMethod)(s)
if err := json.Unmarshal(data, &s1); err != nil {
return err
}
s.ConsumedMLUnits = float64(s1.ConsumedMLUnits)
return nil
}
// GoogleCloudMlV1__Version: Represents a version of the model.
//
// Each version is a trained model deployed in the cloud, ready to
// handle
// prediction requests. A model can have multiple versions. You can
// get
// information about all of the versions of a given model by
// calling
// [projects.models.versions.list](/ml-engine/reference/rest/v1/p
// rojects.models.versions/list).
type GoogleCloudMlV1__Version struct {
// AcceleratorConfig: Accelerator config for GPU serving.
AcceleratorConfig *GoogleCloudMlV1__AcceleratorConfig `json:"acceleratorConfig,omitempty"`
// AutoScaling: Automatically scale the number of nodes used to serve
// the model in
// response to increases and decreases in traffic. Care should be
// taken to ramp up traffic according to the model's ability to scale
// or you will start seeing increases in latency and 429 response codes.
AutoScaling *GoogleCloudMlV1__AutoScaling `json:"autoScaling,omitempty"`
// CreateTime: Output only. The time the version was created.
CreateTime string `json:"createTime,omitempty"`
// DeploymentUri: Required. The Cloud Storage location of the trained
// model used to
// create the version. See the
// [guide to
// model
// deployment](/ml-engine/docs/tensorflow/deploying-models) for
// more
// information.
//
// When passing Version
// to
// [projects.models.versions.create](/ml-engine/reference/rest/v1/proj
// ects.models.versions/create)
// the model service uses the specified location as the source of the
// model.
// Once deployed, the model version is hosted by the prediction service,
// so
// this location is useful only as a historical record.
// The total number of model files can't exceed 1000.
DeploymentUri string `json:"deploymentUri,omitempty"`
// Description: Optional. The description specified for the version when
// it was created.
Description string `json:"description,omitempty"`
// ErrorMessage: Output only. The details of a failure or a
// cancellation.
ErrorMessage string `json:"errorMessage,omitempty"`
// Etag: `etag` is used for optimistic concurrency control as a way to
// help
// prevent simultaneous updates of a model from overwriting each
// other.
// It is strongly suggested that systems make use of the `etag` in
// the
// read-modify-write cycle to perform model updates in order to avoid
// race
// conditions: An `etag` is returned in the response to `GetVersion`,
// and
// systems are expected to put that etag in the request to
// `UpdateVersion` to
// ensure that their change will be applied to the model as intended.
Etag string `json:"etag,omitempty"`
// Framework: Optional. The machine learning framework AI Platform uses
// to train
// this version of the model. Valid values are `TENSORFLOW`,
// `SCIKIT_LEARN`,
// `XGBOOST`. If you do not specify a framework, AI Platform
// will analyze files in the deployment_uri to determine a framework. If
// you
// choose `SCIKIT_LEARN` or `XGBOOST`, you must also set the runtime
// version
// of the model to 1.4 or greater.
//
// Do **not** specify a framework if you're deploying a
// [custom
// prediction
// routine](/ml-engine/docs/tensorflow/custom-prediction-routines).
//
// Possible values:
// "FRAMEWORK_UNSPECIFIED" - Unspecified framework. Assigns a value
// based on the file suffix.
// "TENSORFLOW" - Tensorflow framework.
// "SCIKIT_LEARN" - Scikit-learn framework.
// "XGBOOST" - XGBoost framework.
Framework string `json:"framework,omitempty"`
// IsDefault: Output only. If true, this version will be used to handle
// prediction
// requests that do not specify a version.
//
// You can change the default version by
// calling
// [projects.methods.versions.setDefault](/ml-engine/reference/re
// st/v1/projects.models.versions/setDefault).
IsDefault bool `json:"isDefault,omitempty"`
// Labels: Optional. One or more labels that you can add, to organize
// your model
// versions. Each label is a key-value pair, where both the key and the
// value
// are arbitrary strings that you supply.
// For more information, see the documentation on
// <a href="/ml-engine/docs/tensorflow/resource-labels">using
// labels</a>.
Labels map[string]string `json:"labels,omitempty"`
// LastUseTime: Output only. The time the version was last used for
// prediction.
LastUseTime string `json:"lastUseTime,omitempty"`
// MachineType: Optional. The type of machine on which to serve the
// model. Currently only
// applies to online prediction service.
// <dl>
// <dt>mls1-c1-m2</dt>
// <dd>
// The <b>default</b> machine type, with 1 core and 2 GB RAM. The
// deprecated
// name for this machine type is "mls1-highmem-1".
// </dd>
// <dt>mls1-c4-m2</dt>
// <dd>
// In <b>Beta</b>. This machine type has 4 cores and 2 GB RAM. The
// deprecated name for this machine type is "mls1-highcpu-4".
// </dd>
// </dl>
MachineType string `json:"machineType,omitempty"`
// ManualScaling: Manually select the number of nodes to use for serving
// the
// model. You should generally use `auto_scaling` with an
// appropriate
// `min_nodes` instead, but this option is available if you want
// more
// predictable billing. Beware that latency and error rates will
// increase
// if the traffic exceeds that capability of the system to serve it
// based
// on the selected number of nodes.
ManualScaling *GoogleCloudMlV1__ManualScaling `json:"manualScaling,omitempty"`
// Name: Required. The name specified for the version when it was
// created.
//
// The version name must be unique within the model it is created in.
Name string `json:"name,omitempty"`
// PackageUris: Optional. Cloud Storage paths (`gs://…`) of packages
// for [custom
// prediction
// routines](/ml-engine/docs/tensorflow/custom-prediction-routines)
// or [scikit-learn pipelines with
// custom
// code](/ml-engine/docs/scikit/exporting-for-prediction#custom-pi
// peline-code).
//
// For a custom prediction routine, one of these packages must contain
// your
// Predictor class
// (see
// [`predictionClass`](#Version.FIELDS.prediction_class)).
// Additionally,
// include any dependencies used by your Predictor or scikit-learn
// pipeline
// uses that are not already included in your selected
// [runtime
// version](/ml-engine/docs/tensorflow/runtime-version-list).
//
// I
// f you specify this field, you must also
// set
// [`runtimeVersion`](#Version.FIELDS.runtime_version) to 1.4 or
// greater.
PackageUris []string `json:"packageUris,omitempty"`
// PredictionClass: Optional. The fully qualified
// name
// (<var>module_name</var>.<var>class_name</var>) of a class that
// implements
// the Predictor interface described in this reference field. The
// module
// containing this class should be included in a package provided to
// the
// [`packageUris` field](#Version.FIELDS.package_uris).
//
// Specify this field if and only if you are deploying a [custom
// prediction
// routine
// (beta)](/ml-engine/docs/tensorflow/custom-prediction-routines).
// If you specify this field, you must
// set
// [`runtimeVersion`](#Version.FIELDS.runtime_version) to 1.4 or
// greater.
//
// The following code sample provides the Predictor
// interface:
//
// ```py
// class Predictor(object):
// """Interface for constructing custom predictors."""
//
// def predict(self, instances, **kwargs):
// """Performs custom prediction.
//
// Instances are the decoded values from the request. They have
// already
// been deserialized from JSON.
//
// Args:
// instances: A list of prediction input instances.
// **kwargs: A dictionary of keyword args provided as
// additional
// fields on the predict request body.
//
// Returns:
// A list of outputs containing the prediction results. This
// list must
// be JSON serializable.
// """
// raise NotImplementedError()
//
// @classmethod
// def from_path(cls, model_dir):
// """Creates an instance of Predictor using the given path.
//
// Loading of the predictor should be done in this method.
//
// Args:
// model_dir: The local directory that contains the exported
// model
// file along with any additional files uploaded when
// creating the
// version resource.
//
// Returns:
// An instance implementing this Predictor class.
// """
// raise NotImplementedError()
// ```
//
// Learn more about [the Predictor interface and custom
// prediction
// routines](/ml-engine/docs/tensorflow/custom-prediction-rout
// ines).
PredictionClass string `json:"predictionClass,omitempty"`
// PythonVersion: Optional. The version of Python used in prediction. If
// not set, the default
// version is '2.7'. Python '3.5' is available when `runtime_version` is
// set
// to '1.4' and above. Python '2.7' works with all supported runtime
// versions.
PythonVersion string `json:"pythonVersion,omitempty"`
// RequestLoggingConfig: Optional. Configures the request-response pair
// logging on predictions from
// this Version.
RequestLoggingConfig *GoogleCloudMlV1__RequestLoggingConfig `json:"requestLoggingConfig,omitempty"`
// RuntimeVersion: Optional. The AI Platform runtime version to use for
// this deployment.
// If not set, AI Platform uses the default stable version, 1.0. For
// more
// information, see the
// [runtime version list](/ml-engine/docs/runtime-version-list) and
// [how to manage runtime versions](/ml-engine/docs/versioning).
RuntimeVersion string `json:"runtimeVersion,omitempty"`
// ServiceAccount: Optional. Specifies the service account for resource
// access control.
ServiceAccount string `json:"serviceAccount,omitempty"`
// State: Output only. The state of a version.
//
// Possible values:
// "UNKNOWN" - The version state is unspecified.
// "READY" - The version is ready for prediction.
// "CREATING" - The version is being created. New UpdateVersion and
// DeleteVersion
// requests will fail if a version is in the CREATING state.
// "FAILED" - The version failed to be created, possibly
// cancelled.
// `error_message` should contain the details of the failure.
// "DELETING" - The version is being deleted. New UpdateVersion and
// DeleteVersion
// requests will fail if a version is in the DELETING state.
// "UPDATING" - The version is being updated. New UpdateVersion and
// DeleteVersion
// requests will fail if a version is in the UPDATING state.
State string `json:"state,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "AcceleratorConfig")
// to unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AcceleratorConfig") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *GoogleCloudMlV1__Version) MarshalJSON() ([]byte, error) {
type NoMethod GoogleCloudMlV1__Version
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleIamV1__AuditConfig: Specifies the audit configuration for a
// service.
// The configuration determines which permission types are logged, and
// what
// identities, if any, are exempted from logging.
// An AuditConfig must have one or more AuditLogConfigs.
//
// If there are AuditConfigs for both `allServices` and a specific
// service,
// the union of the two AuditConfigs is used for that service: the
// log_types
// specified in each AuditConfig are enabled, and the exempted_members
// in each
// AuditLogConfig are exempted.
//
// Example Policy with multiple AuditConfigs:
//
// {
// "audit_configs": [
// {
// "service": "allServices"
// "audit_log_configs": [
// {
// "log_type": "DATA_READ",
// "exempted_members": [
// "user:jose@example.com"
// ]
// },
// {
// "log_type": "DATA_WRITE",
// },
// {
// "log_type": "ADMIN_READ",
// }
// ]
// },
// {
// "service": "sampleservice.googleapis.com"
// "audit_log_configs": [
// {
// "log_type": "DATA_READ",
// },
// {
// "log_type": "DATA_WRITE",
// "exempted_members": [
// "user:aliya@example.com"
// ]
// }
// ]
// }
// ]
// }
//
// For sampleservice, this policy enables DATA_READ, DATA_WRITE and
// ADMIN_READ
// logging. It also exempts jose@example.com from DATA_READ logging,
// and
// aliya@example.com from DATA_WRITE logging.
type GoogleIamV1__AuditConfig struct {
// AuditLogConfigs: The configuration for logging of each type of
// permission.
AuditLogConfigs []*GoogleIamV1__AuditLogConfig `json:"auditLogConfigs,omitempty"`
// Service: Specifies a service that will be enabled for audit
// logging.
// For example, `storage.googleapis.com`,
// `cloudsql.googleapis.com`.
// `allServices` is a special value that covers all services.
Service string `json:"service,omitempty"`
// ForceSendFields is a list of field names (e.g. "AuditLogConfigs") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AuditLogConfigs") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *GoogleIamV1__AuditConfig) MarshalJSON() ([]byte, error) {
type NoMethod GoogleIamV1__AuditConfig
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleIamV1__AuditLogConfig: Provides the configuration for logging a
// type of permissions.
// Example:
//
// {
// "audit_log_configs": [
// {
// "log_type": "DATA_READ",
// "exempted_members": [
// "user:jose@example.com"
// ]
// },
// {
// "log_type": "DATA_WRITE",
// }
// ]
// }
//
// This enables 'DATA_READ' and 'DATA_WRITE' logging, while
// exempting
// jose@example.com from DATA_READ logging.
type GoogleIamV1__AuditLogConfig struct {
// ExemptedMembers: Specifies the identities that do not cause logging
// for this type of
// permission.
// Follows the same format of Binding.members.
ExemptedMembers []string `json:"exemptedMembers,omitempty"`
// LogType: The log type that this config enables.
//
// Possible values:
// "LOG_TYPE_UNSPECIFIED" - Default case. Should never be this.
// "ADMIN_READ" - Admin reads. Example: CloudIAM getIamPolicy
// "DATA_WRITE" - Data writes. Example: CloudSQL Users create
// "DATA_READ" - Data reads. Example: CloudSQL Users list
LogType string `json:"logType,omitempty"`
// ForceSendFields is a list of field names (e.g. "ExemptedMembers") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ExemptedMembers") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *GoogleIamV1__AuditLogConfig) MarshalJSON() ([]byte, error) {
type NoMethod GoogleIamV1__AuditLogConfig
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleIamV1__Binding: Associates `members` with a `role`.
type GoogleIamV1__Binding struct {
// Condition: The condition that is associated with this binding.
// NOTE: An unsatisfied condition will not allow user access via
// current
// binding. Different bindings, including their conditions, are
// examined
// independently.
Condition *GoogleType__Expr `json:"condition,omitempty"`
// Members: Specifies the identities requesting access for a Cloud
// Platform resource.
// `members` can have the following values:
//
// * `allUsers`: A special identifier that represents anyone who is
// on the internet; with or without a Google account.
//
// * `allAuthenticatedUsers`: A special identifier that represents
// anyone
// who is authenticated with a Google account or a service
// account.
//
// * `user:{emailid}`: An email address that represents a specific
// Google
// account. For example, `alice@example.com` .
//
//
// * `serviceAccount:{emailid}`: An email address that represents a
// service
// account. For example,
// `my-other-app@appspot.gserviceaccount.com`.
//
// * `group:{emailid}`: An email address that represents a Google
// group.
// For example, `admins@example.com`.
//
//
// * `domain:{domain}`: The G Suite domain (primary) that represents all
// the
// users of that domain. For example, `google.com` or
// `example.com`.
//
//
Members []string `json:"members,omitempty"`
// Role: Role that is assigned to `members`.
// For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
Role string `json:"role,omitempty"`
// ForceSendFields is a list of field names (e.g. "Condition") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Condition") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleIamV1__Binding) MarshalJSON() ([]byte, error) {
type NoMethod GoogleIamV1__Binding
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleIamV1__Policy: Defines an Identity and Access Management (IAM)
// policy. It is used to
// specify access control policies for Cloud Platform resources.
//
//
// A `Policy` is a collection of `bindings`. A `binding` binds one or
// more
// `members` to a single `role`. Members can be user accounts, service
// accounts,
// Google groups, and domains (such as G Suite). A `role` is a named
// list of
// permissions (defined by IAM or configured by users). A `binding`
// can
// optionally specify a `condition`, which is a logic expression that
// further
// constrains the role binding based on attributes about the request
// and/or
// target resource.
//
// **JSON Example**
//
// {
// "bindings": [
// {
// "role": "roles/resourcemanager.organizationAdmin",
// "members": [
// "user:mike@example.com",
// "group:admins@example.com",
// "domain:google.com",
//
// "serviceAccount:my-project-id@appspot.gserviceaccount.com"
// ]
// },
// {
// "role": "roles/resourcemanager.organizationViewer",
// "members": ["user:eve@example.com"],
// "condition": {
// "title": "expirable access",
// "description": "Does not grant access after Sep 2020",
// "expression": "request.time <
// timestamp('2020-10-01T00:00:00.000Z')",
// }
// }
// ]
// }
//
// **YAML Example**
//
// bindings:
// - members:
// - user:mike@example.com
// - group:admins@example.com
// - domain:google.com
// - serviceAccount:my-project-id@appspot.gserviceaccount.com
// role: roles/resourcemanager.organizationAdmin
// - members:
// - user:eve@example.com
// role: roles/resourcemanager.organizationViewer
// condition:
// title: expirable access
// description: Does not grant access after Sep 2020
// expression: request.time <
// timestamp('2020-10-01T00:00:00.000Z')
//
// For a description of IAM and its features, see the
// [IAM developer's guide](https://cloud.google.com/iam/docs).
type GoogleIamV1__Policy struct {
// AuditConfigs: Specifies cloud audit logging configuration for this
// policy.
AuditConfigs []*GoogleIamV1__AuditConfig `json:"auditConfigs,omitempty"`
// Bindings: Associates a list of `members` to a `role`. Optionally may
// specify a
// `condition` that determines when binding is in effect.
// `bindings` with no members will result in an error.
Bindings []*GoogleIamV1__Binding `json:"bindings,omitempty"`
// Etag: `etag` is used for optimistic concurrency control as a way to
// help
// prevent simultaneous updates of a policy from overwriting each
// other.
// It is strongly suggested that systems make use of the `etag` in
// the
// read-modify-write cycle to perform policy updates in order to avoid
// race
// conditions: An `etag` is returned in the response to `getIamPolicy`,
// and
// systems are expected to put that etag in the request to
// `setIamPolicy` to
// ensure that their change will be applied to the same version of the
// policy.
//
// If no `etag` is provided in the call to `setIamPolicy`, then the
// existing
// policy is overwritten. Due to blind-set semantics of an etag-less
// policy,
// 'setIamPolicy' will not fail even if either of incoming or stored
// policy
// does not meet the version requirements.
Etag string `json:"etag,omitempty"`
// Version: Specifies the format of the policy.
//
// Valid values are 0, 1, and 3. Requests specifying an invalid value
// will be
// rejected.
//
// Operations affecting conditional bindings must specify version 3.
// This can
// be either setting a conditional policy, modifying a conditional
// binding,
// or removing a conditional binding from the stored conditional
// policy.
// Operations on non-conditional policies may specify any valid value
// or
// leave the field unset.
//
// If no etag is provided in the call to `setIamPolicy`, any
// version
// compliance checks on the incoming and/or stored policy is skipped.
Version int64 `json:"version,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "AuditConfigs") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AuditConfigs") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleIamV1__Policy) MarshalJSON() ([]byte, error) {
type NoMethod GoogleIamV1__Policy
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleIamV1__SetIamPolicyRequest: Request message for `SetIamPolicy`
// method.
type GoogleIamV1__SetIamPolicyRequest struct {
// Policy: REQUIRED: The complete policy to be applied to the
// `resource`. The size of
// the policy is limited to a few 10s of KB. An empty policy is a
// valid policy but certain Cloud Platform services (such as
// Projects)
// might reject them.
Policy *GoogleIamV1__Policy `json:"policy,omitempty"`
// UpdateMask: OPTIONAL: A FieldMask specifying which fields of the
// policy to modify. Only
// the fields in the mask will be modified. If no mask is provided,
// the
// following default mask is used:
// paths: "bindings, etag"
// This field is only used by Cloud IAM.
UpdateMask string `json:"updateMask,omitempty"`
// ForceSendFields is a list of field names (e.g. "Policy") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Policy") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleIamV1__SetIamPolicyRequest) MarshalJSON() ([]byte, error) {
type NoMethod GoogleIamV1__SetIamPolicyRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleIamV1__TestIamPermissionsRequest: Request message for
// `TestIamPermissions` method.
type GoogleIamV1__TestIamPermissionsRequest struct {
// Permissions: The set of permissions to check for the `resource`.
// Permissions with
// wildcards (such as '*' or 'storage.*') are not allowed. For
// more
// information see
// [IAM
// Overview](https://cloud.google.com/iam/docs/overview#permissions).
Permissions []string `json:"permissions,omitempty"`
// ForceSendFields is a list of field names (e.g. "Permissions") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Permissions") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleIamV1__TestIamPermissionsRequest) MarshalJSON() ([]byte, error) {
type NoMethod GoogleIamV1__TestIamPermissionsRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleIamV1__TestIamPermissionsResponse: Response message for
// `TestIamPermissions` method.
type GoogleIamV1__TestIamPermissionsResponse struct {
// Permissions: A subset of `TestPermissionsRequest.permissions` that
// the caller is
// allowed.
Permissions []string `json:"permissions,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Permissions") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Permissions") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleIamV1__TestIamPermissionsResponse) MarshalJSON() ([]byte, error) {
type NoMethod GoogleIamV1__TestIamPermissionsResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleLongrunning__ListOperationsResponse: The response message for
// Operations.ListOperations.
type GoogleLongrunning__ListOperationsResponse struct {
// NextPageToken: The standard List next-page token.
NextPageToken string `json:"nextPageToken,omitempty"`
// Operations: A list of operations that matches the specified filter in
// the request.
Operations []*GoogleLongrunning__Operation `json:"operations,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "NextPageToken") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "NextPageToken") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleLongrunning__ListOperationsResponse) MarshalJSON() ([]byte, error) {
type NoMethod GoogleLongrunning__ListOperationsResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleLongrunning__Operation: This resource represents a long-running
// operation that is the result of a
// network API call.
type GoogleLongrunning__Operation struct {
// Done: If the value is `false`, it means the operation is still in
// progress.
// If `true`, the operation is completed, and either `error` or
// `response` is
// available.
Done bool `json:"done,omitempty"`
// Error: The error result of the operation in case of failure or
// cancellation.
Error *GoogleRpc__Status `json:"error,omitempty"`
// Metadata: Service-specific metadata associated with the operation.
// It typically
// contains progress information and common metadata such as create
// time.
// Some services might not provide such metadata. Any method that
// returns a
// long-running operation should document the metadata type, if any.
Metadata googleapi.RawMessage `json:"metadata,omitempty"`
// Name: The server-assigned name, which is only unique within the same
// service that
// originally returns it. If you use the default HTTP mapping,
// the
// `name` should be a resource name ending with
// `operations/{unique_id}`.
Name string `json:"name,omitempty"`
// Response: The normal response of the operation in case of success.
// If the original
// method returns no data on success, such as `Delete`, the response
// is
// `google.protobuf.Empty`. If the original method is
// standard
// `Get`/`Create`/`Update`, the response should be the resource. For
// other
// methods, the response should have the type `XxxResponse`, where
// `Xxx`
// is the original method name. For example, if the original method
// name
// is `TakeSnapshot()`, the inferred response type
// is
// `TakeSnapshotResponse`.
Response googleapi.RawMessage `json:"response,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Done") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Done") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleLongrunning__Operation) MarshalJSON() ([]byte, error) {
type NoMethod GoogleLongrunning__Operation
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleProtobuf__Empty: A generic empty message that you can re-use to
// avoid defining duplicated
// empty messages in your APIs. A typical example is to use it as the
// request
// or the response type of an API method. For instance:
//
// service Foo {
// rpc Bar(google.protobuf.Empty) returns
// (google.protobuf.Empty);
// }
//
// The JSON representation for `Empty` is empty JSON object `{}`.
type GoogleProtobuf__Empty struct {
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
}
// GoogleRpc__Status: The `Status` type defines a logical error model
// that is suitable for
// different programming environments, including REST APIs and RPC APIs.
// It is
// used by [gRPC](https://github.com/grpc). Each `Status` message
// contains
// three pieces of data: error code, error message, and error
// details.
//
// You can find out more about this error model and how to work with it
// in the
// [API Design Guide](https://cloud.google.com/apis/design/errors).
type GoogleRpc__Status struct {
// Code: The status code, which should be an enum value of
// google.rpc.Code.
Code int64 `json:"code,omitempty"`
// Details: A list of messages that carry the error details. There is a
// common set of
// message types for APIs to use.
Details []googleapi.RawMessage `json:"details,omitempty"`
// Message: A developer-facing error message, which should be in
// English. Any
// user-facing error message should be localized and sent in
// the
// google.rpc.Status.details field, or localized by the client.
Message string `json:"message,omitempty"`
// ForceSendFields is a list of field names (e.g. "Code") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Code") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleRpc__Status) MarshalJSON() ([]byte, error) {
type NoMethod GoogleRpc__Status
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleType__Expr: Represents an expression text. Example:
//
// title: "User account presence"
// description: "Determines whether the request has a user account"
// expression: "size(request.user) > 0"
type GoogleType__Expr struct {
// Description: An optional description of the expression. This is a
// longer text which
// describes the expression, e.g. when hovered over it in a UI.
Description string `json:"description,omitempty"`
// Expression: Textual representation of an expression in
// Common Expression Language syntax.
//
// The application context of the containing message determines
// which
// well-known feature set of CEL is supported.
Expression string `json:"expression,omitempty"`
// Location: An optional string indicating the location of the
// expression for error
// reporting, e.g. a file name and a position in the file.
Location string `json:"location,omitempty"`
// Title: An optional title for the expression, i.e. a short string
// describing
// its purpose. This can be used e.g. in UIs which allow to enter
// the
// expression.
Title string `json:"title,omitempty"`
// ForceSendFields is a list of field names (e.g. "Description") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Description") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleType__Expr) MarshalJSON() ([]byte, error) {
type NoMethod GoogleType__Expr
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// method id "ml.projects.getConfig":
type ProjectsGetConfigCall struct {
s *Service
name string
urlParams_ gensupport.URLParams
ifNoneMatch_ string
ctx_ context.Context
header_ http.Header
}
// GetConfig: Get the service account information associated with your
// project. You need
// this information in order to grant the service account permissions
// for
// the Google Cloud Storage location where you put your model training
// code
// for training the model with Google Cloud Machine Learning.
func (r *ProjectsService) GetConfig(name string) *ProjectsGetConfigCall {
c := &ProjectsGetConfigCall{s: r.s, urlParams_: make(gensupport.URLParams)}
c.name = name
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
// for more information.
func (c *ProjectsGetConfigCall) Fields(s ...googleapi.Field) *ProjectsGetConfigCall {
c.urlParams_.Set("fields", googleapi.CombineFields(s))
return c
}
// IfNoneMatch sets the optional parameter which makes the operation
// fail if the object's ETag matches the given value. This is useful for
// getting updates only after the object has changed since the last
// request. Use googleapi.IsNotModified to check whether the response
// error from Do is the result of In-None-Match.
func (c *ProjectsGetConfigCall) IfNoneMatch(entityTag string) *ProjectsGetConfigCall {
c.ifNoneMatch_ = entityTag
return c
}
// Context sets the context to be used in this call's Do method. Any
// pending HTTP request will be aborted if the provided context is
// canceled.
func (c *ProjectsGetConfigCall) Context(ctx context.Context) *ProjectsGetConfigCall {
c.ctx_ = ctx
return c
}
// Header returns an http.Header that can be modified by the caller to
// add HTTP headers to the request.
func (c *ProjectsGetConfigCall) Header() http.Header {
if c.header_ == nil {
c.header_ = make(http.Header)
}
return c.header_
}
func (c *ProjectsGetConfigCall) doRequest(alt string) (*http.Response, error) {
reqHeaders := make(http.Header)
reqHeaders.Set("x-goog-api-client", "gl-go/1.11.0 gdcl/20190926")
for k, v := range c.header_ {
reqHeaders[k] = v
}
reqHeaders.Set("User-Agent", c.s.userAgent())
if c.ifNoneMatch_ != "" {
reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
}
var body io.Reader = nil
c.urlParams_.Set("alt", alt)
c.urlParams_.Set("prettyPrint", "false")
urls := googleapi.ResolveRelative(c.s.BasePath, "v1/{+name}:getConfig")
urls += "?" + c.urlParams_.Encode()
req, err := http.NewRequest("GET", urls, body)
if err != nil {
return nil, err
}
req.Header = reqHeaders
googleapi.Expand(req.URL, map[string]string{
"name": c.name,
})
return gensupport.SendRequest(c.ctx_, c.s.client, req)
}
// Do executes the "ml.projects.getConfig" call.
// Exactly one of *GoogleCloudMlV1__GetConfigResponse or error will be
// non-nil. Any non-2xx status code is an error. Response headers are in
// either *GoogleCloudMlV1__GetConfigResponse.ServerResponse.Header or
// (if a response was returned at all) in
// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
// whether the returned error was because http.StatusNotModified was
// returned.
func (c *ProjectsGetConfigCall) Do(opts ...googleapi.CallOption) (*GoogleCloudMlV1__GetConfigResponse, error) {
gensupport.SetOptions(c.urlParams_, opts...)
res, err := c.doRequest("json")
if res != nil && res.StatusCode == http.StatusNotModified {
if res.Body != nil {
res.Body.Close()
}
return nil, &googleapi.Error{