Class v2alpha.ModelServiceClient (2.1.0)

Stay organized with collections Save and categorize content based on your preferences.

Service for performing CRUD operations on models. Recommendation models contain all the metadata necessary to generate a set of models for the Predict() api. A model is queried indirectly via a ServingConfig, which associates a model with a given Placement (e.g. Frequently Bought Together on Home Page).

This service allows customers to e.g.:

* Initiate training of a model. * Pause training of an existing model. * List all the available models along with their metadata. * Control their tuning schedule. v2alpha

Package

@google-cloud/retail

Constructors

(constructor)(opts, gaxInstance)

constructor(opts?: ClientOptions, gaxInstance?: typeof gax | typeof gax.fallback);

Construct an instance of ModelServiceClient.

Parameters
NameDescription
opts ClientOptions
gaxInstance typeof gax | typeof gax.fallback

: loaded instance of google-gax. Useful if you need to avoid loading the default gRPC version and want to use the fallback HTTP implementation. Load only fallback version and pass it to the constructor: ``` const gax = require('google-gax/build/src/fallback'); // avoids loading google-gax with gRPC const client = new ModelServiceClient({fallback: 'rest'}, gax); ```

Properties

apiEndpoint

static get apiEndpoint(): string;

The DNS address for this API service - same as servicePath(), exists for compatibility reasons.

auth

auth: gax.GoogleAuth;

descriptors

descriptors: Descriptors;

innerApiCalls

innerApiCalls: {
        [name: string]: Function;
    };

locationsClient

locationsClient: LocationsClient;

modelServiceStub

modelServiceStub?: Promise<{
        [name: string]: Function;
    }>;

operationsClient

operationsClient: gax.OperationsClient;

pathTemplates

pathTemplates: {
        [name: string]: gax.PathTemplate;
    };

port

static get port(): number;

The port for this API service.

scopes

static get scopes(): string[];

The scopes needed to make gRPC calls for every method defined in this service.

servicePath

static get servicePath(): string;

The DNS address for this API service.

warn

warn: (code: string, message: string, warnType?: string) => void;

Methods

attributesConfigPath(project, location, catalog)

attributesConfigPath(project: string, location: string, catalog: string): string;

Return a fully-qualified attributesConfig resource name string.

Parameters
NameDescription
project string
location string
catalog string
Returns
TypeDescription
string

{string} Resource name string.

cancelOperation(request, options, callback)

cancelOperation(request: protos.google.longrunning.CancelOperationRequest, options?: gax.CallOptions | Callback<protos.google.protobuf.Empty, protos.google.longrunning.CancelOperationRequest, {} | undefined | null>, callback?: Callback<protos.google.longrunning.CancelOperationRequest, protos.google.protobuf.Empty, {} | undefined | null>): Promise<protos.google.protobuf.Empty>;

Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn't support this method, it returns google.rpc.Code.UNIMPLEMENTED. Clients can use or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with an value with a of 1, corresponding to Code.CANCELLED.

Parameters
NameDescription
request protos.google.longrunning.CancelOperationRequest

The request object that will be sent.

options gax.CallOptions | Callback<protos.google.protobuf.Empty, protos.google.longrunning.CancelOperationRequest, {} | undefined | null>

Optional parameters. You can override the default settings for this call, e.g, timeout, retries, paginations, etc. See [gax.CallOptions]https://googleapis.github.io/gax-nodejs/global.html#CallOptions for the details.

callback Callback<protos.google.longrunning.CancelOperationRequest, protos.google.protobuf.Empty, {} | undefined | null>

The function which will be called with the result of the API call. {Promise} - The promise which resolves when API call finishes. The promise has a method named "cancel" which cancels the ongoing API call.

Returns
TypeDescription
Promise<protos.google.protobuf.Empty>
Example

const client = longrunning.operationsClient();
await client.cancelOperation({name: ''});

catalogPath(project, location, catalog)

catalogPath(project: string, location: string, catalog: string): string;

Return a fully-qualified catalog resource name string.

Parameters
NameDescription
project string
location string
catalog string
Returns
TypeDescription
string

{string} Resource name string.

checkCreateModelProgress(name)

checkCreateModelProgress(name: string): Promise<LROperation<protos.google.cloud.retail.v2alpha.Model, protos.google.cloud.retail.v2alpha.CreateModelMetadata>>;

Check the status of the long running operation returned by createModel().

Parameter
NameDescription
name string

The operation name that will be passed.

Returns
TypeDescription
Promise<LROperation<protos.google.cloud.retail.v2alpha.Model, protos.google.cloud.retail.v2alpha.CreateModelMetadata>>

{Promise} - The promise which resolves to an object. The decoded operation object has result and metadata field to get information from. Please see the [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) for more details and examples.

Example

  /**
   * This snippet has been automatically generated and should be regarded as a code template only.
   * It will require modifications to work.
   * It may require correct/in-range values for request initialization.
   * TODO(developer): Uncomment these variables before running the sample.
   */
  /**
   *  Required. The parent resource under which to create the model. Format:
   *  projects/{project_number}/locations/{location_id}/catalogs/{catalog_id}
   */
  // const parent = 'abc123'
  /**
   *  Required. The payload of the Model   to create.
   */
  // const model = {}
  /**
   *  Optional. Whether to run a dry_run to validate the request (without
   *  actually creating the model).
   */
  // const dryRun = true

  // Imports the Retail library
  const {ModelServiceClient} = require('@google-cloud/retail').v2alpha;

  // Instantiates a client
  const retailClient = new ModelServiceClient();

  async function callCreateModel() {
    // Construct request
    const request = {
      parent,
      model,
    };

    // Run request
    const [operation] = await retailClient.createModel(request);
    const [response] = await operation.promise();
    console.log(response);
  }

  callCreateModel();

checkTuneModelProgress(name)

checkTuneModelProgress(name: string): Promise<LROperation<protos.google.cloud.retail.v2alpha.TuneModelResponse, protos.google.cloud.retail.v2alpha.TuneModelMetadata>>;

