Ein Vision Warehouse-Index (verfügbar für Bild- und Batch-Video-Branchen) ist eine Ressource auf Korpus-Ebene, die eine verwaltete Darstellung der analysierten Assets und Annotationen ist. Ein Index kann als Dataset von Einbettungsvektoren und semantischen Einschränkungen betrachtet werden, das die Bedeutung der Media-Inhalte repräsentiert. Indizes können für die Suche in Indexendpunkten bereitgestellt werden.
Wenn Sie einen Index für ein corpus
erstellen, enthält er alle analysierten Assets und alle vorhandenen Anmerkungen im Korpus.
Wenn Sie nach der Erstellung des Index Assets oder Anmerkungen hinzufügen, müssen Sie das Korpus oder diese Assets noch einmal analysieren und den Index aktualisieren, damit sie im Index enthalten sind.
Warehouse-Index erstellen
REST
Senden Sie zum Erstellen einer Indexressource eine POST-Anfrage mit der Methode projects.locations.corpora.indexes.create
.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- REGIONALIZED_ENDPOINT: Der Endpunkt kann ein Präfix enthalten, das mit dem
LOCATION_ID
übereinstimmt, z. B.europe-west4-
. Weitere Informationen zu regionalisierten Endpunkten - PROJECT_NUMBER: Ihre Google Cloud Projektnummer.
- LOCATION_ID: Die Region, in der Sie Vertex AI Vision verwenden. Beispiele:
us-central1
,europe-west4
. Verfügbare Regionen - CORPUS_ID: Die ID Ihres Zielkorpus.
- INDEX_ID: (Optional) Ein vom Nutzer angegebener Wert für die Index-ID. In dieser Anfrage wird der Wert in der folgenden Form in die Anfrage-URL eingefügt:
- https://REGIONALIZED_ENDPOINT/v1/[...]/corpora/CORPUS_ID/indexes?index_id=INDEX_ID
HTTP-Methode und URL:
POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes
JSON-Text der Anfrage:
{ "display_name": "DISPLAY_NAME", "description": "INDEX_DESCRIPTION", }
Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:
curl
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json
und führen Sie den folgenden Befehl aus:
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/corpora/CORPUS_ID/indexes"
PowerShell
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json
und führen Sie den folgenden Befehl aus:
$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/corpora/CORPUS_ID/indexes" | Select-Object -Expand Content
Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.visionai.v1.CreateIndexMetadata" } }
Warehouse-Index aktualisieren
Mit der UpdateIndex API können Sie die Metadatenfelder des Index wie display_name
und description
sowie den zugrunde liegenden Indexinhalt (assets
und deren annotations
) aktualisieren.
Das Feld update_mask
in der Anfrage, auch als Feldmaske bezeichnet, wird verwendet, um die Felder anzugeben, die durch die Aktualisierung in der Indexressource überschrieben werden sollen. Die in update_mask
angegebenen Felder beziehen sich auf die Ressource, nicht auf die vollständige Anfrage. Ein Feld der Ressource wird überschrieben, wenn es in der Maske enthalten ist. Eine leere Feldmaske ist nicht zulässig. Wenn die Maske „*“ ist, wird eine vollständige Aktualisierung des Index und auch ein vollständiger Neuaufbau der Indexdaten ausgelöst.
REST
Senden Sie zum Aktualisieren einer Indexressource eine PATCH-Anfrage mit der Methode projects.locations.corpora.indexes.patch
.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- REGIONALIZED_ENDPOINT: Der Endpunkt kann ein Präfix enthalten, das mit dem
LOCATION_ID
übereinstimmt, z. B.europe-west4-
. Weitere Informationen zu regionalisierten Endpunkten - PROJECT_NUMBER: Ihre Google Cloud Projektnummer.
- LOCATION_ID: Die Region, in der Sie Vertex AI Vision verwenden. Beispiele:
us-central1
,europe-west4
. Verfügbare Regionen - CORPUS_ID: Die ID Ihres Zielkorpus.
- INDEX_ID: Die ID Ihres Zielindex.
?update_mask=fieldToUpdate
: Liste der verfügbaren Felder, auf die Sie einenupdate_mask
anwenden möchten. Geben Sie die entsprechenden Werte für die neuen Felder im Anfragetext an. Dieser neue Wert ersetzt den vorhandenen Feldwert. Sie können mehrere Felder als durch Kommas getrennte Werte angeben. Verfügbare Felder:- Anzeigename:
?update_mask=display_name
- Beschreibung:
?update_mask=description
- Aktualisieren Sie die zugrunde liegenden Indexdaten:
?update_mask=entire_corpus
- Aktualisieren Sie alle Felder:
?update_mask=*
- Anzeigename:
HTTP-Methode und URL:
PATCH https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID?update_mask=display_name,entire_corpus
JSON-Text der Anfrage:
{ "display_name": "DISPLAY_NAME", "entire_corpus": true }
Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:
curl
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json
und führen Sie den folgenden Befehl aus:
curl -X PATCH \
-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/corpora/CORPUS_ID/indexes/INDEX_ID?update_mask=display_name,entire_corpus"
PowerShell
Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json
und führen Sie den folgenden Befehl aus:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID?update_mask=display_name,entire_corpus" | Select-Object -Expand Content
Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.visionai.v1.UpdateIndexMetadata" } }
Streamingindex-Updates
Mit den APIs IndexAsset
und RemoveIndexAsset
können Streaming-Updates für Indexe durchgeführt werden. Diese APIs werden nur im Vision Warehouse für Batch-Videos unterstützt.
Indexe in einem Warehouse auflisten
REST
Senden Sie eine GET-Anfrage mit der Methode projects.locations.corpora.indexes.list, um die Indexe unter einem Korpus aufzulisten.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- REGIONALIZED_ENDPOINT: Der Endpunkt kann ein Präfix enthalten, das mit dem
LOCATION_ID
übereinstimmt, z. B.europe-west4-
. Weitere Informationen zu regionalisierten Endpunkten - PROJECT_NUMBER: Ihre Google Cloud Projektnummer.
- LOCATION_ID: Die Region, in der Sie Vertex AI Vision verwenden. Beispiele:
us-central1
,europe-west4
. Verfügbare Regionen - CORPUS_ID: Die ID Ihres Zielkorpus.
HTTP-Methode und URL:
GET https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes
Senden Sie die Anfrage mithilfe einer der folgenden Optionen:
curl
Führen Sie folgenden Befehl aus:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes"
PowerShell
Führen Sie folgenden Befehl aus:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes" | Select-Object -Expand Content
Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:
{ "indexes": [ { "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID_1", "display_name": "DISPLAY_NAME_1", "description": "DESCRIPTION_1", "entireCorpus": true, "state": "CREATED" }, { "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID_2", "display_name": "DISPLAY_NAME_2", "description": "DESCRIPTION_2", "entireCorpus": true, "state": "CREATED" } ] }
Index abrufen
REST
Wenn Sie Details zu einem Index abrufen möchten, senden Sie eine GET-Anfrage mit der Methode projects.locations.corpora.indexes.get.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- REGIONALIZED_ENDPOINT: Der Endpunkt kann ein Präfix enthalten, das mit dem
LOCATION_ID
übereinstimmt, z. B.europe-west4-
. Weitere Informationen zu regionalisierten Endpunkten - PROJECT_NUMBER: Ihre Google Cloud Projektnummer.
- LOCATION_ID: Die Region, in der Sie Vertex AI Vision verwenden. Beispiele:
us-central1
,europe-west4
. Verfügbare Regionen - CORPUS_ID: Die ID Ihres Zielkorpus.
- INDEX_ID: Die ID Ihres Zielindex.
HTTP-Methode und URL:
GET https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID
Senden Sie die Anfrage mithilfe einer der folgenden Optionen:
curl
Führen Sie folgenden Befehl aus:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID"
PowerShell
Führen Sie folgenden Befehl aus:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID" | Select-Object -Expand Content
Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID", "display_name": "DISPLAY_NAME", "description": "DESCRIPTION", "entireCorpus": true, "state": "CREATED" }
Assets unter einem Index ansehen
REST
Wenn Sie Details zu den Assets unter einem Index abrufen möchten, senden Sie eine GET-Anfrage mit der Methode projects.locations.corpora.indexes.viewAssets.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- REGIONALIZED_ENDPOINT: Der Endpunkt kann ein Präfix enthalten, das mit dem
LOCATION_ID
übereinstimmt, z. B.europe-west4-
. Weitere Informationen zu regionalisierten Endpunkten - PROJECT_NUMBER: Ihre Google Cloud Projektnummer.
- LOCATION_ID: Die Region, in der Sie Vertex AI Vision verwenden. Beispiele:
us-central1
,europe-west4
. Verfügbare Regionen - CORPUS_ID: Die ID Ihres Zielkorpus.
- INDEX_ID: Die ID Ihres Zielindex.
- PAGE_SIZE: (Optional) Die Anzahl der zurückzugebenden Ergebnisse.
- PAGE_TOKEN: (Optional) Der
nextPageToken
, der von der Antwort des vorherigen Aufrufs bereitgestellt wurde. Damit kann die nächste Seite der Ergebnisse abgerufen werden.
HTTP-Methode und URL:
GET https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID:viewAssets?page_size=PAGE_SIZE&page_token=NEXT_PAGE_TOKEN
Senden Sie die Anfrage mithilfe einer der folgenden Optionen:
curl
Führen Sie folgenden Befehl aus:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID:viewAssets?page_size=PAGE_SIZE&page_token=NEXT_PAGE_TOKEN"
PowerShell
Führen Sie folgenden Befehl aus:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID:viewAssets?page_size=PAGE_SIZE&page_token=NEXT_PAGE_TOKEN" | Select-Object -Expand Content
Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:
{ "indexedAssets": [ { "index": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID", "asset": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID_1" }, { "index": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID", "asset": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID_2" } ], "nextPageToken": "NEXT_PAGE_TOKEN" }
Indexierte Assets mit einem Filter ansehen
Sie können eine Liste mit durch Kommas getrennten Asset-IDs über das Feld filter
in der Methode projects.locations.corpora.indexes.viewAssets angeben, um alle Assets unter einem Index zu filtern und nur die angegebenen Assets anzuzeigen.
REST
Wenn Sie die Assets unter einem Index auflisten und filtern möchten, senden Sie eine GET-Anfrage mit der Methode projects.locations.corpora.indexes.viewAssets.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- REGIONALIZED_ENDPOINT: Der Endpunkt kann ein Präfix enthalten, das mit dem
LOCATION_ID
übereinstimmt, z. B.europe-west4-
. Weitere Informationen zu regionalisierten Endpunkten - PROJECT_NUMBER: Ihre Google Cloud Projektnummer.
- LOCATION_ID: Die Region, in der Sie Vertex AI Vision verwenden. Beispiele:
us-central1
,europe-west4
. Verfügbare Regionen - CORPUS_ID: Die ID Ihres Zielkorpus.
- INDEX_ID: Die ID Ihres Zielindex.
- PAGE_SIZE: (Optional) Die Anzahl der zurückzugebenden Ergebnisse.
- PAGE_TOKEN: (Optional) Der
nextPageToken
, der von der Antwort des vorherigen Aufrufs bereitgestellt wurde. Damit kann die nächste Seite der Ergebnisse abgerufen werden. - ASSET_ID_FILTER: (Optional) Eine durch Kommas getrennte Liste von Asset-IDs, die in der zurückgegebenen Liste gefiltert werden sollen. Beispiel:
?filter=ASSET_ID_1"
?filter=ASSET_ID_1,ASSET_ID_2"
HTTP-Methode und URL:
GET https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID:viewAssets?page_size=PAGE_SIZE&page_token=NEXT_PAGE_TOKEN&filter=ASSET_ID_FILTER
Senden Sie die Anfrage mithilfe einer der folgenden Optionen:
curl
Führen Sie folgenden Befehl aus:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID:viewAssets?page_size=PAGE_SIZE&page_token=NEXT_PAGE_TOKEN&filter=ASSET_ID_FILTER"
PowerShell
Führen Sie folgenden Befehl aus:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID:viewAssets?page_size=PAGE_SIZE&page_token=NEXT_PAGE_TOKEN&filter=ASSET_ID_FILTER" | Select-Object -Expand Content
Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:
{ "indexedAssets": [ { "index": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID", "asset": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID_1" }, { "index": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID", "asset": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID_2" } ], "nextPageToken": "NEXT_PAGE_TOKEN" }
Index löschen
Ein Index kann nur gelöscht werden, wenn er nicht in einem indexEndpoint
bereitgestellt wird.
Folgen Sie der Anleitung zum Aufheben der Bereitstellung eines Index, bevor Sie einen bereitgestellten Index löschen.
REST
Senden Sie eine DELETE-Anfrage mit der Methode projects.locations.corpora.indexes.delete, um eine Indexressource zu löschen.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- REGIONALIZED_ENDPOINT: Der Endpunkt kann ein Präfix enthalten, das mit dem
LOCATION_ID
übereinstimmt, z. B.europe-west4-
. Weitere Informationen zu regionalisierten Endpunkten - PROJECT_NUMBER: Ihre Google Cloud Projektnummer.
- LOCATION_ID: Die Region, in der Sie Vertex AI Vision verwenden. Beispiele:
us-central1
,europe-west4
. Verfügbare Regionen - CORPUS_ID: Die ID Ihres Zielkorpus.
- INDEX_ID: Die ID Ihres Zielindex.
HTTP-Methode und URL:
DELETE https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID
Senden Sie die Anfrage mithilfe einer der folgenden Optionen:
curl
Führen Sie folgenden Befehl aus:
curl -X DELETE \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID"
PowerShell
Führen Sie folgenden Befehl aus:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method DELETE `
-Headers $headers `
-Uri "https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID" | Select-Object -Expand Content
Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/indexes/INDEX_ID/operations/OPERATION_ID", }