Um Vision Warehouse associado (corpus
) numa app implementada que carrega dados tem um ou mais recursos de objetos multimédia (por exemplo, recursos de vídeo).
Estes objetos multimédia (recursos asset
) contêm metadados e anotações de recursos. Use os comandos
seguintes para criar e atualizar estes objetos multimédia.
Crie um recurso de banco de dados de vídeo em streaming
Depois de criar um armazém (recurso corpus
),
pode adicionar um ou mais recursos de asset
vídeo ao armazém.
REST e linha de comandos
O código seguinte cria um novo recurso no armazém indicado (corpus
) com a opção de especificar o ID do recurso e um TTL.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
- REGIONALIZED_ENDPOINT: o ponto final pode incluir um prefixo correspondente ao
LOCATION_ID
, comoeurope-west4-
. Veja mais informações sobre os pontos finais regionalizados. - PROJECT_NUMBER: o seu Google Cloud número do projeto.
- LOCATION_ID: A região onde está a usar o
Vertex AI Vision. Por exemplo:
us-central1
,europe-west4
. Veja as regiões disponíveis. - CORPUS_ID: o ID do seu corpus de destino.
- ASSET_ID: (opcional) Um valor fornecido pelo utilizador para o ID do recurso. Neste pedido, o valor
é adicionado ao URL do pedido no formato:
- https://ENDPOINT/v1/[...]/corpora/CORPUS_ID/assets?asset_id=ASSET_ID
- TIME_TO_LIVE: O tempo de vida (TTL) de todos os recursos num corpus ou o TTL de um recurso específico. Por exemplo, para um conjunto de dados com recursos com um TTL de 100 dias,
indique o valor
8640000
(segundos).
Método HTTP e URL:
POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets
Corpo JSON do pedido:
{ "ttl": { "seconds": TIME_TO_LIVE } }
Para enviar o seu pedido, escolha uma destas opções:
curl
Guarde o corpo do pedido num ficheiro com o nome request.json
,
e execute o seguinte comando:
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/assets"
PowerShell
Guarde o corpo do pedido num ficheiro com o nome request.json
,
e execute o seguinte comando:
$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/assets" | Select-Object -Expand Content
Deve receber uma resposta JSON semelhante à seguinte:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID", "ttl": "TIME_TO_LIVEs" }
SDK Vertex AI Vision
Para enviar um pedido para ler um fluxo de saída do modelo, tem de instalar o SDK Vertex AI Vision.
Quando usa a ferramenta de linha de comandos vaictl
para criar um recurso, não pode especificar um ID do recurso nem um TTL.
Faça as seguintes substituições de variáveis:
- PROJECT_NUMBER: o seu Google Cloud número do projeto.
- LOCATION_ID: o ID da sua localização. Por exemplo,
us-central1
. Regiões suportadas. Mais informações. - CORPUS_ID: o ID do armazém de destino (recurso
corpus
).
vaictl --project-id=PROJECT_NUMBER \
--location-id=LOCATION_ID \
--service-endpoint=warehouse-visionai.googleapis.com \
create asset CORPUS_ID
Depois de criar um recurso, pode carregar dados de vídeo diretamente
para o armazém de dados desse recurso através da ferramenta de linha de comandos vaictl
.
Atualize um recurso de banco de dados de vídeo de streaming
Use o seguinte exemplo de código para atualizar o tempo de vida (TTL) de um recurso. Só pode atualizar o campo TTL.
Use o parâmetro de consulta updateMask
no seguinte exemplo de código para atualizar o TTL de um recurso. Pode usar um parâmetro de consulta para atualizar apenas o campo TTL. O
updateMask
funciona da seguinte forma:
- Se for especificado, apenas os campos no
updateMask
são atualizados. - Se o valor da máscara de atualização for
*
, o pedido atualiza todos os campos. Se a máscara de atualização não for especificada, apenas os campos no URL do pedido com um valor fornecido no corpo do pedido são atualizados.
REST e linha de comandos
Os exemplos de código seguintes modificam o TTL de um recurso através do método
projects.locations.corpora.assets.patch
.
Altere um valor TTL
Este exemplo usa ?updateMask=ttl
no URL do pedido e inclui um novo valor ttl.seconds
no corpo do pedido para atualizar o recurso.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
- REGIONALIZED_ENDPOINT: o ponto final pode incluir um prefixo correspondente ao
LOCATION_ID
, comoeurope-west4-
. Veja mais informações sobre os pontos finais regionalizados. - PROJECT_NUMBER: o seu Google Cloud número do projeto.
- LOCATION_ID: A região onde está a usar o
Vertex AI Vision. Por exemplo:
us-central1
,europe-west4
. Veja as regiões disponíveis. - CORPUS_ID: o ID do seu corpus de destino.
- ASSET_ID: o ID do recurso de destino.
?updateMask=fieldToUpdate
: um dos campos disponíveis aos quais pode aplicar umupdateMask
. Campos disponíveis:- Tempo de vida (TTL):
?updateMask=ttl
- Atualize todos os campos:
?updateMask=*
- Tempo de vida (TTL):
Método HTTP e URL:
PATCH https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID?updateMask=ttl
Corpo JSON do pedido:
{ "ttl": { "seconds": "1" } }
Para enviar o seu pedido, escolha uma destas opções:
curl
Guarde o corpo do pedido num ficheiro com o nome request.json
,
e execute o seguinte comando:
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/assets/ASSET_ID?updateMask=ttl"
PowerShell
Guarde o corpo do pedido num ficheiro com o nome request.json
,
e execute o seguinte comando:
$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/assets/ASSET_ID?updateMask=ttl" | Select-Object -Expand Content
Deve receber uma resposta JSON semelhante à seguinte:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID" }
Remova um valor de TTL
Este exemplo usa ?updateMask=ttl
no URL do pedido e inclui um corpo do pedido vazio para limpar o valor TTL do recurso.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
- REGIONALIZED_ENDPOINT: o ponto final pode incluir um prefixo correspondente ao
LOCATION_ID
, comoeurope-west4-
. Veja mais informações sobre os pontos finais regionalizados. - PROJECT_NUMBER: o seu Google Cloud número do projeto.
- LOCATION_ID: A região onde está a usar o
Vertex AI Vision. Por exemplo:
us-central1
,europe-west4
. Veja as regiões disponíveis. - CORPUS_ID: o ID do seu corpus de destino.
- ASSET_ID: o ID do recurso de destino.
?updateMask=fieldToUpdate
: um dos campos disponíveis aos quais pode aplicar umupdateMask
. Campos disponíveis:- Tempo de vida (TTL):
?updateMask=ttl
- Atualize todos os campos:
?updateMask=*
- Tempo de vida (TTL):
Método HTTP e URL:
PATCH https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID?updateMask=ttl
Corpo JSON do pedido:
{}
Para enviar o seu pedido, escolha uma destas opções:
curl
Guarde o corpo do pedido num ficheiro com o nome request.json
,
e execute o seguinte comando:
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/assets/ASSET_ID?updateMask=ttl"
PowerShell
Guarde o corpo do pedido num ficheiro com o nome request.json
,
e execute o seguinte comando:
$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/assets/ASSET_ID?updateMask=ttl" | Select-Object -Expand Content
Deve receber uma resposta JSON semelhante à seguinte:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID" }