Check the status of the long running operation returned by tuneModel().

Parameter
NameDescription
name string

The operation name that will be passed.

Returns
TypeDescription
Promise<LROperation<protos.google.cloud.retail.v2alpha.TuneModelResponse, protos.google.cloud.retail.v2alpha.TuneModelMetadata>>

{Promise} - The promise which resolves to an object. The decoded operation object has result and metadata field to get information from. Please see the [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) for more details and examples.

Example

  /**
   * This snippet has been automatically generated and should be regarded as a code template only.
   * It will require modifications to work.
   * It may require correct/in-range values for request initialization.
   * TODO(developer): Uncomment these variables before running the sample.
   */
  /**
   *  Required. The resource name of the model to tune.
   *  Format:
   *  projects/{project_number}/locations/{location_id}/catalogs/{catalog_id}/models/{model_id}
   */
  // const name = 'abc123'

  // Imports the Retail library
  const {ModelServiceClient} = require('@google-cloud/retail').v2alpha;

  // Instantiates a client
  const retailClient = new ModelServiceClient();

  async function callTuneModel() {
    // Construct request
    const request = {
      name,
    };

    // Run request
    const [operation] = await retailClient.tuneModel(request);
    const [response] = await operation.promise();
    console.log(response);
  }

  callTuneModel();

close()

close(): Promise<void>;

Terminate the gRPC channel and close the client.

The client will no longer be usable and all future behavior is undefined.

Returns
TypeDescription
Promise<void>

{Promise} A promise that resolves when the client is closed.

completionConfigPath(project, location, catalog)

completionConfigPath(project: string, location: string, catalog: string): string;

Return a fully-qualified completionConfig resource name string.

Parameters
NameDescription
project string
location string
catalog string
Returns
TypeDescription
string

{string} Resource name string.

controlPath(project, location, catalog, control)

controlPath(project: string, location: string, catalog: string, control: string): string;

Return a fully-qualified control resource name string.

Parameters
NameDescription
project string
location string
catalog string
control string
Returns
TypeDescription
string

{string} Resource name string.

createModel(request, options)

createModel(request?: protos.google.cloud.retail.v2alpha.ICreateModelRequest, options?: CallOptions): Promise<[
        LROperation<protos.google.cloud.retail.v2alpha.IModel, protos.google.cloud.retail.v2alpha.ICreateModelMetadata>,
        protos.google.longrunning.IOperation | undefined,
        {} | undefined
    ]>;

Creates a new model.

Parameters
NameDescription
request protos.google.cloud.retail.v2alpha.ICreateModelRequest

The request object that will be sent.

options CallOptions

Call options. See CallOptions for more details.

Returns
TypeDescription
Promise<[ LROperation<protos.google.cloud.retail.v2alpha.IModel, protos.google.cloud.retail.v2alpha.ICreateModelMetadata>, protos.google.longrunning.IOperation | undefined, {} | undefined ]>

{Promise} - The promise which resolves to an array. The first element of the array is an object representing a long running operation. Its promise() method returns a promise you can await for. Please see the [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) for more details and examples.

Example

  /**
   * This snippet has been automatically generated and should be regarded as a code template only.
   * It will require modifications to work.
   * It may require correct/in-range values for request initialization.
   * TODO(developer): Uncomment these variables before running the sample.
   */
  /**
   *  Required. The parent resource under which to create the model. Format:
   *  projects/{project_number}/locations/{location_id}/catalogs/{catalog_id}
   */
  // const parent = 'abc123'
  /**
   *  Required. The payload of the Model   to create.
   */
  // const model = {}
  /**
   *  Optional. Whether to run a dry_run to validate the request (without
   *  actually creating the model).
   */
  // const dryRun = true

  // Imports the Retail library
  const {ModelServiceClient} = require('@google-cloud/retail').v2alpha;

  // Instantiates a client
  const retailClient = new ModelServiceClient();

  async function callCreateModel() {
    // Construct request
    const request = {
      parent,
      model,
    };

    // Run request
    const [operation] = await retailClient.createModel(request);
    const [response] = await operation.promise();
    console.log(response);
  }

  callCreateModel();

createModel(request, options, callback)

createModel(request: protos.google.cloud.retail.v2alpha.ICreateModelRequest, options: CallOptions, callback: Callback<LROperation<protos.google.cloud.retail.v2alpha.IModel, protos.google.cloud.retail.v2alpha.ICreateModelMetadata>, protos.google.longrunning.IOperation | null | undefined, {} | null | undefined>): void;
Parameters
NameDescription
request protos.google.cloud.retail.v2alpha.ICreateModelRequest
options CallOptions
callback Callback<LROperation<protos.google.cloud.retail.v2alpha.IModel, protos.google.cloud.retail.v2alpha.ICreateModelMetadata>, protos.google.longrunning.IOperation | null | undefined, {} | null | undefined>
Returns
TypeDescription
void

createModel(request, callback)

createModel(request: protos.google.cloud.retail.v2alpha.ICreateModelRequest, callback: Callback<LROperation<protos.google.cloud.retail.v2alpha.IModel, protos.google.cloud.retail.v2alpha.ICreateModelMetadata>, protos.google.longrunning.IOperation | null | undefined, {} | null | undefined>): void;
Parameters
NameDescription
request protos.google.cloud.retail.v2alpha.ICreateModelRequest
callback Callback<LROperation<protos.google.cloud.retail.v2alpha.IModel, protos.google.cloud.retail.v2alpha.ICreateModelMetadata>, protos.google.longrunning.IOperation | null | undefined, {} | null | undefined>
Returns
TypeDescription
void

deleteModel(request, options)

deleteModel(request?: protos.google.cloud.retail.v2alpha.IDeleteModelRequest, options?: CallOptions): Promise<[
        protos.google.protobuf.IEmpty,
        protos.google.cloud.retail.v2alpha.IDeleteModelRequest | undefined,
        {} | undefined
    ]>;

Deletes an existing model.

Parameters
NameDescription
request protos.google.cloud.retail.v2alpha.IDeleteModelRequest

