Creazione e gestione dei set di dati

Un set di dati contiene campioni rappresentativi del tipo di contenuti che vuoi tradurre, sotto forma di coppie di frasi corrispondenti nelle lingue di origine e di destinazione. Il set di dati funge da input per l'addestramento di un modello.

I passaggi principali per la creazione di un set di dati sono:

  1. Crea un set di dati e identifica le lingue di origine e di destinazione.
  2. Importa coppie di frasi nel set di dati.

Un progetto può avere più set di dati, ciascuno utilizzato per addestrare un modello separato. Puoi ottenere un elenco dei set di dati disponibili ed eliminare quelli non più necessari.

Creazione di un set di dati

Il primo passaggio nella creazione di un modello personalizzato consiste nel creare un set di dati vuoto che alla fine conserverà i dati di addestramento del modello. Quando crei un set di dati, devi identificare le lingue di origine e di destinazione del modello. Per ulteriori informazioni sulle lingue e sulle varianti supportate, consulta la pagina relativa al supporto delle lingue per i modelli personalizzati.

UI web

L'interfaccia utente di AutoML Translation consente di creare un nuovo set di dati e importare elementi al suo interno dalla stessa pagina.

  1. Visita l'interfaccia utente di AutoML Translation.

  2. Seleziona il progetto per il quale hai abilitato AutoML Translation dall'elenco a discesa in alto a destra nella barra del titolo.

  3. Nella scheda Set di dati, fai clic su Crea set di dati.

    Pagina dei set di dati con un set di dati

  4. Nella finestra di dialogo Crea set di dati, segui questi passaggi:

    • Inserisci un nome per il set di dati.
    • Seleziona le lingue di origine e di destinazione dagli elenchi a discesa. Quando selezioni una lingua di tipo Traduci da, vengono visualizzate le lingue disponibili in Traduci in.

    • Fai clic su Crea. Si apre la scheda Importa.

REST

Invia la richiesta di creazione del set di dati

Di seguito viene illustrato come inviare una richiesta POST al metodo project.locations.datasets/create. L'esempio utilizza il token di accesso per un account di servizio configurato per il progetto utilizzando Google Cloud CLI.

Prima di utilizzare qualsiasi dato della richiesta, effettua le seguenti sostituzioni:

  • project-id: il tuo ID progetto Google Cloud Platform
  • dataset-name: il nome del nuovo set di dati
  • source-language-code: la lingua da cui vuoi tradurre, ad esempio un codice ISO 639-1 come "en"
  • target-language-code: la lingua in cui vuoi tradurre, ad esempio un codice ISO 639-1 come "es"

Metodo HTTP e URL:

POST https://automl.googleapis.com/v1/projects/project-id/locations/us-central1/datasets

Corpo JSON della richiesta:

{
    "displayName": "dataset-name",
    "translationDatasetMetadata": {
       "sourceLanguageCode": "source-language-code",
       "targetLanguageCode": "target-language-code"
     }
}

Per inviare la richiesta, espandi una di queste opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

{
  "name": "projects/project-number/locations/us-central1/operations/operation-id",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.automl.v1.OperationMetadata",
    "createTime": "2019-10-01T22:13:48.155710Z",
    "updateTime": "2019-10-01T22:13:48.155710Z",
    "createDatasetDetails": {}
  }
}

Visualizza i risultati

Per ottenere i risultati della richiesta, devi inviare una richiesta GET alla risorsa operations. Di seguito viene mostrato come inviare una richiesta di questo tipo.

Prima di utilizzare qualsiasi dato della richiesta, effettua le seguenti sostituzioni:

  • operation-name: il nome dell'operazione restituito nella risposta alla chiamata originale all'API
  • project-id: il tuo ID progetto Google Cloud Platform

Metodo HTTP e URL:

GET https://automl.googleapis.com/v1/operation-name

Per inviare la richiesta, espandi una di queste opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

{
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.automl.v1.OperationMetadata",
    "createTime": "2019-10-01T22:13:48.155710Z",
    "updateTime": "2019-10-01T22:13:52.321072Z",
    ...
  },
  "done": true,
  "response": {
    "@type": "resource-type",
    "name": "resource-name"
  }
}

Go

Per scoprire come installare e utilizzare la libreria client per AutoML Translation, consulta la pagina relativa alle librerie client di AutoML Translation. Per saperne di più, consulta la documentazione di riferimento dell'API AutoML Translation Go.

Per eseguire l'autenticazione in AutoML Translation, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta la pagina Configurare l'autenticazione per un ambiente di sviluppo locale.

import (
	"context"
	"fmt"
	"io"

	automl "cloud.google.com/go/automl/apiv1"
	"cloud.google.com/go/automl/apiv1/automlpb"
)

