ApplicationConfigs

Messaggio che memorizza il grafico dell'applicazione.

Rappresentazione JSON
{
  "nodes": [
    {
      object (Node)
    }
  ]
}
Campi
nodes[]

object (Node)

Un elenco di nodi nel grafico dell'applicazione.

Nodo

Messaggio che descrive l'oggetto del nodo.

Rappresentazione JSON
{
  "name": string,
  "displayName": string,
  "nodeConfig": {
    object (ProcessorConfig)
  },
  "processor": string,
  "parents": [
    {
      object (InputEdge)
    }
  ],

  // Union field stream_output_config can be only one of the following:
  "outputAllOutputChannelsToStream": boolean
  // End of list of possible types for union field stream_output_config.
}
Campi
name

string

Obbligatorio. Un nome univoco per il nodo.

displayName

string

Un nome visualizzato facile da usare per il nodo.

nodeConfig

object (ProcessorConfig)

Configurazione del nodo.

processor

string

Il nome del processore fa riferimento alla risorsa del processore scelta.

parents[]

object (InputEdge)

Nodo principale. Il nodo di input non deve avere un nodo padre. Per la versione 1 Alpha1/Beta, solo il nodo del magazzino multimediale può avere più nodi principali, mentre gli altri tipi di nodi avranno un solo nodo principale.

Campo unione stream_output_config.

stream_output_config può essere solo uno dei seguenti:

outputAllOutputChannelsToStream

boolean

Per impostazione predefinita, l'output del nodo sarà disponibile solo per i nodi a valle. Per utilizzare l'output diretto del nodo dell'applicazione, l'output deve essere inviato inizialmente a Vision AI Streams.

Se imposti outputAllOutputChannelsToStream su true, App Platform invierà automaticamente tutte le uscite del nodo corrente alle risorse di stream di Vision AI (uno stream per canale di output). La risorsa stream di output verrà creata automaticamente da App Platform durante il deployment ed eliminata dopo il ritiro dell'applicazione. Tieni presente che questa configurazione si applica a tutte le istanze dell'applicazione.

Lo stream di output può essere sostituito a livello di istanza configurando la sezione outputResources della risorsa istanza. producerNode deve essere il nodo corrente, outputResourceBinding deve essere il nome del canale di output (o lasciato vuoto se esiste un solo canale di output del processore) e outputResource deve essere lo stream di output di destinazione.

ProcessorConfig

ID successivo: 28

Rappresentazione JSON
{

  // Union field processor_config can be only one of the following:
  "videoStreamInputConfig": {
    object (VideoStreamInputConfig)
  },
  "aiEnabledDevicesInputConfig": {
    object (AIEnabledDevicesInputConfig)
  },
  "mediaWarehouseConfig": {
    object (MediaWarehouseConfig)
  },
  "personBlurConfig": {
    object (PersonBlurConfig)
  },
  "occupancyCountConfig": {
    object (OccupancyCountConfig)
  },
  "personVehicleDetectionConfig": {
    object (PersonVehicleDetectionConfig)
  },
  "vertexAutomlVisionConfig": {
    object (VertexAutoMLVisionConfig)
  },
  "vertexAutomlVideoConfig": {
    object (VertexAutoMLVideoConfig)
  },
  "vertexCustomConfig": {
    object (VertexCustomConfig)
  },
  "generalObjectDetectionConfig": {
    object (GeneralObjectDetectionConfig)
  },
  "bigQueryConfig": {
    object (BigQueryConfig)
  },
  "personalProtectiveEquipmentDetectionConfig": {
    object (PersonalProtectiveEquipmentDetectionConfig)
  }
  // End of list of possible types for union field processor_config.
}
Campi

Campo unione processor_config.

processor_config può essere solo uno dei seguenti:

videoStreamInputConfig

object (VideoStreamInputConfig)

Configurazioni del processore di input dello stream.

aiEnabledDevicesInputConfig

object (AIEnabledDevicesInputConfig)

Configurazione di dispositivi di input con l'AI integrata.

mediaWarehouseConfig

object (MediaWarehouseConfig)

Configurazioni del processore del data warehouse multimediale.

personBlurConfig

object (PersonBlurConfig)

Configurazioni del processore di sfocatura delle persone.

occupancyCountConfig

object (OccupancyCountConfig)

Configurazioni del processore del conteggio delle presenze.