The request object that will be sent.

options CallOptions

Call options. See CallOptions for more details.

Returns
TypeDescription
Promise<[ protos.google.protobuf.IEmpty, protos.google.cloud.retail.v2alpha.IDeleteModelRequest | undefined, {} | undefined ]>

{Promise} - The promise which resolves to an array. The first element of the array is an object representing [Empty]. Please see the [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) for more details and examples.

Example

  /**
   * This snippet has been automatically generated and should be regarded as a code template only.
   * It will require modifications to work.
   * It may require correct/in-range values for request initialization.
   * TODO(developer): Uncomment these variables before running the sample.
   */
  /**
   *  Required. The resource name of the Model  to delete.
   *  Format:
   *  projects/{project_number}/locations/{location_id}/catalogs/{catalog_id}/models/{model_id}
   */
  // const name = 'abc123'

  // Imports the Retail library
  const {ModelServiceClient} = require('@google-cloud/retail').v2alpha;

  // Instantiates a client
  const retailClient = new ModelServiceClient();

  async function callDeleteModel() {
    // Construct request
    const request = {
      name,
    };

    // Run request
    const response = await retailClient.deleteModel(request);
    console.log(response);
  }

  callDeleteModel();

deleteModel(request, options, callback)

deleteModel(request: protos.google.cloud.retail.v2alpha.IDeleteModelRequest, options: CallOptions, callback: Callback<protos.google.protobuf.IEmpty, protos.google.cloud.retail.v2alpha.IDeleteModelRequest | null | undefined, {} | null | undefined>): void;
Parameters
NameDescription
request protos.google.cloud.retail.v2alpha.IDeleteModelRequest
options CallOptions
callback Callback<protos.google.protobuf.IEmpty, protos.google.cloud.retail.v2alpha.IDeleteModelRequest | null | undefined, {} | null | undefined>
Returns
TypeDescription
void

deleteModel(request, callback)

deleteModel(request: protos.google.cloud.retail.v2alpha.IDeleteModelRequest, callback: Callback<protos.google.protobuf.IEmpty, protos.google.cloud.retail.v2alpha.IDeleteModelRequest | null | undefined, {} | null | undefined>): void;
Parameters
NameDescription
request protos.google.cloud.retail.v2alpha.IDeleteModelRequest
callback Callback<protos.google.protobuf.IEmpty, protos.google.cloud.retail.v2alpha.IDeleteModelRequest | null | undefined, {} | null | undefined>
Returns
TypeDescription
void

deleteOperation(request, options, callback)

deleteOperation(request: protos.google.longrunning.DeleteOperationRequest, options?: gax.CallOptions | Callback<protos.google.protobuf.Empty, protos.google.longrunning.DeleteOperationRequest, {} | null | undefined>, callback?: Callback<protos.google.protobuf.Empty, protos.google.longrunning.DeleteOperationRequest, {} | null | undefined>): Promise<protos.google.protobuf.Empty>;

Deletes a long-running operation. This method indicates that the client is no longer interested in the operation result. It does not cancel the operation. If the server doesn't support this method, it returns google.rpc.Code.UNIMPLEMENTED.

Parameters
NameDescription
request protos.google.longrunning.DeleteOperationRequest

The request object that will be sent.

options gax.CallOptions | Callback<protos.google.protobuf.Empty, protos.google.longrunning.DeleteOperationRequest, {} | null | undefined>

Optional parameters. You can override the default settings for this call, e.g, timeout, retries, paginations, etc. See [gax.CallOptions]https://googleapis.github.io/gax-nodejs/global.html#CallOptions for the details.

callback Callback<protos.google.protobuf.Empty, protos.google.longrunning.DeleteOperationRequest, {} | null | undefined>

The function which will be called with the result of the API call. {Promise} - The promise which resolves when API call finishes. The promise has a method named "cancel" which cancels the ongoing API call.

Returns
TypeDescription
Promise<protos.google.protobuf.Empty>
Example

const client = longrunning.operationsClient();
await client.deleteOperation({name: ''});

getLocation(request, options, callback)

getLocation(request: LocationProtos.google.cloud.location.IGetLocationRequest, options?: gax.CallOptions | Callback<LocationProtos.google.cloud.location.ILocation, LocationProtos.google.cloud.location.IGetLocationRequest | null | undefined, {} | null | undefined>, callback?: Callback<LocationProtos.google.cloud.location.ILocation, LocationProtos.google.cloud.location.IGetLocationRequest | null | undefined, {} | null | undefined>): Promise<LocationProtos.google.cloud.location.ILocation>;

Gets information about a location.

Parameters
NameDescription
request LocationProtos.google.cloud.location.IGetLocationRequest

The request object that will be sent.

options gax.CallOptions | Callback<LocationProtos.google.cloud.location.ILocation, LocationProtos.google.cloud.location.IGetLocationRequest | null | undefined, {} | null | undefined>

Call options. See CallOptions for more details.

callback Callback<LocationProtos.google.cloud.location.ILocation, LocationProtos.google.cloud.location.IGetLocationRequest | null | undefined, {} | null | undefined>
Returns
TypeDescription
Promise<LocationProtos.google.cloud.location.ILocation>

{Promise} - The promise which resolves to an array. The first element of the array is an object representing [Location]. Please see the [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) for more details and examples.

Example

const [response] = await client.getLocation(request);

getOperation(request, options, callback)

getOperation(request: protos.google.longrunning.GetOperationRequest, options?: gax.CallOptions | Callback<protos.google.longrunning.Operation, protos.google.longrunning.GetOperationRequest, {} | null | undefined>, callback?: Callback<protos.google.longrunning.Operation, protos.google.longrunning.GetOperationRequest, {} | null | undefined>): Promise<[protos.google.longrunning.Operation]>;

Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.

Parameters
NameDescription
request protos.google.longrunning.GetOperationRequest

The request object that will be sent.

options gax.CallOptions | Callback<protos.google.longrunning.Operation, protos.google.longrunning.GetOperationRequest, {} | null | undefined>