// translateCreateDataset creates a dataset for translate.
func translateCreateDataset(w io.Writer, projectID string, location string, datasetName string, sourceLanguageCode string, targetLanguageCode string) error {
	// projectID := "my-project-id"
	// location := "us-central1"
	// datasetName := "dataset_display_name"

	// Supported languages:
	//   https://cloud.google.com/translate/automl/docs/languages
	// sourceLanguageCode := "en"
	// targetLanguageCode := "ja"

	ctx := context.Background()
	client, err := automl.NewClient(ctx)
	if err != nil {
		return fmt.Errorf("NewClient: %w", err)
	}
	defer client.Close()

	req := &automlpb.CreateDatasetRequest{
		Parent: fmt.Sprintf("projects/%s/locations/%s", projectID, location),
		Dataset: &automlpb.Dataset{
			DisplayName: datasetName,
			DatasetMetadata: &automlpb.Dataset_TranslationDatasetMetadata{
				TranslationDatasetMetadata: &automlpb.TranslationDatasetMetadata{
					SourceLanguageCode: sourceLanguageCode,
					TargetLanguageCode: targetLanguageCode,
				},
			},
		},
	}

	op, err := client.CreateDataset(ctx, req)
	if err != nil {
		return fmt.Errorf("CreateDataset: %w", err)
	}
	fmt.Fprintf(w, "Processing operation name: %q\n", op.Name())

	dataset, err := op.Wait(ctx)
	if err != nil {
		return fmt.Errorf("Wait: %w", err)
	}

	fmt.Fprintf(w, "Dataset name: %v\n", dataset.GetName())

	return nil
}

Java

Per scoprire come installare e utilizzare la libreria client per AutoML Translation, consulta la pagina relativa alle librerie client di AutoML Translation. Per saperne di più, consulta la documentazione di riferimento dell'API AutoML Translation Java.

Per eseguire l'autenticazione in AutoML Translation, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta la pagina Configurare l'autenticazione per un ambiente di sviluppo locale.

import com.google.api.gax.longrunning.OperationFuture;
import com.google.cloud.automl.v1.AutoMlClient;
import com.google.cloud.automl.v1.Dataset;
import com.google.cloud.automl.v1.LocationName;
import com.google.cloud.automl.v1.OperationMetadata;
import com.google.cloud.automl.v1.TranslationDatasetMetadata;
import java.io.IOException;
import java.util.concurrent.ExecutionException;

class TranslateCreateDataset {

  public static void main(String[] args)
      throws IOException, ExecutionException, InterruptedException {
    // TODO(developer): Replace these variables before running the sample.
    String projectId = "YOUR_PROJECT_ID";
    String displayName = "YOUR_DATASET_NAME";
    createDataset(projectId, displayName);
  }

  // Create a dataset
  static void createDataset(String projectId, 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");

      // Specify the source and target language.
      TranslationDatasetMetadata translationDatasetMetadata =
          TranslationDatasetMetadata.newBuilder()
              .setSourceLanguageCode("en")
              .setTargetLanguageCode("ja")
              .build();
      Dataset dataset =
          Dataset.newBuilder()
              .setDisplayName(displayName)
              .setTranslationDatasetMetadata(translationDatasetMetadata)
              .build();
      OperationFuture<Dataset, OperationMetadata> future =
          client.createDatasetAsync(projectLocation, dataset);

      Dataset createdDataset = future.get();

      // Display the dataset information.
      System.out.format("Dataset name: %s\n", createdDataset.getName());
      // To get the dataset id, you have to parse it out of the `name` field. As dataset Ids are
      // required for other methods.
      // Name Form: `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}`
      String[] names = createdDataset.getName().split("/");
      String datasetId = names[names.length - 1];
      System.out.format("Dataset id: %s\n", datasetId);
    }
  }
}

Node.js

Per scoprire come installare e utilizzare la libreria client per AutoML Translation, consulta la pagina relativa alle librerie client di AutoML Translation. Per saperne di più, consulta la documentazione di riferimento dell'API AutoML Translation Node.js.

Per eseguire l'autenticazione in AutoML Translation, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta la pagina Configurare l'autenticazione per un ambiente di sviluppo locale.

/**
 * TODO(developer): Uncomment these variables before running the sample.
 */
// const projectId = 'YOUR_PROJECT_ID';
// const location = 'us-central1';
// 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 createDataset() {
  // Construct request
  const request = {
    parent: client.locationPath(projectId, location),
    dataset: {
      displayName: displayName,
      translationDatasetMetadata: {
        sourceLanguageCode: 'en',
        targetLanguageCode: 'ja',
      },
    },
  };

  // Create dataset
  const [operation] = await client.createDataset(request);

  // Wait for operation to complete.
  const [response] = await operation.promise();

  console.log(`Dataset name: ${response.name}`);
  console.log(`
    Dataset id: ${
      response.name
        .split('/')
        [response.name.split('/').length - 1].split('\n')[0]
    }`);
}

createDataset();

Python

Per scoprire come installare e utilizzare la libreria client per AutoML Translation, consulta la pagina relativa alle librerie client di AutoML Translation. Per saperne di più, consulta la documentazione di riferimento dell'API AutoML Translation Python.

