Dopo aver creato (addestrato) un modello, puoi creare una query
richiesta di previsione
per un gruppo di immagini utilizzando
batchPredict
. Il metodo batchPredict
applica etichette all'immagine in base a
l'oggetto principale dell'immagine previsto dal modello.
La durata massima di un modello personalizzato è 18 mesi al rilascio della versione GA. Tu devono creare e addestrare un nuovo modello per continuare ad annotare contenuti dopo in quel momento.
Previsione batch
Puoi richiedere annotazioni (previsioni) per le immagini utilizzando il metodo
Comando batchPredict
. Il comando batchPredict
accetta, come input, un file CSV
archiviati nel bucket Google Cloud Storage che contiene i percorsi
le immagini da annotare. Ogni riga specifica un percorso separato di un'immagine in Google.
di archiviazione ideale in Cloud Storage.
batch_prediction.csv
:
gs://my-cloud-storage-bucket/prediction_files/image1.jpg gs://my-cloud-storage-bucket/prediction_files/image2.jpg gs://my-cloud-storage-bucket/prediction_files/image3.jpg gs://my-cloud-storage-bucket/prediction_files/image4.jpg gs://my-cloud-storage-bucket/prediction_files/image5.jpg gs://my-cloud-storage-bucket/prediction_files/image6.png
In base al numero di immagini specificato nel file CSV, di previsione batch può richiedere del tempo. Anche su un numero ridotto di la previsione batch di immagini richiederà almeno 30 minuti.
REST
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
- project-id: l'ID del tuo progetto Google Cloud.
- location-id: un identificatore di località valido. Al momento
deve utilizzare il seguente valore:
us-central1
- model-id: l'ID del modello, dalla
quando hai creato il modello. L'ID è l'ultimo elemento del nome del modello.
Ad esempio:
- nome modello:
projects/project-id/locations/location-id/models/IOD4412217016962778756
- ID modello:
IOD4412217016962778756
- nome modello:
- input-storage-path: il percorso di un file CSV archiviato su Google Cloud Storage. L'utente che ha inviato la richiesta deve avere per il bucket.
- output-storage-bucket: uno Google Cloud Storage
bucket/directory in cui salvare i file di output, espressi nel seguente formato:
gs://bucket/directory/
. L'utente che ha inviato la richiesta deve disporre dell'autorizzazione di scrittura per di sincronizzare la directory di una VM con un bucket.
Considerazioni specifiche sul campo:
params.score_threshold
: un valore compreso tra 0,0 e 1,0. Solo i risultati con punteggi maggiore o uguale a questo valore.
Metodo HTTP e URL:
POST https://automl.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/models/MODEL_ID:batchPredict
Corpo JSON della richiesta:
{ "inputConfig": { "gcsSource": { "inputUris": [ "INPUT_STORAGE_PATH" ] } }, "outputConfig": { "gcsDestination": { "outputUriPrefix": "OUTPUT_STORAGE_BUCKET" } }, "params": { "score_threshold": "0.0" } }
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 print-access-token)" \
-H "x-goog-user-project: project-id" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://automl.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/models/MODEL_ID:batchPredict"
PowerShell
Salva il corpo della richiesta in un file denominato request.json
.
ed esegui questo comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "project-id" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://automl.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/models/MODEL_ID:batchPredict" | Select-Object -Expand Content
Dovresti vedere un output simile al seguente:
{ "name": "projects/PROJECT_ID/locations/LOCATION_ID/operations/ICN926615623331479552", "metadata": { "@type": "type.googleapis.com/google.cloud.automl.v1.OperationMetadata", "createTime": "2019-06-19T21:28:35.302067Z", "updateTime": "2019-06-19T21:28:35.302067Z", "batchPredictDetails": { "inputConfig": { "gcsSource": { "inputUris": [ "INPUT_STORAGE_PATH" ] } } } } }
Puoi utilizzare l'ID operazione
(in questo caso ICN926615623331479552
) per recuperare lo stato dell'attività. Per un
Ad esempio, vedi Operazioni a lunga esecuzione.
Una volta completata l'operazione, state
viene visualizzato come DONE
e
i risultati vengono scritti nel file Google Cloud Storage specificato:
{ "name": "projects/PROJECT_ID/locations/LOCATION_ID/operations/ICN926615623331479552", "metadata": { "@type": "type.googleapis.com/google.cloud.automl.v1.OperationMetadata", "createTime": "2019-06-19T21:28:35.302067Z", "updateTime": "2019-06-19T21:57:18.310033Z", "batchPredictDetails": { "inputConfig": { "gcsSource": { "inputUris": [ "INPUT_STORAGE_PATH" ] } }, "outputInfo": { "gcsOutputDirectory": "gs://STORAGE_BUCKET_VCM/SUBDIRECTORY/prediction-8370559933346329705-YYYY-MM-DDThh:mm:ss.sssZ" } } }, "done": true, "response": { "@type": "type.googleapis.com/google.cloud.automl.v1.BatchPredictResult" } }
Consulta la sezione File JSONL di output di seguito per un output di esempio .
Java
Prima di provare questo esempio, segui le istruzioni di configurazione per questa lingua nella Librerie client.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione per questa lingua nella Librerie client.
Python
Prima di provare questo esempio, segui le istruzioni di configurazione per questa lingua nella Librerie client.
Linguaggi aggiuntivi
C#: Segui le Istruzioni per la configurazione di C# Nella pagina delle librerie client e poi visita Documentazione di riferimento di AutoML Vision per .NET.
PHP Segui le Istruzioni per la configurazione dei file PHP Nella pagina delle librerie client e poi visita Documentazione di riferimento di AutoML Vision per PHP.
Rubino: Segui le Istruzioni per la configurazione di Ruby Nella pagina delle librerie client e poi visita Documentazione di riferimento di AutoML Vision per Ruby.
File JSONL di output
Quando l'attività di previsione batch è completata, l'output della previsione è archiviato nel bucket Google Cloud Storage che hai specificato .
Nel bucket di output (se applicabile, nella directory specificata)
file image_classification_1.jsonl
,
image_classification_2.jsonl
,...,image_classification_N.jsonl
saranno
dove N può essere 1 e dipende dal numero totale di
le immagini e le annotazioni previste.
Una singola immagine viene elencata una sola volta con tutte le sue annotazioni e le relative le annotazioni non verranno mai suddivise tra i file.
Ogni file JSONL contiene, per riga, una rappresentazione JSON di un protocollo che avvolge l'"ID" dell'immagine "<id_value>" seguito da un elenco di zero o più protocolli AnnotationPayload (chiamate annotazioni), in cui sono stati compilati i dettagli della classificazione.
File JSONL di esempio:
image_image_classification_0.jsonl
: un singolo file .jsonl di 4 righe, ciascuna
corrispondente al file JSON di annotazione del file immagine.
Utilizzo delle operazioni a lunga esecuzione
REST
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
- project-id: l'ID del tuo progetto Google Cloud.
- operation-id: l'ID dell'operazione. L'ID è l'ultimo elemento del nome
dell'operazione. Ad esempio:
- nome operazione:
projects/project-id/locations/location-id/operations/IOD5281059901324392598
- ID operazione:
IOD5281059901324392598
- nome operazione:
Metodo HTTP e URL:
GET https://automl.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/operations/OPERATION_ID
Per inviare la richiesta, scegli una delle seguenti opzioni:
curl
Esegui questo comando:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project: project-id" \
"https://automl.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/operations/OPERATION_ID"
PowerShell
Esegui questo comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "project-id" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://automl.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/operations/OPERATION_ID" | Select-Object -Expand Content
{ "name": "projects/PROJECT_ID/locations/us-central1/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.automl.v1.OperationMetadata", "createTime": "2018-10-29T15:56:29.176485Z", "updateTime": "2018-10-29T16:10:41.326614Z", "importDataDetails": {} }, "done": true, "response": { "@type": "type.googleapis.com/google.protobuf.Empty" } }
Dovresti vedere un output simile al seguente per un'operazione di creazione del modello completata:
{ "name": "projects/PROJECT_ID/locations/us-central1/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.automl.v1.OperationMetadata", "createTime": "2019-07-22T18:35:06.881193Z", "updateTime": "2019-07-22T19:58:44.972235Z", "createModelDetails": {} }, "done": true, "response": { "@type": "type.googleapis.com/google.cloud.automl.v1.Model", "name": "projects/PROJECT_ID/locations/us-central1/models/MODEL_ID" } }
Go
Prima di provare questo esempio, segui le istruzioni di configurazione per questa lingua nella API e Riferimento > Librerie client.
Java
Prima di provare questo esempio, segui le istruzioni di configurazione per questa lingua nella API e Riferimento > Librerie client.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione per questa lingua nella API e Riferimento > Librerie client.
Python
Prima di provare questo esempio, segui le istruzioni di configurazione per questa lingua nella API e Riferimento > Librerie client.
Linguaggi aggiuntivi
C#: Segui le Istruzioni per la configurazione di C# Nella pagina delle librerie client e poi visita Documentazione di riferimento di AutoML Vision per .NET.
PHP Segui le Istruzioni per la configurazione dei file PHP Nella pagina delle librerie client e poi visita Documentazione di riferimento di AutoML Vision per PHP.
Rubino: Segui le Istruzioni per la configurazione di Ruby Nella pagina delle librerie client e poi visita Documentazione di riferimento di AutoML Vision per Ruby.