Optional parameters. You can override the default settings for this call, e.g, timeout, retries, paginations, etc. See [gax.CallOptions]https://googleapis.github.io/gax-nodejs/global.html#CallOptions for the details.

callback Callback<protos.google.longrunning.Operation, protos.google.longrunning.GetOperationRequest, {} | null | undefined>

The function which will be called with the result of the API call.

The second parameter to the callback is an object representing [google.longrunning.Operation]. {Promise} - The promise which resolves to an array. The first element of the array is an object representing [google.longrunning.Operation]. The promise has a method named "cancel" which cancels the ongoing API call.

Returns
TypeDescription
Promise<[protos.google.longrunning.Operation]>
Example

const client = longrunning.operationsClient();
const name = '';
const [response] = await client.getOperation({name});
// doThingsWith(response)

getProjectId()

getProjectId(): Promise<string>;
Returns
TypeDescription
Promise<string>

getProjectId(callback)

getProjectId(callback: Callback<string, undefined, undefined>): void;
Parameter
NameDescription
callback Callback<string, undefined, undefined>
Returns
TypeDescription
void

initialize()

initialize(): Promise<{
        [name: string]: Function;
    }>;

Initialize the client. Performs asynchronous operations (such as authentication) and prepares the client. This function will be called automatically when any class method is called for the first time, but if you need to initialize it before calling an actual method, feel free to call initialize() directly.

You can await on this method if you want to make sure the client is initialized.

Returns
TypeDescription
Promise<{ [name: string]: Function; }>

{Promise} A promise that resolves to an authenticated service stub.

listLocationsAsync(request, options)

listLocationsAsync(request: LocationProtos.google.cloud.location.IListLocationsRequest, options?: CallOptions): AsyncIterable<LocationProtos.google.cloud.location.ILocation>;

Lists information about the supported locations for this service. Returns an iterable object.

for-await-of syntax is used with the iterable to get response elements on-demand.

Parameters
NameDescription
request LocationProtos.google.cloud.location.IListLocationsRequest

The request object that will be sent.

options CallOptions

Call options. See CallOptions for more details.

Returns
TypeDescription
AsyncIterable<LocationProtos.google.cloud.location.ILocation>

{Object} An iterable Object that allows [async iteration](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols). When you iterate the returned iterable, each element will be an object representing [Location]. The API will be called under the hood as needed, once per the page, so you can stop the iteration when you don't need more results. Please see the [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination) for more details and examples.

Example

const iterable = client.listLocationsAsync(request);
for await (const response of iterable) {
  // process response
}

listModels(request, options)

listModels(request?: protos.google.cloud.retail.v2alpha.IListModelsRequest, options?: CallOptions): Promise<[
        protos.google.cloud.retail.v2alpha.IModel[],
        protos.google.cloud.retail.v2alpha.IListModelsRequest | null,
        protos.google.cloud.retail.v2alpha.IListModelsResponse
    ]>;

Lists all the models linked to this event store.

Parameters
NameDescription
request protos.google.cloud.retail.v2alpha.IListModelsRequest

The request object that will be sent.

options CallOptions

Call options. See CallOptions for more details.

Returns
TypeDescription
Promise<[ protos.google.cloud.retail.v2alpha.IModel[], protos.google.cloud.retail.v2alpha.IListModelsRequest | null, protos.google.cloud.retail.v2alpha.IListModelsResponse ]>

{Promise} - The promise which resolves to an array. The first element of the array is Array of [Model]. The client library will perform auto-pagination by default: it will call the API as many times as needed and will merge results from all the pages into this array. Note that it can affect your quota. We recommend using listModelsAsync() method described below for async iteration which you can stop as needed. Please see the [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination) for more details and examples.

listModels(request, options, callback)

listModels(request: protos.google.cloud.retail.v2alpha.IListModelsRequest, options: CallOptions, callback: PaginationCallback<protos.google.cloud.retail.v2alpha.IListModelsRequest, protos.google.cloud.retail.v2alpha.IListModelsResponse | null | undefined, protos.google.cloud.retail.v2alpha.IModel>): void;
Parameters
NameDescription
request protos.google.cloud.retail.v2alpha.IListModelsRequest
options CallOptions
callback PaginationCallback<protos.google.cloud.retail.v2alpha.IListModelsRequest, protos.google.cloud.retail.v2alpha.IListModelsResponse | null | undefined, protos.google.cloud.retail.v2alpha.IModel>
Returns
TypeDescription
void

listModels(request, callback)

listModels(request: protos.google.cloud.retail.v2alpha.IListModelsRequest, callback: PaginationCallback<protos.google.cloud.retail.v2alpha.IListModelsRequest, protos.google.cloud.retail.v2alpha.IListModelsResponse | null | undefined, protos.google.cloud.retail.v2alpha.IModel>): void;
Parameters
NameDescription
request protos.google.cloud.retail.v2alpha.IListModelsRequest
callback PaginationCallback<protos.google.cloud.retail.v2alpha.IListModelsRequest, protos.google.cloud.retail.v2alpha.IListModelsResponse | null | undefined, protos.google.cloud.retail.v2alpha.IModel>
Returns
TypeDescription
void

listModelsAsync(request, options)

listModelsAsync(request?: protos.google.cloud.retail.v2alpha.IListModelsRequest, options?: CallOptions): AsyncIterable<protos.google.cloud.retail.v2alpha.IModel>;

Equivalent to listModels, but returns an iterable object.

for-await-of syntax is used with the iterable to get response elements on-demand.

Parameters
NameDescription
request protos.google.cloud.retail.v2alpha.IListModelsRequest

The request object that will be sent.

options CallOptions

Call options. See CallOptions for more details.

Returns
TypeDescription
AsyncIterable<protos.google.cloud.retail.v2alpha.IModel>

{Object} An iterable Object that allows [async iteration](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols). When you iterate the returned iterable, each element will be an object representing [Model]. The API will be called under the hood as needed, once per the page, so you can stop the iteration when you don't need more results. Please see the [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination) for more details and examples.