Per eseguire l'autenticazione in AutoML Translation, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta la pagina Configurare l'autenticazione per un ambiente di sviluppo locale.

from google.cloud import automl

# TODO(developer): Uncomment and set the following variables
# project_id = "YOUR_PROJECT_ID"
# display_name = "YOUR_DATASET_NAME"

client = automl.AutoMlClient()

# A resource that represents Google Cloud Platform location.
project_location = f"projects/{project_id}/locations/us-central1"
# For a list of supported languages, see:
# https://cloud.google.com/translate/automl/docs/languages
dataset_metadata = automl.TranslationDatasetMetadata(
    source_language_code="en", target_language_code="ja"
)
dataset = automl.Dataset(
    display_name=display_name,
    translation_dataset_metadata=dataset_metadata,
)

# Create a dataset with the dataset metadata in the region.
response = client.create_dataset(parent=project_location, dataset=dataset)

created_dataset = response.result()

# Display the dataset information
print(f"Dataset name: {created_dataset.name}")
print("Dataset id: {}".format(created_dataset.name.split("/")[-1]))

Linguaggi aggiuntivi

C#: segui le istruzioni di configurazione di C# nella pagina delle librerie client e consulta la documentazione di riferimento di AutoML Translation per .NET.

PHP: segui le istruzioni di configurazione PHP nella pagina delle librerie client e consulta la documentazione di riferimento di AutoML Translation per PHP.

Ruby: segui le istruzioni di configurazione di Ruby nella pagina delle librerie client e consulta la documentazione di riferimento di AutoML Translation per Ruby.

Importazione di elementi in un set di dati

Dopo aver creato un set di dati, puoi importare coppie di frasi di addestramento al suo interno. Per maggiori dettagli sulla preparazione dei dati di addestramento, consulta Preparazione dei dati di addestramento.

UI web

L'interfaccia utente di AutoML Translation consente di creare un nuovo set di dati e importare elementi al suo interno dalla stessa pagina (vedi Creazione di un set di dati). I passaggi riportati di seguito per importare gli elementi in un set di dati esistente.

Dopo aver creato la cartella del set di dati, devi caricare i dati.

  1. Carica le coppie di frasi da utilizzare per l'addestramento del modello.

    Nella scheda Importa, puoi caricare file TSV o TMX dal computer locale o da Cloud Storage. Per i file importati localmente, dopo aver selezionato il file fai clic su Sfoglia. Viene visualizzato un elenco di cartelle. Seleziona la cartella in cui vuoi caricare il file. Questa directory ospitata su Cloud Storage è necessaria per garantire la residenza dei dati.

    Seleziona la casella di controllo Utilizza file separati per addestramento, convalida e test (avanzato), se vuoi caricare file separati contenenti le coppie di frasi. Questa opzione è consigliata se il set di dati ha più di 100.000 coppie di frasi. Devi allocare 10.000 coppie di frasi al massimo per i set di convalida e di test; in caso contrario, AutoML Translation restituisce un errore.

    Scheda Importa

  2. Fai clic su Continua.

    Tornerai alla pagina Set di dati. Il set di dati mostra un'animazione in corso durante l'importazione dei documenti. Una volta caricato il set di dati, riceverai un messaggio all'indirizzo email che hai utilizzato per registrarti al programma.

  3. Esamina il set di dati.

    Dopo aver importato i dati, seleziona il set di dati dalla scheda Set di dati per visualizzarne i dettagli. La scheda Frase è abilitata e mostra il nome del set di dati. Vengono elencate le coppie di frasi. A ogni coppia viene assegnato un addestramento, una convalida o un test, che indica in quale fase dell'elaborazione verrà utilizzata la coppia.

REST

Utilizza il metodo projects.locations.datasets.importData per importare elementi in un set di dati.

Prima di utilizzare qualsiasi dato della richiesta, effettua le seguenti sostituzioni:

  • dataset-name: il nome del set di dati, come restituito dall'API al momento della creazione del set di dati
  • bucket-name: il bucket Cloud Storage che contiene il file CSV di input che descrive il set di dati
  • csv-file-name: il nome del file CSV di input che descrive il set di dati
  • project-id: il tuo ID progetto Google Cloud Platform

Metodo HTTP e URL:

POST https://automl.googleapis.com/v1/dataset-name:importData

Corpo JSON della richiesta:

{
  "inputConfig": {
    "gcsSource": {
      "inputUris": "gs://bucket-name/csv-file-name"
    }
  }
}

Per inviare la richiesta, espandi una di queste opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

{
  "name": "projects/project-number/locations/us-central1/operations/operation-id",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.automl.v1beta1.OperationMetadata",
    "createTime": "2018-04-27T01:28:36.128120Z",
    "updateTime": "2018-04-27T01:28:36.128150Z",
    "cancellable": true
  }
}

Go

Per scoprire come installare e utilizzare la libreria client per AutoML Translation, consulta la pagina relativa alle librerie client di AutoML Translation. Per saperne di più, consulta la documentazione di riferimento dell'API AutoML Translation Go.

