Esegue il deployment di un modello con un conteggio dei nodi aggiornato.
Per saperne di più
Per la documentazione dettagliata che include questo esempio di codice, consulta quanto segue:
Esempio di codice
Go
import (
"context"
"fmt"
"io"
automl "cloud.google.com/go/automl/apiv1"
automlpb "google.golang.org/genproto/googleapis/cloud/automl/v1"
)
// visionClassificationDeployModelWithNodeCount deploys a model with node count.
func visionClassificationDeployModelWithNodeCount(w io.Writer, projectID string, location string, modelID string) error {
// projectID := "my-project-id"
// location := "us-central1"
// modelID := "ICN123456789..."
ctx := context.Background()
client, err := automl.NewClient(ctx)
if err != nil {
return fmt.Errorf("NewClient: %v", err)
}
defer client.Close()
req := &automlpb.DeployModelRequest{
Name: fmt.Sprintf("projects/%s/locations/%s/models/%s", projectID, location, modelID),
ModelDeploymentMetadata: &automlpb.DeployModelRequest_ImageClassificationModelDeploymentMetadata{
ImageClassificationModelDeploymentMetadata: &automlpb.ImageClassificationModelDeploymentMetadata{
NodeCount: 2,
},
},
}
op, err := client.DeployModel(ctx, req)
if err != nil {
return fmt.Errorf("DeployModel: %v", err)
}
fmt.Fprintf(w, "Processing operation name: %q\n", op.Name())
if err := op.Wait(ctx); err != nil {
return fmt.Errorf("Wait: %v", err)
}
fmt.Fprintf(w, "Model deployed.\n")
return nil
}
Java
import com.google.api.gax.longrunning.OperationFuture;
import com.google.cloud.automl.v1beta1.AutoMlClient;
import com.google.cloud.automl.v1beta1.DeployModelRequest;
import com.google.cloud.automl.v1beta1.ImageClassificationModelDeploymentMetadata;
import com.google.cloud.automl.v1beta1.ModelName;
import com.google.cloud.automl.v1beta1.OperationMetadata;
import com.google.protobuf.Empty;
import java.io.IOException;
import java.util.concurrent.ExecutionException;
class ClassificationDeployModelNodeCount {
// Deploy a model with a specified node count
static void classificationDeployModelNodeCount(String projectId, String modelId)
throws IOException, ExecutionException, InterruptedException {
// String projectId = "YOUR_PROJECT_ID";
// String modelId = "YOUR_MODEL_ID";
// Initialize client that will be used to send requests. This client only needs to be created
// once, and can be reused for multiple requests. After completing all of your requests, call
// the "close" method on the client to safely clean up any remaining background resources.
try (AutoMlClient client = AutoMlClient.create()) {
// Get the full path of the model.
ModelName modelFullId = ModelName.of(projectId, "us-central1", modelId);
// Set how many nodes the model is deployed on
ImageClassificationModelDeploymentMetadata deploymentMetadata =
ImageClassificationModelDeploymentMetadata.newBuilder().setNodeCount(2).build();
DeployModelRequest request =
DeployModelRequest.newBuilder()
.setName(modelFullId.toString())
.setImageClassificationModelDeploymentMetadata(deploymentMetadata)
.build();
// Deploy the model
OperationFuture<Empty, OperationMetadata> future = client.deployModelAsync(request);
future.get();
System.out.println("Model deployment on 2 nodes finished");
}
}
}
Node.js
/**
* TODO(developer): Uncomment these variables before running the sample.
*/
// const projectId = 'YOUR_PROJECT_ID';
// const location = 'us-central1';
// const modelId = 'YOUR_MODEL_ID';
// Imports the Google Cloud AutoML library
const {AutoMlClient} = require('@google-cloud/automl').v1;
// Instantiates a client
const client = new AutoMlClient();
async function deployModelWithNodeCount() {
// Construct request
const request = {
name: client.modelPath(projectId, location, modelId),
imageClassificationModelDeploymentMetadata: {
nodeCount: 2,
},
};
const [operation] = await client.deployModel(request);
// Wait for operation to complete.
const [response] = await operation.promise();
console.log(`Model deployment finished. ${response}`);
}
deployModelWithNodeCount();
Python
from google.cloud import automl
# TODO(developer): Uncomment and set the following variables
# project_id = "YOUR_PROJECT_ID"
# model_id = "YOUR_MODEL_ID"
client = automl.AutoMlClient()
# Get the full path of the model.
model_full_id = client.model_path(project_id, "us-central1", model_id)
# node count determines the number of nodes to deploy the model on.
# https://cloud.google.com/automl/docs/reference/rpc/google.cloud.automl.v1#imageclassificationmodeldeploymentmetadata
metadata = automl.ImageClassificationModelDeploymentMetadata(node_count=2)
request = automl.DeployModelRequest(
name=model_full_id, image_classification_model_deployment_metadata=metadata
)
response = client.deploy_model(request=request)
print("Model deployment finished. {}".format(response.result()))
Passaggi successivi
Per cercare e filtrare esempi di codice per altri prodotti Google Cloud, vedi il browser di esempio Google Cloud.