Crea y actualiza un recurso de almacén

Un Almacén de Vision conectado (corpus) en una app implementada que ingiere datos tiene uno o más recursos de objetos multimedia (por ejemplo, recursos de video). Estos objetos multimedia (recursos asset) contienen metadatos y anotaciones de recursos. Usa los siguientes comandos para crear y actualizar estos objetos multimedia.

Crea un recurso de almacén de videos en streaming

Después de crear un almacén (recurso corpus), puedes agregar uno o más recursos de video asset al almacén.

LÍNEA DE REST Y CMD

El siguiente código crea un activo nuevo en el almacén determinado (corpus) con la opción de especificar el ID del activo y un TTL.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • REGIONALIZED_ENDPOINT: El extremo puede incluir un prefijo que coincida con el LOCATION_ID, como europe-west4-. Obtén más información sobre los extremos regionalizados.
  • PROJECT_NUMBER: Tu Google Cloud número de proyecto.
  • LOCATION_ID: La región en la que usas Agent Platform Vision. Por ejemplo: us-central1, europe-west4. Consulta las regiones disponibles.
  • CORPUS_ID: Es el ID del corpus de destino.
  • ASSET_ID: (Opcional) Es un valor proporcionado por el usuario para el ID del activo. En esta solicitud, el valor se agrega a la URL de la solicitud de la siguiente manera:
    • https://ENDPOINT/v1/[...]/corpora/CORPUS_ID/assets?asset_id=ASSET_ID
  • TIME_TO_LIVE: Es la cantidad de tiempo de actividad (TTL) para todos los activos de un corpus o el TTL de un activo específico. Por ejemplo, para un corpus con recursos que tienen un TTL de 100 días, proporciona el valor 8640000 (segundos).

Método HTTP y URL:

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

Cuerpo JSON de la solicitud:

{
  "ttl": {
    "seconds": TIME_TO_LIVE
  }
}

Para enviar tu solicitud, elige una de estas opciones:

curl

Guarda el cuerpo de la solicitud en un archivo llamado request.json y ejecuta el siguiente 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

Guarda el cuerpo de la solicitud en un archivo llamado request.json y ejecuta el siguiente 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

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID",
  "ttl": "TIME_TO_LIVEs"
}

SDK de Vision de Agent Platform de Gemini Enterprise

Para enviar una solicitud para leer un flujo de salida del modelo, debes instalar el SDK de Vision de Gemini Enterprise Agent Platform.

Cuando usas la herramienta de línea de comandos de vaictl para crear un recurso, no puedes especificar un ID del activo ni un TTL.

Realiza las siguientes sustituciones de variables:

  • PROJECT_NUMBER: Es el número de tu proyecto de Google Cloud .
  • LOCATION_ID: Es el ID de tu ubicación. Por ejemplo, us-central1 Regiones admitidas. Más información.
  • CORPUS_ID: Es el ID del almacén de destino (recurso corpus).
vaictl --project-id=PROJECT_NUMBER \
--location-id=LOCATION_ID \
--service-endpoint=warehouse-visionai.googleapis.com \
create asset CORPUS_ID

Después de crear un activo, puedes transferir datos de video directamente al almacén de datos de ese activo con la herramienta de línea de comandos de vaictl.

Actualiza un recurso de almacén de videos de transmisión

Usa la siguiente muestra de código para actualizar el tiempo de actividad (TTL) de un recurso. Solo puedes actualizar el campo TTL.

Usa el parámetro de consulta updateMask en la siguiente muestra de código para actualizar el TTL de un activo. Puedes usar un parámetro de consulta para actualizar solo el campo TTL. El comando updateMask funciona de la siguiente manera:

  • Si se especifica, solo se actualizan los campos en updateMask.
  • Si el valor de la máscara de actualización es *, la solicitud actualiza todos los campos.
  • Si no se especifica la máscara de actualización, solo se actualizarán los campos de la URL de la solicitud que tengan un valor proporcionado en el cuerpo de la solicitud.

LÍNEA DE REST Y CMD

En los siguientes ejemplos de código, se modifica el TTL de un activo con el método projects.locations.corpora.assets.patch.

Cómo cambiar un valor de TTL

En este ejemplo, se usa ?updateMask=ttl en la URL de la solicitud y se incluye un valor ttl.seconds nuevo en el cuerpo de la solicitud para actualizar el activo.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • REGIONALIZED_ENDPOINT: El extremo puede incluir un prefijo que coincida con el LOCATION_ID, como europe-west4-. Obtén más información sobre los extremos regionalizados.
  • PROJECT_NUMBER: Tu Google Cloud número de proyecto.
  • LOCATION_ID: La región en la que usas Agent Platform Vision. Por ejemplo: us-central1, europe-west4. Consulta las regiones disponibles.
  • CORPUS_ID: Es el ID del corpus de destino.
  • ASSET_ID: Es el ID de tu recurso de destino.
  • ?updateMask=fieldToUpdate: Uno de los campos disponibles a los que puedes aplicar un updateMask. Campos disponibles:
    • Tiempo de actividad (TTL): ?updateMask=ttl
    • Actualiza todos los campos: ?updateMask=*

Método HTTP y URL:

PATCH https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID?updateMask=ttl

Cuerpo JSON de la solicitud:

{
  "ttl": {
    "seconds": "1"
  }
}

Para enviar tu solicitud, elige una de estas opciones:

curl

Guarda el cuerpo de la solicitud en un archivo llamado request.json y ejecuta el siguiente 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

Guarda el cuerpo de la solicitud en un archivo llamado request.json y ejecuta el siguiente 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

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID"
}

Cómo quitar un valor de TTL

En este ejemplo, se usa ?updateMask=ttl en la URL de la solicitud y se incluye un cuerpo de solicitud vacío para borrar el valor del TTL del activo.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • REGIONALIZED_ENDPOINT: El extremo puede incluir un prefijo que coincida con el LOCATION_ID, como europe-west4-. Obtén más información sobre los extremos regionalizados.
  • PROJECT_NUMBER: Tu Google Cloud número de proyecto.
  • LOCATION_ID: La región en la que usas Agent Platform Vision. Por ejemplo: us-central1, europe-west4. Consulta las regiones disponibles.
  • CORPUS_ID: Es el ID del corpus de destino.
  • ASSET_ID: Es el ID de tu recurso de destino.
  • ?updateMask=fieldToUpdate: Uno de los campos disponibles a los que puedes aplicar un updateMask. Campos disponibles:
    • Tiempo de actividad (TTL): ?updateMask=ttl
    • Actualiza todos los campos: ?updateMask=*

Método HTTP y URL:

PATCH https://warehouse-visionai.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID?updateMask=ttl

Cuerpo JSON de la solicitud:

{}

Para enviar tu solicitud, elige una de estas opciones:

curl

Guarda el cuerpo de la solicitud en un archivo llamado request.json y ejecuta el siguiente 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

Guarda el cuerpo de la solicitud en un archivo llamado request.json y ejecuta el siguiente 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

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/corpora/CORPUS_ID/assets/ASSET_ID"
}