Per eseguire l'autenticazione in AutoML Translation, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta la pagina Configurare l'autenticazione per un ambiente di sviluppo locale.

import (
	"context"
	"fmt"
	"io"

	automl "cloud.google.com/go/automl/apiv1"
	"cloud.google.com/go/automl/apiv1/automlpb"
)

// importDataIntoDataset imports data into a dataset.
func importDataIntoDataset(w io.Writer, projectID string, location string, datasetID string, inputURI string) error {
	// projectID := "my-project-id"
	// location := "us-central1"
	// datasetID := "TRL123456789..."
	// inputURI := "gs://BUCKET_ID/path_to_training_data.csv"

	ctx := context.Background()
	client, err := automl.NewClient(ctx)
	if err != nil {
		return fmt.Errorf("NewClient: %w", err)
	}
	defer client.Close()

	req := &automlpb.ImportDataRequest{
		Name: fmt.Sprintf("projects/%s/locations/%s/datasets/%s", projectID, location, datasetID),
		InputConfig: &automlpb.InputConfig{
			Source: &automlpb.InputConfig_GcsSource{
				GcsSource: &automlpb.GcsSource{
					InputUris: []string{inputURI},
				},
			},
		},
	}

	op, err := client.ImportData(ctx, req)
	if err != nil {
		return fmt.Errorf("ImportData: %w", err)
	}
	fmt.Fprintf(w, "Processing operation name: %q\n", op.Name())

	if err := op.Wait(ctx); err != nil {
		return fmt.Errorf("Wait: %w", err)
	}

	fmt.Fprintf(w, "Data imported.\n")

	return nil
}

Java

Per scoprire come installare e utilizzare la libreria client per AutoML Translation, consulta la pagina relativa alle librerie client di AutoML Translation. Per saperne di più, consulta la documentazione di riferimento dell'API AutoML Translation Java.

Per eseguire l'autenticazione in AutoML Translation, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta la pagina Configurare l'autenticazione per un ambiente di sviluppo locale.

import com.google.api.gax.longrunning.OperationFuture;
import com.google.cloud.automl.v1.AutoMlClient;
import com.google.cloud.automl.v1.DatasetName;
import com.google.cloud.automl.v1.GcsSource;
import com.google.cloud.automl.v1.InputConfig;
import com.google.cloud.automl.v1.OperationMetadata;
import com.google.protobuf.Empty;
import java.io.IOException;
import java.util.Arrays;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.TimeoutException;

class ImportDataset {

  public static void main(String[] args)
      throws IOException, ExecutionException, InterruptedException, TimeoutException {
    // TODO(developer): Replace these variables before running the sample.
    String projectId = "YOUR_PROJECT_ID";
    String datasetId = "YOUR_DATASET_ID";
    String path = "gs://BUCKET_ID/path_to_training_data.csv";
    importDataset(projectId, datasetId, path);
  }

  // Import a dataset
  static void importDataset(String projectId, String datasetId, String path)
      throws IOException, ExecutionException, InterruptedException, TimeoutException {
    // 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 complete path of the dataset.
      DatasetName datasetFullId = DatasetName.of(projectId, "us-central1", datasetId);

      // Get multiple Google Cloud Storage URIs to import data from
      GcsSource gcsSource =
          GcsSource.newBuilder().addAllInputUris(Arrays.asList(path.split(","))).build();

      // Import data from the input URI
      InputConfig inputConfig = InputConfig.newBuilder().setGcsSource(gcsSource).build();
      System.out.println("Processing import...");

      // Start the import job
      OperationFuture<Empty, OperationMetadata> operation =
          client.importDataAsync(datasetFullId, inputConfig);

      System.out.format("Operation name: %s%n", operation.getName());

      // If you want to wait for the operation to finish, adjust the timeout appropriately. The
      // operation will still run if you choose not to wait for it to complete. You can check the
      // status of your operation using the operation's name.
      Empty response = operation.get(45, TimeUnit.MINUTES);
      System.out.format("Dataset imported. %s%n", response);
    } catch (TimeoutException e) {
      System.out.println("The operation's polling period was not long enough.");
      System.out.println("You can use the Operation's name to get the current status.");
      System.out.println("The import job is still running and will complete as expected.");
      throw e;
    }
  }
}

Node.js

Per scoprire come installare e utilizzare la libreria client per AutoML Translation, consulta la pagina relativa alle librerie client di AutoML Translation. Per saperne di più, consulta la documentazione di riferimento dell'API AutoML Translation Node.js.

Per eseguire l'autenticazione in AutoML Translation, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta la pagina Configurare l'autenticazione per un ambiente di sviluppo locale.

/**
 * TODO(developer): Uncomment these variables before running the sample.
 */
// const projectId = 'YOUR_PROJECT_ID';
// const location = 'us-central1';
// const datasetId = 'YOUR_DISPLAY_ID';
// const path = 'gs://BUCKET_ID/path_to_training_data.csv';