personVehicleDetectionConfig

object (PersonVehicleDetectionConfig)

Configurazioni del processore di rilevamento di persone e veicoli.

vertexAutomlVisionConfig

object (VertexAutoMLVisionConfig)

Configurazioni del processore di visione artificiale Vertex AutoML.

vertexAutomlVideoConfig

object (VertexAutoMLVideoConfig)

Configurazioni del processore video Vertex AutoML.

vertexCustomConfig

object (VertexCustomConfig)

Configurazioni del processore Vertex Custom.

generalObjectDetectionConfig

object (GeneralObjectDetectionConfig)

Configurazioni del processore di rilevamento di oggetti generici.

bigQueryConfig

object (BigQueryConfig)

Configurazioni del processore BigQuery.

personalProtectiveEquipmentDetectionConfig

object (PersonalProtectiveEquipmentDetectionConfig)

Configurazioni di personalProtectiveEquipmentDetectionConfig

VideoStreamInputConfig

Messaggio che descrive la configurazione di input dello stream video. Questo messaggio deve essere utilizzato solo come segnaposto per l'elaboratore builtin:stream-input. La definizione effettiva del binding dello stream deve essere specificata utilizzando l'API corrispondente.

Rappresentazione JSON
{
  "streams": [
    string
  ],
  "streamsWithAnnotation": [
    {
      object (StreamWithAnnotation)
    }
  ]
}
Campi
streams[]
(deprecated)

string

streamsWithAnnotation[]
(deprecated)

object (StreamWithAnnotation)

AIEnabledDevicesInputConfig

Messaggio che descrive la configurazione di input dei dispositivi abilitati per l'AI.

MediaWarehouseConfig

Messaggio che descrive MediaWarehouseConfig.

Rappresentazione JSON
{
  "corpus": string,
  "region": string,
  "ttl": string
}
Campi
corpus

string

Nome della risorsa del corpus del Media Warehouse. Formato: projects/${projectId}/locations/${locationId}/corpora/${corpus_id}

region
(deprecated)

string

Deprecato.

ttl

string (Duration format)

La durata per cui possono esistere tutti gli asset multimediali, i metadati associati e i documenti di ricerca.

Una durata in secondi con un massimo di nove cifre frazionarie, che termina con "s". Esempio: "3.5s".

PersonBlurConfig

Messaggio che descrive FaceBlurConfig.

Rappresentazione JSON
{
  "personBlurType": enum (PersonBlurType),
  "facesOnly": boolean
}
Campi
personBlurType

enum (PersonBlurType)

Tipo di sfocatura delle persone.

facesOnly

boolean

Indica se sfocare solo i volti e non l'intero oggetto nel processore.

PersonBlurType

Tipo di sfocatura delle persone

Enum
PERSON_BLUR_TYPE_UNSPECIFIED Tipo di sfocatura persone UNSPECIFIED.
FULL_OCCULUSION Tipo di sfocatura del viso: occlusione completa.
BLUR_FILTER Filtro di sfocatura di tipo FaceBlur.

OccupancyCountConfig

Messaggio che descrive OccupancyCountConfig.

Rappresentazione JSON
{
  "enablePeopleCounting": boolean,
  "enableVehicleCounting": boolean,
  "enableDwellingTimeTracking": boolean
}
Campi
enablePeopleCounting

boolean

Se vuoi conteggiare le apparizioni di persone, i conteggi di output hanno "persone" come chiave.

enableVehicleCounting

boolean

Se conteggiare le apparizioni dei veicoli, i conteggi di output avranno "vehicle" come chiave.

enableDwellingTimeTracking

boolean

Indica se monitorare il tempo di ristagno di ogni singolo oggetto all'interno della scena o di una zona specifica.

PersonVehicleDetectionConfig

Messaggio che descrive PersonVehicleDetectionConfig.

Rappresentazione JSON
{
  "enablePeopleCounting": boolean,
  "enableVehicleCounting": boolean
}
Campi
enablePeopleCounting

boolean

Almeno uno dei campi enablePeopleCounting e enableVehicleCounting deve essere impostato su true. Se vuoi conteggiare le apparizioni di persone, i conteggi di output hanno "persone" come chiave.

enableVehicleCounting

boolean

Se conteggiare le apparizioni dei veicoli, i conteggi di output avranno "vehicle" come chiave.