Example

  /**
   * This snippet has been automatically generated and should be regarded as a code template only.
   * It will require modifications to work.
   * It may require correct/in-range values for request initialization.
   * TODO(developer): Uncomment these variables before running the sample.
   */
  /**
   *  Required. The parent for which to list models.
   *  Format:
   *  projects/{project_number}/locations/{location_id}/catalogs/{catalog_id}
   */
  // const parent = 'abc123'
  /**
   *  Optional. Maximum number of results to return. If unspecified, defaults
   *  to 50. Max allowed value is 1000.
   */
  // const pageSize = 1234
  /**
   *  Optional. A page token, received from a previous `ListModels`
   *  call. Provide this to retrieve the subsequent page.
   */
  // const pageToken = 'abc123'

  // Imports the Retail library
  const {ModelServiceClient} = require('@google-cloud/retail').v2alpha;

  // Instantiates a client
  const retailClient = new ModelServiceClient();

  async function callListModels() {
    // Construct request
    const request = {
      parent,
    };

    // Run request
    const iterable = await retailClient.listModelsAsync(request);
    for await (const response of iterable) {
        console.log(response);
    }
  }

  callListModels();

listModelsStream(request, options)

listModelsStream(request?: protos.google.cloud.retail.v2alpha.IListModelsRequest, options?: CallOptions): Transform;

Equivalent to method.name.toCamelCase(), but returns a NodeJS Stream object.

Parameters
NameDescription
request protos.google.cloud.retail.v2alpha.IListModelsRequest

The request object that will be sent.

options CallOptions

Call options. See CallOptions for more details.

Returns
TypeDescription
Transform

{Stream} An object stream which emits an object representing [Model] on 'data' event. The client library will perform auto-pagination by default: it will call the API as many times as needed. Note that it can affect your quota. We recommend using listModelsAsync() method described below for async iteration which you can stop as needed. Please see the [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination) for more details and examples.

listOperationsAsync(request, options)

listOperationsAsync(request: protos.google.longrunning.ListOperationsRequest, options?: gax.CallOptions): AsyncIterable<protos.google.longrunning.ListOperationsResponse>;

Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns UNIMPLEMENTED. Returns an iterable object.

For-await-of syntax is used with the iterable to recursively get response element on-demand.

Parameters
NameDescription
request protos.google.longrunning.ListOperationsRequest

The request object that will be sent.

options gax.CallOptions

Optional parameters. You can override the default settings for this call, e.g, timeout, retries, paginations, etc. See [gax.CallOptions]https://googleapis.github.io/gax-nodejs/global.html#CallOptions for the details.

Returns
TypeDescription
AsyncIterable<protos.google.longrunning.ListOperationsResponse>

{Object} An iterable Object that conforms to https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols.

Example

const client = longrunning.operationsClient();
for await (const response of client.listOperationsAsync(request));
// doThingsWith(response)

matchBranchFromProductName(productName)

matchBranchFromProductName(productName: string): string | number;

Parse the branch from Product resource.

Parameter
NameDescription
productName string

A fully-qualified path representing Product resource.

Returns
TypeDescription
string | number

{string} A string representing the branch.

matchCatalogFromAttributesConfigName(attributesConfigName)

matchCatalogFromAttributesConfigName(attributesConfigName: string): string | number;

Parse the catalog from AttributesConfig resource.

Parameter
NameDescription
attributesConfigName string

A fully-qualified path representing AttributesConfig resource.

Returns
TypeDescription
string | number

{string} A string representing the catalog.

matchCatalogFromCatalogName(catalogName)

matchCatalogFromCatalogName(catalogName: string): string | number;

Parse the catalog from Catalog resource.

Parameter
NameDescription
catalogName string

A fully-qualified path representing Catalog resource.

Returns
TypeDescription
string | number

{string} A string representing the catalog.

matchCatalogFromCompletionConfigName(completionConfigName)

matchCatalogFromCompletionConfigName(completionConfigName: string): string | number;

Parse the catalog from CompletionConfig resource.

Parameter
NameDescription
completionConfigName string

A fully-qualified path representing CompletionConfig resource.

Returns
TypeDescription
string | number

{string} A string representing the catalog.

matchCatalogFromControlName(controlName)

matchCatalogFromControlName(controlName: string): string | number;

Parse the catalog from Control resource.

Parameter
NameDescription
controlName string

A fully-qualified path representing Control resource.

Returns
TypeDescription
string | number

{string} A string representing the catalog.

matchCatalogFromModelName(modelName)

matchCatalogFromModelName(modelName: string): string | number;

Parse the catalog from Model resource.

Parameter
NameDescription
modelName string

A fully-qualified path representing Model resource.

Returns
TypeDescription
string | number

{string} A string representing the catalog.

matchCatalogFromProductName(productName)

matchCatalogFromProductName(productName: string): string | number;

Parse the catalog from Product resource.

Parameter
NameDescription
productName string

A fully-qualified path representing Product resource.

Returns
TypeDescription
string | number

{string} A string representing the catalog.

matchCatalogFromServingConfigName(servingConfigName)

matchCatalogFromServingConfigName(servingConfigName: string): string | number;

Parse the catalog from ServingConfig resource.

Parameter
NameDescription
servingConfigName string

A fully-qualified path representing ServingConfig resource.

Returns
TypeDescription
string | number

{string} A string representing the catalog.

matchControlFromControlName(controlName)

matchControlFromControlName(controlName: string): string | number;

Parse the control from Control resource.

Parameter
NameDescription
controlName string

A fully-qualified path representing Control resource.

Returns
TypeDescription
string | number

{string} A string representing the control.

matchLocationFromAttributesConfigName(attributesConfigName)

matchLocationFromAttributesConfigName(attributesConfigName: string): string | number;

Parse the location from AttributesConfig resource.

Parameter
NameDescription
attributesConfigName string

A fully-qualified path representing AttributesConfig resource.

Returns
TypeDescription
string | number

{string} A string representing the location.

matchLocationFromCatalogName(catalogName)

matchLocationFromCatalogName(catalogName: string): string | number;