// Imports the Google Cloud AutoML library
const {AutoMlClient} = require('@google-cloud/automl').v1;

// Instantiates a client
const client = new AutoMlClient();

async function importDataset() {
  // Construct request
  const request = {
    name: client.datasetPath(projectId, location, datasetId),
    inputConfig: {
      gcsSource: {
        inputUris: path.split(','),
      },
    },
  };

  // Import dataset
  console.log('Proccessing import');
  const [operation] = await client.importData(request);

  // Wait for operation to complete.
  const [response] = await operation.promise();
  console.log(`Dataset imported: ${response}`);
}

importDataset();

Python

Per scoprire come installare e utilizzare la libreria client per AutoML Translation, consulta la pagina relativa alle librerie client di AutoML Translation. Per saperne di più, consulta la documentazione di riferimento dell'API AutoML Translation Python.

Per eseguire l'autenticazione in AutoML Translation, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta la pagina Configurare l'autenticazione per un ambiente di sviluppo locale.

from google.cloud import automl

# TODO(developer): Uncomment and set the following variables
# project_id = "YOUR_PROJECT_ID"
# dataset_id = "YOUR_DATASET_ID"
# path = "gs://YOUR_BUCKET_ID/path/to/data.csv"

client = automl.AutoMlClient()
# Get the full path of the dataset.
dataset_full_id = client.dataset_path(project_id, "us-central1", dataset_id)
# Get the multiple Google Cloud Storage URIs
input_uris = path.split(",")
gcs_source = automl.GcsSource(input_uris=input_uris)
input_config = automl.InputConfig(gcs_source=gcs_source)
# Import data from the input URI
response = client.import_data(name=dataset_full_id, input_config=input_config)

print("Processing import...")
print(f"Data imported. {response.result()}")

Linguaggi aggiuntivi

C#: segui le istruzioni di configurazione di C# nella pagina delle librerie client e consulta la documentazione di riferimento di AutoML Translation per .NET.

PHP: segui le istruzioni di configurazione PHP nella pagina delle librerie client e consulta la documentazione di riferimento di AutoML Translation per PHP.

Ruby: segui le istruzioni di configurazione di Ruby nella pagina delle librerie client e consulta la documentazione di riferimento di AutoML Translation per Ruby.

Dopo aver creato e completato il set di dati, puoi iniziare ad addestrare il modello (vedi Creazione e gestione di modelli).

Gestione dei set di dati

Elenco dei set di dati

Un progetto può includere numerosi set di dati. Questa sezione descrive come recuperare un elenco dei set di dati disponibili per un progetto.

UI web

Per visualizzare un elenco dei set di dati disponibili utilizzando l'UI di AutoML Translation, fai clic sul link Set di dati nella parte superiore del menu di navigazione a sinistra.

Pagina dei set di dati con un set di dati

Per visualizzare i set di dati per un altro progetto, seleziona il progetto dall'elenco a discesa in alto a destra nella barra del titolo.

REST

Prima di utilizzare qualsiasi dato della richiesta, effettua le seguenti sostituzioni:

  • project-id: il tuo ID progetto Google Cloud Platform

Metodo HTTP e URL:

GET https://automl.googleapis.com/v1/projects/project-id/locations/us-central1/datasets

Per inviare la richiesta, espandi una di queste opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

{
  "datasets": [
    {
      "name": "projects/project-number/locations/us-central1/datasets/dataset-id",
      "displayName": "dataset-display-name",
      "createTime": "2019-10-01T22:47:38.347689Z",
      "etag": "AB3BwFpPWn6klFqJ867nz98aXr_JHcfYFQBMYTf7rcO-JMi8Ez4iDSNrRW4Vv501i488",
      "translationDatasetMetadata": {
        "sourceLanguageCode": "source-language",
        "targetLanguageCode": "target-language"
      }
    },
    ...
  ]
}

Go

Per scoprire come installare e utilizzare la libreria client per AutoML Translation, consulta la pagina relativa alle librerie client di AutoML Translation. Per saperne di più, consulta la documentazione di riferimento dell'API AutoML Translation Go.

Per eseguire l'autenticazione in AutoML Translation, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta la pagina Configurare l'autenticazione per un ambiente di sviluppo locale.

import (
	"context"
	"fmt"
	"io"

	automl "cloud.google.com/go/automl/apiv1"
	"cloud.google.com/go/automl/apiv1/automlpb"
	"google.golang.org/api/iterator"
)

