|
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227 |
- // Package prediction provides access to the Prediction API.
- //
- // See https://developers.google.com/prediction/docs/developer-guide
- //
- // Usage example:
- //
- // import "google.golang.org/api/prediction/v1.4"
- // ...
- // predictionService, err := prediction.New(oauthHttpClient)
- package prediction // import "google.golang.org/api/prediction/v1.4"
-
- import (
- "bytes"
- "encoding/json"
- "errors"
- "fmt"
- context "golang.org/x/net/context"
- ctxhttp "golang.org/x/net/context/ctxhttp"
- gensupport "google.golang.org/api/gensupport"
- googleapi "google.golang.org/api/googleapi"
- "io"
- "net/http"
- "net/url"
- "strconv"
- "strings"
- )
-
- // 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
- var _ = ctxhttp.Do
-
- const apiId = "prediction:v1.4"
- const apiName = "prediction"
- const apiVersion = "v1.4"
- const basePath = "https://www.googleapis.com/prediction/v1.4/"
-
- // OAuth2 scopes used by this API.
- const (
- // Manage your data and permissions in Google Cloud Storage
- DevstorageFullControlScope = "https://www.googleapis.com/auth/devstorage.full_control"
-
- // View your data in Google Cloud Storage
- DevstorageReadOnlyScope = "https://www.googleapis.com/auth/devstorage.read_only"
-
- // Manage your data in Google Cloud Storage
- DevstorageReadWriteScope = "https://www.googleapis.com/auth/devstorage.read_write"
-
- // Manage your data in the Google Prediction API
- PredictionScope = "https://www.googleapis.com/auth/prediction"
- )
-
- func New(client *http.Client) (*Service, error) {
- if client == nil {
- return nil, errors.New("client is nil")
- }
- s := &Service{client: client, BasePath: basePath}
- s.Hostedmodels = NewHostedmodelsService(s)
- s.Trainedmodels = NewTrainedmodelsService(s)
- return s, nil
- }
-
- type Service struct {
- client *http.Client
- BasePath string // API endpoint base URL
- UserAgent string // optional additional User-Agent fragment
-
- Hostedmodels *HostedmodelsService
-
- Trainedmodels *TrainedmodelsService
- }
-
- func (s *Service) userAgent() string {
- if s.UserAgent == "" {
- return googleapi.UserAgent
- }
- return googleapi.UserAgent + " " + s.UserAgent
- }
-
- func NewHostedmodelsService(s *Service) *HostedmodelsService {
- rs := &HostedmodelsService{s: s}
- return rs
- }
-
- type HostedmodelsService struct {
- s *Service
- }
-
- func NewTrainedmodelsService(s *Service) *TrainedmodelsService {
- rs := &TrainedmodelsService{s: s}
- return rs
- }
-
- type TrainedmodelsService struct {
- s *Service
- }
-
- type Input struct {
- // Input: Input to the model for a prediction
- Input *InputInput `json:"input,omitempty"`
-
- // ForceSendFields is a list of field names (e.g. "Input") 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. "Input") 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 *Input) MarshalJSON() ([]byte, error) {
- type NoMethod Input
- raw := NoMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
- }
-
- // InputInput: Input to the model for a prediction
- type InputInput struct {
- // CsvInstance: A list of input features, these can be strings or
- // doubles.
- CsvInstance []interface{} `json:"csvInstance,omitempty"`
-
- // ForceSendFields is a list of field names (e.g. "CsvInstance") 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. "CsvInstance") 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 *InputInput) MarshalJSON() ([]byte, error) {
- type NoMethod InputInput
- raw := NoMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
- }
-
- type Output struct {
- // Id: The unique name for the predictive model.
- Id string `json:"id,omitempty"`
-
- // Kind: What kind of resource this is.
- Kind string `json:"kind,omitempty"`
-
- // OutputLabel: The most likely class label [Categorical models only].
- OutputLabel string `json:"outputLabel,omitempty"`
-
- // OutputMulti: A list of class labels with their estimated
- // probabilities [Categorical models only].
- OutputMulti []*OutputOutputMulti `json:"outputMulti,omitempty"`
-
- // OutputValue: The estimated regression value [Regression models only].
- OutputValue float64 `json:"outputValue,omitempty"`
-
- // SelfLink: A URL to re-request this resource.
- SelfLink string `json:"selfLink,omitempty"`
-
- // ServerResponse contains the HTTP response code and headers from the
- // server.
- googleapi.ServerResponse `json:"-"`
-
- // ForceSendFields is a list of field names (e.g. "Id") 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. "Id") 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 *Output) MarshalJSON() ([]byte, error) {
- type NoMethod Output
- raw := NoMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
- }
-
- func (s *Output) UnmarshalJSON(data []byte) error {
- type NoMethod Output
- var s1 struct {
- OutputValue gensupport.JSONFloat64 `json:"outputValue"`
- *NoMethod
- }
- s1.NoMethod = (*NoMethod)(s)
- if err := json.Unmarshal(data, &s1); err != nil {
- return err
- }
- s.OutputValue = float64(s1.OutputValue)
- return nil
- }
-
- type OutputOutputMulti struct {
- // Label: The class label.
- Label string `json:"label,omitempty"`
-
- // Score: The probability of the class label.
- Score float64 `json:"score,omitempty"`
-
- // ForceSendFields is a list of field names (e.g. "Label") 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. "Label") 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 *OutputOutputMulti) MarshalJSON() ([]byte, error) {
- type NoMethod OutputOutputMulti
- raw := NoMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
- }
-
- func (s *OutputOutputMulti) UnmarshalJSON(data []byte) error {
- type NoMethod OutputOutputMulti
- var s1 struct {
- Score gensupport.JSONFloat64 `json:"score"`
- *NoMethod
- }
- s1.NoMethod = (*NoMethod)(s)
- if err := json.Unmarshal(data, &s1); err != nil {
- return err
- }
- s.Score = float64(s1.Score)
- return nil
- }
-
- type Training struct {
- // DataAnalysis: Data Analysis.
- DataAnalysis *TrainingDataAnalysis `json:"dataAnalysis,omitempty"`
-
- // Id: The unique name for the predictive model.
- Id string `json:"id,omitempty"`
-
- // Kind: What kind of resource this is.
- Kind string `json:"kind,omitempty"`
-
- // ModelInfo: Model metadata.
- ModelInfo *TrainingModelInfo `json:"modelInfo,omitempty"`
-
- // SelfLink: A URL to re-request this resource.
- SelfLink string `json:"selfLink,omitempty"`
-
- // StorageDataLocation: Google storage location of the training data
- // file.
- StorageDataLocation string `json:"storageDataLocation,omitempty"`
-
- // StoragePMMLLocation: Google storage location of the preprocessing
- // pmml file.
- StoragePMMLLocation string `json:"storagePMMLLocation,omitempty"`
-
- // StoragePMMLModelLocation: Google storage location of the pmml model
- // file.
- StoragePMMLModelLocation string `json:"storagePMMLModelLocation,omitempty"`
-
- // TrainingStatus: The current status of the training job. This can be
- // one of following: RUNNING; DONE; ERROR; ERROR: TRAINING JOB NOT FOUND
- TrainingStatus string `json:"trainingStatus,omitempty"`
-
- // Utility: A class weighting function, which allows the importance
- // weights for class labels to be specified [Categorical models only].
- Utility []map[string]float64 `json:"utility,omitempty"`
-
- // ServerResponse contains the HTTP response code and headers from the
- // server.
- googleapi.ServerResponse `json:"-"`
-
- // ForceSendFields is a list of field names (e.g. "DataAnalysis") 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. "DataAnalysis") 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 *Training) MarshalJSON() ([]byte, error) {
- type NoMethod Training
- raw := NoMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
- }
-
- // TrainingDataAnalysis: Data Analysis.
- type TrainingDataAnalysis struct {
- Warnings []string `json:"warnings,omitempty"`
-
- // ForceSendFields is a list of field names (e.g. "Warnings") 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. "Warnings") 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 *TrainingDataAnalysis) MarshalJSON() ([]byte, error) {
- type NoMethod TrainingDataAnalysis
- raw := NoMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
- }
-
- // TrainingModelInfo: Model metadata.
- type TrainingModelInfo struct {
- // ClassWeightedAccuracy: Estimated accuracy of model taking utility
- // weights into account [Categorical models only].
- ClassWeightedAccuracy float64 `json:"classWeightedAccuracy,omitempty"`
-
- // ClassificationAccuracy: A number between 0.0 and 1.0, where 1.0 is
- // 100% accurate. This is an estimate, based on the amount and quality
- // of the training data, of the estimated prediction accuracy. You can
- // use this is a guide to decide whether the results are accurate enough
- // for your needs. This estimate will be more reliable if your real
- // input data is similar to your training data [Categorical models
- // only].
- ClassificationAccuracy float64 `json:"classificationAccuracy,omitempty"`
-
- // ConfusionMatrix: An output confusion matrix. This shows an estimate
- // for how this model will do in predictions. This is first indexed by
- // the true class label. For each true class label, this provides a pair
- // {predicted_label, count}, where count is the estimated number of
- // times the model will predict the predicted label given the true
- // label. Will not output if more then 100 classes [Categorical models
- // only].
- ConfusionMatrix map[string]map[string]float64 `json:"confusionMatrix,omitempty"`
-
- // ConfusionMatrixRowTotals: A list of the confusion matrix row totals
- ConfusionMatrixRowTotals map[string]float64 `json:"confusionMatrixRowTotals,omitempty"`
-
- // MeanSquaredError: An estimated mean squared error. The can be used to
- // measure the quality of the predicted model [Regression models only].
- MeanSquaredError float64 `json:"meanSquaredError,omitempty"`
-
- // ModelType: Type of predictive model (CLASSIFICATION or REGRESSION)
- ModelType string `json:"modelType,omitempty"`
-
- // NumberInstances: Number of valid data instances used in the trained
- // model.
- NumberInstances int64 `json:"numberInstances,omitempty,string"`
-
- // NumberLabels: Number of class labels in the trained model
- // [Categorical models only].
- NumberLabels int64 `json:"numberLabels,omitempty,string"`
-
- // ForceSendFields is a list of field names (e.g.
- // "ClassWeightedAccuracy") 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. "ClassWeightedAccuracy") 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 *TrainingModelInfo) MarshalJSON() ([]byte, error) {
- type NoMethod TrainingModelInfo
- raw := NoMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
- }
-
- func (s *TrainingModelInfo) UnmarshalJSON(data []byte) error {
- type NoMethod TrainingModelInfo
- var s1 struct {
- ClassWeightedAccuracy gensupport.JSONFloat64 `json:"classWeightedAccuracy"`
- ClassificationAccuracy gensupport.JSONFloat64 `json:"classificationAccuracy"`
- MeanSquaredError gensupport.JSONFloat64 `json:"meanSquaredError"`
- *NoMethod
- }
- s1.NoMethod = (*NoMethod)(s)
- if err := json.Unmarshal(data, &s1); err != nil {
- return err
- }
- s.ClassWeightedAccuracy = float64(s1.ClassWeightedAccuracy)
- s.ClassificationAccuracy = float64(s1.ClassificationAccuracy)
- s.MeanSquaredError = float64(s1.MeanSquaredError)
- return nil
- }
-
- type Update struct {
- // CsvInstance: The input features for this instance
- CsvInstance []interface{} `json:"csvInstance,omitempty"`
-
- // Label: The class label of this instance
- Label string `json:"label,omitempty"`
-
- // Output: The generic output value - could be regression value or class
- // label
- Output string `json:"output,omitempty"`
-
- // ForceSendFields is a list of field names (e.g. "CsvInstance") 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. "CsvInstance") 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 *Update) MarshalJSON() ([]byte, error) {
- type NoMethod Update
- raw := NoMethod(*s)
- return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
- }
-
- // method id "prediction.hostedmodels.predict":
-
- type HostedmodelsPredictCall struct {
- s *Service
- hostedModelName string
- input *Input
- urlParams_ gensupport.URLParams
- ctx_ context.Context
- header_ http.Header
- }
-
- // Predict: Submit input and request an output against a hosted model.
- func (r *HostedmodelsService) Predict(hostedModelName string, input *Input) *HostedmodelsPredictCall {
- c := &HostedmodelsPredictCall{s: r.s, urlParams_: make(gensupport.URLParams)}
- c.hostedModelName = hostedModelName
- c.input = input
- 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 *HostedmodelsPredictCall) Fields(s ...googleapi.Field) *HostedmodelsPredictCall {
- c.urlParams_.Set("fields", googleapi.CombineFields(s))
- 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 *HostedmodelsPredictCall) Context(ctx context.Context) *HostedmodelsPredictCall {
- 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 *HostedmodelsPredictCall) Header() http.Header {
- if c.header_ == nil {
- c.header_ = make(http.Header)
- }
- return c.header_
- }
-
- func (c *HostedmodelsPredictCall) doRequest(alt string) (*http.Response, error) {
- reqHeaders := make(http.Header)
- for k, v := range c.header_ {
- reqHeaders[k] = v
- }
- reqHeaders.Set("User-Agent", c.s.userAgent())
- var body io.Reader = nil
- body, err := googleapi.WithoutDataWrapper.JSONReader(c.input)
- if err != nil {
- return nil, err
- }
- reqHeaders.Set("Content-Type", "application/json")
- c.urlParams_.Set("alt", alt)
- urls := googleapi.ResolveRelative(c.s.BasePath, "hostedmodels/{hostedModelName}/predict")
- urls += "?" + c.urlParams_.Encode()
- req, _ := http.NewRequest("POST", urls, body)
- req.Header = reqHeaders
- googleapi.Expand(req.URL, map[string]string{
- "hostedModelName": c.hostedModelName,
- })
- return gensupport.SendRequest(c.ctx_, c.s.client, req)
- }
-
- // Do executes the "prediction.hostedmodels.predict" call.
- // Exactly one of *Output or error will be non-nil. Any non-2xx status
- // code is an error. Response headers are in either
- // *Output.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 *HostedmodelsPredictCall) Do(opts ...googleapi.CallOption) (*Output, 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{
- Code: res.StatusCode,
- Header: res.Header,
- }
- }
- if err != nil {
- return nil, err
- }
- defer googleapi.CloseBody(res)
- if err := googleapi.CheckResponse(res); err != nil {
- return nil, err
- }
- ret := &Output{
- ServerResponse: googleapi.ServerResponse{
- Header: res.Header,
- HTTPStatusCode: res.StatusCode,
- },
- }
- target := &ret
- if err := gensupport.DecodeResponse(target, res); err != nil {
- return nil, err
- }
- return ret, nil
- // {
- // "description": "Submit input and request an output against a hosted model.",
- // "httpMethod": "POST",
- // "id": "prediction.hostedmodels.predict",
- // "parameterOrder": [
- // "hostedModelName"
- // ],
- // "parameters": {
- // "hostedModelName": {
- // "description": "The name of a hosted model.",
- // "location": "path",
- // "required": true,
- // "type": "string"
- // }
- // },
- // "path": "hostedmodels/{hostedModelName}/predict",
- // "request": {
- // "$ref": "Input"
- // },
- // "response": {
- // "$ref": "Output"
- // },
- // "scopes": [
- // "https://www.googleapis.com/auth/prediction"
- // ]
- // }
-
- }
-
- // method id "prediction.trainedmodels.delete":
-
- type TrainedmodelsDeleteCall struct {
- s *Service
- id string
- urlParams_ gensupport.URLParams
- ctx_ context.Context
- header_ http.Header
- }
-
- // Delete: Delete a trained model.
- func (r *TrainedmodelsService) Delete(id string) *TrainedmodelsDeleteCall {
- c := &TrainedmodelsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
- c.id = id
- 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 *TrainedmodelsDeleteCall) Fields(s ...googleapi.Field) *TrainedmodelsDeleteCall {
- c.urlParams_.Set("fields", googleapi.CombineFields(s))
- 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 *TrainedmodelsDeleteCall) Context(ctx context.Context) *TrainedmodelsDeleteCall {
- 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 *TrainedmodelsDeleteCall) Header() http.Header {
- if c.header_ == nil {
- c.header_ = make(http.Header)
- }
- return c.header_
- }
-
- func (c *TrainedmodelsDeleteCall) doRequest(alt string) (*http.Response, error) {
- reqHeaders := make(http.Header)
- for k, v := range c.header_ {
- reqHeaders[k] = v
- }
- reqHeaders.Set("User-Agent", c.s.userAgent())
- var body io.Reader = nil
- c.urlParams_.Set("alt", alt)
- urls := googleapi.ResolveRelative(c.s.BasePath, "trainedmodels/{id}")
- urls += "?" + c.urlParams_.Encode()
- req, _ := http.NewRequest("DELETE", urls, body)
- req.Header = reqHeaders
- googleapi.Expand(req.URL, map[string]string{
- "id": c.id,
- })
- return gensupport.SendRequest(c.ctx_, c.s.client, req)
- }
-
- // Do executes the "prediction.trainedmodels.delete" call.
- func (c *TrainedmodelsDeleteCall) Do(opts ...googleapi.CallOption) error {
- gensupport.SetOptions(c.urlParams_, opts...)
- res, err := c.doRequest("json")
- if err != nil {
- return err
- }
- defer googleapi.CloseBody(res)
- if err := googleapi.CheckResponse(res); err != nil {
- return err
- }
- return nil
- // {
- // "description": "Delete a trained model.",
- // "httpMethod": "DELETE",
- // "id": "prediction.trainedmodels.delete",
- // "parameterOrder": [
- // "id"
- // ],
- // "parameters": {
- // "id": {
- // "description": "The unique name for the predictive model.",
- // "location": "path",
- // "required": true,
- // "type": "string"
- // }
- // },
- // "path": "trainedmodels/{id}",
- // "scopes": [
- // "https://www.googleapis.com/auth/prediction"
- // ]
- // }
-
- }
-
- // method id "prediction.trainedmodels.get":
-
- type TrainedmodelsGetCall struct {
- s *Service
- id string
- urlParams_ gensupport.URLParams
- ifNoneMatch_ string
- ctx_ context.Context
- header_ http.Header
- }
-
- // Get: Check training status of your model.
- func (r *TrainedmodelsService) Get(id string) *TrainedmodelsGetCall {
- c := &TrainedmodelsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
- c.id = id
- 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 *TrainedmodelsGetCall) Fields(s ...googleapi.Field) *TrainedmodelsGetCall {
- 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 *TrainedmodelsGetCall) IfNoneMatch(entityTag string) *TrainedmodelsGetCall {
- 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 *TrainedmodelsGetCall) Context(ctx context.Context) *TrainedmodelsGetCall {
- 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 *TrainedmodelsGetCall) Header() http.Header {
- if c.header_ == nil {
- c.header_ = make(http.Header)
- }
- return c.header_
- }
-
- func (c *TrainedmodelsGetCall) doRequest(alt string) (*http.Response, error) {
- reqHeaders := make(http.Header)
- 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)
- urls := googleapi.ResolveRelative(c.s.BasePath, "trainedmodels/{id}")
- urls += "?" + c.urlParams_.Encode()
- req, _ := http.NewRequest("GET", urls, body)
- req.Header = reqHeaders
- googleapi.Expand(req.URL, map[string]string{
- "id": c.id,
- })
- return gensupport.SendRequest(c.ctx_, c.s.client, req)
- }
-
- // Do executes the "prediction.trainedmodels.get" call.
- // Exactly one of *Training or error will be non-nil. Any non-2xx status
- // code is an error. Response headers are in either
- // *Training.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 *TrainedmodelsGetCall) Do(opts ...googleapi.CallOption) (*Training, 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{
- Code: res.StatusCode,
- Header: res.Header,
- }
- }
- if err != nil {
- return nil, err
- }
- defer googleapi.CloseBody(res)
- if err := googleapi.CheckResponse(res); err != nil {
- return nil, err
- }
- ret := &Training{
- ServerResponse: googleapi.ServerResponse{
- Header: res.Header,
- HTTPStatusCode: res.StatusCode,
- },
- }
- target := &ret
- if err := gensupport.DecodeResponse(target, res); err != nil {
- return nil, err
- }
- return ret, nil
- // {
- // "description": "Check training status of your model.",
- // "httpMethod": "GET",
- // "id": "prediction.trainedmodels.get",
- // "parameterOrder": [
- // "id"
- // ],
- // "parameters": {
- // "id": {
- // "description": "The unique name for the predictive model.",
- // "location": "path",
- // "required": true,
- // "type": "string"
- // }
- // },
- // "path": "trainedmodels/{id}",
- // "response": {
- // "$ref": "Training"
- // },
- // "scopes": [
- // "https://www.googleapis.com/auth/prediction"
- // ]
- // }
-
- }
-
- // method id "prediction.trainedmodels.insert":
-
- type TrainedmodelsInsertCall struct {
- s *Service
- training *Training
- urlParams_ gensupport.URLParams
- ctx_ context.Context
- header_ http.Header
- }
-
- // Insert: Begin training your model.
- func (r *TrainedmodelsService) Insert(training *Training) *TrainedmodelsInsertCall {
- c := &TrainedmodelsInsertCall{s: r.s, urlParams_: make(gensupport.URLParams)}
- c.training = training
- 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 *TrainedmodelsInsertCall) Fields(s ...googleapi.Field) *TrainedmodelsInsertCall {
- c.urlParams_.Set("fields", googleapi.CombineFields(s))
- 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 *TrainedmodelsInsertCall) Context(ctx context.Context) *TrainedmodelsInsertCall {
- 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 *TrainedmodelsInsertCall) Header() http.Header {
- if c.header_ == nil {
- c.header_ = make(http.Header)
- }
- return c.header_
- }
-
- func (c *TrainedmodelsInsertCall) doRequest(alt string) (*http.Response, error) {
- reqHeaders := make(http.Header)
- for k, v := range c.header_ {
- reqHeaders[k] = v
- }
- reqHeaders.Set("User-Agent", c.s.userAgent())
- var body io.Reader = nil
- body, err := googleapi.WithoutDataWrapper.JSONReader(c.training)
- if err != nil {
- return nil, err
- }
- reqHeaders.Set("Content-Type", "application/json")
- c.urlParams_.Set("alt", alt)
- urls := googleapi.ResolveRelative(c.s.BasePath, "trainedmodels")
- urls += "?" + c.urlParams_.Encode()
- req, _ := http.NewRequest("POST", urls, body)
- req.Header = reqHeaders
- return gensupport.SendRequest(c.ctx_, c.s.client, req)
- }
-
- // Do executes the "prediction.trainedmodels.insert" call.
- // Exactly one of *Training or error will be non-nil. Any non-2xx status
- // code is an error. Response headers are in either
- // *Training.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 *TrainedmodelsInsertCall) Do(opts ...googleapi.CallOption) (*Training, 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{
- Code: res.StatusCode,
- Header: res.Header,
- }
- }
- if err != nil {
- return nil, err
- }
- defer googleapi.CloseBody(res)
- if err := googleapi.CheckResponse(res); err != nil {
- return nil, err
- }
- ret := &Training{
- ServerResponse: googleapi.ServerResponse{
- Header: res.Header,
- HTTPStatusCode: res.StatusCode,
- },
- }
- target := &ret
- if err := gensupport.DecodeResponse(target, res); err != nil {
- return nil, err
- }
- return ret, nil
- // {
- // "description": "Begin training your model.",
- // "httpMethod": "POST",
- // "id": "prediction.trainedmodels.insert",
- // "path": "trainedmodels",
- // "request": {
- // "$ref": "Training"
- // },
- // "response": {
- // "$ref": "Training"
- // },
- // "scopes": [
- // "https://www.googleapis.com/auth/devstorage.full_control",
- // "https://www.googleapis.com/auth/devstorage.read_only",
- // "https://www.googleapis.com/auth/devstorage.read_write",
- // "https://www.googleapis.com/auth/prediction"
- // ]
- // }
-
- }
-
- // method id "prediction.trainedmodels.predict":
-
- type TrainedmodelsPredictCall struct {
- s *Service
- id string
- input *Input
- urlParams_ gensupport.URLParams
- ctx_ context.Context
- header_ http.Header
- }
-
- // Predict: Submit model id and request a prediction
- func (r *TrainedmodelsService) Predict(id string, input *Input) *TrainedmodelsPredictCall {
- c := &TrainedmodelsPredictCall{s: r.s, urlParams_: make(gensupport.URLParams)}
- c.id = id
- c.input = input
- 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 *TrainedmodelsPredictCall) Fields(s ...googleapi.Field) *TrainedmodelsPredictCall {
- c.urlParams_.Set("fields", googleapi.CombineFields(s))
- 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 *TrainedmodelsPredictCall) Context(ctx context.Context) *TrainedmodelsPredictCall {
- 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 *TrainedmodelsPredictCall) Header() http.Header {
- if c.header_ == nil {
- c.header_ = make(http.Header)
- }
- return c.header_
- }
-
- func (c *TrainedmodelsPredictCall) doRequest(alt string) (*http.Response, error) {
- reqHeaders := make(http.Header)
- for k, v := range c.header_ {
- reqHeaders[k] = v
- }
- reqHeaders.Set("User-Agent", c.s.userAgent())
- var body io.Reader = nil
- body, err := googleapi.WithoutDataWrapper.JSONReader(c.input)
- if err != nil {
- return nil, err
- }
- reqHeaders.Set("Content-Type", "application/json")
- c.urlParams_.Set("alt", alt)
- urls := googleapi.ResolveRelative(c.s.BasePath, "trainedmodels/{id}/predict")
- urls += "?" + c.urlParams_.Encode()
- req, _ := http.NewRequest("POST", urls, body)
- req.Header = reqHeaders
- googleapi.Expand(req.URL, map[string]string{
- "id": c.id,
- })
- return gensupport.SendRequest(c.ctx_, c.s.client, req)
- }
-
- // Do executes the "prediction.trainedmodels.predict" call.
- // Exactly one of *Output or error will be non-nil. Any non-2xx status
- // code is an error. Response headers are in either
- // *Output.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 *TrainedmodelsPredictCall) Do(opts ...googleapi.CallOption) (*Output, 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{
- Code: res.StatusCode,
- Header: res.Header,
- }
- }
- if err != nil {
- return nil, err
- }
- defer googleapi.CloseBody(res)
- if err := googleapi.CheckResponse(res); err != nil {
- return nil, err
- }
- ret := &Output{
- ServerResponse: googleapi.ServerResponse{
- Header: res.Header,
- HTTPStatusCode: res.StatusCode,
- },
- }
- target := &ret
- if err := gensupport.DecodeResponse(target, res); err != nil {
- return nil, err
- }
- return ret, nil
- // {
- // "description": "Submit model id and request a prediction",
- // "httpMethod": "POST",
- // "id": "prediction.trainedmodels.predict",
- // "parameterOrder": [
- // "id"
- // ],
- // "parameters": {
- // "id": {
- // "description": "The unique name for the predictive model.",
- // "location": "path",
- // "required": true,
- // "type": "string"
- // }
- // },
- // "path": "trainedmodels/{id}/predict",
- // "request": {
- // "$ref": "Input"
- // },
- // "response": {
- // "$ref": "Output"
- // },
- // "scopes": [
- // "https://www.googleapis.com/auth/prediction"
- // ]
- // }
-
- }
-
- // method id "prediction.trainedmodels.update":
-
- type TrainedmodelsUpdateCall struct {
- s *Service
- id string
- update *Update
- urlParams_ gensupport.URLParams
- ctx_ context.Context
- header_ http.Header
- }
-
- // Update: Add new data to a trained model.
- func (r *TrainedmodelsService) Update(id string, update *Update) *TrainedmodelsUpdateCall {
- c := &TrainedmodelsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
- c.id = id
- c.update = update
- 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 *TrainedmodelsUpdateCall) Fields(s ...googleapi.Field) *TrainedmodelsUpdateCall {
- c.urlParams_.Set("fields", googleapi.CombineFields(s))
- 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 *TrainedmodelsUpdateCall) Context(ctx context.Context) *TrainedmodelsUpdateCall {
- 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 *TrainedmodelsUpdateCall) Header() http.Header {
- if c.header_ == nil {
- c.header_ = make(http.Header)
- }
- return c.header_
- }
-
- func (c *TrainedmodelsUpdateCall) doRequest(alt string) (*http.Response, error) {
- reqHeaders := make(http.Header)
- for k, v := range c.header_ {
- reqHeaders[k] = v
- }
- reqHeaders.Set("User-Agent", c.s.userAgent())
- var body io.Reader = nil
- body, err := googleapi.WithoutDataWrapper.JSONReader(c.update)
- if err != nil {
- return nil, err
- }
- reqHeaders.Set("Content-Type", "application/json")
- c.urlParams_.Set("alt", alt)
- urls := googleapi.ResolveRelative(c.s.BasePath, "trainedmodels/{id}")
- urls += "?" + c.urlParams_.Encode()
- req, _ := http.NewRequest("PUT", urls, body)
- req.Header = reqHeaders
- googleapi.Expand(req.URL, map[string]string{
- "id": c.id,
- })
- return gensupport.SendRequest(c.ctx_, c.s.client, req)
- }
-
- // Do executes the "prediction.trainedmodels.update" call.
- // Exactly one of *Training or error will be non-nil. Any non-2xx status
- // code is an error. Response headers are in either
- // *Training.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 *TrainedmodelsUpdateCall) Do(opts ...googleapi.CallOption) (*Training, 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{
- Code: res.StatusCode,
- Header: res.Header,
- }
- }
- if err != nil {
- return nil, err
- }
- defer googleapi.CloseBody(res)
- if err := googleapi.CheckResponse(res); err != nil {
- return nil, err
- }
- ret := &Training{
- ServerResponse: googleapi.ServerResponse{
- Header: res.Header,
- HTTPStatusCode: res.StatusCode,
- },
- }
- target := &ret
- if err := gensupport.DecodeResponse(target, res); err != nil {
- return nil, err
- }
- return ret, nil
- // {
- // "description": "Add new data to a trained model.",
- // "httpMethod": "PUT",
- // "id": "prediction.trainedmodels.update",
- // "parameterOrder": [
- // "id"
- // ],
- // "parameters": {
- // "id": {
- // "description": "The unique name for the predictive model.",
- // "location": "path",
- // "required": true,
- // "type": "string"
- // }
- // },
- // "path": "trainedmodels/{id}",
- // "request": {
- // "$ref": "Update"
- // },
- // "response": {
- // "$ref": "Training"
- // },
- // "scopes": [
- // "https://www.googleapis.com/auth/prediction"
- // ]
- // }
-
- }
|