Parse the location from Catalog resource.

Parameter
NameDescription
catalogName string

A fully-qualified path representing Catalog resource.

Returns
TypeDescription
string | number

{string} A string representing the location.

matchLocationFromCompletionConfigName(completionConfigName)

matchLocationFromCompletionConfigName(completionConfigName: string): string | number;

Parse the location from CompletionConfig resource.

Parameter
NameDescription
completionConfigName string

A fully-qualified path representing CompletionConfig resource.

Returns
TypeDescription
string | number

{string} A string representing the location.

matchLocationFromControlName(controlName)

matchLocationFromControlName(controlName: string): string | number;

Parse the location from Control resource.

Parameter
NameDescription
controlName string

A fully-qualified path representing Control resource.

Returns
TypeDescription
string | number

{string} A string representing the location.

matchLocationFromModelName(modelName)

matchLocationFromModelName(modelName: string): string | number;

Parse the location from Model resource.

Parameter
NameDescription
modelName string

A fully-qualified path representing Model resource.

Returns
TypeDescription
string | number

{string} A string representing the location.

matchLocationFromProductName(productName)

matchLocationFromProductName(productName: string): string | number;

Parse the location from Product resource.

Parameter
NameDescription
productName string

A fully-qualified path representing Product resource.

Returns
TypeDescription
string | number

{string} A string representing the location.

matchLocationFromServingConfigName(servingConfigName)

matchLocationFromServingConfigName(servingConfigName: string): string | number;

Parse the location from ServingConfig resource.

Parameter
NameDescription
servingConfigName string

A fully-qualified path representing ServingConfig resource.

Returns
TypeDescription
string | number

{string} A string representing the location.

matchModelFromModelName(modelName)

matchModelFromModelName(modelName: string): string | number;

Parse the model from Model resource.

Parameter
NameDescription
modelName string

A fully-qualified path representing Model resource.

Returns
TypeDescription
string | number

{string} A string representing the model.

matchProductFromProductName(productName)

matchProductFromProductName(productName: string): string | number;

Parse the product from Product resource.

Parameter
NameDescription
productName string

A fully-qualified path representing Product resource.

Returns
TypeDescription
string | number

{string} A string representing the product.

matchProjectFromAttributesConfigName(attributesConfigName)

matchProjectFromAttributesConfigName(attributesConfigName: string): string | number;

Parse the project from AttributesConfig resource.

Parameter
NameDescription
attributesConfigName string

A fully-qualified path representing AttributesConfig resource.

Returns
TypeDescription
string | number

{string} A string representing the project.

matchProjectFromCatalogName(catalogName)

matchProjectFromCatalogName(catalogName: string): string | number;

Parse the project from Catalog resource.

Parameter
NameDescription
catalogName string

A fully-qualified path representing Catalog resource.

Returns
TypeDescription
string | number

{string} A string representing the project.

matchProjectFromCompletionConfigName(completionConfigName)

matchProjectFromCompletionConfigName(completionConfigName: string): string | number;

Parse the project from CompletionConfig resource.

Parameter
NameDescription
completionConfigName string

A fully-qualified path representing CompletionConfig resource.

Returns
TypeDescription
string | number

{string} A string representing the project.

matchProjectFromControlName(controlName)

matchProjectFromControlName(controlName: string): string | number;

Parse the project from Control resource.

Parameter
NameDescription
controlName string

A fully-qualified path representing Control resource.

Returns
TypeDescription
string | number

{string} A string representing the project.

matchProjectFromModelName(modelName)

matchProjectFromModelName(modelName: string): string | number;

Parse the project from Model resource.

Parameter
NameDescription
modelName string

A fully-qualified path representing Model resource.

Returns
TypeDescription
string | number

{string} A string representing the project.

matchProjectFromProductName(productName)

matchProjectFromProductName(productName: string): string | number;

Parse the project from Product resource.

Parameter
NameDescription
productName string

A fully-qualified path representing Product resource.

Returns
TypeDescription
string | number

{string} A string representing the project.

matchProjectFromServingConfigName(servingConfigName)

matchProjectFromServingConfigName(servingConfigName: string): string | number;

Parse the project from ServingConfig resource.

Parameter
NameDescription
servingConfigName string

A fully-qualified path representing ServingConfig resource.

Returns
TypeDescription
string | number

{string} A string representing the project.

matchServingConfigFromServingConfigName(servingConfigName)

matchServingConfigFromServingConfigName(servingConfigName: string): string | number;

Parse the serving_config from ServingConfig resource.

Parameter
NameDescription
servingConfigName string

A fully-qualified path representing ServingConfig resource.

Returns
TypeDescription
string | number

{string} A string representing the serving_config.

modelPath(project, location, catalog, model)

modelPath(project: string, location: string, catalog: string, model: string): string;

Return a fully-qualified model resource name string.

Parameters
NameDescription
project string
location string
catalog string
model string
Returns
TypeDescription
string

{string} Resource name string.

pauseModel(request, options)

pauseModel(request?: protos.google.cloud.retail.v2alpha.IPauseModelRequest, options?: CallOptions): Promise<[
        protos.google.cloud.retail.v2alpha.IModel,
        protos.google.cloud.retail.v2alpha.IPauseModelRequest | undefined,
        {} | undefined
    ]>;

Pauses the training of an existing model.

Parameters
NameDescription
request protos.google.cloud.retail.v2alpha.IPauseModelRequest

The request object that will be sent.

options CallOptions

Call options. See CallOptions for more details.

Returns
TypeDescription
Promise<[ protos.google.cloud.retail.v2alpha.IModel, protos.google.cloud.retail.v2alpha.IPauseModelRequest | undefined, {} | undefined ]>

{Promise} - The promise which resolves to an array. The first element of the array is an object representing [Model]. Please see the [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) for more details and examples.