// listDatasets lists existing datasets.
func listDatasets(w io.Writer, projectID string, location string) error {
	// projectID := "my-project-id"
	// location := "us-central1"

	ctx := context.Background()
	client, err := automl.NewClient(ctx)
	if err != nil {
		return fmt.Errorf("NewClient: %w", err)
	}
	defer client.Close()

	req := &automlpb.ListDatasetsRequest{
		Parent: fmt.Sprintf("projects/%s/locations/%s", projectID, location),
	}

	it := client.ListDatasets(ctx, req)

	// Iterate over all results
	for {
		dataset, err := it.Next()
		if err == iterator.Done {
			break
		}
		if err != nil {
			return fmt.Errorf("ListGlossaries.Next: %w", err)
		}

		fmt.Fprintf(w, "Dataset name: %v\n", dataset.GetName())
		fmt.Fprintf(w, "Dataset display name: %v\n", dataset.GetDisplayName())
		fmt.Fprintf(w, "Dataset create time:\n")
		fmt.Fprintf(w, "\tseconds: %v\n", dataset.GetCreateTime().GetSeconds())
		fmt.Fprintf(w, "\tnanos: %v\n", dataset.GetCreateTime().GetNanos())

		// Translate
		if metadata := dataset.GetTranslationDatasetMetadata(); metadata != nil {
			fmt.Fprintf(w, "Translation dataset metadata:\n")
			fmt.Fprintf(w, "\tsource_language_code: %v\n", metadata.GetSourceLanguageCode())
			fmt.Fprintf(w, "\ttarget_language_code: %v\n", metadata.GetTargetLanguageCode())
		}

	}

	return nil
}

Java

Per scoprire come installare e utilizzare la libreria client per AutoML Translation, consulta la pagina relativa alle librerie client di AutoML Translation. Per saperne di più, consulta la documentazione di riferimento dell'API AutoML Translation Java.

Per eseguire l'autenticazione in AutoML Translation, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta la pagina Configurare l'autenticazione per un ambiente di sviluppo locale.

import com.google.cloud.automl.v1.AutoMlClient;
import com.google.cloud.automl.v1.Dataset;
import com.google.cloud.automl.v1.ListDatasetsRequest;
import com.google.cloud.automl.v1.LocationName;
import java.io.IOException;

class ListDatasets {

  static void listDatasets() throws IOException {
    // TODO(developer): Replace these variables before running the sample.
    String projectId = "YOUR_PROJECT_ID";
    listDatasets(projectId);
  }

  // List the datasets
  static void listDatasets(String projectId) throws IOException {
    // 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");
      ListDatasetsRequest request =
          ListDatasetsRequest.newBuilder().setParent(projectLocation.toString()).build();

      // List all the datasets available in the region by applying filter.
      System.out.println("List of datasets:");
      for (Dataset dataset : client.listDatasets(request).iterateAll()) {
        // Display the dataset information
        System.out.format("\nDataset name: %s\n", dataset.getName());
        // To get the dataset id, you have to parse it out of the `name` field. As dataset Ids are
        // required for other methods.
        // Name Form: `projects/{project_id}/locations/{location_id}/datasets/{dataset_id}`
        String[] names = dataset.getName().split("/");
        String retrievedDatasetId = names[names.length - 1];
        System.out.format("Dataset id: %s\n", retrievedDatasetId);
        System.out.format("Dataset display name: %s\n", dataset.getDisplayName());
        System.out.println("Dataset create time:");
        System.out.format("\tseconds: %s\n", dataset.getCreateTime().getSeconds());
        System.out.format("\tnanos: %s\n", dataset.getCreateTime().getNanos());
        System.out.println("Translation dataset metadata:");
        System.out.format(
            "\tSource language code: %s\n",
            dataset.getTranslationDatasetMetadata().getSourceLanguageCode());
        System.out.format(
            "\tTarget language code: %s\n",
            dataset.getTranslationDatasetMetadata().getTargetLanguageCode());
      }
    }
  }
}

Node.js

Per scoprire come installare e utilizzare la libreria client per AutoML Translation, consulta la pagina relativa alle librerie client di AutoML Translation. Per saperne di più, consulta la documentazione di riferimento dell'API AutoML Translation Node.js.

Per eseguire l'autenticazione in AutoML Translation, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta la pagina Configurare l'autenticazione per un ambiente di sviluppo locale.

/**
 * TODO(developer): Uncomment these variables before running the sample.
 */
// const projectId = 'YOUR_PROJECT_ID';
// const location = 'us-central1';

// Imports the Google Cloud AutoML library
const {AutoMlClient} = require('@google-cloud/automl').v1;

// Instantiates a client
const client = new AutoMlClient();

async function listDatasets() {
  // Construct request
  const request = {
    parent: client.locationPath(projectId, location),
    filter: 'translation_dataset_metadata:*',
  };

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

  console.log('List of datasets:');
  for (const dataset of response) {
    console.log(`Dataset name: ${dataset.name}`);
    console.log(
      `Dataset id: ${
        dataset.name.split('/')[dataset.name.split('/').length - 1]
      }`
    );
    console.log(`Dataset display name: ${dataset.displayName}`);
    console.log('Dataset create time');
    console.log(`\tseconds ${dataset.createTime.seconds}`);
    console.log(`\tnanos ${dataset.createTime.nanos / 1e9}`);
    if (dataset.translationDatasetMetadata !== undefined) {
      console.log('Translation dataset metadata:');
      console.log(
        `\tSource language code: ${dataset.translationDatasetMetadata.sourceLanguageCode}`
      );
      console.log(
        `\tTarget language code: ${dataset.translationDatasetMetadata.targetLanguageCode}`
      );
    }
  }
}