VertexAutoMLVisionConfig

Messaggio relativo alle configurazioni dei processori Vertex AutoML Vision.

Rappresentazione JSON
{
  "confidenceThreshold": number,
  "maxPredictions": integer
}
Campi
confidenceThreshold

number

Verranno restituite solo le entità con un punteggio superiore alla soglia. Il valore 0,0 indica di restituire tutte le entità rilevate.

maxPredictions

integer

Verranno restituite al massimo questo numero di previsioni per frame di output. Il valore 0 indica di restituire tutte le entità rilevate.

VertexAutoMLVideoConfig

Messaggio che descrive VertexAutoMLVideoConfig.

Rappresentazione JSON
{
  "confidenceThreshold": number,
  "blockedLabels": [
    string
  ],
  "maxPredictions": integer,
  "boundingBoxSizeLimit": number
}
Campi
confidenceThreshold

number

Verranno restituite solo le entità con un punteggio superiore alla soglia. Il valore 0,0 indica che vengono restituite tutte le entità rilevate.

blockedLabels[]

string

Le etichette specificate in questo campo non verranno restituite.

maxPredictions

integer

Verranno restituite al massimo questo numero di previsioni per frame di output. Il valore 0 indica di restituire tutte le entità rilevate.

boundingBoxSizeLimit

number

Verrà restituito solo il riquadro di delimitazione le cui dimensioni sono superiori a questo limite. Solo monitoraggio degli oggetti. Il valore 0,0 indica di restituire tutte le entità rilevate.

VertexCustomConfig

Messaggio che descrive VertexCustomConfig.

Rappresentazione JSON
{
  "maxPredictionFps": integer,
  "dedicatedResources": {
    object (DedicatedResources)
  },
  "postProcessingCloudFunction": string,
  "attachApplicationMetadata": boolean
}
Campi
maxPredictionFps

integer

Il frame di previsione massimo al secondo. Questo attributo imposta la velocità con cui l'operatore invia le richieste di previsione all'endpoint Vertex AI. Il valore predefinito è 0, il che significa che non esiste un limite massimo di FPS di previsione. L'operatore invia le richieste di previsione con la frequenza in FPS in input.

dedicatedResources

object (DedicatedResources)

Una descrizione delle risorse dedicate a DeployedModel e che richiedono un grado più elevato di configurazione manuale.

postProcessingCloudFunction

string

Se non è vuoto, il risultato della previsione verrà inviato alla funzione cloud specificata per il post-trattamento. * La funzione cloud riceverà AppPlatformCloudFunctionRequest in cui il campo annotations sarà nel formato JSON di proto PredictResponse. * La funzione cloud deve restituire AppPlatformCloudFunctionResponse con PredictResponse archiviato nel campo delle annotazioni. * Per eliminare l'output della previsione, è sufficiente cancellare il campo del payload in AppPlatformCloudFunctionResponse restituito.

attachApplicationMetadata

boolean

Se true, la richiesta di previsione ricevuta dal modello personalizzato conterrà anche i metadati con il seguente schema: 'appPlatformMetadata': { 'ingestionTime': DOUBLE; (timestamp UNIX) 'application': STRING; 'instanceId': STRING; 'node': STRING; 'processor': STRING; }

DedicatedResources

Una descrizione delle risorse dedicate a un modello di deployment e che richiedono un grado più elevato di configurazione manuale.

Rappresentazione JSON
{
  "machineSpec": {
    object (MachineSpec)
  },
  "minReplicaCount": integer,
  "maxReplicaCount": integer,
  "autoscalingMetricSpecs": [
    {
      object (AutoscalingMetricSpec)
    }
  ]
}
Campi
machineSpec

object (MachineSpec)

Obbligatorio. Immutabile. La specifica di una singola macchina utilizzata dalla previsione.

minReplicaCount

integer

Obbligatorio. Immutabile. Il numero minimo di repliche della macchina in cui verrà sempre eseguito il deployment di questo modello di deployment. Questo valore deve essere maggiore o uguale a 1.

Se il traffico relativo a DeployedModel aumenta, il modello potrebbe essere implementato dinamicamente su più repliche e, con il calo del traffico, alcune di queste repliche aggiuntive potrebbero essere liberate.

maxReplicaCount

integer

