Criar e atualizar um warehouse de vídeo por streaming

Um Warehouse do Vision é um componente que pode ser adicionado ao app para armazenar saída do modelo e dados de streaming.

Criar um data warehouse de streaming de vídeo

Para conectar outros nós de componentes do gráfico de apps a um data warehouse, primeiro crie um data warehouse de vídeo por streaming.

Console

  1. Abra a guia Armazéns do painel do Vision da plataforma de agentes do Gemini Enterprise.

    Acesse a guia "Armazéns".

  2. Selecione Criar.

  3. Adicione um nome para o warehouse e escolha um período de time to live (TTL) para os recursos armazenados nele. Esses valores podem ser modificados depois.

    Depois de criar um depósito, é possível adicioná-lo a um gráfico de aplicativo.

REST e LINHA DE CMD

Cria um recurso corpus em um projeto específico com a opção de especificar o nome de exibição, a descrição e um TTL de corpus.

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • REGIONALIZED_ENDPOINT: o endpoint pode incluir um prefixo correspondente ao LOCATION_ID, como europe-west4-. Saiba mais sobre os endpoints regionalizados.
  • PROJECT_NUMBER: o número do projeto do Google Cloud.
  • LOCATION_ID: a região em que você está usando o Agent Platform Vision. Por exemplo: us-central1, europe-west4. Consulte as regiões disponíveis.
  • DISPLAY_NAME: nome de exibição do data warehouse.
  • WAREHOUSE_DESCRIPTION: a descrição do depósito (corpus).
  • TIME_TO_LIVE: o time to live (TTL) de todos os recursos em um corpus ou o TTL de um recurso específico. Por exemplo, para um corpus com recursos que têm um TTL de 100 dias, forneça o valor 8640000 (segundos).

Método HTTP e URL:

POST https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora

Corpo JSON da solicitação:

{
  "display_name": "DISPLAY_NAME",
  "description": "WAREHOUSE_DESCRIPTION",
  "type": "STREAM_VIDEO",
  "default_ttl": {
    "seconds": TIME_TO_LIVE
  }
}

Para enviar a solicitação, escolha uma destas opções:

curl

Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando abaixo:

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"

PowerShell

Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando abaixo:

$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" | Select-Object -Expand Content

Você receberá uma resposta JSON semelhante a esta:

{
  "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/warehouseoperations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.visionai.v1.CreateCorpusMetadata"
  },
  "done": true,
  "response": {
    "@type": "type.googleapis.com/google.cloud.visionai.v1.Corpus",
    "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID",
    "displayName": "DISPLAY_NAME",
    "description": "WAREHOUSE_DESCRIPTION",
    "type": "STREAM_VIDEO",
    "defaultTtl": "TIME_TO_LIVE"
  }
}

Atualizar um data warehouse de vídeos de streaming

Atualiza um corpus existente no projeto especificado com a opção de atualizar nome de exibição, descrição, TTL padrão ou todos os campos disponíveis.

REST e LINHA DE CMD

Atualiza um recurso corpus em um determinado projeto. Este exemplo mostra como atualizar o nome de exibição corpus, mas também é possível atualizar descrição, TTL ou todos os campos de uma só vez usando o mesmo formato de URL e corpo da solicitação atualizado.

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • REGIONALIZED_ENDPOINT: o endpoint pode incluir um prefixo correspondente ao LOCATION_ID, como europe-west4-. Saiba mais sobre os endpoints regionalizados.
  • PROJECT_NUMBER: o número do projeto do Google Cloud.
  • LOCATION_ID: a região em que você está usando o Agent Platform Vision. Por exemplo: us-central1, europe-west4. Consulte as regiões disponíveis.
  • CORPUS_ID: o ID do corpus de destino.
  • ?updateMask=fieldToUpdate: um dos campos disponíveis a que você pode aplicar um updateMask. Especifique o novo valor do campo correspondente no corpo da solicitação. Esse novo valor substitui o valor do campo atual. Campos disponíveis:
    • Nome de exibição: ?updateMask=display_name
    • Descrição: ?updateMask=description
    • Time to live (TTL) padrão: ?updateMask=default_ttl
    • Atualizar todos os campos: ?updateMask=*
  • UPDATED_FIELD_VALUE: um novo valor para o campo especificado. Neste exemplo, um novo nome de exibição fornecido pelo usuário para o recurso de depósito.

Método HTTP e URL:

PATCH https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID?update_mask=display_name

Corpo JSON da solicitação:

{
  "displayName": "UPDATED_FIELD_VALUE",
  "description": "Original description",
  "defaultTtl": {
    "seconds": "7800"
  }
}

Para enviar a solicitação, escolha uma destas opções:

curl

Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando abaixo:

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?update_mask=display_name"

PowerShell

Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando abaixo:

$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?update_mask=display_name" | Select-Object -Expand Content

Você receberá uma resposta JSON semelhante a esta:

{
  "name": "projects/PROJECT_ID/locations/LOCATION_ID/corpora/CORPORA_ID",
  "displayName": "UPDATED_FIELD_VALUE",
  "description": "Original description",
  "defaultTtl": "7800s"
}