Dopo aver creato un corpus di immagini ed eseguito
AnalyzeCorpus
per generare segnali di incorporamento sui dati del corpus, puoi procedere alla creazione di un indice
e di un endpoint dell'indice. Dopo aver eseguito il deployment dell'indice in questo endpoint dell'indice, puoi eseguire la ricerca semantica con funzionalità di filtro dei criteri. Il risultato della ricerca
contiene un elenco di immagini ordinate in base al punteggio di pertinenza.
Cerca con il testo di input
Per cercare gli assets nel corpus, compila SearchIndexEndpointRequest con la ricerca prevista, nei seguenti formati:
text_query: query di testo con cui eseguire la ricerca.- `criteria` o `exclusion_criteria` facoltativi: criteri di filtro sulle annotazioni fornite dall'utente.
criteriaexclusion_criteriaPuò essere applicato a testi, numeri, valori booleani o valori datetime.
Nell'esempio seguente, considera un corpus contenente immagini di paesaggi naturali. Per recuperare tutti gli asset pertinenti a "tramonto sulla spiaggia" e contrassegnati con l'annotazione "state": "California", invia la seguente richiesta (sostituisci FIELD_NAME con state e FIELD_VALUE con California):
REST e riga di comando
Prima di utilizzare i dati della richiesta, apporta le sostituzioni seguenti:
- REGIONALIZED_ENDPOINT: l'endpoint potrebbe includere un prefisso corrispondente a
LOCATION_IDcome ad esempioeurope-west4-. Scopri di più sugli endpoint regionalizzati. - PROJECT_NUMBER: il Google Cloud numero del progetto.
- LOCATION_ID: la regione in cui utilizzi
Agent Platform Vision. Ad esempio:
us-central1,europe-west4. Visualizza le regioni disponibili. - INDEX_ENDPOINT_ID: l'ID dell'endpoint dell'indice di destinazione.
Metodo HTTP e URL:
POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/indexEndpoints/INDEX_ENDPOINT_ID:searchIndexEndpoint
Corpo JSON della richiesta:
{
"text_query": "sunset at beach",
"criteria": [
{
"field": "state",
"text_array": {
"txt_values": [
"California"
]
}
}
]
}
Per inviare la richiesta, scegli una di queste opzioni:
curl
Salva il corpo della richiesta in un file denominato request.json,
quindi esegui il comando seguente:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/indexEndpoints/INDEX_ENDPOINT_ID:searchIndexEndpoint"
PowerShell
Salva il corpo della richiesta in un file denominato request.json,
quindi esegui il comando seguente:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/indexEndpoints/INDEX_ENDPOINT_ID:searchIndexEndpoint" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
{
"searchResultItems": [
{
"asset": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID_1",
"relevance": "0.99"
},
{
"asset": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID_2",
"relevance": "0.98"
}
]
}
Cerca con l'immagine di input
Se hai un'immagine di un tramonto su una spiaggia, puoi utilizzarla anche come query di ricerca per recuperare immagini simili:
REST e riga di comando
Prima di utilizzare i dati della richiesta, apporta le sostituzioni seguenti:
- REGIONALIZED_ENDPOINT: l'endpoint potrebbe includere un prefisso corrispondente a
LOCATION_IDcome ad esempioeurope-west4-. Scopri di più sugli endpoint regionalizzati. - PROJECT_NUMBER: il Google Cloud numero del progetto.
- LOCATION_ID: la regione in cui utilizzi
Agent Platform Vision. Ad esempio:
us-central1,europe-west4. Visualizza le regioni disponibili. - INDEX_ENDPOINT_ID: l'ID dell'endpoint dell'indice di destinazione.
Metodo HTTP e URL:
POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/indexEndpoints/INDEX_ENDPOINT_ID:searchIndexEndpoint
Corpo JSON della richiesta:
{
"image_query": {
"input_image": "IMAGE_BYTES"
},
"criteria": [
{
"field": "FIELD_NAME",
"text_array": {
"txt_values": [
"FIELD_VALUE"
]
}
}
]
}
Per inviare la richiesta, scegli una di queste opzioni:
curl
Salva il corpo della richiesta in un file denominato request.json,
quindi esegui il comando seguente:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/indexEndpoints/INDEX_ENDPOINT_ID:searchIndexEndpoint"
PowerShell
Salva il corpo della richiesta in un file denominato request.json,
quindi esegui il comando seguente:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/indexEndpoints/INDEX_ENDPOINT_ID:searchIndexEndpoint" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
{
"searchResultItems": [
{
"asset": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID_1",
"relevance": 0.99
},
{
"asset": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID_2",
"relevance": 0.98
}
]
}
Cerca con un'immagine esistente
Puoi anche utilizzare un asset immagine esistente nel corpus per recuperare immagini simili. Il primo risultato di ricerca sarà lo stesso asset immagine con un punteggio di pertinenza pari a 1.0:
REST e riga di comando
Prima di utilizzare i dati della richiesta, apporta le sostituzioni seguenti:
- REGIONALIZED_ENDPOINT: l'endpoint potrebbe includere un prefisso corrispondente a
LOCATION_IDcome ad esempioeurope-west4-. Scopri di più sugli endpoint regionalizzati. - PROJECT_NUMBER: il Google Cloud numero del progetto.
- LOCATION_ID: la regione in cui utilizzi
Agent Platform Vision. Ad esempio:
us-central1,europe-west4. Visualizza le regioni disponibili. - INDEX_ENDPOINT_ID: l'ID dell'endpoint dell'indice di destinazione.
- CORPUS_ID: l'ID del corpus di destinazione.
- ASSET_ID: l'ID dell'asset di destinazione.
Metodo HTTP e URL:
POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/indexEndpoints/INDEX_ENDPOINT_ID:searchIndexEndpoint
Corpo JSON della richiesta:
{
"image_query": {
"asset": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID"
}
}
Per inviare la richiesta, scegli una di queste opzioni:
curl
Salva il corpo della richiesta in un file denominato request.json,
quindi esegui il comando seguente:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/indexEndpoints/INDEX_ENDPOINT_ID:searchIndexEndpoint"
PowerShell
Salva il corpo della richiesta in un file denominato request.json,
quindi esegui il comando seguente:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/indexEndpoints/INDEX_ENDPOINT_ID:searchIndexEndpoint" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
{
"searchResultItems": [
{
"asset": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID_1",
"relevance": 1.0
},
{
"asset": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID_2",
"relevance": 0.99
}
]
}