Immutabile. Il numero massimo di repliche su cui è possibile eseguire il deployment di questo modello di deployment quando il traffico aumenta. Se il valore richiesto è troppo elevato, il deployment restituirà un errore, ma se il deployment va a buon fine, la possibilità di scalare il modello a quel numero di repliche è garantita (tranne in caso di interruzioni del servizio). Se il traffico verso il modello di deployment aumenta oltre la quantità massima che le relative repliche possono gestire, una parte del traffico verrà ignorata. Se non viene fornito questo valore, verrà utilizzato minReplicaCount come valore predefinito.

Il valore di questo campo influisce sull'addebito in base alle quote di CPU e GPU di Vertex. Nello specifico, ti verranno addebitati maxReplicaCount * numero di core nel tipo di macchina selezionato e (maxReplicaCount * numero di GPU per replica nel tipo di macchina selezionato).

autoscalingMetricSpecs[]

object (AutoscalingMetricSpec)

Immutabile. Le specifiche delle metriche che sostituiscono il valore target di una metrica di utilizzo delle risorse (utilizzo della CPU, ciclo di lavoro dell'acceleratore e così via) (il valore predefinito è 60 se non impostato). È consentita una sola voce per metrica.

Se machineSpec.accelerator_count è superiore a 0, la scalabilità automatica si baserà sia sulle metriche di utilizzo della CPU sia su quelle del ciclo di lavoro dell'acceleratore e verrà eseguita la scalata quando una delle due metriche supera il valore target, mentre verrà eseguita la scalata verso il basso se entrambe le metriche sono inferiori al valore target. Il valore target predefinito è 60 per entrambe le metriche.

Se machineSpec.accelerator_count è 0, la scalabilità automatica si baserà solo sulla metrica di utilizzo della CPU con il valore target predefinito 60, se non impostato esplicitamente.

Ad esempio, nel caso di previsione online, se vuoi sostituire l'utilizzo della CPU target con 80, devi impostare autoscalingMetricSpecs.metric_name su aiplatform.googleapis.com/prediction/online/cpu/utilization e autoscalingMetricSpecs.target su 80.

MachineSpec

Specifiche di una singola macchina.

Rappresentazione JSON
{
  "machineType": string,
  "acceleratorType": enum (AcceleratorType),
  "acceleratorCount": integer
}
Campi
machineType

string

Immutabile. il tipo di macchina.

Consulta l'elenco dei tipi di macchine supportati per la previsione

Consulta l'elenco dei tipi di macchine supportati per l'addestramento personalizzato.

Per [DeployedModel][] questo campo è facoltativo e il valore predefinito è n1-standard-2. Per [BatchPredictionJob][] o come parte di [WorkerPoolSpec][], questo campo è obbligatorio.

acceleratorType

enum (AcceleratorType)

Immutabile. Il tipo di acceleratori che possono essere collegati alla macchina in base a acceleratorCount.

acceleratorCount

integer

Il numero di acceleratori da collegare alla macchina.

AcceleratorType

Rappresenta un tipo di acceleratore hardware.

Enum
ACCELERATOR_TYPE_UNSPECIFIED Tipo di acceleratore non specificato, ovvero nessun acceleratore.
NVIDIA_TESLA_K80 GPU Nvidia Tesla K80.
NVIDIA_TESLA_P100 GPU Nvidia Tesla P100.
NVIDIA_TESLA_V100 GPU Nvidia Tesla V100.
NVIDIA_TESLA_P4 GPU Nvidia Tesla P4.
NVIDIA_TESLA_T4 GPU Nvidia Tesla T4.
NVIDIA_TESLA_A100 GPU Nvidia Tesla A100.
TPU_V2 TPU v2.
TPU_V3 TPU v3.

AutoscalingMetricSpec

La specifica della metrica che definisce l'utilizzo della risorsa target (utilizzo della CPU, duty cycle dell'acceleratore e così via) per il calcolo del numero di repliche desiderato.

Rappresentazione JSON
{
  "metricName": string,
  "target": integer
}
Campi
metricName

string

Obbligatorio. Il nome della metrica della risorsa. Metriche supportate:

  • Per la previsione online:
  • aiplatform.googleapis.com/prediction/online/accelerator/duty_cycle
  • aiplatform.googleapis.com/prediction/online/cpu/utilization
target

integer

