创建用于提取文本实体的模型。
深入探索
如需查看包含此代码示例的详细文档,请参阅以下内容:
代码示例
Go
import (
"context"
"fmt"
"io"
automl "cloud.google.com/go/automl/apiv1"
"cloud.google.com/go/automl/apiv1/automlpb"
)
// languageEntityExtractionCreateModel creates a model for text entity extraction.
func languageEntityExtractionCreateModel(w io.Writer, projectID string, location string, datasetID string, modelName string) error {
// projectID := "my-project-id"
// location := "us-central1"
// datasetID := "TEN123456789..."
// modelName := "model_display_name"
ctx := context.Background()
client, err := automl.NewClient(ctx)
if err != nil {
return fmt.Errorf("NewClient: %v", err)
}
defer client.Close()
req := &automlpb.CreateModelRequest{
Parent: fmt.Sprintf("projects/%s/locations/%s", projectID, location),
Model: &automlpb.Model{
DisplayName: modelName,
DatasetId: datasetID,
ModelMetadata: &automlpb.Model_TextExtractionModelMetadata{
TextExtractionModelMetadata: &automlpb.TextExtractionModelMetadata{},
},
},
}
op, err := client.CreateModel(ctx, req)
if err != nil {
return fmt.Errorf("CreateModel: %v", err)
}
fmt.Fprintf(w, "Processing operation name: %q\n", op.Name())
fmt.Fprintf(w, "Training started...\n")
return nil
}
Java
import com.google.api.gax.longrunning.OperationFuture;
import com.google.cloud.automl.v1.AutoMlClient;
import com.google.cloud.automl.v1.LocationName;
import com.google.cloud.automl.v1.Model;
import com.google.cloud.automl.v1.OperationMetadata;
import com.google.cloud.automl.v1.TextExtractionModelMetadata;
import java.io.IOException;
import java.util.concurrent.ExecutionException;
class LanguageEntityExtractionCreateModel {
static void createModel() throws IOException, ExecutionException, InterruptedException {
// TODO(developer): Replace these variables before running the sample.
String projectId = "YOUR_PROJECT_ID";
String datasetId = "YOUR_DATASET_ID";
String displayName = "YOUR_DATASET_NAME";
createModel(projectId, datasetId, displayName);
}
// Create a model
static void createModel(String projectId, String datasetId, String displayName)
throws IOException, ExecutionException, InterruptedException {
// 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()) {
// A resource that represents Google Cloud Platform location.
LocationName projectLocation = LocationName.of(projectId, "us-central1");
// Set model metadata.
TextExtractionModelMetadata metadata = TextExtractionModelMetadata.newBuilder().build();
Model model =
Model.newBuilder()
.setDisplayName(displayName)
.setDatasetId(datasetId)
.setTextExtractionModelMetadata(metadata)
.build();
// Create a model with the model metadata in the region.
OperationFuture<Model, OperationMetadata> future =
client.createModelAsync(projectLocation, model);
// OperationFuture.get() will block until the model is created, which may take several hours.
// You can use OperationFuture.getInitialFuture to get a future representing the initial
// response to the request, which contains information while the operation is in progress.
System.out.format("Training operation name: %s\n", future.getInitialFuture().get().getName());
System.out.println("Training started...");
}
}
}
Node.js
/**
* TODO(developer): Uncomment these variables before running the sample.
*/
// const projectId = 'YOUR_PROJECT_ID';
// const location = 'us-central1';
// const dataset_id = 'YOUR_DATASET_ID';
// const displayName = 'YOUR_DISPLAY_NAME';
// Imports the Google Cloud AutoML library
const {AutoMlClient} = require('@google-cloud/automl').v1;
// Instantiates a client
const client = new AutoMlClient();
async function createModel() {
// Construct request
const request = {
parent: client.locationPath(projectId, location),
model: {
displayName: displayName,
datasetId: datasetId,
textExtractionModelMetadata: {}, // Leave unset, to use the default base model
},
};
// Don't wait for the LRO
const [operation] = await client.createModel(request);
console.log(`Training started... ${operation}`);
console.log(`Training operation name: ${operation.name}`);
}
createModel();
Python
from google.cloud import automl
# TODO(developer): Uncomment and set the following variables
# project_id = "YOUR_PROJECT_ID"
# dataset_id = "YOUR_DATASET_ID"
# display_name = "YOUR_MODEL_NAME"
client = automl.AutoMlClient()
# A resource that represents Google Cloud Platform location.
project_location = f"projects/{project_id}/locations/us-central1"
# Leave model unset to use the default base model provided by Google
metadata = automl.TextExtractionModelMetadata()
model = automl.Model(
display_name=display_name,
dataset_id=dataset_id,
text_extraction_model_metadata=metadata,
)
# Create a model with the model metadata in the region.
response = client.create_model(parent=project_location, model=model)
print("Training operation name: {}".format(response.operation.name))
print("Training started...")
后续步骤
如需搜索和过滤其他 Google Cloud 产品的代码示例,请参阅 Google Cloud 示例浏览器。