listDatasets();

Python

Per scoprire come installare e utilizzare la libreria client per AutoML Translation, consulta la pagina relativa alle librerie client di AutoML Translation. Per saperne di più, consulta la documentazione di riferimento dell'API AutoML Translation Python.

Per eseguire l'autenticazione in AutoML Translation, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta la pagina Configurare l'autenticazione per un ambiente di sviluppo locale.

from google.cloud import automl

# TODO(developer): Uncomment and set the following variables
# project_id = "YOUR_PROJECT_ID"

client = automl.AutoMlClient()
# A resource that represents Google Cloud Platform location.
project_location = f"projects/{project_id}/locations/us-central1"

# List all the datasets available in the region.
request = automl.ListDatasetsRequest(parent=project_location, filter="")
response = client.list_datasets(request=request)

print("List of datasets:")
for dataset in response:
    print(f"Dataset name: {dataset.name}")
    print("Dataset id: {}".format(dataset.name.split("/")[-1]))
    print(f"Dataset display name: {dataset.display_name}")
    print(f"Dataset create time: {dataset.create_time}")
    print("Translation dataset metadata:")
    print(
        "\tsource_language_code: {}".format(
            dataset.translation_dataset_metadata.source_language_code
        )
    )
    print(
        "\ttarget_language_code: {}".format(
            dataset.translation_dataset_metadata.target_language_code
        )
    )

Linguaggi aggiuntivi

C#: segui le istruzioni di configurazione di C# nella pagina delle librerie client e consulta la documentazione di riferimento di AutoML Translation per .NET.

PHP: segui le istruzioni di configurazione PHP nella pagina delle librerie client e consulta la documentazione di riferimento di AutoML Translation per PHP.

Ruby: segui le istruzioni di configurazione di Ruby nella pagina delle librerie client e consulta la documentazione di riferimento di AutoML Translation per Ruby.

Eliminazione di un set di dati

UI web

  1. Nell'interfaccia utente di AutoML Translation, fai clic sul link Set di dati nella parte superiore del menu di navigazione a sinistra per visualizzare l'elenco dei set di dati disponibili.

    Pagina dei set di dati con un set di dati

  2. Fai clic sul menu con tre puntini all'estrema destra della riga da eliminare e seleziona Elimina.

  3. Fai clic su Conferma nella finestra di dialogo di conferma.

REST

  • Sostituisci dataset-name con il nome completo del set di dati, recuperato dalla risposta al momento della creazione del set di dati. Il nome completo ha il formato: projects/{project-id}/locations/us-central1/datasets/{dataset-id}

Prima di utilizzare qualsiasi dato della richiesta, effettua le seguenti sostituzioni:

  • dataset-name: il nome del set di dati da eliminare, nel formato project/project-id/locations/us-central1/datasets/dataset-id

Metodo HTTP e URL:

DELETE https://automl.googleapis.com/v1/dataset-name

Per inviare la richiesta, espandi una di queste opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

{
  "name": "projects/project-number/locations/us-central1/operations/operation-id",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.automl.v1.OperationMetadata",
    "createTime": "2019-10-02T16:43:03.923442Z",
    "updateTime": "2019-10-02T16:43:03.923442Z",
    "deleteDetails": {}
  },
  "done": true,
  "response": {
    "@type": "type.googleapis.com/google.protobuf.Empty"
  }
}

Go

Per scoprire come installare e utilizzare la libreria client per AutoML Translation, consulta la pagina relativa alle librerie client di AutoML Translation. Per saperne di più, consulta la documentazione di riferimento dell'API AutoML Translation Go.

Per eseguire l'autenticazione in AutoML Translation, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta la pagina Configurare l'autenticazione per un ambiente di sviluppo locale.

import (
	"context"
	"fmt"
	"io"

	automl "cloud.google.com/go/automl/apiv1"
	"cloud.google.com/go/automl/apiv1/automlpb"
)

// deleteDataset deletes a dataset.
func deleteDataset(w io.Writer, projectID string, location string, datasetID string) error {
	// projectID := "my-project-id"
	// location := "us-central1"
	// datasetID := "TRL123456789..."

	ctx := context.Background()
	client, err := automl.NewClient(ctx)
	if err != nil {
		return fmt.Errorf("NewClient: %w", err)
	}
	defer client.Close()

	req := &automlpb.DeleteDatasetRequest{
		Name: fmt.Sprintf("projects/%s/locations/%s/datasets/%s", projectID, location, datasetID),
	}

	op, err := client.DeleteDataset(ctx, req)
	if err != nil {
		return fmt.Errorf("DeleteDataset: %w", err)
	}
	fmt.Fprintf(w, "Processing operation name: %q\n", op.Name())

	if err := op.Wait(ctx); err != nil {
		return fmt.Errorf("Wait: %w", err)
	}

	fmt.Fprintf(w, "Dataset deleted.\n")

	return nil
}