L'utilizzo delle risorse target in percentuale (1% - 100%) per la metrica specificata. Quando l'utilizzo reale si discosta dal target di una determinata percentuale, le repliche della macchina cambiano. Se non viene fornito, il valore predefinito è 60 (che rappresenta il 60%).

GeneralObjectDetectionConfig

Messaggio relativo alle configurazioni per il processore di rilevamento di oggetti generali.

BigQueryConfig

Messaggio relativo alle configurazioni per l'elaborazione BigQuery.

Rappresentazione JSON
{
  "table": string,
  "cloudFunctionMapping": {
    string: string,
    ...
  },
  "createDefaultTableIfNotExists": boolean
}
Campi
table

string

Risorsa tabella BigQuery in cui Vision AI Platform deve importare le annotazioni.

cloudFunctionMapping

map (key: string, value: string)

Schema dei dati Per impostazione predefinita, l'applicazione Vision AI tenterà di scrivere le annotazioni nella tabella BigQuery di destinazione utilizzando il seguente schema:

ingestion_time: TIMESTAMP, l'ora di importazione dei dati originali.

application: STRING, il nome dell'applicazione che produce l'annotazione.

instance: STRING, l'ID dell'istanza che produce l'annotazione.

node: STRING, il nome del nodo del grafo dell'applicazione che produce l'annotazione.

annotation: STRING o JSON, il protobuf dell'annotazione effettivo verrà convertito in stringa JSON con il campo di byte come stringa codificata in 64. Può essere scritto sia nella colonna di tipo String che in quella di tipo JSON.

Per inoltrare i dati delle annotazioni a una tabella BigQuery esistente, il cliente deve assicurarsi della compatibilità dello schema. La mappa mappa il nome del nodo dell'applicazione al relativo endpoint della funzione cloud per trasformare le annotazioni direttamente in google.cloud.bigquery.storage.v1.AppendRowsRequest (devono essere impostati solo avro_rows o proto_rows). Se configurate, le annotazioni prodotte dal nodo dell'applicazione corrispondente verranno inviate prima alla funzione Cloud, prima di essere inoltrate a BigQuery.

Se lo schema della tabella predefinito non è adatto, il cliente può trasformare l'output dell'annotazione dall'applicazione di IA visiva in uno schema di tabella BigQuery arbitrario con CloudFunction. * La funzione cloud riceverà AppPlatformCloudFunctionRequest in cui il campo annotations sarà nel formato JSON dell'annotazione di Vision AI. * La funzione cloud deve restituire AppPlatformCloudFunctionResponse con AppendRowsRequest memorizzato nel campo delle annotazioni. * Per eliminare l'annotazione, basta cancellare il campo delle annotazioni in AppPlatformCloudFunctionResponse restituito.

Un oggetto contenente un elenco di coppie "key": value. Esempio: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

createDefaultTableIfNotExists

boolean

Se true, App Platform crea il set di dati BigQuery e la tabella BigQuery con lo schema predefinito se la tabella specificata non esiste. Questo non funziona se è specificato uno schema personalizzato della funzione cloud, poiché il sistema non conosce lo schema desiderato. La colonna JSON verrà utilizzata nella tabella predefinita creata dalla piattaforma App.

PersonalProtectiveEquipmentDetectionConfig

Messaggio che descrive PersonalProtectiveEquipmentDetectionConfig.

Rappresentazione JSON
{
  "enableFaceCoverageDetection": boolean,
  "enableHeadCoverageDetection": boolean,
  "enableHandsCoverageDetection": boolean
}
Campi
enableFaceCoverageDetection

boolean

Se attivare il rilevamento della copertura del viso.

enableHeadCoverageDetection

boolean

Se attivare il rilevamento della copertura della testa.

enableHandsCoverageDetection

boolean

Se attivare il rilevamento della copertura delle mani.

InputEdge

Messaggio che descrive un bordo che punta a un nodo.

Rappresentazione JSON
{
  "parentNode": string,
  "parentOutputChannel": string,
  "connectedInputChannel": string
}
Campi
parentNode

string

Il nome del nodo principale.

parentOutputChannel

string

L'artefatto di output collegato del nodo principale. Può essere omesso se il processore di destinazione ha un solo elemento di output.

connectedInputChannel

string

Il canale di input collegato del processore del nodo corrente. Può essere omesso se il processore di destinazione ha un solo canale di input.