Example

  /**
   * This snippet has been automatically generated and should be regarded as a code template only.
   * It will require modifications to work.
   * It may require correct/in-range values for request initialization.
   * TODO(developer): Uncomment these variables before running the sample.
   */
  /**
   *  Required. The name of the model to pause.
   *  Format:
   *  projects/{project_number}/locations/{location_id}/catalogs/{catalog_id}/models/{model_id}
   */
  // const name = 'abc123'

  // Imports the Retail library
  const {ModelServiceClient} = require('@google-cloud/retail').v2alpha;

  // Instantiates a client
  const retailClient = new ModelServiceClient();

  async function callPauseModel() {
    // Construct request
    const request = {
      name,
    };

    // Run request
    const response = await retailClient.pauseModel(request);
    console.log(response);
  }

  callPauseModel();

pauseModel(request, options, callback)

pauseModel(request: protos.google.cloud.retail.v2alpha.IPauseModelRequest, options: CallOptions, callback: Callback<protos.google.cloud.retail.v2alpha.IModel, protos.google.cloud.retail.v2alpha.IPauseModelRequest | null | undefined, {} | null | undefined>): void;
Parameters
NameDescription
request protos.google.cloud.retail.v2alpha.IPauseModelRequest
options CallOptions
callback Callback<protos.google.cloud.retail.v2alpha.IModel, protos.google.cloud.retail.v2alpha.IPauseModelRequest | null | undefined, {} | null | undefined>
Returns
TypeDescription
void

pauseModel(request, callback)

pauseModel(request: protos.google.cloud.retail.v2alpha.IPauseModelRequest, callback: Callback<protos.google.cloud.retail.v2alpha.IModel, protos.google.cloud.retail.v2alpha.IPauseModelRequest | null | undefined, {} | null | undefined>): void;
Parameters
NameDescription
request protos.google.cloud.retail.v2alpha.IPauseModelRequest
callback Callback<protos.google.cloud.retail.v2alpha.IModel, protos.google.cloud.retail.v2alpha.IPauseModelRequest | null | undefined, {} | null | undefined>
Returns
TypeDescription
void

productPath(project, location, catalog, branch, product)

productPath(project: string, location: string, catalog: string, branch: string, product: string): string;

Return a fully-qualified product resource name string.

Parameters
NameDescription
project string
location string
catalog string
branch string
product string
Returns
TypeDescription
string

{string} Resource name string.

resumeModel(request, options)

resumeModel(request?: protos.google.cloud.retail.v2alpha.IResumeModelRequest, options?: CallOptions): Promise<[
        protos.google.cloud.retail.v2alpha.IModel,
        protos.google.cloud.retail.v2alpha.IResumeModelRequest | undefined,
        {} | undefined
    ]>;

Resumes the training of an existing model.

Parameters
NameDescription
request protos.google.cloud.retail.v2alpha.IResumeModelRequest

The request object that will be sent.

options CallOptions

Call options. See CallOptions for more details.

Returns
TypeDescription
Promise<[ protos.google.cloud.retail.v2alpha.IModel, protos.google.cloud.retail.v2alpha.IResumeModelRequest | undefined, {} | undefined ]>

{Promise} - The promise which resolves to an array. The first element of the array is an object representing [Model]. Please see the [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) for more details and examples.

Example

  /**
   * This snippet has been automatically generated and should be regarded as a code template only.
   * It will require modifications to work.
   * It may require correct/in-range values for request initialization.
   * TODO(developer): Uncomment these variables before running the sample.
   */
  /**
   *  Required. The name of the model to resume.
   *  Format:
   *  projects/{project_number}/locations/{location_id}/catalogs/{catalog_id}/models/{model_id}
   */
  // const name = 'abc123'

  // Imports the Retail library
  const {ModelServiceClient} = require('@google-cloud/retail').v2alpha;

  // Instantiates a client
  const retailClient = new ModelServiceClient();

  async function callResumeModel() {
    // Construct request
    const request = {
      name,
    };

    // Run request
    const response = await retailClient.resumeModel(request);
    console.log(response);
  }

  callResumeModel();

resumeModel(request, options, callback)

resumeModel(request: protos.google.cloud.retail.v2alpha.IResumeModelRequest, options: CallOptions, callback: Callback<protos.google.cloud.retail.v2alpha.IModel, protos.google.cloud.retail.v2alpha.IResumeModelRequest | null | undefined, {} | null | undefined>): void;
Parameters
NameDescription
request protos.google.cloud.retail.v2alpha.IResumeModelRequest
options CallOptions
callback Callback<protos.google.cloud.retail.v2alpha.IModel, protos.google.cloud.retail.v2alpha.IResumeModelRequest | null | undefined, {} | null | undefined>
Returns
TypeDescription
void

resumeModel(request, callback)

resumeModel(request: protos.google.cloud.retail.v2alpha.IResumeModelRequest, callback: Callback<protos.google.cloud.retail.v2alpha.IModel, protos.google.cloud.retail.v2alpha.IResumeModelRequest | null | undefined, {} | null | undefined>): void;
Parameters
NameDescription
request protos.google.cloud.retail.v2alpha.IResumeModelRequest
callback Callback<protos.google.cloud.retail.v2alpha.IModel, protos.google.cloud.retail.v2alpha.IResumeModelRequest | null | undefined, {} | null | undefined>
Returns
TypeDescription
void

servingConfigPath(project, location, catalog, servingConfig)

servingConfigPath(project: string, location: string, catalog: string, servingConfig: string): string;

Return a fully-qualified servingConfig resource name string.

Parameters
NameDescription
project string
location string
catalog string
servingConfig string
Returns
TypeDescription
string

{string} Resource name string.

tuneModel(request, options)

tuneModel(request?: protos.google.cloud.retail.v2alpha.ITuneModelRequest, options?: CallOptions): Promise<[
        LROperation<protos.google.cloud.retail.v2alpha.ITuneModelResponse, protos.google.cloud.retail.v2alpha.ITuneModelMetadata>,
        protos.google.longrunning.IOperation | undefined,
        {} | undefined
    ]>;

Tunes an existing model.

Parameters
NameDescription
request protos.google.cloud.retail.v2alpha.ITuneModelRequest

The request object that will be sent.

options CallOptions

