Vertex AI ti consente di esportare i set di metadati e annotazioni da una
Dataset
risorsa. Questa funzionalità può essere utile se vuoi mantenere un record di una raccolta specifica di modifiche, aggiunte o eliminazioni di annotazioni.
Quando esporti un Dataset
, Vertex AI crea uno o più
Righe JSON
contenenti i metadati e le annotazioni di Dataset
e li salva
Righe JSON in una directory Cloud Storage a tua scelta.
Puoi esportare risorse Dataset
di immagini, testo e video. Non puoi esportare le risorse Dataset
tabulari.
L'esportazione di un Dataset
non crea ulteriori copie dell'immagine, del testo o
dati video su cui si basa il tuo Dataset
. I file JSON Lines creati dalle procedure di esportazione includono gli URI Cloud Storage originali per i dati che hai specificato quando li hai importati in Dataset
.
Esportare un Dataset
utilizzando la console Google Cloud o l'API
Puoi utilizzare la console Google Cloud o l'API Vertex AI per esportare un Dataset
.
Segui i passaggi nella scheda corrispondente:
Console
Nella console Google Cloud, nella sezione Vertex AI, vai alla pagina Set di dati.
Nell'elenco a discesa Regione, seleziona la posizione in cui è memorizzato
Dataset
.Trova la riga del
Dataset
. Puoi esportare metadati e annotazioni per tutti gli set di annotazioni o per un set di annotazioni specifico:Se vuoi esportare i metadati e le annotazioni per tutti i set di annotazioni di
Dataset
, fai clic su Visualizza altro e poi su Esporta set di dati.Questo indica a Vertex AI di creare un insieme di file JSON Lines per ogni insieme di annotazioni.
Se vuoi esportare metadati e annotazioni per un'annotazione specifica imposta, quindi procedi nel seguente modo:
Fai clic su Espandi nodo
per visualizzare le righe per ciascuno dei set di annotazioni diDataset
.Nella riga del set di annotazioni che vuoi esportare, fai clic su Visualizza altro
e poi su Esporta set di annotazioni.
Questo indica a Vertex AI di creare un insieme di file JSON Lines per il set di annotazioni specificato.
Nella finestra di dialogo Esporta dati, inserisci una directory Cloud Storage in cui vuoi che Vertex AI salvi i file JSON Lines esportati. Fai clic su Esporta.
REST
Recupera l'ID di Dataset
Per esportare un Dataset
, devi conoscere l'ID numerico del Dataset
. Se
conoscere il nome visualizzato dell'Dataset
ma non l'ID, espandi quanto segue
per scoprire come ottenere l'ID utilizzando l'API:
Recuperare l'ID di un set di dati dal nome visualizzato
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
LOCATION: la posizione in cui è archiviato
Dataset
. Ad esempio:us-central1
.PROJECT_ID: il tuo ID progetto.
DATASET_DISPLAY_NAME: il nome visualizzato di
Dataset
.
Metodo HTTP e URL:
GET https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets?filter=displayName=DATASET_DISPLAY_NAME
Per inviare la richiesta, scegli una delle seguenti opzioni:
curl
Esegui questo comando:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets?filter=displayName=DATASET_DISPLAY_NAME"
PowerShell
Esegui questo comando:
$cred = gcloud auth application-default print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets?filter=displayName=DATASET_DISPLAY_NAME" | Select-Object -Expand Content
La risposta di esempio seguente è stata troncata con ...
per mettere in evidenza dove
puoi trovare l'ID di Dataset
: è il numero che sostituisce
DATASET_ID.
{ "datasets": [ { "name": "projects/PROJECT_NUMBER/locations/LOCATION/datasets/DATASET_ID", "displayName": "DATASET_DISPLAY_NAME", ... } ] }
In alternativa, puoi recuperare l'ID di Dataset
dalla console Google Cloud:
vai alla pagina Set di dati di Vertex AI e trova il numero nella colonna
ID.
Esporta uno o più set di annotazioni
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
LOCATION: la posizione in cui è archiviato
Dataset
. Ad esempio:us-central1
.PROJECT_ID: il tuo ID progetto.
DATASET_ID: l'ID numerico del valore
Dataset
.EXPORT_DIRECTORY: URI Cloud Storage (che inizia con
gs://
) di una directory in cui vuoi che Vertex AI salvi i file JSON Lines esportati. Deve trovarsi in un bucket Cloud Storage a cui hai accesso, ma la directory non deve ancora esistere.FILTER: una stringa di filtro che determina quale annotazione di set di dati vengono esportati.
Se vuoi esportare metadati e annotazioni per tutti i Set di annotazioni di
Dataset
, sostituisci FILTER con un campo vuoto (oppure ometti il campoannotationsFilter
dal corpo della richiesta completamente). Questo indica a Vertex AI di creare un insieme di linee JSON per ogni set di annotazioni.Se vuoi esportare metadati e annotazioni per un'annotazione specifica impostato, sostituisci FILTER con quanto segue:
labels.aiplatform.googleapis.com/annotation_set_name=ANNOTATION_SET_ID
Questo indica a Vertex AI di creare un insieme di file JSON Lines per il set di annotazioni con l'ID numerico ANNOTATION_SET_ID.
Per trovare l'ID numerico dell'insieme di annotazioni che vuoi specificare, visualizza l'insieme di annotazioni nella console Google Cloud e cerca il valore che segue
annotationSetId
nell'URL.
Metodo HTTP e URL:
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID:export
Corpo JSON della richiesta:
{ "exportConfig": { "gcsDestination": { "outputUriPrefix": "EXPORT_DIRECTORY" }, "annotationsFilter": "FILTER" } }
Per inviare la richiesta, scegli una delle seguenti opzioni:
curl
Salva il corpo della richiesta in un file denominato request.json
.
ed esegui questo comando:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID:export"
PowerShell
Salva il corpo della richiesta in un file denominato request.json
,
quindi esegui il comando seguente:
$cred = gcloud auth application-default print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID:export" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.aiplatform.v1.ExportDataOperationMetadata", "genericMetadata": { "createTime": "2021-02-17T00:54:58.827429Z", "updateTime": "2021-02-17T00:54:58.827429Z" }, "gcsOutputDirectory": "EXPORT_DIRECTORY/export-data-DATASET_DISPLAY_NAME-2021-02-17T00:54:58.734772Z" } }
Alcune richieste avviano operazioni a lunga esecuzione che richiedono tempo per essere completate. Queste richieste restituiscono un nome dell'operazione, che puoi utilizzare per visualizzarne lo stato o annullarla. Vertex AI fornisce metodi di assistenza per effettuare chiamate a operazioni di lunga durata. Per ulteriori informazioni, consulta Utilizzo delle operazioni di lunga durata.
Spiegazione dei file esportati
All'interno della directory di esportazione specificata nella sezione precedente,
Vertex AI crea una nuova directory etichettata con il token Dataset
un nome visualizzato e un timestamp; ad esempio
export-data-DATASET_DISPLAY_NAME-2021-02-17T00:54:58.734772Z
.
In questa directory puoi trovare una sottodirectory per ogni insieme di annotazioni che hai esportato.
Per ogni set di annotazioni, puoi trovare uno o più file JSON Lines. Ogni riga di ogni file JSON Lines rappresenta un elemento di dati dell'insieme di annotazioni. Ogni elemento di dato può contenere metadati e annotazioni specificati durante l'importazione dei dati in Vertex AI, nonché metadati e annotazioni aggiunti dopo l'importazione. Ad esempio, se hai richiesto l'etichettatura dei dati per il tuo Dataset
o se hai aggiunto manualmente etichette o annotazioni al Dataset
nella console Google Cloud, queste informazioni sono incluse nei file esportati.
Se esporti più set di annotazioni, gli stessi elementi di dati potrebbero apparire in più file JSON Lines. Ad esempio, se esporti un'immagine Dataset
con
più set di annotazioni, un file JSON Lines potrebbe contenere un elemento di dati con un
un'annotazione di classificazione con un'unica etichetta; un altro file JSON Lines per un altro
di annotazioni può contenere lo stesso elemento di dati, ma con un rilevamento di oggetti
annotazione.
Il formato dei file esportati corrisponde a quello dei file di importazione JSON Lines che puoi utilizzare per importare i dati in Vertex AI.
Questo formato dipende dal tipo di dati (immagine, tabulari, testo, video) e obiettivo
(ad es. monitoraggio di oggetti, estrazione di entità o classificazione).
Ad esempio, se esporti un insieme di annotazioni per la classificazione delle immagini con una sola etichetta, ogni riga di ogni file JSON Lines è formattata in base al
gs://google-cloud-aiplatform/schema/dataset/ioformat/image_classification_single_label_io_format_1.0.0.yaml
file schema, come descritto in
Preparazione dei dati delle immagini.
Per scoprire di più sui diversi formati di righe JSON per i diversi tipi di set di annotazioni, consulta le seguenti guide:
Passaggi successivi
- Scopri come richiedere l'etichettatura dei dati.
- Scopri di più sull'utilizzo dei set di dati in Vertex AI.