Java

Per scoprire come installare e utilizzare la libreria client per AutoML Translation, consulta la pagina relativa alle librerie client di AutoML Translation. Per saperne di più, consulta la documentazione di riferimento dell'API AutoML Translation Java.

Per eseguire l'autenticazione in AutoML Translation, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta la pagina Configurare l'autenticazione per un ambiente di sviluppo locale.

import com.google.cloud.automl.v1.AutoMlClient;
import com.google.cloud.automl.v1.DatasetName;
import com.google.protobuf.Empty;
import java.io.IOException;
import java.util.concurrent.ExecutionException;

class DeleteDataset {

  static void deleteDataset() throws IOException, ExecutionException, InterruptedException {
    // TODO(developer): Replace these variables before running the sample.
    String projectId = "YOUR_PROJECT_ID";
    String datasetId = "YOUR_DATASET_ID";
    deleteDataset(projectId, datasetId);
  }

  // Delete a dataset
  static void deleteDataset(String projectId, String datasetId)
      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()) {
      // Get the full path of the dataset.
      DatasetName datasetFullId = DatasetName.of(projectId, "us-central1", datasetId);
      Empty response = client.deleteDatasetAsync(datasetFullId).get();
      System.out.format("Dataset deleted. %s\n", response);
    }
  }
}

Node.js

Per scoprire come installare e utilizzare la libreria client per AutoML Translation, consulta la pagina relativa alle librerie client di AutoML Translation. Per saperne di più, consulta la documentazione di riferimento dell'API AutoML Translation Node.js.

Per eseguire l'autenticazione in AutoML Translation, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta la pagina Configurare l'autenticazione per un ambiente di sviluppo locale.

/**
 * TODO(developer): Uncomment these variables before running the sample.
 */
// const projectId = 'YOUR_PROJECT_ID';
// const location = 'us-central1';
// const datasetId = 'YOUR_DATASET_ID';

// Imports the Google Cloud AutoML library
const {AutoMlClient} = require('@google-cloud/automl').v1;

// Instantiates a client
const client = new AutoMlClient();

async function deleteDataset() {
  // Construct request
  const request = {
    name: client.datasetPath(projectId, location, datasetId),
  };

  const [operation] = await client.deleteDataset(request);

  // Wait for operation to complete.
  const [response] = await operation.promise();
  console.log(`Dataset deleted: ${response}`);
}

deleteDataset();

Python

Per scoprire come installare e utilizzare la libreria client per AutoML Translation, consulta la pagina relativa alle librerie client di AutoML Translation. Per saperne di più, consulta la documentazione di riferimento dell'API AutoML Translation Python.

Per eseguire l'autenticazione in AutoML Translation, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta la pagina Configurare l'autenticazione per un ambiente di sviluppo locale.

from google.cloud import automl

# TODO(developer): Uncomment and set the following variables
# project_id = "YOUR_PROJECT_ID"
# dataset_id = "YOUR_DATASET_ID"

client = automl.AutoMlClient()
# Get the full path of the dataset
dataset_full_id = client.dataset_path(project_id, "us-central1", dataset_id)
response = client.delete_dataset(name=dataset_full_id)

print(f"Dataset deleted. {response.result()}")

Linguaggi aggiuntivi

C#: segui le istruzioni di configurazione di C# nella pagina delle librerie client e consulta la documentazione di riferimento di AutoML Translation per .NET.

PHP: segui le istruzioni di configurazione PHP nella pagina delle librerie client e consulta la documentazione di riferimento di AutoML Translation per PHP.

Ruby: segui le istruzioni di configurazione di Ruby nella pagina delle librerie client e consulta la documentazione di riferimento di AutoML Translation per Ruby.

Problemi di importazione

Quando crei un set di dati, AutoML Translation potrebbe eliminare coppie di frasi se sono troppo lunghe o se sono esattamente le stesse nelle lingue di origine e di destinazione.

Per coppie di frasi troppo lunghe, ti consigliamo di suddividere le frasi fino a un massimo di 200 parole e poi ricreare il set di dati in modo da includere le coppie eliminate. Durante l'elaborazione dei dati, AutoML Translation utilizza un processo interno per tokenizzare i dati di input, con un conseguente aumento delle dimensioni delle frasi. AutoML Translation utilizza questi dati tokenizzati per misurare le dimensioni dei dati. Pertanto, il limite di 200 parole è una stima della lunghezza massima.

Per le coppie di frasi uguali nelle lingue di origine e di destinazione, puoi rimuoverle dal tuo set di dati. Se vuoi mantenere queste frasi non tradotte, utilizza una risorsa di glossario per creare un dizionario personalizzato che definisca il modo in cui AutoML Translation gestisce termini specifici.