Call options. See CallOptions for more details.

Returns
TypeDescription
Promise<[ LROperation<protos.google.cloud.retail.v2alpha.ITuneModelResponse, protos.google.cloud.retail.v2alpha.ITuneModelMetadata>, protos.google.longrunning.IOperation | undefined, {} | undefined ]>

{Promise} - The promise which resolves to an array. The first element of the array is an object representing a long running operation. Its promise() method returns a promise you can await for. Please see the [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations) for more details and examples.

Example

  /**
   * This snippet has been automatically generated and should be regarded as a code template only.
   * It will require modifications to work.
   * It may require correct/in-range values for request initialization.
   * TODO(developer): Uncomment these variables before running the sample.
   */
  /**
   *  Required. The resource name of the model to tune.
   *  Format:
   *  projects/{project_number}/locations/{location_id}/catalogs/{catalog_id}/models/{model_id}
   */
  // const name = 'abc123'

  // Imports the Retail library
  const {ModelServiceClient} = require('@google-cloud/retail').v2alpha;

  // Instantiates a client
  const retailClient = new ModelServiceClient();

  async function callTuneModel() {
    // Construct request
    const request = {
      name,
    };

    // Run request
    const [operation] = await retailClient.tuneModel(request);
    const [response] = await operation.promise();
    console.log(response);
  }

  callTuneModel();

tuneModel(request, options, callback)

tuneModel(request: protos.google.cloud.retail.v2alpha.ITuneModelRequest, options: CallOptions, callback: Callback<LROperation<protos.google.cloud.retail.v2alpha.ITuneModelResponse, protos.google.cloud.retail.v2alpha.ITuneModelMetadata>, protos.google.longrunning.IOperation | null | undefined, {} | null | undefined>): void;
Parameters
NameDescription
request protos.google.cloud.retail.v2alpha.ITuneModelRequest
options CallOptions
callback Callback<LROperation<protos.google.cloud.retail.v2alpha.ITuneModelResponse, protos.google.cloud.retail.v2alpha.ITuneModelMetadata>, protos.google.longrunning.IOperation | null | undefined, {} | null | undefined>
Returns
TypeDescription
void

tuneModel(request, callback)

tuneModel(request: protos.google.cloud.retail.v2alpha.ITuneModelRequest, callback: Callback<LROperation<protos.google.cloud.retail.v2alpha.ITuneModelResponse, protos.google.cloud.retail.v2alpha.ITuneModelMetadata>, protos.google.longrunning.IOperation | null | undefined, {} | null | undefined>): void;
Parameters
NameDescription
request protos.google.cloud.retail.v2alpha.ITuneModelRequest
callback Callback<LROperation<protos.google.cloud.retail.v2alpha.ITuneModelResponse, protos.google.cloud.retail.v2alpha.ITuneModelMetadata>, protos.google.longrunning.IOperation | null | undefined, {} | null | undefined>
Returns
TypeDescription
void

updateModel(request, options)

updateModel(request?: protos.google.cloud.retail.v2alpha.IUpdateModelRequest, options?: CallOptions): Promise<[
        protos.google.cloud.retail.v2alpha.IModel,
        protos.google.cloud.retail.v2alpha.IUpdateModelRequest | undefined,
        {} | undefined
    ]>;

Update of model metadata. Only fields that currently can be updated are: filtering_option, periodic_tuning_state. If other values are provided, this API method will ignore them.

Parameters
NameDescription
request protos.google.cloud.retail.v2alpha.IUpdateModelRequest

The request object that will be sent.

options CallOptions

Call options. See CallOptions for more details.

Returns
TypeDescription
Promise<[ protos.google.cloud.retail.v2alpha.IModel, protos.google.cloud.retail.v2alpha.IUpdateModelRequest | undefined, {} | undefined ]>

{Promise} - The promise which resolves to an array. The first element of the array is an object representing [Model]. Please see the [documentation](https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods) for more details and examples.

Example

  /**
   * This snippet has been automatically generated and should be regarded as a code template only.
   * It will require modifications to work.
   * It may require correct/in-range values for request initialization.
   * TODO(developer): Uncomment these variables before running the sample.
   */
  /**
   *  Required. The body of the updated Model.
   */
  // const model = {}
  /**
   *  Optional. Indicates which fields in the provided 'model' to
   *  update. If not set, will by default update all fields.
   */
  // const updateMask = {}

  // Imports the Retail library
  const {ModelServiceClient} = require('@google-cloud/retail').v2alpha;

  // Instantiates a client
  const retailClient = new ModelServiceClient();

  async function callUpdateModel() {
    // Construct request
    const request = {
      model,
    };

    // Run request
    const response = await retailClient.updateModel(request);
    console.log(response);
  }

  callUpdateModel();

updateModel(request, options, callback)

updateModel(request: protos.google.cloud.retail.v2alpha.IUpdateModelRequest, options: CallOptions, callback: Callback<protos.google.cloud.retail.v2alpha.IModel, protos.google.cloud.retail.v2alpha.IUpdateModelRequest | null | undefined, {} | null | undefined>): void;
Parameters
NameDescription
request protos.google.cloud.retail.v2alpha.IUpdateModelRequest
options CallOptions
callback Callback<protos.google.cloud.retail.v2alpha.IModel, protos.google.cloud.retail.v2alpha.IUpdateModelRequest | null | undefined, {} | null | undefined>
Returns
TypeDescription
void

updateModel(request, callback)

updateModel(request: protos.google.cloud.retail.v2alpha.IUpdateModelRequest, callback: Callback<protos.google.cloud.retail.v2alpha.IModel, protos.google.cloud.retail.v2alpha.IUpdateModelRequest | null | undefined, {} | null | undefined>): void;
Parameters
NameDescription
request protos.google.cloud.retail.v2alpha.IUpdateModelRequest
callback Callback<protos.google.cloud.retail.v2alpha.IModel, protos.google.cloud.retail.v2alpha.IUpdateModelRequest | null | undefined, {} | null | undefined>
Returns
TypeDescription
void