Class PredictionServiceClient

  • All Implemented Interfaces:
    com.google.api.gax.core.BackgroundResource, AutoCloseable

    @BetaApi
    @Generated("by gapic-generator-java")
    public class PredictionServiceClient
    extends Object
    implements com.google.api.gax.core.BackgroundResource
    Service Description: A service for online predictions and explanations.

    This class provides the ability to make remote calls to the backing service through method calls that map to API methods. Sample code to get started:

    
     // 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.
     // - It may require specifying regional endpoints when creating the service client as shown in
     // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
     try (PredictionServiceClient predictionServiceClient = PredictionServiceClient.create()) {
       EndpointName endpoint =
           EndpointName.ofProjectLocationEndpointName("[PROJECT]", "[LOCATION]", "[ENDPOINT]");
       List<Value> instances = new ArrayList<>();
       Value parameters = Value.newBuilder().setBoolValue(true).build();
       PredictResponse response = predictionServiceClient.predict(endpoint, instances, parameters);
     }
     

    Note: close() needs to be called on the PredictionServiceClient object to clean up resources such as threads. In the example above, try-with-resources is used, which automatically calls close().

    The surface of this class includes several types of Java methods for each of the API's methods:

    1. A "flattened" method. With this type of method, the fields of the request type have been converted into function parameters. It may be the case that not all fields are available as parameters, and not every API method will have a flattened method entry point.
    2. A "request object" method. This type of method only takes one parameter, a request object, which must be constructed before the call. Not every API method will have a request object method.
    3. A "callable" method. This type of method takes no parameters and returns an immutable API callable object, which can be used to initiate calls to the service.

    See the individual methods for example code.

    Many parameters require resource names to be formatted in a particular way. To assist with these names, this class includes a format method for each type of name, and additionally a parse method to extract the individual identifiers contained within names that are returned.

    This class can be customized by passing in a custom instance of PredictionServiceSettings to create(). For example:

    To customize credentials:

    
     // 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.
     // - It may require specifying regional endpoints when creating the service client as shown in
     // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
     PredictionServiceSettings predictionServiceSettings =
         PredictionServiceSettings.newBuilder()
             .setCredentialsProvider(FixedCredentialsProvider.create(myCredentials))
             .build();
     PredictionServiceClient predictionServiceClient =
         PredictionServiceClient.create(predictionServiceSettings);
     

    To customize the endpoint:

    
     // 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.
     // - It may require specifying regional endpoints when creating the service client as shown in
     // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
     PredictionServiceSettings predictionServiceSettings =
         PredictionServiceSettings.newBuilder().setEndpoint(myEndpoint).build();
     PredictionServiceClient predictionServiceClient =
         PredictionServiceClient.create(predictionServiceSettings);
     

    Please refer to the GitHub repository's samples for more quickstart code snippets.

    • Constructor Detail

      • PredictionServiceClient

        protected PredictionServiceClient​(PredictionServiceSettings settings)
                                   throws IOException
        Constructs an instance of PredictionServiceClient, using the given settings. This is protected so that it is easy to make a subclass, but otherwise, the static factory methods should be preferred.
        Throws:
        IOException
    • Method Detail

      • create

        public static final PredictionServiceClient create​(PredictionServiceStub stub)
        Constructs an instance of PredictionServiceClient, using the given stub for making calls. This is for advanced usage - prefer using create(PredictionServiceSettings).
      • predict

        public final PredictResponse predict​(EndpointName endpoint,
                                             List<com.google.protobuf.Value> instances,
                                             com.google.protobuf.Value parameters)
        Perform an online prediction.

        Sample code:

        
         // 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.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (PredictionServiceClient predictionServiceClient = PredictionServiceClient.create()) {
           EndpointName endpoint =
               EndpointName.ofProjectLocationEndpointName("[PROJECT]", "[LOCATION]", "[ENDPOINT]");
           List<Value> instances = new ArrayList<>();
           Value parameters = Value.newBuilder().setBoolValue(true).build();
           PredictResponse response = predictionServiceClient.predict(endpoint, instances, parameters);
         }
         
        Parameters:
        endpoint - Required. The name of the Endpoint requested to serve the prediction. Format: `projects/{project}/locations/{location}/endpoints/{endpoint}`
        instances - Required. The instances that are the input to the prediction call. A DeployedModel may have an upper limit on the number of instances it supports per request, and when it is exceeded the prediction call errors in case of AutoML Models, or, in case of customer created Models, the behaviour is as documented by that Model. The schema of any single instance may be specified via Endpoint's DeployedModels' [Model's][google.cloud.aiplatform.v1beta1.DeployedModel.model] [PredictSchemata's][google.cloud.aiplatform.v1beta1.Model.predict_schemata] [instance_schema_uri][google.cloud.aiplatform.v1beta1.PredictSchemata.instance_schema_uri].
        parameters - The parameters that govern the prediction. The schema of the parameters may be specified via Endpoint's DeployedModels' [Model's ][google.cloud.aiplatform.v1beta1.DeployedModel.model] [PredictSchemata's][google.cloud.aiplatform.v1beta1.Model.predict_schemata] [parameters_schema_uri][google.cloud.aiplatform.v1beta1.PredictSchemata.parameters_schema_uri].
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • predict

        public final PredictResponse predict​(String endpoint,
                                             List<com.google.protobuf.Value> instances,
                                             com.google.protobuf.Value parameters)
        Perform an online prediction.

        Sample code:

        
         // 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.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (PredictionServiceClient predictionServiceClient = PredictionServiceClient.create()) {
           String endpoint =
               EndpointName.ofProjectLocationEndpointName("[PROJECT]", "[LOCATION]", "[ENDPOINT]")
                   .toString();
           List<Value> instances = new ArrayList<>();
           Value parameters = Value.newBuilder().setBoolValue(true).build();
           PredictResponse response = predictionServiceClient.predict(endpoint, instances, parameters);
         }
         
        Parameters:
        endpoint - Required. The name of the Endpoint requested to serve the prediction. Format: `projects/{project}/locations/{location}/endpoints/{endpoint}`
        instances - Required. The instances that are the input to the prediction call. A DeployedModel may have an upper limit on the number of instances it supports per request, and when it is exceeded the prediction call errors in case of AutoML Models, or, in case of customer created Models, the behaviour is as documented by that Model. The schema of any single instance may be specified via Endpoint's DeployedModels' [Model's][google.cloud.aiplatform.v1beta1.DeployedModel.model] [PredictSchemata's][google.cloud.aiplatform.v1beta1.Model.predict_schemata] [instance_schema_uri][google.cloud.aiplatform.v1beta1.PredictSchemata.instance_schema_uri].
        parameters - The parameters that govern the prediction. The schema of the parameters may be specified via Endpoint's DeployedModels' [Model's ][google.cloud.aiplatform.v1beta1.DeployedModel.model] [PredictSchemata's][google.cloud.aiplatform.v1beta1.Model.predict_schemata] [parameters_schema_uri][google.cloud.aiplatform.v1beta1.PredictSchemata.parameters_schema_uri].
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • predict

        public final PredictResponse predict​(PredictRequest request)
        Perform an online prediction.

        Sample code:

        
         // 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.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (PredictionServiceClient predictionServiceClient = PredictionServiceClient.create()) {
           PredictRequest request =
               PredictRequest.newBuilder()
                   .setEndpoint(
                       EndpointName.ofProjectLocationEndpointName(
                               "[PROJECT]", "[LOCATION]", "[ENDPOINT]")
                           .toString())
                   .addAllInstances(new ArrayList<Value>())
                   .setParameters(Value.newBuilder().setBoolValue(true).build())
                   .build();
           PredictResponse response = predictionServiceClient.predict(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • predictCallable

        public final com.google.api.gax.rpc.UnaryCallable<PredictRequest,​PredictResponse> predictCallable()
        Perform an online prediction.

        Sample code:

        
         // 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.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (PredictionServiceClient predictionServiceClient = PredictionServiceClient.create()) {
           PredictRequest request =
               PredictRequest.newBuilder()
                   .setEndpoint(
                       EndpointName.ofProjectLocationEndpointName(
                               "[PROJECT]", "[LOCATION]", "[ENDPOINT]")
                           .toString())
                   .addAllInstances(new ArrayList<Value>())
                   .setParameters(Value.newBuilder().setBoolValue(true).build())
                   .build();
           ApiFuture<PredictResponse> future =
               predictionServiceClient.predictCallable().futureCall(request);
           // Do something.
           PredictResponse response = future.get();
         }
         
      • rawPredict

        public final com.google.api.HttpBody rawPredict​(EndpointName endpoint,
                                                        com.google.api.HttpBody httpBody)
        Perform an online prediction with an arbitrary HTTP payload.

        The response includes the following HTTP headers:

        • `X-Vertex-AI-Endpoint-Id`: ID of the [Endpoint][google.cloud.aiplatform.v1beta1.Endpoint] that served this prediction.
        • `X-Vertex-AI-Deployed-Model-Id`: ID of the Endpoint's [DeployedModel][google.cloud.aiplatform.v1beta1.DeployedModel] that served this prediction.

        Sample code:

        
         // 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.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (PredictionServiceClient predictionServiceClient = PredictionServiceClient.create()) {
           EndpointName endpoint =
               EndpointName.ofProjectLocationEndpointName("[PROJECT]", "[LOCATION]", "[ENDPOINT]");
           HttpBody httpBody = HttpBody.newBuilder().build();
           HttpBody response = predictionServiceClient.rawPredict(endpoint, httpBody);
         }
         
        Parameters:
        endpoint - Required. The name of the Endpoint requested to serve the prediction. Format: `projects/{project}/locations/{location}/endpoints/{endpoint}`
        httpBody - The prediction input. Supports HTTP headers and arbitrary data payload.

        A [DeployedModel][google.cloud.aiplatform.v1beta1.DeployedModel] may have an upper limit on the number of instances it supports per request. When this limit it is exceeded for an AutoML model, the [RawPredict][google.cloud.aiplatform.v1beta1.PredictionService.RawPredict] method returns an error. When this limit is exceeded for a custom-trained model, the behavior varies depending on the model.

        You can specify the schema for each instance in the [predict_schemata.instance_schema_uri][google.cloud.aiplatform.v1beta1.PredictSchemata.instance_schema_uri] field when you create a [Model][google.cloud.aiplatform.v1beta1.Model]. This schema applies when you deploy the `Model` as a `DeployedModel` to an [Endpoint][google.cloud.aiplatform.v1beta1.Endpoint] and use the `RawPredict` method.

        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • rawPredict

        public final com.google.api.HttpBody rawPredict​(String endpoint,
                                                        com.google.api.HttpBody httpBody)
        Perform an online prediction with an arbitrary HTTP payload.

        The response includes the following HTTP headers:

        • `X-Vertex-AI-Endpoint-Id`: ID of the [Endpoint][google.cloud.aiplatform.v1beta1.Endpoint] that served this prediction.
        • `X-Vertex-AI-Deployed-Model-Id`: ID of the Endpoint's [DeployedModel][google.cloud.aiplatform.v1beta1.DeployedModel] that served this prediction.

        Sample code:

        
         // 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.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (PredictionServiceClient predictionServiceClient = PredictionServiceClient.create()) {
           String endpoint =
               EndpointName.ofProjectLocationEndpointName("[PROJECT]", "[LOCATION]", "[ENDPOINT]")
                   .toString();
           HttpBody httpBody = HttpBody.newBuilder().build();
           HttpBody response = predictionServiceClient.rawPredict(endpoint, httpBody);
         }
         
        Parameters:
        endpoint - Required. The name of the Endpoint requested to serve the prediction. Format: `projects/{project}/locations/{location}/endpoints/{endpoint}`
        httpBody - The prediction input. Supports HTTP headers and arbitrary data payload.

        A [DeployedModel][google.cloud.aiplatform.v1beta1.DeployedModel] may have an upper limit on the number of instances it supports per request. When this limit it is exceeded for an AutoML model, the [RawPredict][google.cloud.aiplatform.v1beta1.PredictionService.RawPredict] method returns an error. When this limit is exceeded for a custom-trained model, the behavior varies depending on the model.

        You can specify the schema for each instance in the [predict_schemata.instance_schema_uri][google.cloud.aiplatform.v1beta1.PredictSchemata.instance_schema_uri] field when you create a [Model][google.cloud.aiplatform.v1beta1.Model]. This schema applies when you deploy the `Model` as a `DeployedModel` to an [Endpoint][google.cloud.aiplatform.v1beta1.Endpoint] and use the `RawPredict` method.

        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • rawPredict

        public final com.google.api.HttpBody rawPredict​(RawPredictRequest request)
        Perform an online prediction with an arbitrary HTTP payload.

        The response includes the following HTTP headers:

        • `X-Vertex-AI-Endpoint-Id`: ID of the [Endpoint][google.cloud.aiplatform.v1beta1.Endpoint] that served this prediction.
        • `X-Vertex-AI-Deployed-Model-Id`: ID of the Endpoint's [DeployedModel][google.cloud.aiplatform.v1beta1.DeployedModel] that served this prediction.

        Sample code:

        
         // 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.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (PredictionServiceClient predictionServiceClient = PredictionServiceClient.create()) {
           RawPredictRequest request =
               RawPredictRequest.newBuilder()
                   .setEndpoint(
                       EndpointName.ofProjectLocationEndpointName(
                               "[PROJECT]", "[LOCATION]", "[ENDPOINT]")
                           .toString())
                   .setHttpBody(HttpBody.newBuilder().build())
                   .build();
           HttpBody response = predictionServiceClient.rawPredict(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • rawPredictCallable

        public final com.google.api.gax.rpc.UnaryCallable<RawPredictRequest,​com.google.api.HttpBody> rawPredictCallable()
        Perform an online prediction with an arbitrary HTTP payload.

        The response includes the following HTTP headers:

        • `X-Vertex-AI-Endpoint-Id`: ID of the [Endpoint][google.cloud.aiplatform.v1beta1.Endpoint] that served this prediction.
        • `X-Vertex-AI-Deployed-Model-Id`: ID of the Endpoint's [DeployedModel][google.cloud.aiplatform.v1beta1.DeployedModel] that served this prediction.

        Sample code:

        
         // 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.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (PredictionServiceClient predictionServiceClient = PredictionServiceClient.create()) {
           RawPredictRequest request =
               RawPredictRequest.newBuilder()
                   .setEndpoint(
                       EndpointName.ofProjectLocationEndpointName(
                               "[PROJECT]", "[LOCATION]", "[ENDPOINT]")
                           .toString())
                   .setHttpBody(HttpBody.newBuilder().build())
                   .build();
           ApiFuture<HttpBody> future = predictionServiceClient.rawPredictCallable().futureCall(request);
           // Do something.
           HttpBody response = future.get();
         }
         
      • serverStreamingPredictCallable

        public final com.google.api.gax.rpc.ServerStreamingCallable<StreamingPredictRequest,​StreamingPredictResponse> serverStreamingPredictCallable()
        Perform a server-side streaming online prediction request for Vertex LLM streaming.

        Sample code:

        
         // 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.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (PredictionServiceClient predictionServiceClient = PredictionServiceClient.create()) {
           StreamingPredictRequest request =
               StreamingPredictRequest.newBuilder()
                   .setEndpoint(
                       EndpointName.ofProjectLocationEndpointName(
                               "[PROJECT]", "[LOCATION]", "[ENDPOINT]")
                           .toString())
                   .addAllInputs(new ArrayList<Tensor>())
                   .setParameters(Tensor.newBuilder().build())
                   .build();
           ServerStream<StreamingPredictResponse> stream =
               predictionServiceClient.serverStreamingPredictCallable().call(request);
           for (StreamingPredictResponse response : stream) {
             // Do something when a response is received.
           }
         }
         
      • explain

        public final ExplainResponse explain​(EndpointName endpoint,
                                             List<com.google.protobuf.Value> instances,
                                             com.google.protobuf.Value parameters,
                                             String deployedModelId)
        Perform an online explanation.

        If [deployed_model_id][google.cloud.aiplatform.v1beta1.ExplainRequest.deployed_model_id] is specified, the corresponding DeployModel must have [explanation_spec][google.cloud.aiplatform.v1beta1.DeployedModel.explanation_spec] populated. If [deployed_model_id][google.cloud.aiplatform.v1beta1.ExplainRequest.deployed_model_id] is not specified, all DeployedModels must have [explanation_spec][google.cloud.aiplatform.v1beta1.DeployedModel.explanation_spec] populated.

        Sample code:

        
         // 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.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (PredictionServiceClient predictionServiceClient = PredictionServiceClient.create()) {
           EndpointName endpoint =
               EndpointName.ofProjectLocationEndpointName("[PROJECT]", "[LOCATION]", "[ENDPOINT]");
           List<Value> instances = new ArrayList<>();
           Value parameters = Value.newBuilder().setBoolValue(true).build();
           String deployedModelId = "deployedModelId-1817547906";
           ExplainResponse response =
               predictionServiceClient.explain(endpoint, instances, parameters, deployedModelId);
         }
         
        Parameters:
        endpoint - Required. The name of the Endpoint requested to serve the explanation. Format: `projects/{project}/locations/{location}/endpoints/{endpoint}`
        instances - Required. The instances that are the input to the explanation call. A DeployedModel may have an upper limit on the number of instances it supports per request, and when it is exceeded the explanation call errors in case of AutoML Models, or, in case of customer created Models, the behaviour is as documented by that Model. The schema of any single instance may be specified via Endpoint's DeployedModels' [Model's][google.cloud.aiplatform.v1beta1.DeployedModel.model] [PredictSchemata's][google.cloud.aiplatform.v1beta1.Model.predict_schemata] [instance_schema_uri][google.cloud.aiplatform.v1beta1.PredictSchemata.instance_schema_uri].
        parameters - The parameters that govern the prediction. The schema of the parameters may be specified via Endpoint's DeployedModels' [Model's ][google.cloud.aiplatform.v1beta1.DeployedModel.model] [PredictSchemata's][google.cloud.aiplatform.v1beta1.Model.predict_schemata] [parameters_schema_uri][google.cloud.aiplatform.v1beta1.PredictSchemata.parameters_schema_uri].
        deployedModelId - If specified, this ExplainRequest will be served by the chosen DeployedModel, overriding [Endpoint.traffic_split][google.cloud.aiplatform.v1beta1.Endpoint.traffic_split].
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • explain

        public final ExplainResponse explain​(String endpoint,
                                             List<com.google.protobuf.Value> instances,
                                             com.google.protobuf.Value parameters,
                                             String deployedModelId)
        Perform an online explanation.

        If [deployed_model_id][google.cloud.aiplatform.v1beta1.ExplainRequest.deployed_model_id] is specified, the corresponding DeployModel must have [explanation_spec][google.cloud.aiplatform.v1beta1.DeployedModel.explanation_spec] populated. If [deployed_model_id][google.cloud.aiplatform.v1beta1.ExplainRequest.deployed_model_id] is not specified, all DeployedModels must have [explanation_spec][google.cloud.aiplatform.v1beta1.DeployedModel.explanation_spec] populated.

        Sample code:

        
         // 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.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (PredictionServiceClient predictionServiceClient = PredictionServiceClient.create()) {
           String endpoint =
               EndpointName.ofProjectLocationEndpointName("[PROJECT]", "[LOCATION]", "[ENDPOINT]")
                   .toString();
           List<Value> instances = new ArrayList<>();
           Value parameters = Value.newBuilder().setBoolValue(true).build();
           String deployedModelId = "deployedModelId-1817547906";
           ExplainResponse response =
               predictionServiceClient.explain(endpoint, instances, parameters, deployedModelId);
         }
         
        Parameters:
        endpoint - Required. The name of the Endpoint requested to serve the explanation. Format: `projects/{project}/locations/{location}/endpoints/{endpoint}`
        instances - Required. The instances that are the input to the explanation call. A DeployedModel may have an upper limit on the number of instances it supports per request, and when it is exceeded the explanation call errors in case of AutoML Models, or, in case of customer created Models, the behaviour is as documented by that Model. The schema of any single instance may be specified via Endpoint's DeployedModels' [Model's][google.cloud.aiplatform.v1beta1.DeployedModel.model] [PredictSchemata's][google.cloud.aiplatform.v1beta1.Model.predict_schemata] [instance_schema_uri][google.cloud.aiplatform.v1beta1.PredictSchemata.instance_schema_uri].
        parameters - The parameters that govern the prediction. The schema of the parameters may be specified via Endpoint's DeployedModels' [Model's ][google.cloud.aiplatform.v1beta1.DeployedModel.model] [PredictSchemata's][google.cloud.aiplatform.v1beta1.Model.predict_schemata] [parameters_schema_uri][google.cloud.aiplatform.v1beta1.PredictSchemata.parameters_schema_uri].
        deployedModelId - If specified, this ExplainRequest will be served by the chosen DeployedModel, overriding [Endpoint.traffic_split][google.cloud.aiplatform.v1beta1.Endpoint.traffic_split].
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • explain

        public final ExplainResponse explain​(ExplainRequest request)
        Perform an online explanation.

        If [deployed_model_id][google.cloud.aiplatform.v1beta1.ExplainRequest.deployed_model_id] is specified, the corresponding DeployModel must have [explanation_spec][google.cloud.aiplatform.v1beta1.DeployedModel.explanation_spec] populated. If [deployed_model_id][google.cloud.aiplatform.v1beta1.ExplainRequest.deployed_model_id] is not specified, all DeployedModels must have [explanation_spec][google.cloud.aiplatform.v1beta1.DeployedModel.explanation_spec] populated.

        Sample code:

        
         // 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.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (PredictionServiceClient predictionServiceClient = PredictionServiceClient.create()) {
           ExplainRequest request =
               ExplainRequest.newBuilder()
                   .setEndpoint(
                       EndpointName.ofProjectLocationEndpointName(
                               "[PROJECT]", "[LOCATION]", "[ENDPOINT]")
                           .toString())
                   .addAllInstances(new ArrayList<Value>())
                   .setParameters(Value.newBuilder().setBoolValue(true).build())
                   .setExplanationSpecOverride(ExplanationSpecOverride.newBuilder().build())
                   .setDeployedModelId("deployedModelId-1817547906")
                   .build();
           ExplainResponse response = predictionServiceClient.explain(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • explainCallable

        public final com.google.api.gax.rpc.UnaryCallable<ExplainRequest,​ExplainResponse> explainCallable()
        Perform an online explanation.

        If [deployed_model_id][google.cloud.aiplatform.v1beta1.ExplainRequest.deployed_model_id] is specified, the corresponding DeployModel must have [explanation_spec][google.cloud.aiplatform.v1beta1.DeployedModel.explanation_spec] populated. If [deployed_model_id][google.cloud.aiplatform.v1beta1.ExplainRequest.deployed_model_id] is not specified, all DeployedModels must have [explanation_spec][google.cloud.aiplatform.v1beta1.DeployedModel.explanation_spec] populated.

        Sample code:

        
         // 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.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (PredictionServiceClient predictionServiceClient = PredictionServiceClient.create()) {
           ExplainRequest request =
               ExplainRequest.newBuilder()
                   .setEndpoint(
                       EndpointName.ofProjectLocationEndpointName(
                               "[PROJECT]", "[LOCATION]", "[ENDPOINT]")
                           .toString())
                   .addAllInstances(new ArrayList<Value>())
                   .setParameters(Value.newBuilder().setBoolValue(true).build())
                   .setExplanationSpecOverride(ExplanationSpecOverride.newBuilder().build())
                   .setDeployedModelId("deployedModelId-1817547906")
                   .build();
           ApiFuture<ExplainResponse> future =
               predictionServiceClient.explainCallable().futureCall(request);
           // Do something.
           ExplainResponse response = future.get();
         }
         
      • countTokens

        public final CountTokensResponse countTokens​(EndpointName endpoint,
                                                     List<com.google.protobuf.Value> instances)
        Perform a token counting.

        Sample code:

        
         // 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.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (PredictionServiceClient predictionServiceClient = PredictionServiceClient.create()) {
           EndpointName endpoint =
               EndpointName.ofProjectLocationEndpointName("[PROJECT]", "[LOCATION]", "[ENDPOINT]");
           List<Value> instances = new ArrayList<>();
           CountTokensResponse response = predictionServiceClient.countTokens(endpoint, instances);
         }
         
        Parameters:
        endpoint - Required. The name of the Endpoint requested to perform token counting. Format: `projects/{project}/locations/{location}/endpoints/{endpoint}`
        instances - Required. The instances that are the input to token counting call. Schema is identical to the prediction schema of the underlying model.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • countTokens

        public final CountTokensResponse countTokens​(String endpoint,
                                                     List<com.google.protobuf.Value> instances)
        Perform a token counting.

        Sample code:

        
         // 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.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (PredictionServiceClient predictionServiceClient = PredictionServiceClient.create()) {
           String endpoint =
               EndpointName.ofProjectLocationEndpointName("[PROJECT]", "[LOCATION]", "[ENDPOINT]")
                   .toString();
           List<Value> instances = new ArrayList<>();
           CountTokensResponse response = predictionServiceClient.countTokens(endpoint, instances);
         }
         
        Parameters:
        endpoint - Required. The name of the Endpoint requested to perform token counting. Format: `projects/{project}/locations/{location}/endpoints/{endpoint}`
        instances - Required. The instances that are the input to token counting call. Schema is identical to the prediction schema of the underlying model.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • countTokens

        public final CountTokensResponse countTokens​(CountTokensRequest request)
        Perform a token counting.

        Sample code:

        
         // 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.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (PredictionServiceClient predictionServiceClient = PredictionServiceClient.create()) {
           CountTokensRequest request =
               CountTokensRequest.newBuilder()
                   .setEndpoint(
                       EndpointName.ofProjectLocationEndpointName(
                               "[PROJECT]", "[LOCATION]", "[ENDPOINT]")
                           .toString())
                   .addAllInstances(new ArrayList<Value>())
                   .build();
           CountTokensResponse response = predictionServiceClient.countTokens(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • countTokensCallable

        public final com.google.api.gax.rpc.UnaryCallable<CountTokensRequest,​CountTokensResponse> countTokensCallable()
        Perform a token counting.

        Sample code:

        
         // 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.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (PredictionServiceClient predictionServiceClient = PredictionServiceClient.create()) {
           CountTokensRequest request =
               CountTokensRequest.newBuilder()
                   .setEndpoint(
                       EndpointName.ofProjectLocationEndpointName(
                               "[PROJECT]", "[LOCATION]", "[ENDPOINT]")
                           .toString())
                   .addAllInstances(new ArrayList<Value>())
                   .build();
           ApiFuture<CountTokensResponse> future =
               predictionServiceClient.countTokensCallable().futureCall(request);
           // Do something.
           CountTokensResponse response = future.get();
         }
         
      • listLocations

        public final PredictionServiceClient.ListLocationsPagedResponse listLocations​(com.google.cloud.location.ListLocationsRequest request)
        Lists information about the supported locations for this service.

        Sample code:

        
         // 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.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (PredictionServiceClient predictionServiceClient = PredictionServiceClient.create()) {
           ListLocationsRequest request =
               ListLocationsRequest.newBuilder()
                   .setName("name3373707")
                   .setFilter("filter-1274492040")
                   .setPageSize(883849137)
                   .setPageToken("pageToken873572522")
                   .build();
           for (Location element : predictionServiceClient.listLocations(request).iterateAll()) {
             // doThingsWith(element);
           }
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • listLocationsPagedCallable

        public final com.google.api.gax.rpc.UnaryCallable<com.google.cloud.location.ListLocationsRequest,​PredictionServiceClient.ListLocationsPagedResponse> listLocationsPagedCallable()
        Lists information about the supported locations for this service.

        Sample code:

        
         // 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.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (PredictionServiceClient predictionServiceClient = PredictionServiceClient.create()) {
           ListLocationsRequest request =
               ListLocationsRequest.newBuilder()
                   .setName("name3373707")
                   .setFilter("filter-1274492040")
                   .setPageSize(883849137)
                   .setPageToken("pageToken873572522")
                   .build();
           ApiFuture<Location> future =
               predictionServiceClient.listLocationsPagedCallable().futureCall(request);
           // Do something.
           for (Location element : future.get().iterateAll()) {
             // doThingsWith(element);
           }
         }
         
      • listLocationsCallable

        public final com.google.api.gax.rpc.UnaryCallable<com.google.cloud.location.ListLocationsRequest,​com.google.cloud.location.ListLocationsResponse> listLocationsCallable()
        Lists information about the supported locations for this service.

        Sample code:

        
         // 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.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (PredictionServiceClient predictionServiceClient = PredictionServiceClient.create()) {
           ListLocationsRequest request =
               ListLocationsRequest.newBuilder()
                   .setName("name3373707")
                   .setFilter("filter-1274492040")
                   .setPageSize(883849137)
                   .setPageToken("pageToken873572522")
                   .build();
           while (true) {
             ListLocationsResponse response =
                 predictionServiceClient.listLocationsCallable().call(request);
             for (Location element : response.getLocationsList()) {
               // doThingsWith(element);
             }
             String nextPageToken = response.getNextPageToken();
             if (!Strings.isNullOrEmpty(nextPageToken)) {
               request = request.toBuilder().setPageToken(nextPageToken).build();
             } else {
               break;
             }
           }
         }
         
      • getLocation

        public final com.google.cloud.location.Location getLocation​(com.google.cloud.location.GetLocationRequest request)
        Gets information about a location.

        Sample code:

        
         // 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.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (PredictionServiceClient predictionServiceClient = PredictionServiceClient.create()) {
           GetLocationRequest request = GetLocationRequest.newBuilder().setName("name3373707").build();
           Location response = predictionServiceClient.getLocation(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • getLocationCallable

        public final com.google.api.gax.rpc.UnaryCallable<com.google.cloud.location.GetLocationRequest,​com.google.cloud.location.Location> getLocationCallable()
        Gets information about a location.

        Sample code:

        
         // 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.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (PredictionServiceClient predictionServiceClient = PredictionServiceClient.create()) {
           GetLocationRequest request = GetLocationRequest.newBuilder().setName("name3373707").build();
           ApiFuture<Location> future =
               predictionServiceClient.getLocationCallable().futureCall(request);
           // Do something.
           Location response = future.get();
         }
         
      • setIamPolicy

        public final com.google.iam.v1.Policy setIamPolicy​(com.google.iam.v1.SetIamPolicyRequest request)
        Sets the access control policy on the specified resource. Replacesany existing policy.

        Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED`errors.

        Sample code:

        
         // 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.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (PredictionServiceClient predictionServiceClient = PredictionServiceClient.create()) {
           SetIamPolicyRequest request =
               SetIamPolicyRequest.newBuilder()
                   .setResource(
                       EndpointName.ofProjectLocationEndpointName(
                               "[PROJECT]", "[LOCATION]", "[ENDPOINT]")
                           .toString())
                   .setPolicy(Policy.newBuilder().build())
                   .setUpdateMask(FieldMask.newBuilder().build())
                   .build();
           Policy response = predictionServiceClient.setIamPolicy(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • setIamPolicyCallable

        public final com.google.api.gax.rpc.UnaryCallable<com.google.iam.v1.SetIamPolicyRequest,​com.google.iam.v1.Policy> setIamPolicyCallable()
        Sets the access control policy on the specified resource. Replacesany existing policy.

        Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED`errors.

        Sample code:

        
         // 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.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (PredictionServiceClient predictionServiceClient = PredictionServiceClient.create()) {
           SetIamPolicyRequest request =
               SetIamPolicyRequest.newBuilder()
                   .setResource(
                       EndpointName.ofProjectLocationEndpointName(
                               "[PROJECT]", "[LOCATION]", "[ENDPOINT]")
                           .toString())
                   .setPolicy(Policy.newBuilder().build())
                   .setUpdateMask(FieldMask.newBuilder().build())
                   .build();
           ApiFuture<Policy> future = predictionServiceClient.setIamPolicyCallable().futureCall(request);
           // Do something.
           Policy response = future.get();
         }
         
      • getIamPolicy

        public final com.google.iam.v1.Policy getIamPolicy​(com.google.iam.v1.GetIamPolicyRequest request)
        Gets the access control policy for a resource. Returns an empty policyif the resource exists and does not have a policy set.

        Sample code:

        
         // 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.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (PredictionServiceClient predictionServiceClient = PredictionServiceClient.create()) {
           GetIamPolicyRequest request =
               GetIamPolicyRequest.newBuilder()
                   .setResource(
                       EndpointName.ofProjectLocationEndpointName(
                               "[PROJECT]", "[LOCATION]", "[ENDPOINT]")
                           .toString())
                   .setOptions(GetPolicyOptions.newBuilder().build())
                   .build();
           Policy response = predictionServiceClient.getIamPolicy(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • getIamPolicyCallable

        public final com.google.api.gax.rpc.UnaryCallable<com.google.iam.v1.GetIamPolicyRequest,​com.google.iam.v1.Policy> getIamPolicyCallable()
        Gets the access control policy for a resource. Returns an empty policyif the resource exists and does not have a policy set.

        Sample code:

        
         // 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.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (PredictionServiceClient predictionServiceClient = PredictionServiceClient.create()) {
           GetIamPolicyRequest request =
               GetIamPolicyRequest.newBuilder()
                   .setResource(
                       EndpointName.ofProjectLocationEndpointName(
                               "[PROJECT]", "[LOCATION]", "[ENDPOINT]")
                           .toString())
                   .setOptions(GetPolicyOptions.newBuilder().build())
                   .build();
           ApiFuture<Policy> future = predictionServiceClient.getIamPolicyCallable().futureCall(request);
           // Do something.
           Policy response = future.get();
         }
         
      • testIamPermissions

        public final com.google.iam.v1.TestIamPermissionsResponse testIamPermissions​(com.google.iam.v1.TestIamPermissionsRequest request)
        Returns permissions that a caller has on the specified resource. If theresource does not exist, this will return an empty set ofpermissions, not a `NOT_FOUND` error.

        Note: This operation is designed to be used for buildingpermission-aware UIs and command-line tools, not for authorizationchecking. This operation may "fail open" without warning.

        Sample code:

        
         // 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.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (PredictionServiceClient predictionServiceClient = PredictionServiceClient.create()) {
           TestIamPermissionsRequest request =
               TestIamPermissionsRequest.newBuilder()
                   .setResource(
                       EndpointName.ofProjectLocationEndpointName(
                               "[PROJECT]", "[LOCATION]", "[ENDPOINT]")
                           .toString())
                   .addAllPermissions(new ArrayList<String>())
                   .build();
           TestIamPermissionsResponse response = predictionServiceClient.testIamPermissions(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • testIamPermissionsCallable

        public final com.google.api.gax.rpc.UnaryCallable<com.google.iam.v1.TestIamPermissionsRequest,​com.google.iam.v1.TestIamPermissionsResponse> testIamPermissionsCallable()
        Returns permissions that a caller has on the specified resource. If theresource does not exist, this will return an empty set ofpermissions, not a `NOT_FOUND` error.

        Note: This operation is designed to be used for buildingpermission-aware UIs and command-line tools, not for authorizationchecking. This operation may "fail open" without warning.

        Sample code:

        
         // 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.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (PredictionServiceClient predictionServiceClient = PredictionServiceClient.create()) {
           TestIamPermissionsRequest request =
               TestIamPermissionsRequest.newBuilder()
                   .setResource(
                       EndpointName.ofProjectLocationEndpointName(
                               "[PROJECT]", "[LOCATION]", "[ENDPOINT]")
                           .toString())
                   .addAllPermissions(new ArrayList<String>())
                   .build();
           ApiFuture<TestIamPermissionsResponse> future =
               predictionServiceClient.testIamPermissionsCallable().futureCall(request);
           // Do something.
           TestIamPermissionsResponse response = future.get();
         }
         
      • shutdown

        public void shutdown()
        Specified by:
        shutdown in interface com.google.api.gax.core.BackgroundResource
      • isShutdown

        public boolean isShutdown()
        Specified by:
        isShutdown in interface com.google.api.gax.core.BackgroundResource
      • isTerminated

        public boolean isTerminated()
        Specified by:
        isTerminated in interface com.google.api.gax.core.BackgroundResource
      • shutdownNow

        public void shutdownNow()
        Specified by:
        shutdownNow in interface com.google.api.gax.core.BackgroundResource